### WordPress Internationalization Setup Source: https://pass.app/ Configures the text direction for WordPress internationalization, ensuring proper rendering of text content across different languages. ```javascript wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); ``` -------------------------------- ### WordPress Internationalization (i18n) Locale Setup Source: https://pass.app/blog/token2049-recap/ Sets the text direction for WordPress internationalization. This ensures proper rendering of text content based on the language's writing direction (e.g., left-to-right). ```JavaScript wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); ``` -------------------------------- ### WordPress Internationalization Setup Source: https://pass.app/blog/ Configures the locale data for WordPress's internationalization (i18n) library. This ensures proper text direction (LTR/RTL) and language handling for the website's content. ```javascript wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); ``` -------------------------------- ### Theme Initialization Logic Source: https://www.notion.so/pass-app/Pass-App-Press-Kit-19461927fb55804ca12ff4e803319a47 This JavaScript code initializes the application's theme. It attempts to load the theme preference from `localStorage` or a script tag containing theme data. If a theme is found, it's applied to the document body, adding a 'dark' class if the theme is dark. ```javascript (function() { var e = "light"; var t = localStorage.getItem("theme"); if (t) try { var d; (d = JSON.parse(t)) && d.mode && (e = d.mode); } catch (e) {} var a = document.getElementById("theme-data"); if (a) try { var d; (d = JSON.parse(a.textContent)) && "<>" !== d.mode && (e = d.mode, window.notionTheme = e); } catch (e) {} "dark" === e && document.body.classList.add("dark"); })() ``` -------------------------------- ### WordPress Resource Prefetching Configuration Source: https://pass.app/blog/token2049-recap/ Configures resource prefetching for WordPress pages. It specifies which links to prefetch based on their `href` attributes, excluding specific patterns like WordPress admin or upload directories, and respecting 'nofollow' attributes. ```JSON { "prefetch": [ { "source": "document", "where": { "and": [ { "href_matches": "\/*" }, { "not": { "href_matches": [ "\/wp-*.php", "\/wp-admin\/*", "\/wp-content\/uploads\/*", "\/wp-content\/*", "\/wp-content\/plugins\/*", "\/wp-content\/themes\/pass-app-web-2024\/*", "\/*\\?(.+)" ] } }, { "not": { "selector_matches": "a[rel~=\"nofollow\"]" } }, { "not": { "selector_matches": ".no-prefetch, .no-prefetch a" } } ] }, "eagerness": "conservative" } ] } ``` -------------------------------- ### WordPress Internationalization Setup Source: https://pass.app/blog/pass-perks/ This code snippet sets the text direction for WordPress internationalization. It configures the locale data, specifying 'ltr' (left-to-right) as the text direction. ```javascript wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); ``` -------------------------------- ### Frontend Prefetch Configuration Source: https://pass.app/blog/introducing-pass-app-the-revolutionary-smart-wallet-for-a-new-era/ Configuration object for prefetching resources in a web application, likely for performance optimization. It specifies conditions for conservative prefetching based on document sources and excludes specific paths. ```javascript { "prefetch": [ { "source": "document", "where": { "and": [ { "href_matches": "/*" }, { "not": { "href_matches": [ "/wp-*.php", "/wp-admin/*", "/wp-content/uploads/*", "/wp-content/*", "/wp-content/plugins/*", "/wp-content/themes/pass-app-web-2024/*", "/*?(.+)" ] } }, { "not": { "selector_matches": "a[rel~=\"nofollow\"]" } }, { "not": { "selector_matches": ".no-prefetch, .no-prefetch a" } } ] }, "eagerness": "conservative" } ] } ``` -------------------------------- ### CSS for Glossary Navigation and Media Elements Source: https://onchain.org/careers/ Provides CSS for styling glossary navigation elements, both desktop and mobile, to display list items in a row with specific margins and text alignment. Also includes rules for media elements like iframes. ```css /* Magazine Glossary Nav */ body:has(.glossary-article-title) .c-toc-desktop ul ul { display: flex; flex-direction: row; flex-wrap: wrap; width: 250px; margin: 0; text-align: center; } body:has(.glossary-article-title) .c-toc-desktop ul ul li { margin: 8px 0 0 0; text-align: center; min-width: 50px; } body:has(.glossary-article-title) .c-toc-mobile__dropdown ul ul { display: flex; flex-direction: row; flex-wrap: wrap; margin: 0; } body:has(.glossary-article-title) .c-toc-mobile__dropdown ul ul li { margin: 8px 0 0 0; text-align: center; min-width: 50px; } body:has(.glossary-article-title) .c-toc-mobile__dropdown ul ul li a { justify-content: center; } /* postid-7572 */ .postid-7572 .mejs-mediaelement iframe { height: 100%; } ``` -------------------------------- ### Configure Form Processing Variables Source: https://onchain.org/careers/ Configures JavaScript variables for form processing, including AJAX URLs, REST API endpoints, nonces, and messages for file uploads. This setup is typical for dynamic web forms interacting with a backend. ```javascript var customJsVarsFormPro = { "ajax_url": "https:\/\/onchain.org\/wp-admin\/admin-ajax.php", "rest_personioapplications": "https:\/\/onchain.org\/wp-json\/wp\/v2\/personioapplication", "rest_nonce": "443565a3c9", "run_delete_file": "57d587d75d", "run_application_form": "c7d2154553", "file_to_big": "The chosen file is to big.", "field_name": "hownvi8170", "field_value": "tdujsm1360", "enable_honeypot": "1" } ``` -------------------------------- ### Hotjar Analytics Integration Script Source: https://onchain.org/careers/ This JavaScript snippet initializes Hotjar tracking for the website. It configures Hotjar with a specific site ID and version, and appends the tracking script to the document's head. ```javascript (function(h,o,t,j,a,r){ h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)}; h._hjSettings={hjid:3928432,hjsv:6}; a=o.getElementsByTagName('head')[0]; r=o.createElement('script');r.async=1; r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv; a.appendChild(r); })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv='); ``` -------------------------------- ### CSS Image Selector with Contain Intrinsic Size Source: https://pass.app/blog/pass-perks/ This CSS rule targets images based on their 'sizes' attribute, specifically when it's set to 'auto' or starts with 'auto,'. It applies the 'contain-intrinsic-size' property, which helps in optimizing layout shifts by providing intrinsic sizing information for images before they load. ```css img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px } ``` -------------------------------- ### Prefetch Configuration Source: https://pass.app/about/ Configuration object for prefetching resources. It specifies the source as 'document' and defines conditions for resource selection, excluding specific WordPress paths and elements with 'nofollow' or 'no-prefetch' classes. ```JSON { "prefetch": [ { "source": "document", "where": { "and": [ { "href_matches": "/" }, { "not": { "href_matches": [ "/wp-*.php", "/wp-admin/*", "/wp-content/uploads/*", "/wp-content/*", "/wp-content/plugins/*", "/wp-content/themes/pass-app-web-2024/*", "/*?(.+)" ] } }, { "not": { "selector_matches": "a[rel~=\"nofollow\"]" } }, { "not": { "selector_matches": ".no-prefetch, .no-prefetch a" } } ] }, "eagerness": "conservative" } ] } ``` -------------------------------- ### JavaScript: Resource Error Handling and Logging Source: https://www.notion.so/pass-app/Pass-App-Press-Kit-19461927fb55804ca12ff4e803319a47 Sets up a global error event listener to detect failures in loading external resources like scripts and stylesheets. It logs these failures to the console and sends detailed error information to a Splunk endpoint via a POST request. The script also initializes various application state variables using a custom `__notion_html_async` array. ```javascript window.LOCALE_SETUP=void 0,window.LOCALE_SETUP_P=Promise.resolve()(()=>{ try{ window.addEventListener("error",(function(e){ if(e.target && (e.target instanceof HTMLScriptElement || e.target instanceof HTMLLinkElement && "stylesheet"===e.target.rel)){ var t=e.target instanceof HTMLScriptElement?"script":"stylesheet", r=e.target.src||e.target.href; console.error("Resource Sentinel noted a failed resource load of type",t,r), fetch("https://http-inputs-notion.splunkcloud.com/services/collector/raw",{ method:"POST", headers:{ "Content-Type":"text/plain; charset=utf-8", Authorization:"Splunk EA76605A-F565-4B17-A496-34435622A1EB" }, mode:"cors", keepalive:!0, body:JSON.stringify({ environment:"production", level:"error", from:"resourceSentinel", type:"resourceLoadFailure", error:{ message:`Failed to load "${t}" resource`, miscDataString:r } }), priority:"low" }).catch(e=>{ console.error("Resource Sentinel failed to send error to Splunk",e) }) } }),!0), console.info("Resource Sentinel initialized...") }catch(e){ console.error("Resource Sentinel failed to initialize",e) } })(); __notion_html_async.push("opfsBootupRegistry",{"isServerEnabled":false}) __notion_html_async.push("ready",!0) __notion_html_async.push("bootReady",true) __notion_html_async.push("serverSidePrefetchDataPending",false) __notion_html_async.push("serverSidePrefetchData",null) __notion_html_async.push("requiredRedirectMetadata",{ "pageId":"19461927-fb55-804c-a12f-f4e803319a47", "requiresRedirect":true, "redirectUrl":"https://pass-app.notion.site/Pass-App-Press-Kit-19461927fb55804ca12ff4e803319a47" }) __notion_html_async.push(null,null) } ``` -------------------------------- ### Hotjar Tracking Script Initialization Source: https://onchain.org/ Initializes the Hotjar tracking script for website analytics and user behavior monitoring. This snippet is typically placed in the head of an HTML document. ```javascript ld(r); })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv='); ``` -------------------------------- ### Google Tag Manager Initialization Source: https://pass.app/blog/token2049-recap/ This script initializes Google Tag Manager, which is used for tracking website events and managing marketing tags. It ensures the dataLayer is available and loads the GTM script asynchronously. ```javascript (function(w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-KQLVM59N'); ``` -------------------------------- ### General JavaScript Configuration Source: https://onchain.org/ Configuration object containing general JavaScript variables for application functionality. It includes UTM parameters and session tracking details. ```javascript var customJsVars = { "utm_source_platform": "current.plt", "utm_creative_format": "current.fmt", "utm_marketing_tactic": "current.tct", "session_entry": "current_add.ep", "session_start_time": "current_add.fd", "session_pages": "session.pgs", "session_count": "udata.vst", "user_agent": "udata.uag" }; ``` -------------------------------- ### Skeleton/Spinner Display Logic Source: https://www.notion.so/pass-app/Pass-App-Press-Kit-19461927fb55804ca12ff4e803319a47 This JavaScript logic determines whether to display the initial loading spinner or the skeleton UI. It checks for Electron environment, mobile user agents, and reads sidebar preferences from local storage to conditionally show or hide these elements. ```javascript (e => { function t(t) { var i = e.localStorage && e.localStorage.getItem(t), d = i && JSON.parse(i); if (d && d.value) return d.value; } var i = document.getElementById("skeleton"), d = document.getElementById("skeleton-sidebar"), n = document.getElementById("initial-loading-spinner"), o = t("LRU:KeyValueStore2:sidebar"), a = t("LRU:KeyValueStore2:current-user-id"), l = "undefined" != typeof global || e.__isElectron, r = /ReactNative|MobileNative|Android|iPad|iPhone|iPod|Windows Phone/.test(navigator.userAgent); !i || void 0 === a || r || l ? n && n.classList.add("show") : (i.classList.add("show"), d && o && (!1 === o.expanded && d.remove(), o.width > 0 && (d.style.width = String(o.width) + "px"))); })(window) ``` -------------------------------- ### Google Tag Manager Initialization Source: https://pass.app/blog/introducing-pass-app-the-revolutionary-smart-wallet-for-a-new-era/ This JavaScript snippet initializes Google Tag Manager (GTM) on the webpage. It ensures that GTM is loaded and ready to track events, facilitating website analytics and marketing tag management. ```javascript (function(w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-KQLVM59N'); ``` -------------------------------- ### Initialize Hotjar Analytics Script Source: https://onchain.org/ This JavaScript snippet initializes the Hotjar tracking script for website analytics. It configures Hotjar with a specific site ID and version, enabling features like session recordings, heatmaps, and user feedback collection. ```JavaScript (function(h,o,t,j,a,r){ h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)}; h._hjSettings={hjid:3928432,hjsv:6}; a=o.getElementsByTagName('head')[0]; r=o.createElement('script');r.async=1; r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv; a.appendChild(r); })(window,document,'https://static.hotjar.com/c/','.js?sv='); ``` -------------------------------- ### WordPress CSS Presets and Utility Classes Source: https://pass.app/blog/advantages-of-smart-crypto-wallets/ This snippet defines a comprehensive set of CSS custom properties (variables) and utility classes for styling WordPress themes. It includes presets for gradients, font sizes, spacing, shadows, and color variations, enabling consistent and flexible design. ```CSS :root { --wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%); --wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%); --wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%); --wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%); --wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%); --wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%); --wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%); --wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%); --wp--preset--font-size--small: 13px; --wp--preset--font-size--medium: 20px; --wp--preset--font-size--large: 36px; --wp--preset--font-size--x-large: 42px; --wp--preset--spacing--20: 0.44rem; --wp--preset--spacing--30: 0.67rem; --wp--preset--spacing--40: 1rem; --wp--preset--spacing--50: 1.5rem; --wp--preset--spacing--60: 2.25rem; --wp--preset--spacing--70: 3.38rem; --wp--preset--spacing--80: 5.06rem; --wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2); --wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4); --wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2); --wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1); --wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1); } :where(.is-layout-flex) { gap: 0.5em; } :where(.is-layout-grid) { gap: 0.5em; } body .is-layout-flex { display: flex; } .is-layout-flex { flex-wrap: wrap; align-items: center; } .is-layout-flex > :is(*, div) { margin: 0; } body .is-layout-grid { display: grid; } .is-layout-grid > :is(*, div) { margin: 0; } :where(.wp-block-columns.is-layout-flex) { gap: 2em; } :where(.wp-block-columns.is-layout-grid) { gap: 2em; } :where(.wp-block-post-template.is-layout-flex) { gap: 1.25em; } :where(.wp-block-post-template.is-layout-grid) { gap: 1.25em; } .has-black-color { color: var(--wp--preset--color--black) !important; } .has-cyan-bluish-gray-color { color: var(--wp--preset--color--cyan-bluish-gray) !important; } .has-white-color { color: var(--wp--preset--color--white) !important; } .has-pale-pink-color { color: var(--wp--preset--color--pale-pink) !important; } .has-vivid-red-color { color: var(--wp--preset--color--vivid-red) !important; } .has-luminous-vivid-orange-color { color: var(--wp--preset--color--luminous-vivid-orange) !important; } .has-luminous-vivid-amber-color { color: var(--wp--preset--color--luminous-vivid-amber) !important; } .has-light-green-cyan-color { color: var(--wp--preset--color--light-green-cyan) !important; } .has-vivid-green-cyan-color { color: var(--wp--preset--color--vivid-green-cyan) !important; } .has-pale-cyan-blue-color { color: var(--wp--preset--color--pale-cyan-blue) !important; } .has-vivid-cyan-blue-color { color: var(--wp--preset--color--vivid-cyan-blue) !important; } .has-vivid-purple-color { color: var(--wp--preset--color--vivid-purple) !important; } .has-black-background-color { background-color: var(--wp--preset--color--black) !important; } .has-cyan-bluish-gray-background-color { background-color: var(--wp--preset--color--cyan-bluish-gray) !important; } .has-white-background-color { background-color: var(--wp--preset--color--white) !important; } .has-pale-pink-background-color { background-color: var(--wp--preset--color--pale-pink) !important; } .has-vivid-red-background-color { background-color: var(--wp--preset--color--vivid-red) !important; } .has-luminous-vivid-orange-background-color { background-color: var(--wp--preset--color--luminous-vivid-orange) !important; } .has-luminous-vivid-amber-background-color { background-color: var(--wp--preset--color--luminous-vivid-amber) !important; } .has-light-green-cyan-background-color { background-color: var(--wp--preset--color--light-green-cyan) !important; } .has-vivid-green-cyan-background-color { background-color: var(--wp--preset--color--vivid-green-cyan) !important; } .has-pale-cyan-blue-background-color { background-color: var(--wp--preset--color--pale-cyan-blue) !important; } .has-vivid-cyan-blue-background-color { background-color: var(--wp--preset--color--vivid-cyan-blue) !important; } .has-vivid-purple-background-color { background-color: var(--wp--preset--color--vivid-purple) !important; } .has-black-border-color { border-color: var(--wp--preset--color--black) !important; } .has-cyan-bluish-gray-border-color { border-color: var(--wp--preset--color--cyan-bluish-gray) !important; } .has-white-border-color { border-color: var(--wp--preset--color--white) !important; } .has-pale-pink-border-color { border-color: var(--wp--preset--color--pale-pink) !important; } .has-vivid-red-border-color { border-color: var(--wp--preset--color--vivid-red) !important; } .has-luminous-vivid-orange-border-color { border-color: var(--wp--preset--color--luminous-vivid-orange) !important; } .has-luminous-vivid-amber-border-color { border-color: var(--wp--preset--color--luminous-vivid-amber) !important; } .has-light-green-cyan-border-color { border-color: var(--wp--preset--color--light-green-cyan) !important; } .has-vivid-green-cyan-border-color { border-color: var(--wp--preset--color--vivid-green-cyan) !important; } .has-pale-cyan-blue-border-color { border-color: var(--wp--preset--color--pale-cyan-blue) !important; } .has-vivid-cyan-blue-border-color { border-color: var(--wp--preset--color--vivid-cyan-blue) !important; } .has-vivid-purple-border-color { border-color: var(--wp--preset--color--vivid-purple) !important; } ``` -------------------------------- ### General Website Styling Source: https://onchain.org/careers/ A collection of CSS rules targeting various elements to control their appearance, layout, and responsiveness. Includes overrides for WooCommerce, specific post IDs, and general UI components. ```css .woocommerce-product-gallery{ opacity: 1 !important; } .tableau-oda-embedder-container{ border-radius: 16px!important } .postid-7661 .c-report-sponsorship h3{ } .postid-7283 .c-article-single__time{ display: none; } .ka-up-tooltip li:last-child{ display: none!important } textarea { resize: none; } .c-people-grid-item__role{ line-height: 1.1rem; } .c-ventures-list__item{ min-height: 379px } .c-people-grid-item { padding-bottom: 10px; } .message-div{ margin: 32px; display: flex; justify-content: center; } .c-research-header{ min-height: 0 } .c-text-page-intro{ padding-top: 0px; padding-bottom: 50px } .c-text-page-intro p{ font-size: 16px } .c-company-cards:before{ display: none; } #main-content{ height: auto!important } #toolbar-container{ display: none!important; } @media screen and (max-width: 650px) { .c-report-tableau__wrapper { overflow: hidden; overflow-x: auto; } } .page-template-checkout .nsl-container { display: none; } .page-template-checkout .c-login-form__options a.c-button + .c-button{ display: none; } ``` -------------------------------- ### CSS Styling for Personio Filters and Buttons Source: https://onchain.org/careers/ Provides CSS rules for styling Personio integration elements, including filters, select dropdowns, and buttons. It defines layout, appearance, and interactive states for job listings and filtering components. ```css img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px } .personio-filter-selected{font-weight:700} .personio-position-filter-linklist,.personio-position-filter-select{display:flex;flex-direction:row} .personio-position-filter-linklist legend,.personio-position-filter-select legend{display:inline-block;font-weight:700;margin-right:1.4em;padding:0;width:auto} .personio-position-filter-linklist>a,.personio-position-filter-linklist>div,.personio-position-filter-select>div{cursor:pointer;display:inline-block;margin:0 1.4em 0 0;position:relative;z-index:1} .personio-position-filter-linklist>div ul{background-color:#fff;display:none;left:0;margin:0;padding:0;position:absolute;top:100%;z-index:10} .personio-position-filter-linklist>div li{line-height:2;list-style:none;margin:0;padding:0 4px;white-space:nowrap} .personio-position-filter-linklist>div:hover ul,.personio-position-filter-select label{display:block} .personio-integration-archive-listing{padding:0} .personio-integration-archive-listing li{list-style:none} .personio-hide-reset .personio-position-filter-reset,.personio-hide-title legend{display:none} .personio-hide-title legend+div{margin-left:0!important} /* ! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em} .wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} .safe-svg-cover{text-align:center} .safe-svg-cover .safe-svg-inside{display:inline-block;max-width:100%} .safe-svg-cover svg{fill:currentColor;height:100%;max-height:100%;max-width:100%;width:100%} .personio-integration-back-button{margin-left:1em} .personio-position-filter-linklist{display:flex;flex-direction:row} .personio-position-filter-linklist legend{display:inline-block;font-weight:700;margin-right:1.4em;padding:0;width:auto} .personio-position-filter-linklist button{display:none} .personio-position-filter-linklist>a,.personio-position-filter-linklist>div{cursor:pointer;display:inline-block;margin:0 1.4em 0 0;position:relative;width:auto;z-index:1} .personio-position-filter-linklist>div ul{background-color:#fff;display:none;left:0;list-style:none;margin:0;padding:0;position:absolute;top:100%;z-index:10} .personio-position-filter-linklist>div li{line-height:2;list-style:none;margin:0;padding:0 4px;white-space:nowrap} body .personio-position-filter-linklist>div li:before{display:none!important} .personio-position-filter-linklist>div:hover ul{display:block} a.personio-filter-selected{font-weight:700} .personio-position-filter-select{display:flex;flex-direction:row} .personio-position-filter-select legend{display:inline-block;font-weight:700;margin-right:1.4em;padding:0;width:auto} .personio-position-filter-select>div{cursor:pointer;display:inline-block;margin:0 1.4em 0 0;position:relative;z-index:1} .personio-position-filter-select label{display:block} .personio-position-filter-search .personio-position-filter-reset,.personio-position-filter-search legend{display:none} .personio-position-filter-search .personio-position-filter-reset,.personio-position-filter-search legend{display:none} :root{--wp--preset--asp ``` -------------------------------- ### WooCommerce JavaScript Initialization Source: https://onchain.org/ Ensures the WooCommerce JavaScript class is applied to the document body, replacing 'woocommerce-no-js' with 'woocommerce-js'. ```javascript (function () { var c = document.body.className; c = c.replace(/woocommerce-no-js/, 'woocommerce-js'); document.body.className = c; })(); ``` -------------------------------- ### Schema.org WebPage Metadata Source: https://pass.app/blog/token2049-recap/ This JSON-LD script provides structured data for the webpage, detailing its type, URL, title, primary image, publication dates, description, breadcrumbs, and related website/organization information. It helps search engines understand the content. ```json {"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://pass.app/blog/token2049-recap-navigating-the-whirlwind-of-opportunity/","url":"https://pass.app/blog/token2049-recap-navigating-the-whirlwind-of-opportunity/","name":"TOKEN2049 Recap: Navigating the Whirlwind of Opportunities - Pass App","isPartOf":{"@id":"https://pass.app/#website"},"primaryImageOfPage":{"@id":"https://pass.app/blog/token2049-recap-navigating-the-whirlwind-of-opportunity/#primaryimage"},"image":{"@id":"https://pass.app/blog/token2049-recap-navigating-the-whirlwind-of-opportunity/#primaryimage"},"thumbnailUrl":"https://pass.app/wp-content/uploads/2025/05/Navigating-the-Whirlwind-of-Innovation-at-TOKEN2049.png","datePublished":"2024-10-08T21:17:51+00:00","dateModified":"2025-07-10T19:26:19+00:00","description":"The thriving expansion of crypto events reflects a vibrant future for web3. But you shouldn't have to be an expert to be a part of it.","breadcrumb":{"@id":"https://pass.app/blog/token2049-recap-navigating-the-whirlwind-of-opportunity/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://pass.app/blog/token2049-recap-navigating-the-whirlwind-of-opportunity/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https://pass.app/blog/token2049-recap-navigating-the-whirlwind-of-opportunity/#primaryimage","url":"https://pass.app/wp-content/uploads/2025/05/Navigating-the-Whirlwind-of-Innovation-at-TOKEN2049.png","contentUrl":"https://pass.app/wp-content/uploads/2025/05/Navigating-the-Whirlwind-of-Innovation-at-TOKEN2049.png","width":1920,"height":1440,"caption":"Navigating the Whirlwind of Innovation at TOKEN2049"},{"@type":"BreadcrumbList","@id":"https://pass.app/blog/token2049-recap-navigating-the-whirlwind-of-opportunity/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://pass.app/"},{"@type":"ListItem","position":2,"name":"Blogs","item":"https://pass.app/blog/"},{"@type":"ListItem","position":3,"name":"TOKEN2049 Recap: Navigating the Whirlwind of Opportunities"}]},{"@type":"WebSite","@id":"https://pass.app/#website","url":"https://pass.app/","name":"Pass App: Web3 Smart Wallet","description":"Web3 your way","publisher":{"@id":"https://pass.app/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://pass.app/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https://pass.app/#organization","name":"Pass App","url":"https://pass.app/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://pass.app/#/schema/logo/image/","url":"https://pass.app/wp-content/uploads/2024/09/Logo-horizontal-blue_green_1-1.png","contentUrl":"https://pass.app/wp-content/uploads/2024/09/Logo-horizontal-blue_green_1-1.png","width":660,"height":177,"caption":"Pass App"},"image":{"@id":"https://pass.app/#/schema/logo/image/"}}]} ``` -------------------------------- ### Google Tag Manager Initialization Source: https://pass.app/security/ This JavaScript snippet initializes Google Tag Manager (GTM) on the page. It ensures that the GTM data layer is available and loads the GTM script asynchronously. ```javascript (function(w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-KQLVM59N'); ``` -------------------------------- ### Pass App Prefetch Configuration Source: https://pass.app/blog/advantages-of-smart-crypto-wallets/ Specifies prefetching strategies for the Pass App, defining which documents should be prefetched based on specific criteria. This optimizes performance by loading resources proactively. ```javascript { "prefetch": [ { "source": "document", "where": { "and": [ { "href_matches": "\/" }, { "not": { "href_matches": [ "\/wp-*.php", "\/wp-admin\/\*", "\/wp-content\/uploads\/\*", "\/wp-content\/\*", "\/wp-content\/plugins\/\*", "\/wp-content\/themes\/pass-app-web-2024\/\*", "\/*\\?(.+)" ] } }, { "not": { "selector_matches": "a[rel~=\"nofollow\"]" } }, { "not": { "selector_matches": ".no-prefetch, .no-prefetch a" } } ] }, "eagerness": "conservative" } ] } ``` -------------------------------- ### Wallet Connection Settings Source: https://onchain.org/careers/ Configuration object for wallet connection features, including a WordPress REST API nonce for authenticated requests. ```javascript window.connectWalletSettings = {"wpRestNonce":"443565a3c9"}; ``` -------------------------------- ### WordPress Frontend REST API and i18n Configuration Source: https://pass.app/blog/introducing-pass-app-the-revolutionary-smart-wallet-for-a-new-era/ JavaScript configurations for WordPress, defining the REST API endpoint for frontend interactions and setting the locale data for internationalization (i18n). ```javascript /**/ /**/ /**/ ``` -------------------------------- ### Google Tag Manager Initialization Source: https://pass.app/blog/advantages-of-smart-crypto-wallets/ This JavaScript snippet initializes Google Tag Manager, essential for website analytics and tracking. It ensures the dataLayer is available and loads the GTM script asynchronously. ```javascript function(w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-KQLVM59N'); ``` -------------------------------- ### WordPress Color Utility Classes Source: https://onchain.org/careers/ Provides utility classes to apply predefined colors to text and backgrounds. These classes leverage the CSS color presets for easy styling of elements. ```css .has-black-color{color: var(--wp--preset--color--black) !important;} .has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;} .has-white-color{color: var(--wp--preset--color--white) !important;} .has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;} .has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;} .has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;} .has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;} .has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;} .has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;} .has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;} .has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;} .has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;} .has-black-background-color{background-color: var(--wp--preset--color--black) !important;} .has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;} .has-white-background-color{background-color: var(--wp--preset--color--white) !important;} .has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;} .has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;} ```