PageSourceSearch

https://selfica.space/cdn/shopifycloud/checkout-web/assets/c1/9c384ce8.CFjjgE6K.js

js selfica.space collected 2026-10-03 00:56:51 UTC 8,705 bytes, 1 lines download raw bytes

1const e="sandbox-polyfill-fetch",t={checkout:"sandbox-js-fetch","checkout-2025-07":"sandbox-js-fetch-2025-07","checkout-2023-04":"sandbox-js-fetch-2023-04","checkout-post-purchase":"sandbox-js-fetch-post-purchase"},n={checkout:"sandbox-js-eval","checkout-2025-07":"sandbox-js-eval-2025-07","checkout-2023-04":"sandbox-js-eval-2023-04"},o=["extension-fetch-call"];new Set(Object.values(t)),new Set(Object.values(n));const i="primary",a="primary-light",s="secondary",r="secondary-light",d="secondary-dark",l="tertiary",c="tertiary-light";function p(e,t){return`${e}-${t}`}function u(e,t){return`${e}:${t}`}const f=Date.now();function h(){return"number"==typeof performance?.timeOrigin?performance.timeOrigin:f}function x(e){return o.includes(e)}const m={"api-object":{tooltip:"Duration creating the extension's API object",devtoolsColor:"tertiary-dark",endLifecyclePhase:"apiObjectEnd"},"app-metafields-load":{tooltip:"Duration of loading the extension's app metafields",devtoolsColor:l,endLifecyclePhase:"appMetafieldsLoadEnd"},"sandbox-iframe-load":{tooltip:"Duration loading the iframe that bootstraps all extension web workers",devtoolsColor:c,endLifecyclePhase:"sandboxIframeLoadEnd"},"post-purchase-iframe-load":{tooltip:"Duration loading the iframe that bootstraps post-purchase extension web workers",devtoolsColor:c,endLifecyclePhase:"postPurchaseIframeLoadEnd"},"sandbox-js-fetch":{tooltip:"Duration downloading Shopify sandbox JavaScript for remote-dom extensions",devtoolsColor:s,endLifecyclePhase:"sandboxJsFetchEnd"},"sandbox-js-fetch-post-purchase":{tooltip:"Duration downloading and executing sandbox JavaScript for post-purchase extensions",devtoolsColor:r,endLifecyclePhase:"sandboxJsFetchPostPurchaseEnd"},"sandbox-js-fetch-2023-04":{tooltip:"Duration downloading and executing sandbox JavaScript for older extension on API version 2023-04",devtoolsColor:r,endLifecyclePhase:"sandboxJsFetch2023_04End"},"sandbox-js-fetch-2025-07":{tooltip:"Duration downloading Shopify sandbox JavaScript for extensions that rely on the 2025-07 sandbox version (2024-04 < API version <= 2025-07)",devtoolsColor:r,endLifecyclePhase:"sandboxJsFetch2025_07End"},"sandbox-polyfill-fetch":{tooltip:"Duration downloading the sandbox polyfill bundle",devtoolsColor:s,endLifecyclePhase:"sandboxPolyfillFetchEnd"},"sandbox-js-eval":{tooltip:"Duration standing up a web worker and evaluating Shopify sandbox JavaScript for remote-dom extensions",devtoolsColor:s,endLifecyclePhase:"sandboxJsEvalEnd"},"sandbox-js-eval-2025-07":{tooltip:"Duration standing up a web worker and evaluating Shopify sandbox JavaScript for extensions that rely on the 2025-07 sandbox version (2024-04 < API version <= 2025-07)",devtoolsColor:r,endLifecyclePhase:"sandboxJsEval2025_07End"},"sandbox-js-eval-2023-04":{tooltip:"Duration standing up a web worker and evaluating Shopify sandbox JavaScript for older extensions on API version 2023-04",devtoolsColor:r,endLifecyclePhase:"sandboxJsEval2023_04End"},"partner-js-fetch":{tooltip:"Duration downloading partner JavaScript for the extension",devtoolsColor:d,endLifecyclePhase:"partnerJsFetchEnd"},"partner-js-eval":{tooltip:"Duration evaluating partner JavaScript for an extension",devtoolsColor:d,endLifecyclePhase:"partnerJsEvalEnd"},"js-loading":{tooltip:"Composite duration of all fetching, loading, and evaluation of sandbox/partner JS prior to an extension's execution",devtoolsColor:d,endLifecyclePhase:"jsLoadingEnd",includeInMetrics:!0},execution:{tooltip:"Duration of first call to the remote extension's registration callback",devtoolsColor:"primary-dark",endLifecyclePhase:"executionEnd"},"partner-js-exec":{tooltip:"Duration rendering or running partner JavaScript within a web worker",devtoolsColor:a,endLifecyclePhase:"partnerJsExecEnd"},"wait-time-after-execution":{tooltip:"Time between extension execution completion and when the extension becomes visible in the UI",devtoolsColor:i,endLifecyclePhase:"waitTimeAfterExecution",includeInMetrics:!0},"extension-loading":{tooltip:"Time from initial checkout load to when the extension is visible",devtoolsColor:a,endLifecyclePhase:"visible",includeInMetrics:!0},"loading-skeleton":{tooltip:"Time an extension's loading skeleton is visible",devtoolsColor:l,endLifecyclePhase:"skeletonEnd"},"extension-fetch-call":{tooltip:"Duration of an extension fetch call",devtoolsColor:s},"extension-tts":{tooltip:"Time from the start of extension code execution until its initial render settles, including any data it waits on",devtoolsColor:i,endLifecyclePhase:"timeToSettleEnd",restartsPerAttempt:!0}},b={};Object.entries(m).forEach(([e,{endLifecyclePhase:t}])=>{t&&(b[p(e,"end")]=t)});const y=function({metricQueueLimit:e}){let t=!0;const n=function(e){let t=[];return{add:n=>{t.push(n),t.length>e&&t.shift()},clear:()=>{t=[]},get queue(){return t}}}(e),o=new Map,i=new Set;
1function a(e){i.forEach(t=>t(e))}function s(e){i.size>0?a([e]):n.add(e)}function r(e,n,i){const a=p(e,i);let r=n.type;"extension"===n.type&&(r=n.instanceId??n.extension.id);const d=u(a,r);if("start"===i&&m[e].restartsPerAttempt&&(o.delete(d),o.delete(u(p(e,"end"),r))),!o.has(d)){const e={};if("startTime"in n&&"number"==typeof n.startTime){const t=n.startTime-h();t>=0&&(e.startTime=t)}try{performance?.mark?.(d,e)}catch{}o.set(d,{initialLoad:t})}let l="duration"in n?n.duration:void 0;const c=u(p(e,"start"),r);"end"===i&&(l?v(e,n,{duration:l,end:d}):l=v(e,n,{start:c,end:d}));const f=b[a];if(!f)return;const x=o.get(c);let y;if(o.delete(c),"extension"===n.type){const e=n.timestamp?new Date(n.timestamp):new Date;y={type:"extension-metric",extension:n.extension,instanceId:n.instanceId??void 0,mark:f,timestamp:e,duration:!1===n.ttsRenderObserved?void 0:l,transferredBundleSize:n.transferredBundleSize,bundleSize:n.bundleSize,initialLoad:x?.initialLoad,ttsCompletionReason:n.ttsCompletionReason,ttsRenderObserved:n.ttsRenderObserved,ttsRequestCount:n.ttsRequestCount}}else y="sandbox-fetch"===n.type?{type:"sandbox-fetch-metric",mark:f,timestamp:new Date,duration:l,transferredBundleSize:n.transferredBundleSize,bundleSize:n.bundleSize,initialLoad:x?.initialLoad}:{type:"iframe-loader-metric",mark:f,timestamp:new Date,duration:l,initialLoad:x?.initialLoad};s(y)}return{markStarted(e,t){x(e)||r(e,t,"start")},markFinished(e,t){const n="extension-fetch"===t.type;n&&!x(e)||(n?function(e,t){const n={},o=t.startTime-h();o>=0&&(n.startTime=o),v(e,t,{start:n.startTime,duration:t.duration}),s({type:"extension-fetch-call-metric",mark:"fetch-call-end",timestamp:new Date(t.timestamp),duration:t.duration,extension:t.extension,instanceId:t.instanceId??void 0,httpStatus:t.httpStatus,httpMethod:t.httpMethod,destination:t.destination,errorType:t.errorType,origin:t.origin,requestUrl:t.requestUrl})}(e,t):r(e,t,"end"))},subscribe:e=>(i.add(e),a(n.queue),n.clear(),()=>{i.delete(e)}),get initialLoad(){return t},setEndOfInitialLoad(){t=!1}}}({metricQueueLimit:200});function v(e,t,n){if("function"==typeof performance?.measure)try{const o=performance.measure(e,{detail:{devtools:g(e,t)},...n});return"function"==typeof PerformanceMeasure&&o instanceof PerformanceMeasure?o.duration:void 0}catch{return}}function g(e,t,n="track-entry"){let o=t.type;"sandbox-fetch"===t.type&&(o="iframe-loader");const i=[["Event Description",m[e].tooltip]];return"iframe-loader"===t.type&&t.appId&&i.push(["App ID",t.appId]),"extension"!==t.type&&"extension-fetch"!==t.type||(o=`extension-${t.extension.id}`,i.push(["Extension ID",t.extension.id],["Extension Name",t.extension.name],["Extension API Version",t.extension.apiVersion],["App ID",t.extension.appId]),t.instanceId&&i.push(["Instance ID",t.instanceId]),t.extension.appName&&i.push(["App Name",t.extension.appName]),t.extension.extensionPoint&&i.push(["Extension Target",`${t.extension.extensionPoint.target}${t.extension.placementReference?` (${t.extension.placementReference})`:""}`])),"sandbox-fetch"!==t.type&&"extension"!==t.type||(t.transferredBundleSize&&i.push(["Transferred Bundle Size",String(t.transferredBundleSize)]),t.bundleSize&&i.push(["Bundle Size",String(t.bundleSize)])),"extension-fetch"===t.type&&(t.errorType&&i.push(["Error Type",t.errorType]),t.httpStatus&&i.push(["HTTP Status",String(t.httpStatus)]),i.push(["Destination",t.destination])),"extension"===t.type&&t.ttsCompletionReason&&(i.push(["Reason",t.ttsCompletionReason],["Render Observed",String(t.ttsRenderObserved)]),null!=t.ttsRequestCount&&i.push(["Request Count",String(t.ttsRequestCount)])),"track-entry"===n?{dataType:n,color:m[e].devtoolsColor,track:o,trackGroup:"UI Extensions",tooltipText:m[e].tooltip,properties:i}:{dataType:n,color:m[e].devtoolsColor,tooltipText:m[e].tooltip,properties:i}}export{e as S,n as a,y as e,m,t as s};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.