{"packageName":"@cedros/shop-react","packageRoot":"workspace/react","entryPath":"workspace/react/dist/web/register.js","surfaceEntryPaths":{"web":"workspace/react/dist/web/register.js"},"surfaceFilePaths":{"web":["workspace/react/dist/SubscriptionTemplate-YH27IgYR.js","workspace/react/dist/styleInjection-BL155Khs.js","workspace/react/dist/web/register.js"]},"files":[{"path":"workspace/react/dist/SubscriptionTemplate-YH27IgYR.js","kind":"module","text":"import { A as e, D as t, E as n, O as r, S as i, T as a, a as o, d as s, f as c, g as l, h as u, i as d, j as f, k as p, l as m, n as h, o as g, p as _, u as v, w as y, y as b } from \"./styleInjection-BL155Khs.js\";\nimport * as x from \"react\";\nimport S, { useId as C } from \"react\";\nimport { Fragment as w, jsx as T, jsxs as E } from \"react/jsx-runtime\";\n//#region src/storefront/styles.css?inline\nvar D = \".cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content,.cedros-shop-public__overlay,.cedros-shop-toast{--cs-text:var(--cebbwf5-runtime-text,var(--cebbwf5r-fg,oklch(14.5% 0 0)));--cs-muted:var(--cebbwf5-runtime-muted,var(--cebbwf5r-muted,oklch(55.6% 0 0)));--cs-border:var(--cebbwf5-runtime-border,var(--cebbwf5r-border,oklch(92.2% 0 0)));--cs-bg:var(--cebbwf5-runtime-bg,var(--cebbwf5r-bg,oklch(98.5% 0 0)));--cs-panel:var(--cebbwf5-runtime-panel,var(--cebbwf5r-panel,oklch(100% 0 0)));--cs-accent:var(--cebbwf5-runtime-accent,var(--cebbwf5r-link-strong,var(--cebbwf5r-primary,oklch(20.5% 0 0))));--cs-action-bg:var(--cebbwf5-runtime-action-bg,var(--cebbwf5r-primary,var(--cs-accent)));--cs-action-fg:var(--cebbwf5-runtime-action-fg,var(--cebbwf5r-primary-fg,oklch(98.5% 0 0)));--cs-success:var(--cs-accent);--cs-error:var(--cebbwf5-runtime-error,oklch(57.7% .245 27.325));--cs-warning:var(--cebbwf5-runtime-warning,oklch(76.9% .188 70.08));--cs-font-body:var(--cebbwf5-font-body,var(--cebbwf5-font-sans,var(--cebbwf5r-font-sans,var(--cebbwf5r-font,ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, Helvetica, Arial, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\"))));--cs-font-heading:var(--cebbwf5-font-heading,var(--cebbwf5-font-display,var(--cs-font-body)));--cs-line-height-body:var(--cebbwf5-line-height-body,1.6);--cs-line-height-heading:var(--cebbwf5-line-height-heading,1.1);--cs-page-inset:var(--cebbwf5-space-page-inset,var(--cebbwf5r-space-page-inset,clamp(1rem, 2vw, 2rem)));--cs-content-gap:var(--cebbwf5-space-content,var(--cebbwf5r-space-content,1rem));--cs-container-wide:var(--cebbwf5-container-wide,var(--cebbwf5r-container-wide,80rem));--cs-surface-1:var(--cs-panel);--cs-surface-2:color-mix(in srgb, var(--cs-text) 3%, var(--cs-panel));--cs-surface-3:color-mix(in srgb, var(--cs-text) 6%, var(--cs-panel));--cs-overlay-bg:color-mix(in srgb, var(--cs-text) 32%, transparent);--cs-accent-soft:var(--cebbwf5-runtime-accent-soft,var(--cebbwf5r-link-soft,color-mix(in srgb, var(--cs-accent) 8%, transparent)));--cs-error-soft:color-mix(in srgb, var(--cs-error) 9%, transparent);--cs-warning-soft:color-mix(in srgb, var(--cs-warning) 12%, transparent);--cs-success-soft:color-mix(in srgb, var(--cs-success) 8%, transparent);--cs-border-strong:color-mix(in srgb, var(--cs-text) 22%, var(--cs-border));--cs-ring:var(--cs-accent);--cs-shadow-tint:color-mix(in srgb, var(--cs-text) 7%, transparent);--cs-shadow-tint-strong:color-mix(in srgb, var(--cs-text) 13%, transparent);--cs-shadow-xs:var(--cebbwf5-shadow-sm,var(--cebbwf5r-shadow-sm,0 1px 2px var(--cs-shadow-tint)));--cs-shadow-sm:var(--cebbwf5-shadow-sm,var(--cebbwf5r-shadow-sm,0 1px 2px var(--cs-shadow-tint), 0 2px 8px -2px var(--cs-shadow-tint)));--cs-shadow-md:var(--cebbwf5-shadow-md,var(--cebbwf5r-shadow-md,0 2px 4px -1px var(--cs-shadow-tint), 0 8px 20px -6px var(--cs-shadow-tint-strong)));--cs-shadow-lg:var(--cebbwf5-shadow-lg,var(--cebbwf5r-shadow-lg,0 4px 8px -2px var(--cs-shadow-tint), 0 16px 40px -8px var(--cs-shadow-tint-strong)));--cs-shadow-pop:0 0 0 1px var(--cs-border), var(--cebbwf5-shadow-lg,var(--cebbwf5r-shadow-lg,0 8px 16px -4px var(--cs-shadow-tint), 0 24px 56px -12px var(--cs-shadow-tint-strong)));--cs-radius-detail:var(--cebbwf5-radius-sm,var(--cebbwf5r-radius-sm,.375rem));--cs-radius-none:0;--cs-radius-control:var(--cebbwf5-radius-md,var(--cebbwf5-radius,var(--cebbwf5r-radius,.75rem)));--cs-radius-card:var(--cebbwf5-radius-lg,var(--cebbwf5r-radius-lg,1rem));--cs-radius-panel:var(--cebbwf5-radius-lg,var(--cebbwf5r-radius-lg,1.5rem));--cs-radius-full:var(--cebbwf5-radius-pill,var(--cebbwf5r-radius-pill,999px));--cs-radius-sm:var(--cs-radius-detail);--cs-radius-md:var(--cs-radius-control);--cs-radius-lg:var(--cs-radius-card);--cs-radius-xl:var(--cs-radius-panel);--cs-dur-fast:.12s;--cs-dur:.18s;--cs-dur-slow:.32s;--cs-dur-entrance:.44s;--cs-ease-out:cubic-bezier(.16, 1, .3, 1);--cs-ease-in:cubic-bezier(.55, 0, .85, .4);--cs-ease-spring:cubic-bezier(.3, 1.25, .5, 1);accent-color:var(--cs-accent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:where(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content,.cedros-shop-public__overlay,.cedros-shop-toast):where(.cebbwf5-dark *){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@keyframes cs-fade-in{0%{opacity:0}to{opacity:1}}@keyframes cs-fade-out{0%{opacity:1}to{opacity:0}}@keyframes cs-rise{0%{opacity:0;translate:0 .625rem}to{opacity:1;translate:0}}@keyframes cs-grid-reveal{0%{opacity:0;translate:0 .75rem;rotate:-2deg}to{opacity:1;translate:0;rotate:0deg}}@keyframes cs-drop{0%{opacity:0;translate:0 -.5rem}to{opacity:1;translate:0}}@keyframes cs-scale-in{0%{opacity:0;scale:.96}to{opacity:1;scale:1}}@keyframes cs-scale-out{0%{opacity:1;scale:1}to{opacity:0;scale:.97}}@keyframes cs-slide-in-right{0%{translate:100%}to{translate:0}}@keyframes cs-slide-out-right{0%{translate:0}to{translate:100%}}@keyframes cs-slide-in-left{0%{translate:-100%}to{translate:0}}@keyframes cs-slide-out-left{0%{translate:0}to{translate:-100%}}@keyframes cs-slide-in-up{0%{translate:0 100%}to{translate:0}}@keyframes cs-slide-out-down{0%{translate:0}to{translate:0 100%}}@keyframes cs-slide-in-down{0%{translate:0 -100%}to{translate:0}}@keyframes cs-slide-out-up{0%{translate:0}to{translate:0 -100%}}@keyframes cs-pop-in{0%{opacity:0;translate:0 .5rem;scale:.97}to{opacity:1;translate:0;scale:1}}@keyframes cs-pop-out{0%{opacity:1;translate:0;scale:1}to{opacity:0;translate:0 .5rem;scale:.97}}@keyframes cs-shimmer{0%{translate:-100%}to{translate:100%}}@keyframes cs-pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes cs-spin{to{rotate:360deg}}@keyframes cs-float{0%,to{translate:0}50%{translate:0 -.375rem}}@keyframes cs-value-in{0%{opacity:0;filter:blur(2px);translate:0 -.25rem}to{opacity:1;filter:blur();translate:0}}@keyframes cs-badge-in{0%{opacity:0;translate:var(--cs-badge-x,.375rem) -.375rem;scale:.4}to{opacity:1;translate:0;scale:1}}@keyframes cs-shake{0%,to{translate:0}15%{translate:-.375rem}30%{translate:.3125rem}45%{translate:-.25rem}60%{translate:.1875rem}75%{translate:-.0625rem}}@keyframes cs-check-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes cs-toast-in{0%{opacity:0;filter:blur(4px);translate:0 -.75rem;scale:.96}to{opacity:1;filter:blur();translate:0;scale:1}}@keyframes cs-toast-out{to{opacity:0;filter:blur(3px);translate:0 -.5rem;scale:.96}}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet) :where(.cs-anim-rise){animation:cs-rise var(--cs-dur-entrance) var(--cs-ease-out) backwards}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet) :where(.cs-anim-fade){animation:cs-fade-in var(--cs-dur-slow) var(--cs-ease-out) backwards}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet) :where(.cs-anim-drop){animation:cs-drop var(--cs-dur-slow) var(--cs-ease-out) backwards}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet) :where(.cs-anim-value){animation:cs-value-in var(--cs-dur) var(--cs-ease-out) backwards}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet) :where(.cs-anim-check){stroke-dasharray:1;animation:cs-check-draw var(--cs-dur-slow) var(--cs-ease-out) backwards}.cedros-shop-public .cs-spinner,.cedros-shop-public__dialog .cs-spinner,.cedros-shop-public__sheet .cs-spinner{border:2px solid color-mix(in srgb, currentColor 30%, transparent);border-radius:var(--cs-radius-full);border-top-color:currentColor;flex-shrink:0;width:1em;height:1em;animation:.7s linear infinite cs-spin;display:inline-block}.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content{box-sizing:border-box;color:var(--cs-text,oklch(14.5% 0 0));font:inherit;font-family:var(--cs-font-body);line-height:var(--cs-line-height-body)}.cedros-shop-public *,.cedros-shop-public :before,.cedros-shop-public :after,.cedros-shop-public__dialog *,.cedros-shop-public__sheet *,.cedros-shop-public__select-content *{box-sizing:border-box}.cedros-shop-public{width:100%;min-width:0;color:var(--cs-text,oklch(14.5% 0 0));-webkit-font-smoothing:antialiased}.cedros-shop-public :where(h1,h2,h3,p){letter-spacing:0;margin:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet) :where(h1,h2,h3){font-family:var(--cs-font-heading)}.cedros-shop-public :where(h1){letter-spacing:-.02em;font-size:clamp(1.75rem,1.2rem + 1.6vw,2.5rem);font-weight:700;line-height:var(--cs-line-height-heading);text-wrap:balance}.cedros-shop-public :where(h2){letter-spacing:-.01em;font-size:clamp(1.125rem,.95rem + .6vw,1.35rem);font-weight:650;line-height:var(--cs-line-height-heading)}.cedros-shop-public :where(p){color:var(--cs-muted);font-size:.925rem;line-height:var(--cs-line-height-body)}.cedros-shop-public :where(a){color:var(--cs-accent);text-underline-offset:.18em;transition:color var(--cs-dur) var(--cs-ease-out), text-decoration-color var(--cs-dur) var(--cs-ease-out);text-decoration-thickness:.08em}.cedros-shop-public :where(img){max-width:100%;height:auto}.cedros-shop-public__eyebrow{color:var(--cs-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem;font-weight:650;line-height:1.4}.cedros-shop-public:where(main),.cedros-shop-public :where(main){width:min(100%, var(--cs-container-wide));margin:0 auto;padding:clamp(1rem,2vw,2rem)}.cedros-shop-public :where(header){z-index:20;border-bottom:1px solid color-mix(in srgb, var(--cs-border) 80%, transparent);background:color-mix(in srgb, var(--cs-bg) 88%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);position:sticky;top:0}.cedros-shop-public__header-inner{align-items:center;gap:min(.75rem, var(--cs-content-gap));min-width:0;width:min(100%, var(--cs-container-wide));grid-template-columns:minmax(0,auto) minmax(10rem,1fr) auto;margin:0 auto;padding:.75rem clamp(1rem,2vw,1.25rem);display:grid}.cedros-shop-public__header-inner>*{min-width:0}.cedros-shop-public__brand{color:var(--cs-text);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.cedros-shop-public__brand:hover{color:var(--cs-accent)}.cedros-shop-public__header-actions{align-items:center;gap:.5rem;min-width:0;display:flex}.cedros-shop-public__header-actions>*{min-width:0}.cedros-shop-public__surface-heading{gap:.35rem;max-width:64ch;display:grid}.cedros-shop-public__shop-layout,.cedros-shop-public__category-layout,.cedros-shop-public__cart-layout{align-items:start;gap:var(--cs-content-gap);display:grid}.cedros-shop-public__shop-layout,.cedros-shop-public__category-layout{grid-template-columns:minmax(14rem,17.5rem) minmax(0,1fr)}.cedros-shop-public__cart-layout{grid-template-columns:minmax(0,1fr) minmax(18rem,22.5rem)}.cedros-shop-public__card,.cedros-shop-public article,.cedros-shop-public__cart-panel,.cedros-shop-public__state{border:1px solid var(--cs-border);border-radius:var(--cs-radius-lg);background:linear-gradient(to bottom, var(--cs-surface-1), color-mix(in srgb, var(--cs-surface-1) 88%, var(--cs-bg)));box-shadow:var(--cs-shadow-xs)}.cedros-shop-public__card{overflow:hidden}.cedros-shop-public__card-header,.cedros-shop-public__card-content{padding:1rem}.cedros-shop-public__card-title{font-size:.95rem;font-weight:650}.cedros-shop-public__state{text-align:center;place-items:center;min-height:12rem;padding:clamp(1.25rem,4vw,2.5rem);display:grid}.cedros-shop-public__state>div{gap:.6rem;max-width:32rem;display:grid}.cedros-shop-public__button,.cedros-shop-public :where(button){border:1px solid var(--cs-border);border-radius:var(--cs-radius-md);background:var(--cs-surface-1);min-height:2.5rem;color:var(--cs-text);font:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--cs-dur) var(--cs-ease-out), border-color var(--cs-dur) var(--cs-ease-out), color var(--cs-dur) var(--cs-ease-out), box-shadow var(--cs-dur) var(--cs-ease-out), scale var(--cs-dur-fast) var(--cs-ease-out), filter var(--cs-dur-fast) var(--cs-ease-out), opacity var(--cs-dur) var(--cs-ease-out);justify-content:center;align-items:center;gap:.5rem;padding:.55rem .85rem;font-size:.875rem;font-weight:650;line-height:1;text-decoration:none;display:inline-flex}.cedros-shop-public__button:hover,.cedros-shop-public :where(button:hover){border-color:var(--cs-border-strong);background:var(--cs-surface-2)}.cedros-shop-public__button:active:not(:disabled),.cedros-shop-public :where(button:active:not(:disabled)){scale:.975}.cedros-shop-public__button:disabled,.cedros-shop-public :where(button:disabled){cursor:not-allowed;opacity:.55;scale:1}.cedros-shop-public__button--default,.cedros-shop-public :where(button[type=submit]){border-color:var(--cs-action-bg);background:linear-gradient(to bottom, color-mix(in srgb, var(--cs-action-fg) 12%, var(--cs-action-bg)), var(--cs-action-bg));color:var(--cs-action-fg);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--cs-action-fg) 14%, transparent), var(--cs-shadow-xs)}.cedros-shop-public__button--default:hover,.cedros-shop-public :where(button[type=submit]:hover){border-color:var(--cs-action-bg);background:linear-gradient(to bottom, color-mix(in srgb, var(--cs-action-fg) 12%, var(--cs-action-bg)), var(--cs-action-bg));filter:brightness(1.06)}.cedros-shop-public__button--default:active:not(:disabled){filter:brightness(.97)}.cedros-shop-public__button--secondary{background:var(--cs-surface-3);border-color:#0000}.cedros-shop-public__button--secondary:hover{background:color-mix(in srgb, var(--cs-text) 10%, var(--cs-panel));border-color:#0000}.cedros-shop-public__button--ghost{background:0 0;border-color:#0000}.cedros-shop-public__button--ghost:hover{background:var(--cs-accent-soft);border-color:#0000}.cedros-shop-public__button--outline{background:0 0}.cedros-shop-public__button--destructive{border-color:var(--cs-error);background:linear-gradient(to bottom, color-mix(in srgb, var(--cs-action-fg) 8%, var(--cs-error)), var(--cs-error));color:var(--cs-action-fg,oklch(98.5% 0 0))}.cedros-shop-public__button--destructive:hover{border-color:var(--cs-error);background:linear-gradient(to bottom, color-mix(in srgb, var(--cs-action-fg) 8%, var(--cs-error)), var(--cs-error));filter:brightness(1.05)}.cedros-shop-public__button--icon{color:var(--cs-muted);padding:0}.cedros-shop-public__button--icon:hover{color:var(--cs-text)}.cedros-shop-public :where(input:not([type=checkbox]):not([type=radio]),textarea,select),.cedros-shop-public__input,.cedros-shop-public__select-trigger{border:1px solid var(--cs-border);border-radius:var(--cs-radius-md);background:var(--cs-surface-1);width:100%;min-width:0;min-height:2.5rem;color:var(--cs-text);font:inherit;transition:border-color var(--cs-dur) var(--cs-ease-out), box-shadow var(--cs-dur) var(--cs-ease-out);padding:.55rem .75rem;font-size:.875rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet) :where(input[type=checkbox],input[type=radio]){width:1rem;height:1rem;accent-color:var(--cs-accent);cursor:pointer;flex-shrink:0;margin:0}.cedros-shop-public :where(input:hover,textarea:hover,select:hover),.cedros-shop-public__select-trigger:hover{border-color:var(--cs-border-strong)}.cedros-shop-public :where(){color:color-mix(in srgb, var(--cs-muted) 80%, transparent)}.cedros-shop-public :where(input:focus,textarea:focus,select:focus){border-color:var(--cs-ring);box-shadow:0 0 0 3px color-mix(in srgb, var(--cs-ring) 18%, transparent);outline:none}.cedros-shop-public :where(button:focus-visible,a:focus-visible),.cedros-shop-public__dialog :where(button:focus-visible,a:focus-visible,input:focus,textarea:focus),.cedros-shop-public__sheet :where(button:focus-visible,a:focus-visible,input:focus),.cedros-shop-public__select-content :where([role=option]:focus){outline:2px solid var(--cs-ring);outline-offset:2px}.cedros-shop-public.min-h-screen{min-height:100vh}.cedros-shop-public__overlay{z-index:50;background:var(--cs-overlay-bg);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.cedros-shop-public__overlay[data-state=open]{animation:cs-fade-in var(--cs-dur-slow) var(--cs-ease-out)}.cedros-shop-public__overlay[data-state=closed]{animation:cs-fade-out var(--cs-dur) var(--cs-ease-in) forwards}.cedros-shop-public__overlay--ghost{-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:0 0}.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content{border:1px solid var(--cs-border);background:var(--cs-surface-1);color:var(--cs-text)}.cedros-shop-public__dialog{z-index:50;border-radius:var(--cs-radius-xl);max-height:calc(100dvh - 2rem);box-shadow:var(--cs-shadow-lg);position:fixed;top:50%;left:50%;overflow-y:auto;translate:-50% -50%}.cedros-shop-public__dialog[data-state=open]{animation:cs-scale-in var(--cs-dur-slow) var(--cs-ease-spring)}.cedros-shop-public__dialog[data-state=closed]{animation:cs-scale-out var(--cs-dur) var(--cs-ease-in) forwards;pointer-events:none}.cedros-shop-public__sheet{z-index:50;box-shadow:var(--cs-shadow-lg)}.cedros-shop-public__sheet[data-state=closed],.cedros-shop-public__overlay[data-state=closed]{pointer-events:none}.cedros-shop-public__sheet--right[data-state=open]{animation:cs-slide-in-right var(--cs-dur-slow) var(--cs-ease-out)}.cedros-shop-public__sheet--right[data-state=closed]{animation:cs-slide-out-right var(--cs-dur) var(--cs-ease-in) forwards}.cedros-shop-public__sheet--left[data-state=open]{animation:cs-slide-in-left var(--cs-dur-slow) var(--cs-ease-out)}.cedros-shop-public__sheet--left[data-state=closed]{animation:cs-slide-out-left var(--cs-dur) var(--cs-ease-in) forwards}.cedros-shop-public__sheet--bottom[data-state=open]{animation:cs-slide-in-up var(--cs-dur-slow) var(--cs-ease-out)}.cedros-shop-public__sheet--bottom[data-state=closed]{animation:cs-slide-out-down var(--cs-dur) var(--cs-ease-in) forwards}.cedros-shop-public__sheet--top[data-state=open]{animation:cs-slide-in-down var(--cs-dur-slow) var(--cs-ease-out)}.cedros-shop-public__sheet--top[data-state=closed]{animation:cs-slide-out-up var(--cs-dur) var(--cs-ease-in) forwards}.cedros-shop-public__sheet--left,.cedros-shop-public__sheet--right{width:min(92vw,26rem)}.cedros-shop-public__sheet--popup{border-radius:var(--cs-radius-xl);box-shadow:var(--cs-shadow-pop)}.cedros-shop-public__sheet--popup[data-state=open]{animation:cs-pop-in var(--cs-dur-slow) var(--cs-ease-spring)}.cedros-shop-public__sheet--popup[data-state=closed]{animation:cs-pop-out var(--cs-dur) var(--cs-ease-in) forwards}@media (width<=900px){.cedros-shop-public__shop-layout,.cedros-shop-public__category-layout,.cedros-shop-public__cart-layout{grid-template-columns:1fr}}@media (width<=640px){.cedros-shop-public__header-inner{grid-template-columns:1fr}.cedros-shop-public__header-actions{flex-direction:column;align-items:stretch}.cedros-shop-public__header-actions,.cedros-shop-public__button{width:100%}.cedros-shop-public__header-inner .cedros-shop-public__header-actions,.cedros-shop-public__header-inner .cedros-shop-public__button{width:auto}.cedros-shop-public__header-inner .cedros-shop-public__header-actions{flex-direction:row;align-items:center}.cedros-shop-public__cart-line{grid-template-columns:3rem minmax(0,1fr)}}@media (width<=420px){.cedros-shop-public .cedros-shop-public__header-inner{grid-template-columns:minmax(0,1fr) auto;display:grid}.cedros-shop-public__header-inner>.flex-1{grid-area:2/1/auto/-1;width:100%}.cedros-shop-public__header-inner .cedros-shop-public__header-actions{grid-area:1/2;justify-self:end}}.cedros-shop-public__product-grid{grid-template-columns:repeat(var(--cebbwf5-shop-grid-base,1), minmax(0, 1fr));gap:1rem;display:grid}.cedros-shop-public__product-grid-item{min-width:0;height:100%;animation:cs-grid-reveal var(--cs-dur-entrance) var(--cs-ease-out) backwards;animation-delay:var(--cebbwf5-shop-grid-delay,0s)}.cedros-shop-public__product-thumbnails{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:thin;-webkit-overflow-scrolling:touch;scroll-padding-inline:.125rem}.cedros-shop-public__product-thumbnails>*{scroll-snap-align:start;scroll-snap-stop:normal}.cedros-shop-public__category-nav{gap:.25rem;display:grid}.cedros-shop-public__category-nav-item{width:100%;color:var(--cs-muted);background:0 0;border-color:#0000;justify-content:space-between;font-weight:500}.cedros-shop-public__category-nav-item:hover{background:var(--cs-surface-2);color:var(--cs-text);border-color:#0000}.cedros-shop-public__category-nav-item[aria-current=page]{background:var(--cs-accent-soft);color:var(--cs-text);font-weight:650}.cedros-shop-public__filters{gap:1rem;display:grid}.cedros-shop-public__skeleton{background:color-mix(in srgb, var(--cs-muted) 13%, transparent);min-height:1rem;position:relative;overflow:hidden}.cedros-shop-public__skeleton:after{content:\\\"\\\";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--cs-panel) 55%, transparent), transparent);animation:cs-shimmer 1.8s var(--cs-ease-out) infinite;position:absolute;inset:0;translate:-100%}.cedros-shop-public__product-card{min-width:0;height:100%;transition:border-color var(--cs-dur) var(--cs-ease-out), box-shadow var(--cs-dur-slow) var(--cs-ease-out), translate var(--cs-dur-slow) var(--cs-ease-out);flex-direction:column;display:flex;overflow:hidden}@media (hover:hover){.cedros-shop-public__product-card:hover{border-color:var(--cs-border-strong);box-shadow:var(--cs-shadow-md);translate:0 -2px}}.cedros-shop-public__product-card:focus-within{border-color:var(--cs-border-strong)}.cedros-shop-public__product-card-body{gap:.65rem;padding:1rem;display:grid}.cedros-shop-public__product-media{background:color-mix(in srgb, var(--cs-muted) 10%, transparent);position:relative;overflow:hidden}.cedros-shop-public__product-media img{object-fit:cover;width:100%;height:100%;transition:scale calc(var(--cs-dur-slow) * 1.5) var(--cs-ease-out);display:block}@media (hover:hover){.cedros-shop-public__product-card:hover .cedros-shop-public__product-media img{scale:1.045}}.cedros-shop-public__quick-view{top:.75rem;opacity:0;transition:opacity var(--cs-dur) var(--cs-ease-out), translate var(--cs-dur) var(--cs-ease-out);position:absolute;inset-inline-end:.75rem;translate:0 -.25rem}.cedros-shop-public__product-card:hover .cedros-shop-public__quick-view,.cedros-shop-public__product-card:focus-within .cedros-shop-public__quick-view{opacity:1;translate:0}.cedros-shop-public__quick-view .cedros-shop-public__button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:color-mix(in srgb, var(--cs-panel) 85%, transparent);box-shadow:var(--cs-shadow-sm)}@media (hover:none){.cedros-shop-public__quick-view{opacity:1;translate:0}}.cedros-shop-public__product-title{color:var(--cs-text);font-size:.9rem;font-weight:650;line-height:1.35}.cedros-shop-public__product-description,.cedros-shop-public__muted{color:var(--cs-muted);font-size:.8125rem;line-height:1.5}.cedros-shop-public__price{font-variant-numeric:tabular-nums;align-items:baseline;gap:.4rem;display:flex}.cedros-shop-public__price-current{color:var(--cs-text);font-weight:700}.cedros-shop-public__price-compare{color:var(--cs-muted);text-decoration:line-through}.cedros-shop-public__badge{border:1px solid var(--cs-border);border-radius:var(--cs-radius-full);background:color-mix(in srgb, var(--cs-panel) 88%, transparent);min-height:1.5rem;color:var(--cs-text);align-items:center;gap:.3rem;padding:.18rem .55rem;font-size:.72rem;font-weight:650;display:inline-flex}.cedros-shop-public__badge--accent{border-color:color-mix(in srgb, var(--cs-accent) 45%, var(--cs-border));background:var(--cs-accent-soft);color:var(--cs-accent)}.cedros-shop-public__badge--warning,.cedros-shop-public__badge--error{background:color-mix(in srgb, var(--cs-panel) 92%, transparent)}.cedros-shop-public__badge--warning:before,.cedros-shop-public__badge--error:before{content:\\\"\\\";border-radius:var(--cs-radius-full);background:currentColor;width:.375rem;height:.375rem}.cedros-shop-public__badge--warning{border-color:color-mix(in srgb, var(--cs-warning) 45%, var(--cs-border));color:color-mix(in srgb, var(--cs-warning) 75%, var(--cs-text))}.cedros-shop-public__badge--error,.cedros-shop-public__error{border-color:color-mix(in srgb, var(--cs-error) 45%, var(--cs-border));color:var(--cs-error)}.cedros-shop-public__asset-badge{background:color-mix(in srgb, var(--cs-accent) 10%, var(--cs-panel));color:var(--cs-accent);text-overflow:ellipsis;white-space:nowrap;max-width:10rem;overflow:hidden}.cedros-shop-public__warning{color:var(--cs-warning)}.cedros-shop-public__notice{border:1px solid color-mix(in srgb, var(--cs-warning) 50%, var(--cs-border));border-radius:var(--cs-radius-lg);background:var(--cs-warning-soft);color:var(--cs-text);padding:.75rem}.cedros-shop-public__success{border:1px solid color-mix(in srgb, var(--cs-accent) 45%, var(--cs-border));border-radius:var(--cs-radius-lg);background:var(--cs-success-soft);padding:.75rem}.cedros-shop-public p.cedros-shop-public__success,.cedros-shop-public p.cedros-shop-public__error.border,.cedros-shop-public p.cedros-shop-public__success[role=status],.cedros-shop-public p.cedros-shop-public__error[role=alert]{animation:cs-drop var(--cs-dur-slow) var(--cs-ease-out) backwards}.cedros-shop-public p.cedros-shop-public__error.border{background:var(--cs-error-soft)}.cedros-shop-public .cedros-shop-public__invalid-shake{animation:cs-shake var(--cs-dur-slow) cubic-bezier(.36, .07, .19, .97)}@media (width>=768px){.cedros-shop-public__product-grid{grid-template-columns:repeat(var(--cebbwf5-shop-grid-md,3), minmax(0, 1fr))}}@media (width>=1024px){.cedros-shop-public__product-grid{grid-template-columns:repeat(var(--cebbwf5-shop-grid-lg,3), minmax(0, 1fr))}}@media (width<=640px){.cedros-shop-public__product-grid{grid-template-columns:1fr;gap:.75rem}.cedros-shop-public__product-card-body{gap:.5rem;padding:.75rem}}.cedros-shop-public :where(button[aria-pressed=true]),.cedros-shop-public__dialog :where(button[aria-pressed=true]),.cedros-shop-public__sheet :where(button[aria-pressed=true]){border-color:var(--cs-accent);background:var(--cs-accent-soft);box-shadow:inset 0 0 0 1px var(--cs-accent)}.cedros-shop-public__segmented{border:1px solid var(--cs-border);border-radius:var(--cs-radius-lg);background:var(--cs-surface-2);gap:.25rem;padding:.25rem;display:inline-flex}.cedros-shop-public__segmented :where(button){min-height:2rem;color:var(--cs-muted);background:0 0;border-color:#0000;font-weight:600}.cedros-shop-public__segmented :where(button:hover){color:var(--cs-text);background:0 0;border-color:#0000}.cedros-shop-public__segmented :where(button[aria-pressed=true]){border-color:var(--cs-border);background:var(--cs-surface-1);color:var(--cs-text);box-shadow:var(--cs-shadow-xs)}.cedros-shop-public__plan-card{transition:border-color var(--cs-dur) var(--cs-ease-out), box-shadow var(--cs-dur-slow) var(--cs-ease-out), translate var(--cs-dur-slow) var(--cs-ease-out);flex-direction:column;padding:1.5rem;display:flex}@media (hover:hover){.cedros-shop-public__plan-card:hover{border-color:var(--cs-border-strong);box-shadow:var(--cs-shadow-md);translate:0 -2px}}.cedros-shop-public__plan-card--popular{border-color:var(--cs-accent);box-shadow:0 0 0 1px var(--cs-accent), var(--cs-shadow-sm)}@media (hover:hover){.cedros-shop-public__plan-card--popular:hover{border-color:var(--cs-accent);box-shadow:0 0 0 1px var(--cs-accent), var(--cs-shadow-md)}}.cedros-shop-public__plan-price{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700}.cedros-shop-public__plan-features{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.cedros-shop-public__plan-features :where(li){color:var(--cs-muted);align-items:flex-start;gap:.5rem;display:flex}.cedros-shop-public__plan-features :where(svg){color:var(--cs-accent);flex-shrink:0;margin-top:.125rem}.cedros-shop-public__order-card{transition:border-color var(--cs-dur) var(--cs-ease-out), box-shadow var(--cs-dur-slow) var(--cs-ease-out)}.cedros-shop-public__order-card:hover{border-color:var(--cs-border-strong);box-shadow:var(--cs-shadow-sm)}.cedros-shop-public__order-lines{color:var(--cs-muted);font-variant-numeric:tabular-nums}.cedros-shop-public__inline-form{flex-wrap:wrap;gap:.5rem;display:flex}.cedros-shop-public__inline-form input{flex:12rem}.cedros-shop-public__cart-panel{gap:1rem;padding:1rem;display:grid}.cedros-shop-public__cart-list{overflow-x:auto}.cedros-shop-public__cart-line{border-bottom:1px solid var(--cs-border);transition:background var(--cs-dur) var(--cs-ease-out);grid-template-columns:4rem minmax(0,1fr) auto;align-items:start;gap:.75rem;padding:1rem;display:grid}.cedros-shop-public__cart-line--compact{align-items:flex-start;display:flex}.cedros-shop-public__cart-line:last-child{border-bottom:0}.cedros-shop-public__cart-summary{gap:.85rem;display:grid}.cedros-shop-public__collapsible{transition:grid-template-rows var(--cs-dur-slow) var(--cs-ease-out), opacity var(--cs-dur) var(--cs-ease-in);grid-template-rows:1fr;display:grid}.cedros-shop-public__collapsible-inner{min-width:0;min-height:0;overflow:hidden}.cedros-shop-public__collapsible[data-leaving]{opacity:0;pointer-events:none;grid-template-rows:0fr}.cedros-shop-public .cedros-shop-public__reveal{opacity:1;transition:grid-template-rows var(--cs-dur-slow) var(--cs-ease-out), opacity var(--cs-dur) var(--cs-ease-out);grid-template-rows:1fr;display:grid}@starting-style{.cedros-shop-public .cedros-shop-public__reveal{opacity:0;grid-template-rows:0fr}}.cedros-shop-public__select-field{width:100%;display:block;position:relative}.cedros-shop-public .cedros-shop-public__select-trigger{appearance:none;padding-inline-end:2.25rem}.cedros-shop-public__select-arrow{inset-inline-end:.75rem;pointer-events:none;background-color:var(--cs-muted);width:1rem;height:1rem;position:absolute;top:50%;translate:0 -50%;-webkit-mask:url(\\\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E\\\") 50%/contain no-repeat;mask:url(\\\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E\\\") 50%/contain no-repeat}.cedros-shop-public__select-content{z-index:60;border-radius:var(--cs-radius-md);box-shadow:var(--cs-shadow-md);padding:.25rem}.cedros-shop-public__select-content[data-state=open]{animation:cs-pop-in var(--cs-dur) var(--cs-ease-out)}.cedros-shop-public__select-content [role=option]{border-radius:var(--cs-radius-sm);transition:background var(--cs-dur-fast) var(--cs-ease-out)}.cedros-shop-public__select-content [role=option]:hover,.cedros-shop-public__select-content [role=option][data-highlighted]{background:var(--cs-accent-soft);outline:none}.cedros-shop-public__select-content [role=option][data-state=checked]{font-weight:650}.cedros-shop-public__accordion-trigger{border-radius:var(--cs-radius-none);background:0 0;border:0;min-height:0;padding:0;font-weight:600}.cedros-shop-public__accordion-trigger:hover{color:var(--cs-accent);background:0 0;border:0}.cedros-shop-public__accordion-trigger:active:not(:disabled){scale:1}.cedros-shop-public__accordion-chevron{color:var(--cs-muted);transition:rotate var(--cs-dur-slow) var(--cs-ease-out);display:inline-flex}.cedros-shop-public__accordion-trigger[data-state=open] .cedros-shop-public__accordion-chevron{rotate:180deg}.cedros-shop-public__accordion-content{opacity:0;transition:grid-template-rows var(--cs-dur-slow) var(--cs-ease-out), opacity var(--cs-dur) var(--cs-ease-out);grid-template-rows:0fr;display:grid;overflow:hidden}.cedros-shop-public__accordion-content[data-state=open]{opacity:1;grid-template-rows:1fr}.cedros-shop-public__accordion-content-inner{min-height:0;overflow:hidden}.cedros-shop-public__disclosure-trigger{justify-content:space-between;width:100%;padding-inline:0}.cedros-shop-public__disclosure-chevron{transition:rotate var(--cs-dur) var(--cs-ease-out);display:inline-flex}.cedros-shop-public__disclosure-chevron[data-state=open]{rotate:180deg}.cedros-shop-public__disclosure-content{opacity:0;transition:grid-template-rows var(--cs-dur-slow) var(--cs-ease-out), opacity var(--cs-dur) var(--cs-ease-out);grid-template-rows:0fr;display:grid}.cedros-shop-public__disclosure-content[data-state=open]{opacity:1;grid-template-rows:1fr}.cedros-shop-public__disclosure-content-inner{min-height:0;overflow:hidden}.cedros-shop-public__disclosure-content-inner>:first-child{margin-top:.5rem}.cedros-shop-public__state--empty{background:radial-gradient(36rem 14rem at 50% -2rem, var(--cs-accent-soft), transparent 70%), linear-gradient(to bottom, var(--cs-surface-1), color-mix(in srgb, var(--cs-surface-1) 88%, var(--cs-bg)));animation:cs-rise var(--cs-dur-entrance) var(--cs-ease-out) backwards;border-style:dashed}.cedros-shop-public__state-illustration{color:var(--cs-muted);place-items:center;margin:0 auto .75rem;display:grid}.cedros-shop-public__state-illustration svg{animation:5s ease-in-out infinite cs-float}.cedros-shop-public__state-illustration .cs-illo-accent{color:var(--cs-accent)}.cedros-shop-public__state-icon--error{border-radius:var(--cs-radius-full);background:var(--cs-error-soft);width:2.5rem;height:2.5rem;color:var(--cs-error);place-items:center;margin:0 auto .25rem;display:grid}.cedros-shop-public__state--confirmed{background:radial-gradient(36rem 14rem at 50% -2rem, var(--cs-success-soft), transparent 70%), linear-gradient(to bottom, var(--cs-surface-1), color-mix(in srgb, var(--cs-surface-1) 88%, var(--cs-bg)));animation:cs-rise var(--cs-dur-entrance) var(--cs-ease-out) backwards}.cedros-shop-public__state-icon--success{border-radius:var(--cs-radius-full);background:var(--cs-success-soft);width:2.5rem;height:2.5rem;color:var(--cs-success);place-items:center;margin:0 auto .25rem;display:grid}.cedros-shop-public__search-icon{color:var(--cs-muted);pointer-events:none;align-items:center;display:flex;position:absolute;inset-block:0;inset-inline-start:.75rem}.cedros-shop-public__search-clear{top:50%;border-radius:var(--cs-radius-full);width:1.75rem;height:1.75rem;min-height:0;color:var(--cs-muted);animation:cs-fade-in var(--cs-dur) var(--cs-ease-out);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;inset-inline-end:.4rem;translate:0 -50%}.cedros-shop-public__search-clear:hover{background:var(--cs-surface-3);color:var(--cs-text);border:0}.cedros-shop-toast{z-index:9999;pointer-events:none;font-family:var(--cs-font-body);justify-items:center;gap:.5rem;display:grid;position:fixed;inset:1rem 1rem auto}.cedros-shop-toast .cedros-shop-toast__toast{border:1px solid var(--cs-border,oklch(92.2% 0 0));border-radius:var(--cs-radius-card,1rem);background:var(--cs-panel,oklch(100% 0 0));width:min(100%,28rem);color:var(--cs-text,oklch(14.5% 0 0));box-shadow:var(--cs-shadow-lg);font:inherit;pointer-events:auto;scale:calc(1 - var(--cs-toast-depth,0) * .025);opacity:calc(1 - var(--cs-toast-depth,0) * .14);transition:scale var(--cs-dur-slow) var(--cs-ease-out), opacity var(--cs-dur-slow) var(--cs-ease-out);align-items:flex-start;gap:.5rem;padding:.85rem 1rem;font-size:.875rem;display:flex}.cedros-shop-toast .cedros-shop-toast__toast[data-state=open]{animation:cs-toast-in var(--cs-dur-slow) var(--cs-ease-out)}.cedros-shop-toast .cedros-shop-toast__toast[data-state=closed]{animation:cs-toast-out var(--cs-dur) var(--cs-ease-in) forwards;pointer-events:none}.cedros-shop-toast .cedros-shop-toast__title{color:var(--cs-text,oklch(14.5% 0 0));font-family:var(--cs-font-heading);font-weight:650;line-height:1.4}.cedros-shop-toast .cedros-shop-toast__description{color:var(--cs-muted,oklch(55.6% 0 0));font-size:.8125rem;line-height:1.5}.cedros-shop-toast .cedros-shop-toast__action{border:1px solid var(--cs-border,oklch(92.2% 0 0));border-radius:var(--cs-radius-control,.75rem);background:var(--cs-surface-2,oklch(98.5% 0 0));color:var(--cs-text,oklch(14.5% 0 0));cursor:pointer;transition:background var(--cs-dur) var(--cs-ease-out), border-color var(--cs-dur) var(--cs-ease-out);padding:.35rem .6rem;font-size:.75rem;font-weight:650}.cedros-shop-toast .cedros-shop-toast__action:hover{border-color:var(--cs-border-strong,oklch(75% 0 0));background:var(--cs-surface-3,oklch(96% 0 0))}.cedros-shop-toast .cedros-shop-toast__action:focus-visible{outline:2px solid var(--cs-ring);outline-offset:2px}.cedros-shop-cart-badge{animation:.32s cubic-bezier(.3,1.25,.5,1) backwards cs-badge-in}.cedros-shop-cart-badge:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){--cs-badge-x:-.375rem}.cedros-shop-public__history-header,.cedros-shop-public__order-card-head,.cedros-shop-public__order-total{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.cedros-shop-public__history-header{flex-wrap:wrap}.cedros-shop-public__order-total{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;font-weight:700}.cedros-shop-public__order-totals{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.75rem;margin:1rem 0 0;display:grid}.cedros-shop-public__order-totals div,.cedros-shop-public__shipment-card{border:1px solid var(--cs-border);border-radius:var(--cs-radius-lg);background:var(--cs-surface-1)}.cedros-shop-public__order-totals div{padding:.75rem}.cedros-shop-public__order-totals dt{color:var(--cs-muted);font-size:.75rem}.cedros-shop-public__order-totals dd{color:var(--cs-text);font-variant-numeric:tabular-nums;margin:.2rem 0 0;font-weight:650}.cedros-shop-public__order-ops{border-top:1px solid var(--cs-border);gap:1rem;margin-top:1rem;padding-top:1rem;display:grid}.cedros-shop-public__shipment-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.75rem;display:grid}.cedros-shop-public__shipment-card{gap:.75rem;padding:.9rem;display:grid}.cedros-shop-public__compact-list{color:var(--cs-muted);gap:.25rem;margin:0;padding:0;font-size:.8125rem;list-style:none;display:grid}.cedros-shop-public__timeline{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.cedros-shop-public__timeline li{grid-template-columns:.75rem 1fr;align-items:start;gap:.75rem;display:grid}.cedros-shop-public__timeline li>span{border-radius:var(--cs-radius-full);background:var(--cs-accent);width:.65rem;height:.65rem;margin-top:.35rem}.cedros-shop-public__timeline p{color:var(--cs-muted);margin:.15rem 0 0;font-size:.8125rem}.cedros-shop-public__order-links,.cedros-shop-public__order-actions{flex-wrap:wrap;gap:.5rem;display:flex}.cedros-shop-public__return-policy{color:var(--cs-muted);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.cedros-shop-public__operation-form{border:1px solid var(--cs-border);border-radius:var(--cs-radius-lg);background:var(--cs-surface-1);gap:.9rem;padding:1rem;display:grid}.cedros-shop-public__operation-form h3{margin:0;font-size:1rem}.cedros-shop-public__operation-form p{color:var(--cs-muted);margin:.25rem 0 0;font-size:.875rem}.cedros-shop-public__field,.cedros-shop-public__line-selector{gap:.45rem;display:grid}.cedros-shop-public__field span,.cedros-shop-public__line-selector legend{color:var(--cs-text);font-size:.8125rem;font-weight:650}.cedros-shop-public__textarea{resize:vertical;border:1px solid var(--cs-border);border-radius:var(--cs-radius-md);background:var(--cs-panel);width:100%;min-height:5rem;color:var(--cs-text);font:inherit;padding:.65rem .75rem}.cedros-shop-public__line-selector{border:0;margin:0;padding:0}.cedros-shop-public__line-selector label{color:var(--cs-muted);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.cedros-shop-public__account-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));align-items:start;gap:1rem;display:grid}.cedros-shop-public__address-list{gap:.75rem;display:grid}.cedros-shop-public__address-row{border:1px solid var(--cs-border);border-radius:var(--cs-radius-lg);background:var(--cs-surface-1);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.85rem;display:flex}.cedros-shop-public__address-row p{color:var(--cs-muted);margin:.25rem 0 0;font-size:.8125rem;line-height:1.5}.cedros-shop-public__address-delete{border:1px solid color-mix(in srgb, var(--cs-error) 35%, var(--cs-border));border-radius:var(--cs-radius-md);background:color-mix(in srgb, var(--cs-error) 8%, var(--cs-surface-1));gap:.6rem;max-width:24rem;padding:.75rem;font-size:.8125rem;display:grid}@media (width<=640px){.cedros-shop-public__address-row{display:grid}}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.block){display:block}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.inline-block){display:inline-block}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.inline-flex){display:inline-flex}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.flex),.cedros-shop-public__dialog :where(.flex),.cedros-shop-public__sheet :where(.flex){display:flex}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.grid),.cedros-shop-public__dialog :where(.grid),.cedros-shop-public__sheet :where(.grid){display:grid}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.hidden),.cedros-shop-public__sheet :where(.hidden){display:none}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.flex-col),.cedros-shop-public__sheet :where(.flex-col){flex-direction:column}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.flex-wrap),.cedros-shop-public__dialog :where(.flex-wrap){flex-wrap:wrap}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.items-start){align-items:flex-start}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.items-center),.cedros-shop-public__sheet :where(.items-center){align-items:center}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.items-end){align-items:flex-end}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.items-baseline){align-items:baseline}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.justify-start){justify-content:flex-start}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.justify-center){justify-content:center}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.justify-end){justify-content:flex-end}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.justify-between),.cedros-shop-public__sheet :where(.justify-between){justify-content:space-between}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.flex-1),.cedros-shop-public__sheet :where(.flex-1){flex:1}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.shrink-0){flex-shrink:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.min-w-0){min-width:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.min-h-0){min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-full),.cedros-shop-public__dialog:where(.w-full),.cedros-shop-public__sheet:where(.w-full){width:100%}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-full),.cedros-shop-public__sheet:where(.h-full){height:100%}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mx-auto){margin-inline:auto}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.self-start){align-self:start}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sticky){position:sticky}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.relative){position:relative}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.absolute){position:absolute}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.fixed),.cedros-shop-public__dialog:where(.fixed),.cedros-shop-public__sheet:where(.fixed){position:fixed}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.inset-0),.cedros-shop-public__sheet:where(.inset-0){inset:0}.cedros-shop-public__sheet:where(.inset-x-0),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.inset-x-0){inset-inline:0}.cedros-shop-public__sheet:where(.inset-y-0),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.inset-y-0){inset-block:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.top-0){top:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.top-3){top:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.top-4){top:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.top-24){top:6rem}.cedros-shop-public__sheet:where(.right-0),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.right-0){right:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.right-3){inset-inline-end:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.right-4){inset-inline-end:1rem}.cedros-shop-public__sheet:where(.right-4){right:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.bottom-0),.cedros-shop-public__sheet:where(.bottom-0){bottom:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.bottom-3){bottom:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.bottom-4),.cedros-shop-public__sheet:where(.bottom-4){bottom:1rem}.cedros-shop-public__sheet:where(.left-0),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.left-0){left:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.left-3){inset-inline-start:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.z-30){z-index:30}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.z-40){z-index:40}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.z-50),.cedros-shop-public__dialog:where(.z-50),.cedros-shop-public__sheet:where(.z-50){z-index:50}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-1){gap:.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-1\\\\.5){gap:.375rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-2){gap:.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-3){gap:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-4),.cedros-shop-public__dialog :where(.gap-4),.cedros-shop-public__dialog:where(.gap-4){gap:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-6){gap:1.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-8){gap:2rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-10){gap:2.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-x-4){column-gap:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.gap-y-3){row-gap:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.space-y-1)>*+*{margin-top:.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.space-y-1\\\\.5)>*+*{margin-top:.375rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.space-y-2)>*+*{margin-top:.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.space-y-3)>*+*{margin-top:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.space-y-4)>*+*{margin-top:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.space-y-5)>*+*{margin-top:1.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.space-y-6)>*+*{margin-top:1.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-1){margin-top:.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-0\\\\.5){margin-top:.125rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-1\\\\.5){margin-top:.375rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-2){margin-top:.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-3){margin-top:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-4){margin-top:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-5){margin-top:1.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-6){margin-top:1.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-8){margin-top:2rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-12){margin-top:3rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.mt-auto){margin-top:auto}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.my-4){margin-block:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.ml-1){margin-inline-start:.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.ml-2),.cedros-shop-public__dialog :where(.ml-2){margin-inline-start:.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.ml-3),.cedros-shop-public__dialog :where(.ml-3){margin-inline-start:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.-mr-4){margin-inline-end:-1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.p-0){padding:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.p-1){padding:.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.p-2){padding:.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.p-3){padding:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.p-4),.cedros-shop-public__sheet:where(.p-4){padding:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.p-5){padding:1.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.p-6),.cedros-shop-public__dialog:where(.p-6),.cedros-shop-public__sheet:where(.p-6){padding:1.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.p-10){padding:2.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.px-2){padding-inline:.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.px-0){padding-inline:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.px-3){padding-inline:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.px-4){padding-inline:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.px-5){padding-inline:1.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.py-0\\\\.5){padding-block:.125rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.py-1\\\\.5){padding-block:.375rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.py-2){padding-block:.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.py-3){padding-block:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.py-4){padding-block:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.py-6){padding-block:1.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.py-8){padding-block:2rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.py-10){padding-block:2.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pt-0){padding-top:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pt-2){padding-top:.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pt-3){padding-top:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pt-4){padding-top:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pt-6){padding-top:1.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pb-1){padding-bottom:.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pb-4){padding-bottom:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pr-2){padding-inline-end:.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pr-4){padding-inline-end:1rem}.cedros-shop-public__dialog :where(.pr-12),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pr-12){padding-inline-end:3rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pl-9){padding-inline-start:2.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.rounded),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.rounded-sm){border-radius:var(--cs-radius-sm)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.rounded-md){border-radius:var(--cs-radius-md)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.rounded-lg),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.rounded-xl){border-radius:var(--cs-radius-lg)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.rounded-2xl),.cedros-shop-public__dialog:where(.rounded-2xl),.cedros-shop-public__sheet:where(.rounded-2xl){border-radius:var(--cs-radius-xl)}.cedros-shop-public__sheet:where(.rounded-t-2xl),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.rounded-t-2xl){border-start-start-radius:var(--cs-radius-xl);border-start-end-radius:var(--cs-radius-xl)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.rounded-full){border-radius:var(--cs-radius-full)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.border),.cedros-shop-public__dialog:where(.border),.cedros-shop-public__sheet:where(.border){border:1px solid var(--cs-border,oklch(92.2% 0 0))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.border-0){border:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.border-t),.cedros-shop-public__sheet:where(.border-t){border-top:1px solid var(--cs-border,oklch(92.2% 0 0))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.border-b),.cedros-shop-public__sheet:where(.border-b){border-bottom:1px solid var(--cs-border,oklch(92.2% 0 0))}.cedros-shop-public__sheet:where(.border-l){border-left:1px solid var(--cs-border,oklch(92.2% 0 0))}.cedros-shop-public__sheet:where(.border-r){border-right:1px solid var(--cs-border,oklch(92.2% 0 0))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.divide-y)>*+*{border-top:1px solid var(--cs-border,oklch(92.2% 0 0))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.shadow-none){box-shadow:none}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.shadow-sm){box-shadow:var(--cs-shadow-sm)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.shadow-md){box-shadow:var(--cs-shadow-md)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.shadow-lg),.cedros-shop-public__dialog:where(.shadow-lg),.cedros-shop-public__sheet:where(.shadow-lg){box-shadow:var(--cs-shadow-lg)}.cedros-shop-public__sheet:where(.shadow-xl){box-shadow:var(--cs-shadow-pop)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.text-xs){font-size:.75rem;line-height:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.text-sm){font-size:.875rem;line-height:1.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.text-base){font-size:1rem;line-height:1.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.text-lg){font-size:1.125rem;line-height:1.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.text-2xl){font-size:1.5rem;line-height:2rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.text-3xl){font-size:1.875rem;line-height:2.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"text-[10px]\\\"]){font-size:10px;line-height:1.3}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"text-[11px]\\\"]){font-size:11px;line-height:1.3}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.text-center){text-align:center}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.text-left){text-align:start}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.font-normal){font-weight:400}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.font-medium){font-weight:500}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.font-semibold){font-weight:650}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.font-mono){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.uppercase){text-transform:uppercase}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.tracking-wide){letter-spacing:.025em}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.tracking-wider){letter-spacing:.05em}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.tracking-tight){letter-spacing:-.01em}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.tabular-nums){font-variant-numeric:tabular-nums}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.leading-none){line-height:1}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.leading-4){line-height:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.underline){text-decoration-line:underline}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.underline-offset-2){text-underline-offset:2px}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.line-through){text-decoration-line:line-through}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.hover\\\\:underline:hover){text-decoration-line:underline}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.line-clamp-1){-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.line-clamp-2){-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.overflow-hidden),.cedros-shop-public__sheet:where(.overflow-hidden){overflow:hidden}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.overflow-x-auto){overflow-x:auto}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.overflow-x-hidden){overflow-x:hidden}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.overflow-y-auto){overflow-y:auto}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.object-cover){object-fit:cover}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.object-center){object-position:center}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.object-top){object-position:top}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.object-bottom){object-position:bottom}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.object-left){object-position:left}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.object-right){object-position:right}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.truncate){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.whitespace-pre-wrap){white-space:pre-wrap}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.whitespace-nowrap){white-space:nowrap}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.break-words){overflow-wrap:break-word}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.pointer-events-none),.cedros-shop-public__overlay:where(.pointer-events-none){pointer-events:none}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.cursor-pointer){cursor:pointer}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.resize-none){resize:none}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.opacity-0){opacity:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.opacity-70){opacity:.7}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.opacity-100){opacity:1}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.backdrop-blur){-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.backdrop-blur-sm){-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cedros-shop-public__overlay:where(.backdrop-blur-none),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.backdrop-blur-none){-webkit-backdrop-filter:none;backdrop-filter:none}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.animate-pulse){animation:cs-pulse 2s var(--cs-ease-out) infinite}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.max-w-sm){max-width:24rem}.cedros-shop-public__dialog:where(.max-w-lg),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.max-w-lg){max-width:32rem}.cedros-shop-public__dialog:where(.max-w-3xl),:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.max-w-3xl){max-width:48rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.max-w-5xl){max-width:64rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.max-w-6xl){max-width:72rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.max-w-7xl){max-width:var(--cs-container-wide)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.max-w-none){max-width:none}.cedros-shop-public__sheet:where([class~=\\\"max-w-[calc(100vw-2rem)]\\\"]){max-width:calc(100vw - 2rem)}.cedros-shop-public__sheet:where([class~=\\\"max-h-[calc(100vh-2rem)]\\\"]){max-height:calc(100vh - 2rem)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"max-h-[calc(100vh-6rem)]\\\"]){max-height:calc(100vh - 6rem)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-3){width:.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-4){width:1rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-5){width:1.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-9){width:2.25rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-10){width:2.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-11){width:2.75rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-12){width:3rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-14){width:3.5rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-16){width:4rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-32){width:8rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.w-40){width:10rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=w-3\\\\.5]){width:.875rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=w-2\\\\/3]){width:66.6667%}.cedros-shop-public__sheet:where([class~=w-3\\\\/4]){width:75%}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"w-[62px]\\\"]){width:62px}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"w-[140px]\\\"]){width:140px}.cedros-shop-public__sheet:where([class~=\\\"w-[420px]\\\"]){width:420px}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"max-w-[85%]\\\"]){max-width:85%}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-px){height:1px}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-3){height:.75rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=h-3\\\\.5]){height:.875rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-4){height:1rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-5){height:1.25rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-6){height:1.5rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-7){height:1.75rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-8){height:2rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-9){height:2.25rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-10){height:2.5rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-11){height:2.75rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-12){height:3rem;min-height:0}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-16){height:4rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.h-20){height:5rem}.cedros-shop-public__sheet:where([class~=\\\"h-[85vh]\\\"]){height:85vh}.cedros-shop-public__sheet:where([class~=\\\"h-[min(640px,calc(100vh-2rem))]\\\"]){height:min(640px,100vh - 2rem)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.min-h-8){min-height:2rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"min-h-[40px]\\\"]){min-height:40px}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"max-h-[120px]\\\"]){max-height:120px}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=aspect-square]){aspect-ratio:1}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"aspect-[4/5]\\\"]){aspect-ratio:4/5}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"aspect-[3/4]\\\"]){aspect-ratio:3/4}.cedros-shop-public__select-content :where([class~=\\\"min-w-[8rem]\\\"]),.cedros-shop-public__select-content:where([class~=\\\"min-w-[8rem]\\\"]){min-width:8rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.grid-cols-1){grid-template-columns:repeat(1,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.grid-cols-2){grid-template-columns:repeat(2,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.grid-cols-3){grid-template-columns:repeat(3,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.grid-cols-4){grid-template-columns:repeat(4,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"grid-cols-[64px_1fr]\\\"]){grid-template-columns:64px minmax(0,1fr)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"grid-cols-[64px_1fr_176px_120px]\\\"]){grid-template-columns:64px minmax(0,1fr) 176px 120px}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.col-span-2){grid-column:span 2/span 2}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.col-start-1){grid-column-start:1}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.col-start-2){grid-column-start:2}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.row-start-1){grid-row-start:1}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.row-start-2){grid-row-start:2}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.transition),.cedros-shop-public__dialog:where(.transition),.cedros-shop-public__sheet:where(.transition){transition:color var(--cs-dur) var(--cs-ease-out), background var(--cs-dur) var(--cs-ease-out), border-color var(--cs-dur) var(--cs-ease-out), opacity var(--cs-dur) var(--cs-ease-out), box-shadow var(--cs-dur) var(--cs-ease-out), translate var(--cs-dur) var(--cs-ease-out), scale var(--cs-dur) var(--cs-ease-out)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.transition-colors){transition:color var(--cs-dur) var(--cs-ease-out), background var(--cs-dur) var(--cs-ease-out), border-color var(--cs-dur) var(--cs-ease-out)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.transition-opacity),.cedros-shop-public__overlay:where(.transition-opacity){transition:opacity var(--cs-dur) var(--cs-ease-out)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.transition-transform){transition:translate var(--cs-dur) var(--cs-ease-out), scale var(--cs-dur) var(--cs-ease-out), rotate var(--cs-dur) var(--cs-ease-out)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.transition-all){transition:all var(--cs-dur) var(--cs-ease-out)}@media (width>=640px){:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:grid){display:grid}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:flex){display:flex}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:hidden){display:none}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:flex-col){flex-direction:column}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:items-center){align-items:center}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:justify-center){justify-content:center}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:text-center){text-align:center}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:text-left){text-align:start}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:grid-cols-2){grid-template-columns:repeat(2,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"sm:grid-cols-[64px_1fr_176px_120px]\\\"]){grid-template-columns:64px minmax(0,1fr) 176px 120px}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"sm:grid-cols-[1fr_auto]\\\"]){grid-template-columns:minmax(0,1fr) auto}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:col-span-1){grid-column:span 1/span 1}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:col-start-3){grid-column-start:3}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:col-start-4){grid-column-start:4}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:row-start-1){grid-row-start:1}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.sm\\\\:px-5){padding-inline:1.25rem}.cedros-shop-public__sheet:where(.sm\\\\:max-w-sm){max-width:24rem}.cedros-shop-public__sheet:where(.sm\\\\:max-w-md){max-width:28rem}}@media (width>=768px){:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.md\\\\:grid-cols-1){grid-template-columns:repeat(1,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.md\\\\:grid-cols-2),.cedros-shop-public__dialog :where(.md\\\\:grid-cols-2){grid-template-columns:repeat(2,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.md\\\\:grid-cols-3){grid-template-columns:repeat(3,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.md\\\\:grid-cols-4){grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=1024px){:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.lg\\\\:block){display:block}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.lg\\\\:flex){display:flex}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.lg\\\\:hidden){display:none}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.lg\\\\:sticky){position:sticky}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.lg\\\\:top-24){top:6rem}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.lg\\\\:grid-cols-1){grid-template-columns:repeat(1,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.lg\\\\:grid-cols-2){grid-template-columns:repeat(2,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.lg\\\\:grid-cols-3){grid-template-columns:repeat(3,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where(.lg\\\\:grid-cols-4){grid-template-columns:repeat(4,minmax(0,1fr))}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"lg:grid-cols-[280px_1fr]\\\"]){grid-template-columns:280px minmax(0,1fr)}:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet,.cedros-shop-public__select-content) :where([class~=\\\"lg:grid-cols-[1fr_360px]\\\"]){grid-template-columns:minmax(0,1fr) 360px}}@media (pointer:coarse){:is(.cedros-shop-public,.cedros-shop-public__dialog,.cedros-shop-public__sheet) :where(button,[role=option],input:not([type=checkbox]):not([type=radio]),textarea,select):not(.cedros-shop-public__accordion-trigger):not(.cedros-shop-public__search-clear):not([class~=h-6]):not([class~=h-7]){min-height:2.5rem}}@media (prefers-reduced-motion:reduce){.cedros-shop-public *,.cedros-shop-public :before,.cedros-shop-public :after,.cedros-shop-public__dialog,.cedros-shop-public__dialog *,.cedros-shop-public__sheet,.cedros-shop-public__sheet *,.cedros-shop-public__select-content,.cedros-shop-public__select-content *,.cedros-shop-toast,.cedros-shop-toast *,.cedros-shop-toast .cedros-shop-toast__action,.cedros-shop-public__overlay,.cedros-shop-public__overlay[data-state],.cedros-shop-public__dialog[data-state],.cedros-shop-public__sheet[data-state],.cedros-shop-public__select-content[data-state],.cedros-shop-cart-badge,.cedros-shop-public .cedros-shop-public__invalid-shake,.cedros-shop-public .cedros-shop-public__reveal,.cedros-shop-toast .cedros-shop-toast__toast[data-state]{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}.cedros-shop-public__product-grid>:nth-child(n){animation-delay:0s}.cedros-shop-public .cs-spinner,.cedros-shop-public__dialog .cs-spinner,.cedros-shop-public__sheet .cs-spinner{animation-duration:.7s;animation-iteration-count:infinite}}.cedros-shop-public ::selection{background:color-mix(in srgb, var(--cs-accent,oklch(20.5% 0 0)) 16%, transparent)}.cedros-shop-public__dialog ::selection{background:color-mix(in srgb, var(--cs-accent,oklch(20.5% 0 0)) 16%, transparent)}.cedros-shop-public__sheet ::selection{background:color-mix(in srgb, var(--cs-accent,oklch(20.5% 0 0)) 16%, transparent)}.cedros-shop-public{caret-color:var(--cs-accent,oklch(20.5% 0 0))}.cedros-shop-public:where(main),.cedros-shop-public :where(main),.cedros-shop-public__header-inner{padding-inline:var(--cs-page-inset)}\", O = class extends Error {\n\tconstructor(e, t, n) {\n\t\tsuper(t), this.name = \"MarketCatalogError\", this.code = e, this.cause = n;\n\t}\n};\nfunction k() {\n\treturn new O(\"obsolete-query\", \"The market catalog query is no longer active.\");\n}\n//#endregion\n//#region src/storefront/marketCatalogSupport.ts\nvar A = {\n\tsourcePageSize: 24,\n\tmaxSourcePages: 250,\n\tmaxCacheEntries: 24,\n\tmaxCachedProducts: 6e3,\n\tmaxRetainedProducts: 24e3,\n\tmaxConcurrentScans: 4,\n\tmaxQueuedScans: 24,\n\tabandonDelayMs: 25,\n\tstaleTimeMs: 3e4,\n\trequestTimeoutMs: 3e4\n};\nfunction ee(e) {\n\tlet t = {\n\t\t...A,\n\t\t...e\n\t};\n\tfor (let [e, n] of Object.entries(t)) if (!(e === \"abandonDelayMs\" ? Number.isSafeInteger(n) && n >= 0 : Number.isSafeInteger(n) && n > 0)) throw new O(\"invalid-request\", `${e} must be a valid integer bound.`);\n\treturn t;\n}\nfunction te(e) {\n\tlet t = e.page ?? 1, n = e.pageSize ?? A.sourcePageSize;\n\tif (!Number.isSafeInteger(t) || t <= 0 || !Number.isSafeInteger(n) || n <= 0) throw new O(\"invalid-request\", \"Catalog page and pageSize must be positive integers.\");\n\tlet { page: r, pageSize: i, ...a } = e;\n\treturn {\n\t\tpage: t,\n\t\tpageSize: n,\n\t\tbaseParams: a\n\t};\n}\nfunction ne(e) {\n\treturn {\n\t\tmode: e.productAvailability.mode,\n\t\tproductIds: [...new Set(e.productAvailability.productIds)].sort()\n\t};\n}\nfunction re(e) {\n\tif (!e) return !1;\n\tlet t = ne(e);\n\treturn t.mode === \"include\" || t.mode === \"exclude\" && t.productIds.length > 0;\n}\nfunction ie(e, t, n = \"\") {\n\treturn le({\n\t\tbaseParams: e,\n\t\tpolicy: ne(t),\n\t\tscope: n\n\t});\n}\nfunction ae(e, t, n, r = \"\") {\n\tlet i = ne(t);\n\treturn {\n\t\tkey: e,\n\t\tscope: r,\n\t\tcreatedAt: Date.now(),\n\t\teligible: [],\n\t\tseenProductIds: /* @__PURE__ */ new Set(),\n\t\tpageSignatures: /* @__PURE__ */ new Set(),\n\t\tpolicyIds: new Set(i.productIds),\n\t\tpolicyMode: i.mode,\n\t\tincludeRemaining: i.mode === \"include\" ? new Set(i.productIds) : null,\n\t\tnextSourcePage: 1,\n\t\tsourcePagesRead: 0,\n\t\texhausted: !1,\n\t\tpagePromise: null,\n\t\tadmissionPromise: null,\n\t\tcancelAdmission: null,\n\t\treleaseAdmission: null,\n\t\twaiters: 0,\n\t\tactive: !0,\n\t\tlastAccess: n,\n\t\tabandonTimer: null\n\t};\n}\nfunction j(e, t) {\n\tt.active = !1, t.eligible.length = 0, t.seenProductIds.clear(), t.pageSignatures.clear(), t.includeRemaining?.clear(), t.policyIds.clear(), t.cancelAdmission?.(), t.cancelAdmission = null, t.pagePromise || (t.releaseAdmission?.(), t.releaseAdmission = null), t.abandonTimer && clearTimeout(t.abandonTimer), t.abandonTimer = null, e.get(t.key) === t && e.delete(t.key);\n}\nfunction oe(e, t) {\n\tfor (; e.size > t.maxCacheEntries || ce(e) > t.maxCachedProducts;) {\n\t\tlet t = [...e.values()].filter((e) => e.waiters === 0 && !e.pagePromise).sort((e, t) => e.lastAccess - t.lastAccess)[0];\n\t\tif (!t) return;\n\t\tj(e, t);\n\t}\n}\nfunction M(e, t, n) {\n\tif (!e || !Array.isArray(e.items) || e.page !== t || e.pageSize !== n) throw new O(\"invalid-page\", \"The product catalog returned invalid pagination metadata.\");\n\tif (e.items.length > n || e.items.some((e) => !e || typeof e.id != \"string\" || !e.id.trim())) throw new O(\"invalid-page\", \"The product catalog returned invalid product data.\");\n\tif (e.hasNextPage !== void 0 && typeof e.hasNextPage != \"boolean\") throw new O(\"invalid-page\", \"The product catalog returned an invalid hasNextPage value.\");\n\tlet r = (t - 1) * n + e.items.length;\n\tif (e.total !== void 0) {\n\t\tif (!Number.isSafeInteger(e.total) || e.total < r) throw new O(\"invalid-page\", \"The product catalog returned an inconsistent total.\");\n\t\tlet t = r < e.total;\n\t\tif (e.hasNextPage !== void 0 && e.hasNextPage !== t) throw new O(\"invalid-page\", \"The product catalog returned conflicting pagination boundaries.\");\n\t\treturn !t;\n\t}\n\tif (e.items.length === 0 && e.hasNextPage === !0) throw new O(\"invalid-page\", \"The product catalog returned an empty page with a successor.\");\n\tif (e.hasNextPage !== void 0) return !e.hasNextPage;\n\tif (e.items.length < n) return !0;\n\tthrow new O(\"invalid-page\", \"The product catalog omitted an unambiguous pagination boundary.\");\n}\nfunction N(e, t, n, r) {\n\tfor (; se(e) + t > n.maxRetainedProducts;) {\n\t\tlet t = [...e.values()].filter((e) => e !== r && e.waiters === 0 && !e.pagePromise && !e.releaseAdmission).sort((e, t) => e.lastAccess - t.lastAccess)[0];\n\t\tif (!t) return !1;\n\t\tj(e, t);\n\t}\n\treturn !0;\n}\nfunction se(e) {\n\tlet t = 0;\n\tfor (let n of e.values()) t += n.seenProductIds.size;\n\treturn t;\n}\nvar ce = se;\nfunction le(e) {\n\treturn Array.isArray(e) ? `[${e.map(le).join(\",\")}]` : e && typeof e == \"object\" ? `{${Object.entries(e).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => `${JSON.stringify(e)}:${le(t)}`).join(\",\")}}` : JSON.stringify(e);\n}\n//#endregion\n//#region src/storefront/marketCatalogAdmission.ts\nfunction P(e, t) {\n\tlet n = 0, r = [], i = (e) => {\n\t\te.queued = !1, n += 1;\n\t\tlet t = !1;\n\t\te.resolve(() => {\n\t\t\tif (t) return;\n\t\t\tt = !0, --n;\n\t\t\tlet e = r.shift();\n\t\t\te && i(e);\n\t\t});\n\t};\n\treturn { acquire() {\n\t\tlet a, o = new Promise((e, t) => {\n\t\t\ta = {\n\t\t\t\tresolve: e,\n\t\t\t\treject: t,\n\t\t\t\tqueued: !0\n\t\t\t};\n\t\t});\n\t\treturn n < e ? i(a) : r.length < t ? r.push(a) : (a.queued = !1, a.reject(new O(\"scan-queue-limit\", \"The market catalog scan queue is full.\"))), {\n\t\t\tpromise: o,\n\t\t\tcancel: () => {\n\t\t\t\tif (!a.queued) return;\n\t\t\t\ta.queued = !1;\n\t\t\t\tlet e = r.indexOf(a);\n\t\t\t\te >= 0 && r.splice(e, 1), a.reject(k());\n\t\t\t}\n\t\t};\n\t} };\n}\nasync function ue(e, t, n) {\n\tif (!e.releaseAdmission) {\n\t\tif (!e.admissionPromise) {\n\t\t\tlet n = t.acquire();\n\t\t\te.cancelAdmission = n.cancel;\n\t\t\tlet r = n.promise.then((t) => {\n\t\t\t\tif (!e.active || e.waiters === 0) throw t(), k();\n\t\t\t\te.releaseAdmission = t, e.cancelAdmission = null;\n\t\t\t}).finally(() => {\n\t\t\t\te.admissionPromise === r && (e.admissionPromise = null);\n\t\t\t});\n\t\t\te.admissionPromise = r;\n\t\t}\n\t\tawait fe(e.admissionPromise, n);\n\t}\n}\nfunction de(e) {\n\te.releaseAdmission?.(), e.releaseAdmission = null;\n}\nasync function fe(e, t) {\n\tif (!t) return e;\n\tif (t.aborted) throw k();\n\treturn new Promise((n, r) => {\n\t\tlet i = () => r(k());\n\t\tt.addEventListener(\"abort\", i, { once: !0 }), e.then(n, r).finally(() => t.removeEventListener(\"abort\", i));\n\t});\n}\n//#endregion\n//#region src/storefront/marketCatalog.ts\nvar F = /* @__PURE__ */ new WeakMap();\nfunction pe(e, t) {\n\tF.get(e)?.invalidateScope(t);\n}\nfunction me(e) {\n\tlet t = F.get(e);\n\tif (t) return t;\n\tlet n = he(e);\n\treturn F.set(e, n), n;\n}\nfunction he(e, t = {}) {\n\tlet n = ee(t), r = /* @__PURE__ */ new Map(), i = P(n.maxConcurrentScans, n.maxQueuedScans), a = 0;\n\treturn {\n\t\tasync list(t, o, s) {\n\t\t\tif (!re(o)) return e.listProducts(t);\n\t\t\tlet c = te(t);\n\t\t\tif (ne(o).productIds.length === 0) return {\n\t\t\t\titems: [],\n\t\t\t\tpage: c.page,\n\t\t\t\tpageSize: c.pageSize,\n\t\t\t\ttotal: 0,\n\t\t\t\thasNextPage: !1\n\t\t\t};\n\t\t\tlet l = c.page * c.pageSize + 1;\n\t\t\tif (!Number.isSafeInteger(l)) throw new O(\"invalid-request\", \"The requested page is too large.\");\n\t\t\tlet u = ie(c.baseParams, o, s?.scope), d = r.get(u);\n\t\t\td && d.waiters === 0 && !d.pagePromise && Date.now() - d.createdAt >= n.staleTimeMs && j(r, d), d?.active ? (d.lastAccess = ++a, d.abandonTimer && clearTimeout(d.abandonTimer), d.abandonTimer = null) : (d = ae(u, o, ++a, s?.scope), r.set(u, d)), d.waiters += 1;\n\t\t\tlet f = !1, p = new AbortController(), m = !1, h = () => p.abort();\n\t\t\ts?.signal?.addEventListener(\"abort\", h, { once: !0 }), s?.signal?.aborted && p.abort();\n\t\t\tlet g = setTimeout(() => {\n\t\t\t\tm = !0, p.abort();\n\t\t\t}, n.requestTimeoutMs);\n\t\t\ttry {\n\t\t\t\tif (await ge(e, r, d, c.baseParams, l, n, i, p.signal), !d.active) throw k();\n\t\t\t\treturn ve(d, c.page, c.pageSize);\n\t\t\t} catch (e) {\n\t\t\t\tthrow f = p.signal.aborted, m ? new O(\"source-timeout\", \"The product catalog took too long to respond.\") : e;\n\t\t\t} finally {\n\t\t\t\tclearTimeout(g), s?.signal?.removeEventListener(\"abort\", h), --d.waiters, d.waiters === 0 && !d.pagePromise && de(d), f && d.waiters === 0 && d.active && (d.admissionPromise && !d.releaseAdmission ? j(r, d) : ye(r, d, n.abandonDelayMs)), oe(r, n);\n\t\t\t}\n\t\t},\n\t\tinvalidateScope(e) {\n\t\t\tfor (let t of r.values()) t.scope.startsWith(e) && j(r, t);\n\t\t},\n\t\tinvalidate(e, t, n) {\n\t\t\tif (!e) {\n\t\t\t\tfor (let e of r.values()) j(r, e);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!t || !re(t)) return;\n\t\t\tlet i = r.get(ie(te(e).baseParams, t, n));\n\t\t\ti && j(r, i);\n\t\t}\n\t};\n}\nasync function ge(e, t, n, r, i, a, o, s) {\n\tif (!(n.eligible.length >= i || n.exhausted)) for (await ue(n, o, s); n.eligible.length < i && !n.exhausted;) {\n\t\tif (!n.active) throw k();\n\t\tif (n.sourcePagesRead >= a.maxSourcePages) throw new O(\"scan-limit\", \"The market catalog exceeded its safe pagination scan limit.\");\n\t\tif (!n.pagePromise) {\n\t\t\tlet i = _e(e, t, n, r, a).finally(() => {\n\t\t\t\tn.pagePromise === i && (n.pagePromise = null), n.waiters === 0 && de(n);\n\t\t\t});\n\t\t\tn.pagePromise = i;\n\t\t}\n\t\tawait fe(n.pagePromise, s);\n\t}\n}\nasync function _e(e, t, n, r, i) {\n\tlet a = n.nextSourcePage, o;\n\ttry {\n\t\tif (!n.active) throw k();\n\t\to = await e.listProducts({\n\t\t\t...r,\n\t\t\tpage: a,\n\t\t\tpageSize: i.sourcePageSize\n\t\t});\n\t} catch (e) {\n\t\tthrow e instanceof O && e.code === \"obsolete-query\" ? e : new O(\"source-failure\", \"The product catalog could not be loaded.\", e);\n\t}\n\tif (!n.active || n.waiters === 0) throw j(t, n), k();\n\tlet s = M(o, a, i.sourcePageSize), c = new Set(o.items.filter((e) => !n.seenProductIds.has(e.id)).map((e) => e.id)).size;\n\tif (!N(t, c, i, n)) throw new O(\"retention-limit\", \"The market catalog reached its hard retained-product limit.\");\n\tlet l = JSON.stringify(o.items.map((e) => e.id));\n\tif (!s && n.pageSignatures.has(l)) throw new O(\"pagination-loop\", \"The product catalog returned a repeating pagination page.\");\n\tn.pageSignatures.add(l), n.sourcePagesRead += 1, n.nextSourcePage += 1;\n\tfor (let e of o.items) {\n\t\tif (n.seenProductIds.has(e.id)) continue;\n\t\tn.seenProductIds.add(e.id);\n\t\tlet t = n.policyIds.has(e.id);\n\t\t(n.policyMode === \"include\" ? t : !t) && n.eligible.push(e), n.includeRemaining?.delete(e.id);\n\t}\n\tn.exhausted = s || n.includeRemaining?.size === 0, oe(t, i);\n}\nfunction ve(e, t, n) {\n\tlet r = (t - 1) * n, i = r + n;\n\treturn {\n\t\titems: e.eligible.slice(r, i),\n\t\tpage: t,\n\t\tpageSize: n,\n\t\t...e.exhausted ? { total: e.eligible.length } : {},\n\t\thasNextPage: e.eligible.length > i\n\t};\n}\nfunction ye(e, t, n) {\n\tt.abandonTimer && clearTimeout(t.abandonTimer), t.abandonTimer = setTimeout(() => {\n\t\tt.abandonTimer = null, t.waiters === 0 && t.active && j(e, t);\n\t}, n);\n}\n//#endregion\n//#region src/runtime/recurringRefresh.ts\nvar be = 5 * 6e4, xe = globalThis;\nfunction Se() {\n\treturn xe.navigator?.onLine !== !1 && xe.document?.visibilityState !== \"hidden\";\n}\nfunction Ce(e, t, n) {\n\tif (t <= 0) return 0;\n\tlet r = Math.min(be, t * 2 ** Math.min(n, 4)), i = 0;\n\tfor (let t = 0; t < e.length; t += 1) i = i * 31 + e.charCodeAt(t) >>> 0;\n\treturn Math.round(r * (.9 + i % 21 / 100));\n}\n//#endregion\n//#region src/runtime/asyncResource.ts\nvar we = 200, Te = 5e3, Ee = 3e4, De = 200, Oe = 0, I = /* @__PURE__ */ new Map(), ke = /* @__PURE__ */ new WeakMap(), Ae = 1;\nfunction je(e, t = \"obj\") {\n\tif (!e) return `${t}:none`;\n\tlet n = ke.get(e);\n\tif (n) return `${t}:${n}`;\n\tlet r = Ae++;\n\treturn ke.set(e, r), `${t}:${r}`;\n}\nfunction L(e) {\n\treturn JSON.stringify(Ne(e));\n}\nfunction Me(e) {\n\tfor (let [t, n] of I) t.startsWith(e) && (n.requestId += 1, n.data = void 0, I.delete(t), Ie(n));\n}\nfunction Ne(e) {\n\tif (Array.isArray(e)) return e.map(Ne);\n\tif (!e || typeof e != \"object\") return e;\n\tlet t = Object.entries(e).sort(([e], [t]) => e.localeCompare(t));\n\treturn Object.fromEntries(t.map(([e, t]) => [e, Ne(t)]));\n}\nfunction Pe(e) {\n\tlet t = I.get(e);\n\treturn t ? (t.lastAccessed = Date.now(), t) : (t = {\n\t\tdata: void 0,\n\t\terror: null,\n\t\tstatus: \"idle\",\n\t\tpromise: null,\n\t\tsubscribers: /* @__PURE__ */ new Set(),\n\t\trequestId: 0,\n\t\tlastAccessed: Date.now(),\n\t\tlastSettledAt: 0,\n\t\tconsecutiveFailures: 0,\n\t\thasResolved: !1\n\t}, I.set(e, t), ze(t), t);\n}\nfunction Fe(e, t) {\n\tlet n = Pe(e);\n\treturn n.subscribers.add(t), () => {\n\t\tn.subscribers.delete(t), ze();\n\t};\n}\nfunction Ie(e) {\n\te.subscribers.forEach((e) => e());\n}\nfunction Le(e, t, n, r) {\n\tlet i = Pe(e), a = i.data === void 0 ? t : i.data, o = n && i.status === \"loading\", s = n && !i.hasResolved && !r && (i.status === \"idle\" || o);\n\treturn {\n\t\tdata: a,\n\t\terror: i.error,\n\t\tisLoading: s,\n\t\tisFetching: o\n\t};\n}\nasync function Re(e, t, n, r) {\n\tlet i = Pe(e);\n\tif (i.promise) return i.promise;\n\tif (!n && i.lastSettledAt > 0 && Date.now() - i.lastSettledAt < r) return;\n\tlet a = ++i.requestId;\n\tif (i.status = \"loading\", i.error = null, Ie(i), Oe >= De) {\n\t\ti.status = \"error\", i.error = \"Too many pending reads. Please retry when earlier requests finish.\", i.lastSettledAt = Date.now(), i.consecutiveFailures += 1, Ie(i);\n\t\treturn;\n\t}\n\tOe += 1;\n\tlet o = !1, s;\n\ti.promise = new Promise((e) => {\n\t\ts = e;\n\t});\n\tlet c = setTimeout(() => {\n\t\to = !0, i.requestId === a && (i.status = \"error\", i.error = \"The request took too long to respond.\", i.consecutiveFailures += 1, Ie(i)), s();\n\t}, Ee);\n\treturn Promise.resolve().then(t).then((e) => {\n\t\to || i.requestId !== a || (i.data = e, i.status = \"success\", i.error = null, i.hasResolved = !0, i.consecutiveFailures = 0);\n\t}).catch((e) => {\n\t\to || i.requestId !== a || (i.status = \"error\", i.error = e instanceof Error ? e.message : String(e ?? \"\"), i.consecutiveFailures += 1);\n\t}).finally(() => {\n\t\t--Oe, clearTimeout(c), s(), i.promise = null, i.requestId === a && (i.lastAccessed = Date.now(), i.lastSettledAt = i.lastAccessed, Ie(i)), ze();\n\t}), i.promise;\n}\nfunction ze(e) {\n\tif (I.size <= we) return;\n\tlet t = Array.from(I.entries()).sort(([, e], [, t]) => e.lastAccessed - t.lastAccessed);\n\tfor (let [n, r] of t) {\n\t\tif (I.size <= we) return;\n\t\tr !== e && r.subscribers.size === 0 && !r.promise && I.delete(n);\n\t}\n}\nfunction R({ key: e, enabled: t = !0, initialData: n, refreshIntervalMs: r = 0, initialDataIsResolved: i = !1, staleTimeMs: a = Te, fetcher: o }) {\n\tlet s = x.useRef(o);\n\ts.current = o;\n\tlet c = x.useCallback((t) => Fe(e, t), [e]), l = x.useMemo(() => {\n\t\tlet r;\n\t\treturn () => {\n\t\t\tlet a = Le(e, n, t, i);\n\t\t\treturn r && r.data === a.data && r.error === a.error && r.isLoading === a.isLoading && r.isFetching === a.isFetching || (r = a), r;\n\t\t};\n\t}, [\n\t\tt,\n\t\tn,\n\t\ti,\n\t\te\n\t]), u = x.useSyncExternalStore(c, l, l);\n\tx.useEffect(() => {\n\t\tif (!t) return;\n\t\tlet n = !1, i = !0, o = null, c = (e) => {\n\t\t\tn || r <= 0 || (o && clearTimeout(o), o = setTimeout(l, e));\n\t\t}, l = async () => {\n\t\t\tif (o = null, !i && !Se()) {\n\t\t\t\tc(r);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\ti = !1, await Re(e, () => s.current(), !1, a), n || c(Ce(e, r, I.get(e)?.consecutiveFailures ?? 0));\n\t\t}, u = () => {\n\t\t\tr > 0 && Se() && l();\n\t\t};\n\t\treturn l(), xe.addEventListener?.(\"online\", u), xe.document?.addEventListener?.(\"visibilitychange\", u), () => {\n\t\t\tn = !0, o && clearTimeout(o), xe.removeEventListener?.(\"online\", u), xe.document?.removeEventListener?.(\"visibilitychange\", u);\n\t\t};\n\t}, [\n\t\tt,\n\t\te,\n\t\tr,\n\t\ta\n\t]);\n\tlet d = x.useCallback(() => Re(e, () => s.current(), !0, a), [e, a]);\n\treturn {\n\t\t...u,\n\t\trefetch: d\n\t};\n}\n//#endregion\n//#region node_modules/@noble/hashes/utils.js\nfunction Be(e) {\n\treturn e instanceof Uint8Array || ArrayBuffer.isView(e) && e.constructor.name === \"Uint8Array\" && \"BYTES_PER_ELEMENT\" in e && e.BYTES_PER_ELEMENT === 1;\n}\nfunction Ve(e, t, n = \"\") {\n\tlet r = Be(e), i = e?.length, a = t !== void 0;\n\tif (!r || a && i !== t) {\n\t\tlet o = n && `\"${n}\" `, s = a ? ` of length ${t}` : \"\", c = r ? `length=${i}` : `type=${typeof e}`, l = o + \"expected Uint8Array\" + s + \", got \" + c;\n\t\tthrow r ? RangeError(l) : TypeError(l);\n\t}\n\treturn e;\n}\nfunction He(e, t = !0) {\n\tif (e.destroyed) throw Error(\"Hash instance has been destroyed\");\n\tif (t && e.finished) throw Error(\"Hash#digest() has already been called\");\n}\nfunction Ue(e, t) {\n\tVe(e, void 0, \"digestInto() output\");\n\tlet n = t.outputLen;\n\tif (e.length < n) throw RangeError(\"\\\"digestInto() output\\\" expected to be of length >=\" + n);\n}\nfunction We(...e) {\n\tfor (let t = 0; t < e.length; t++) e[t].fill(0);\n}\nfunction Ge(e) {\n\treturn new DataView(e.buffer, e.byteOffset, e.byteLength);\n}\nfunction Ke(e, t) {\n\treturn e << 32 - t | e >>> t;\n}\nfunction qe(e) {\n\tif (typeof e != \"string\") throw TypeError(\"string expected\");\n\treturn new Uint8Array(new TextEncoder().encode(e));\n}\nfunction Je(e, t = {}) {\n\tlet n = (t, n) => e(n).update(t).digest(), r = e(void 0);\n\treturn n.outputLen = r.outputLen, n.blockLen = r.blockLen, n.canXOF = r.canXOF, n.create = (t) => e(t), Object.assign(n, t), Object.freeze(n);\n}\nvar Ye = (e) => ({ oid: Uint8Array.from([\n\t6,\n\t9,\n\t96,\n\t134,\n\t72,\n\t1,\n\t101,\n\t3,\n\t4,\n\t2,\n\te\n]) });\n//#endregion\n//#region node_modules/@noble/hashes/_md.js\nfunction Xe(e, t, n) {\n\treturn e & t ^ ~e & n;\n}\nfunction Ze(e, t, n) {\n\treturn e & t ^ e & n ^ t & n;\n}\nvar Qe = class {\n\tblockLen;\n\toutputLen;\n\tcanXOF = !1;\n\tpadOffset;\n\tisLE;\n\tbuffer;\n\tview;\n\tfinished = !1;\n\tlength = 0;\n\tpos = 0;\n\tdestroyed = !1;\n\tconstructor(e, t, n, r) {\n\t\tthis.blockLen = e, this.outputLen = t, this.padOffset = n, this.isLE = r, this.buffer = new Uint8Array(e), this.view = Ge(this.buffer);\n\t}\n\tupdate(e) {\n\t\tHe(this), Ve(e);\n\t\tlet { view: t, buffer: n, blockLen: r } = this, i = e.length;\n\t\tfor (let a = 0; a < i;) {\n\t\t\tlet o = Math.min(r - this.pos, i - a);\n\t\t\tif (o === r) {\n\t\t\t\tlet t = Ge(e);\n\t\t\t\tfor (; r <= i - a; a += r) this.process(t, a);\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tn.set(e.subarray(a, a + o), this.pos), this.pos += o, a += o, this.pos === r && (this.process(t, 0), this.pos = 0);\n\t\t}\n\t\treturn this.length += e.length, this.roundClean(), this;\n\t}\n\tdigestInto(e) {\n\t\tHe(this), Ue(e, this), this.finished = !0;\n\t\tlet { buffer: t, view: n, blockLen: r, isLE: i } = this, { pos: a } = this;\n\t\tt[a++] = 128, We(this.buffer.subarray(a)), this.padOffset > r - a && (this.process(n, 0), a = 0);\n\t\tfor (let e = a; e < r; e++) t[e] = 0;\n\t\tn.setBigUint64(r - 8, BigInt(this.length * 8), i), this.process(n, 0);\n\t\tlet o = Ge(e), s = this.outputLen;\n\t\tif (s % 4) throw Error(\"_sha2: outputLen must be aligned to 32bit\");\n\t\tlet c = s / 4, l = this.get();\n\t\tif (c > l.length) throw Error(\"_sha2: outputLen bigger than state\");\n\t\tfor (let e = 0; e < c; e++) o.setUint32(4 * e, l[e], i);\n\t}\n\tdigest() {\n\t\tlet { buffer: e, outputLen: t } = this;\n\t\tthis.digestInto(e);\n\t\tlet n = e.slice(0, t);\n\t\treturn this.destroy(), n;\n\t}\n\t_cloneInto(e) {\n\t\te ||= new this.constructor(), e.set(...this.get());\n\t\tlet { blockLen: t, buffer: n, length: r, finished: i, destroyed: a, pos: o } = this;\n\t\treturn e.destroyed = a, e.finished = i, e.length = r, e.pos = o, r % t && e.buffer.set(n), e;\n\t}\n\tclone() {\n\t\treturn this._cloneInto();\n\t}\n}, $e = /* @__PURE__ */ Uint32Array.from([\n\t1779033703,\n\t3144134277,\n\t1013904242,\n\t2773480762,\n\t1359893119,\n\t2600822924,\n\t528734635,\n\t1541459225\n]), et = /* @__PURE__ */ Uint32Array.from([\n\t1116352408,\n\t1899447441,\n\t3049323471,\n\t3921009573,\n\t961987163,\n\t1508970993,\n\t2453635748,\n\t2870763221,\n\t3624381080,\n\t310598401,\n\t607225278,\n\t1426881987,\n\t1925078388,\n\t2162078206,\n\t2614888103,\n\t3248222580,\n\t3835390401,\n\t4022224774,\n\t264347078,\n\t604807628,\n\t770255983,\n\t1249150122,\n\t1555081692,\n\t1996064986,\n\t2554220882,\n\t2821834349,\n\t2952996808,\n\t3210313671,\n\t3336571891,\n\t3584528711,\n\t113926993,\n\t338241895,\n\t666307205,\n\t773529912,\n\t1294757372,\n\t1396182291,\n\t1695183700,\n\t1986661051,\n\t2177026350,\n\t2456956037,\n\t2730485921,\n\t2820302411,\n\t3259730800,\n\t3345764771,\n\t3516065817,\n\t3600352804,\n\t4094571909,\n\t275423344,\n\t430227734,\n\t506948616,\n\t659060556,\n\t883997877,\n\t958139571,\n\t1322822218,\n\t1537002063,\n\t1747873779,\n\t1955562222,\n\t2024104815,\n\t2227730452,\n\t2361852424,\n\t2428436474,\n\t2756734187,\n\t3204031479,\n\t3329325298\n]), tt = /* @__PURE__ */ new Uint32Array(64), nt = class extends Qe {\n\tconstructor(e) {\n\t\tsuper(64, e, 8, !1);\n\t}\n\tget() {\n\t\tlet { A: e, B: t, C: n, D: r, E: i, F: a, G: o, H: s } = this;\n\t\treturn [\n\t\t\te,\n\t\t\tt,\n\t\t\tn,\n\t\t\tr,\n\t\t\ti,\n\t\t\ta,\n\t\t\to,\n\t\t\ts\n\t\t];\n\t}\n\tset(e, t, n, r, i, a, o, s) {\n\t\tthis.A = e | 0, this.B = t | 0, this.C = n | 0, this.D = r | 0, this.E = i | 0, this.F = a | 0, this.G = o | 0, this.H = s | 0;\n\t}\n\tprocess(e, t) {\n\t\tfor (let n = 0; n < 16; n++, t += 4) tt[n] = e.getUint32(t, !1);\n\t\tfor (let e = 16; e < 64; e++) {\n\t\t\tlet t = tt[e - 15], n = tt[e - 2], r = Ke(t, 7) ^ Ke(t, 18) ^ t >>> 3;\n\t\t\ttt[e] = (Ke(n, 17) ^ Ke(n, 19) ^ n >>> 10) + tt[e - 7] + r + tt[e - 16] | 0;\n\t\t}\n\t\tlet { A: n, B: r, C: i, D: a, E: o, F: s, G: c, H: l } = this;\n\t\tfor (let e = 0; e < 64; e++) {\n\t\t\tlet t = Ke(o, 6) ^ Ke(o, 11) ^ Ke(o, 25), u = l + t + Xe(o, s, c) + et[e] + tt[e] | 0, d = (Ke(n, 2) ^ Ke(n, 13) ^ Ke(n, 22)) + Ze(n, r, i) | 0;\n\t\t\tl = c, c = s, s = o, o = a + u | 0, a = i, i = r, r = n, n = u + d | 0;\n\t\t}\n\t\tn = n + this.A | 0, r = r + this.B | 0, i = i + this.C | 0, a = a + this.D | 0, o = o + this.E | 0, s = s + this.F | 0, c = c + this.G | 0, l = l + this.H | 0, this.set(n, r, i, a, o, s, c, l);\n\t}\n\troundClean() {\n\t\tWe(tt);\n\t}\n\tdestroy() {\n\t\tthis.destroyed = !0, this.set(0, 0, 0, 0, 0, 0, 0, 0), We(this.buffer);\n\t}\n}, rt = class extends nt {\n\tA = $e[0] | 0;\n\tB = $e[1] | 0;\n\tC = $e[2] | 0;\n\tD = $e[3] | 0;\n\tE = $e[4] | 0;\n\tF = $e[5] | 0;\n\tG = $e[6] | 0;\n\tH = $e[7] | 0;\n\tconstructor() {\n\t\tsuper(32);\n\t}\n}, it = /* @__PURE__ */ Je(() => new rt(), /* @__PURE__ */ Ye(1));\n//#endregion\n//#region src/runtime/identityScope.ts\nfunction at(...e) {\n\tlet t = it(qe(JSON.stringify(e)));\n\treturn Array.from(t.slice(0, 16), (e) => e.toString(16).padStart(2, \"0\")).join(\"\");\n}\n//#endregion\n//#region src/runtime/config.tsx\nvar ot = /* @__PURE__ */ new Map(), st = /* @__PURE__ */ new Map(), ct = { complianceCheck: !1 };\nfunction lt(e) {\n\treturn {\n\t\t...ct,\n\t\t...e.featureFlags ?? {}\n\t};\n}\nvar ut = S.createContext(null);\nfunction z() {\n\tlet e = S.useContext(ut);\n\tif (!e) throw Error(\"useCedrosShop must be used within CedrosShopProvider\");\n\treturn e;\n}\nfunction dt() {\n\treturn S.useContext(ut);\n}\nfunction B() {\n\treturn S.useContext(ut)?.i18n ?? b();\n}\nfunction ft({ config: e, children: t }) {\n\tlet n = `${je(e.adapter, \"adapter\")}:scope:${at(e.dataScope ?? \"default\", e.customer?.id ?? \"guest\", e.customer?.isSignedIn === !0)}`;\n\tS.useLayoutEffect(() => pt(n, e.adapter), [n, e.adapter]);\n\tlet r = S.useMemo(() => lt({ featureFlags: e.featureFlags }), [e.featureFlags]), i = S.useMemo(() => b(e.i18n), [e.i18n]), a = S.useMemo(() => ({\n\t\tconfig: e,\n\t\tfeatureFlags: r,\n\t\ti18n: i,\n\t\tdataCacheKey: n\n\t}), [\n\t\te,\n\t\tr,\n\t\ti,\n\t\tn\n\t]);\n\treturn /* @__PURE__ */ T(ut.Provider, {\n\t\tvalue: a,\n\t\tchildren: t\n\t});\n}\nfunction pt(e, t) {\n\tlet n = st.get(e);\n\tn && clearTimeout(n), st.delete(e), ot.set(e, (ot.get(e) ?? 0) + 1);\n\tlet r = !0;\n\treturn () => {\n\t\tif (!r) return;\n\t\tr = !1;\n\t\tlet n = ot.get(e) ?? 0;\n\t\tif (n > 1) {\n\t\t\tot.set(e, n - 1);\n\t\t\treturn;\n\t\t}\n\t\tot.delete(e), Me(`${e}:`), st.set(e, setTimeout(() => {\n\t\t\tst.delete(e), pe(t, `${e}:`);\n\t\t}, 25));\n\t};\n}\n//#endregion\n//#region src/runtime/promotionCodes.ts\nfunction mt(e) {\n\treturn e?.trim().toUpperCase() || void 0;\n}\nfunction ht(e) {\n\tlet t = /* @__PURE__ */ new Set(), n = [];\n\tfor (let r of e ?? []) {\n\t\tlet e = mt(r);\n\t\t!e || t.has(e) || (t.add(e), n.push(e));\n\t}\n\treturn n;\n}\n//#endregion\n//#region src/runtime/cartReducer.ts\nfunction gt(e) {\n\tthrow Error(`Unhandled cart action: ${JSON.stringify(e)}`);\n}\nfunction _t(e) {\n\treturn `${e.productId}::${e.variantId ?? \"\"}`;\n}\nvar vt = { items: [] };\nfunction yt(e, t) {\n\tswitch (t.type) {\n\t\tcase \"cart/hydrate\": return St(t.state);\n\t\tcase \"cart/add\": {\n\t\t\tlet n = Math.max(1, Math.floor(t.qty ?? 1)), r = _t(t.item), i = e.items[0]?.currency;\n\t\t\treturn i && t.item.currency !== i ? {\n\t\t\t\titems: [{\n\t\t\t\t\t...t.item,\n\t\t\t\t\tqty: n\n\t\t\t\t}],\n\t\t\t\tpromoCode: void 0,\n\t\t\t\tpromoCodes: void 0\n\t\t\t} : e.items.find((e) => _t(e) === r) ? {\n\t\t\t\t...e,\n\t\t\t\titems: e.items.map((e) => _t(e) === r ? {\n\t\t\t\t\t...e,\n\t\t\t\t\tqty: e.qty + n\n\t\t\t\t} : e)\n\t\t\t} : {\n\t\t\t\t...e,\n\t\t\t\titems: [...e.items, {\n\t\t\t\t\t...t.item,\n\t\t\t\t\tqty: n\n\t\t\t\t}]\n\t\t\t};\n\t\t}\n\t\tcase \"cart/remove\": {\n\t\t\tlet n = `${t.productId}::${t.variantId ?? \"\"}`;\n\t\t\treturn {\n\t\t\t\t...e,\n\t\t\t\titems: e.items.filter((e) => _t(e) !== n)\n\t\t\t};\n\t\t}\n\t\tcase \"cart/setQty\": {\n\t\t\tlet n = Math.max(0, Math.floor(t.qty)), r = `${t.productId}::${t.variantId ?? \"\"}`;\n\t\t\treturn n === 0 ? {\n\t\t\t\t...e,\n\t\t\t\titems: e.items.filter((e) => _t(e) !== r)\n\t\t\t} : {\n\t\t\t\t...e,\n\t\t\t\titems: e.items.map((e) => _t(e) === r ? {\n\t\t\t\t\t...e,\n\t\t\t\t\tqty: n\n\t\t\t\t} : e)\n\t\t\t};\n\t\t}\n\t\tcase \"cart/clear\": return {\n\t\t\titems: [],\n\t\t\tpromoCode: void 0,\n\t\t\tpromoCodes: void 0\n\t\t};\n\t\tcase \"cart/setPromoCode\": return Ct(e, ht([t.promoCode]));\n\t\tcase \"cart/addPromoCode\": return Ct(e, ht([t.promoCode]));\n\t\tcase \"cart/removePromoCode\": {\n\t\t\tlet n = mt(t.promoCode);\n\t\t\treturn Ct(e, ht(e.promoCodes ?? [e.promoCode]).filter((e) => e !== n));\n\t\t}\n\t\tcase \"cart/updateHold\": {\n\t\t\tlet n = `${t.productId}::${t.variantId ?? \"\"}`;\n\t\t\treturn {\n\t\t\t\t...e,\n\t\t\t\titems: e.items.map((e) => _t(e) === n ? {\n\t\t\t\t\t...e,\n\t\t\t\t\tholdId: t.holdId === void 0 ? e.holdId : t.holdId || void 0,\n\t\t\t\t\tholdExpiresAt: t.holdExpiresAt === void 0 ? e.holdExpiresAt : t.holdExpiresAt || void 0\n\t\t\t\t} : e)\n\t\t\t};\n\t\t}\n\t\tdefault: return gt(t);\n\t}\n}\nfunction bt(e) {\n\treturn e.reduce((e, t) => e + t.qty, 0);\n}\nfunction xt(e) {\n\treturn e.reduce((e, t) => e + t.qty * t.unitPrice, 0);\n}\nfunction St(e) {\n\tlet t = e.items[0]?.currency, n = t ? e.items.filter((e) => e.currency === t) : e.items;\n\treturn Ct({\n\t\t...e,\n\t\titems: n\n\t}, ht(e.promoCodes ?? [e.promoCode]));\n}\nfunction Ct(e, t) {\n\tlet n = t.slice(0, 1);\n\treturn {\n\t\t...e,\n\t\tpromoCodes: n.length ? n : void 0,\n\t\tpromoCode: n[0]\n\t};\n}\n//#endregion\n//#region src/runtime/storage.ts\nfunction wt() {\n\ttry {\n\t\treturn typeof window > \"u\" ? null : window.localStorage;\n\t} catch {\n\t\treturn null;\n\t}\n}\nfunction Tt(e, t) {\n\ttry {\n\t\tlet n = e.getItem(t);\n\t\treturn n ? JSON.parse(n) : null;\n\t} catch {\n\t\treturn null;\n\t}\n}\nfunction Et(e, t, n) {\n\ttry {\n\t\treturn e.setItem(t, JSON.stringify(n)), !0;\n\t} catch (e) {\n\t\treturn console.warn(\"[cedros] Failed to write local state\", e), !1;\n\t}\n}\n//#endregion\n//#region src/runtime/cartSyncProtocol.ts\nvar Dt = 4, Ot = 24, kt = 3e4;\nfunction At(e, t, n) {\n\treturn Number.isFinite(e) ? Math.max(n, Math.floor(e)) : t;\n}\nfunction jt(e) {\n\treturn {\n\t\tmaxActiveCustomers: At(e?.maxActiveCustomers, Dt, 1),\n\t\tmaxQueuedCustomers: At(e?.maxQueuedCustomers, Ot, 0),\n\t\thungAfterMs: At(e?.hungAfterMs, kt, 1)\n\t};\n}\nfunction Mt(e) {\n\treturn Pt(e)?.abort === \"acknowledged\";\n}\nfunction Nt(e) {\n\ttry {\n\t\treturn Pt(e.cartSyncCapabilities);\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction Pt(e) {\n\tif (!(!e || typeof e != \"object\")) try {\n\t\tlet { protocol: t, abort: n, versionedWrites: r } = e;\n\t\treturn t !== \"cedros-cart-sync-v1\" || n !== \"acknowledged\" && n !== \"unsupported\" || typeof r != \"boolean\" ? void 0 : {\n\t\t\tprotocol: t,\n\t\t\tabort: n,\n\t\t\tversionedWrites: r\n\t\t};\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction Ft(e) {\n\treturn Pt(e) || {\n\t\tprotocol: \"legacy\",\n\t\tabort: \"unsupported\",\n\t\tversionedWrites: !1\n\t};\n}\nfunction It() {\n\tlet e;\n\ttry {\n\t\te = globalThis.crypto;\n\t} catch {}\n\tlet t = Lt(e) ?? Rt(e);\n\tif (!t) throw Error(\"Secure cart operation ID generation is unavailable\");\n\treturn `cs_${t}`;\n}\nfunction Lt(e) {\n\tif (typeof e?.randomUUID == \"function\") try {\n\t\tlet t = e.randomUUID();\n\t\treturn /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/.test(t) ? t.replace(/-/g, \"\") : void 0;\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction Rt(e) {\n\tif (typeof e?.getRandomValues == \"function\") try {\n\t\tlet t = /* @__PURE__ */ new Uint8Array(16);\n\t\treturn e.getRandomValues(t) !== t || t.every((e) => e === 0) ? void 0 : Array.from(t, (e) => e.toString(16).padStart(2, \"0\")).join(\"\");\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction zt(e) {\n\treturn !!e && typeof e == \"object\" && e.name === \"AbortError\";\n}\nfunction Bt(e) {\n\tif (e === void 0) return \"applied\";\n\tif (!e || typeof e != \"object\" || Array.isArray(e)) return \"invalid\";\n\ttry {\n\t\tlet t = e, n = Object.keys(t);\n\t\treturn t.outcome === \"aborted\" ? n.length === 1 ? \"aborted\" : \"invalid\" : t.outcome === \"applied\" ? n.every((e) => e === \"outcome\" || e === \"cart\") && (t.cart === void 0 || Vt(t.cart)) ? \"applied\" : \"invalid\" : t.outcome === \"reconciled\" && n.length === 2 && n.includes(\"cart\") && Vt(t.cart) ? \"reconciled\" : \"invalid\";\n\t} catch {\n\t\treturn \"invalid\";\n\t}\n}\nfunction Vt(e) {\n\treturn !!e && typeof e == \"object\" && !Array.isArray(e) && Array.isArray(e.items);\n}\n//#endregion\n//#region src/runtime/cartSyncScheduler.ts\nvar Ht = class {\n\tconstructor(e) {\n\t\tthis.getOptions = e, this.lanes = /* @__PURE__ */ new Map(), this.waiting = [], this.activeByGeneration = /* @__PURE__ */ new Map(), this.disposed = !1, this.epoch = 0;\n\t}\n\tenqueue(e) {\n\t\tif (this.disposed) return;\n\t\tlet t = this.lanes.get(e.customerId) ?? { queued: !1 };\n\t\tif (this.lanes.set(e.customerId, t), e.alreadyApplied) {\n\t\t\tif (t.active?.request.generation === e.generation) {\n\t\t\t\tt.pending = e;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tt.pending = void 0, t.queued = !1, this.removeWaiting(e.customerId), t.active || this.lanes.delete(e.customerId);\n\t\t\treturn;\n\t\t}\n\t\tif (t.active || t.queued) {\n\t\t\tt.pending = e;\n\t\t\treturn;\n\t\t}\n\t\tthis.canStart(e.generation) ? this.start(t, e) : this.queue(t, e);\n\t}\n\tabortCustomer(e) {\n\t\t!e || this.disposed || this.lanes.get(e)?.active?.controller?.abort();\n\t}\n\tresetCustomer(e) {\n\t\tif (!e || this.disposed) return;\n\t\tlet t = this.lanes.get(e);\n\t\tt && (t.active?.controller?.abort(), t.pending = void 0, t.queued = !1, this.removeWaiting(e), t.active || this.lanes.delete(e), this.drain());\n\t}\n\tactivate() {\n\t\tthis.disposed = !1;\n\t}\n\tdispose() {\n\t\tif (!this.disposed) {\n\t\t\tthis.disposed = !0, this.epoch += 1;\n\t\t\tfor (let e of this.lanes.values()) e.active && clearTimeout(e.active.timer), e.active?.controller?.abort(), e.active = void 0, e.pending = void 0;\n\t\t\tthis.waiting.length = 0, this.lanes.clear(), this.activeByGeneration.clear();\n\t\t}\n\t}\n\tqueue(e, t) {\n\t\tlet { maxQueuedCustomers: n } = this.limits();\n\t\tif (this.waiting.length >= n) {\n\t\t\tthis.emit(\"queue_overflow\", t.capability), this.notifyFailure(t, /* @__PURE__ */ Error(\"Cart sync queue capacity exceeded\")), this.lanes.delete(t.customerId);\n\t\t\treturn;\n\t\t}\n\t\te.pending = t, e.queued = !0, this.waiting.push(t.customerId);\n\t}\n\tstart(e, t) {\n\t\tlet n = this.epoch, r = Mt(t.capability) ? new AbortController() : void 0, i;\n\t\ttry {\n\t\t\ti = t.capability?.versionedWrites === !0 || r ? It() : void 0;\n\t\t} catch (n) {\n\t\t\te.pending = void 0, e.queued = !1, this.lanes.delete(t.customerId), this.notifyFailure(t, n), this.drain();\n\t\t\treturn;\n\t\t}\n\t\te.active = {\n\t\t\trequest: t,\n\t\t\tcontroller: r,\n\t\t\ttimer: setTimeout(() => {\n\t\t\t\tthis.disposed || e.active?.request !== t || (console.warn(\"[cedros] Cart server update remains pending beyond the configured threshold\"), this.emit(\"write_hung\", t.capability));\n\t\t\t}, this.limits().hungAfterMs),\n\t\t\tepoch: n\n\t\t}, e.pending = void 0, e.queued = !1, this.setActive(t.generation, this.activeFor(t.generation) + 1);\n\t\tlet a = {\n\t\t\tcustomerId: t.customerId,\n\t\t\tcart: t.cart,\n\t\t\t...i ? { operationId: i } : {},\n\t\t\t...r ? { signal: r.signal } : {}\n\t\t};\n\t\tPromise.resolve().then(() => {\n\t\t\tif (!(this.disposed || this.epoch !== n || e.active?.request !== t)) return t.updateCart(a);\n\t\t}).then((n) => this.finish(e, t, n), (n) => this.finish(e, t, void 0, n));\n\t}\n\tfinish(e, t, n, r) {\n\t\tlet i = e.active;\n\t\tif (!(!i || i.request !== t || i.epoch !== this.epoch) && (clearTimeout(i.timer), e.active = void 0, this.setActive(t.generation, this.activeFor(t.generation) - 1), !this.disposed)) {\n\t\t\tlet a = Bt(n), o = i.controller?.signal.aborted === !0 && (a === \"aborted\" || zt(r)), s = !o && r === void 0 && (a === \"applied\" || a === \"reconciled\");\n\t\t\tif (!o && r !== void 0) this.notifyFailure(t, r);\n\t\t\telse if (!o && a === \"aborted\") this.notifyFailure(t, /* @__PURE__ */ Error(\"Cart adapter returned aborted without acknowledging an abort request\"));\n\t\t\telse if (!o && a === \"invalid\") this.notifyFailure(t, /* @__PURE__ */ Error(\"Cart adapter returned an invalid update outcome\"));\n\t\t\telse if (!o) try {\n\t\t\t\tt.onApplied(n);\n\t\t\t} catch {\n\t\t\t\tconsole.warn(\"[cedros] Cart sync completion callback failed\");\n\t\t\t}\n\t\t\ts && e.pending?.snapshot === t.snapshot && (e.pending = void 0);\n\t\t\tlet c = e.pending;\n\t\t\te.pending = void 0, c || this.lanes.delete(t.customerId), this.drain(), c && (this.canStart(c.generation) ? this.start(e, c) : this.queue(e, c)), this.drain();\n\t\t}\n\t}\n\tdrain() {\n\t\tlet { maxActiveCustomers: e } = this.limits(), t = this.waiting.length;\n\t\tfor (; !this.disposed && t > 0 && this.waiting.length > 0;) {\n\t\t\t--t;\n\t\t\tlet n = this.waiting.shift(), r = this.lanes.get(n), i = r?.pending;\n\t\t\t!r || !i || (this.totalActive() < e && this.activeFor(i.generation) < e ? this.start(r, i) : this.waiting.push(n));\n\t\t}\n\t}\n\temit(e, t) {\n\t\tif (this.disposed) return;\n\t\tlet n = {\n\t\t\tevent: e,\n\t\t\tactiveCustomers: this.totalActive(),\n\t\t\tqueuedCustomers: this.waiting.length,\n\t\t\tcapability: Ft(t)\n\t\t};\n\t\ttry {\n\t\t\tthis.getOptions()?.onHealthEvent?.(n);\n\t\t} catch {}\n\t}\n\tlimits() {\n\t\treturn jt(this.getOptions());\n\t}\n\tactiveFor(e) {\n\t\treturn this.activeByGeneration.get(e) ?? 0;\n\t}\n\ttotalActive() {\n\t\treturn Array.from(this.activeByGeneration.values()).reduce((e, t) => e + t, 0);\n\t}\n\tcanStart(e) {\n\t\tlet { maxActiveCustomers: t } = this.limits();\n\t\treturn this.totalActive() < t && this.activeFor(e) < t;\n\t}\n\tnotifyFailure(e, t) {\n\t\ttry {\n\t\t\te.onFailure(t);\n\t\t} catch {\n\t\t\tconsole.warn(\"[cedros] Cart sync failure callback failed\");\n\t\t}\n\t}\n\tsetActive(e, t) {\n\t\tt > 0 ? this.activeByGeneration.set(e, t) : this.activeByGeneration.delete(e);\n\t}\n\tremoveWaiting(e) {\n\t\tfor (let t = this.waiting.length - 1; t >= 0; --t) this.waiting[t] === e && this.waiting.splice(t, 1);\n\t}\n};\n//#endregion\n//#region src/runtime/useCartSyncQueue.ts\nfunction Ut(e, t, n, r) {\n\tlet i = S.useRef(r);\n\ti.current = r;\n\tlet a = Nt(e), o = `${a?.protocol ?? \"legacy\"}:${a?.abort ?? \"unsupported\"}:${a?.versionedWrites === !0}`, s = S.useRef({\n\t\tadapter: e,\n\t\tupdateCart: e.updateCart,\n\t\tcapabilityKey: o,\n\t\tcustomerId: t,\n\t\tgeneration: 0\n\t}), c = s.current, l = c.adapter !== e || c.updateCart !== e.updateCart || c.capabilityKey !== o ? c.generation + 1 : c.generation;\n\ts.current = {\n\t\tadapter: e,\n\t\tupdateCart: e.updateCart,\n\t\tcapabilityKey: o,\n\t\tcustomerId: t,\n\t\tgeneration: l\n\t};\n\tlet u = S.useRef(null);\n\tu.current ||= new Ht(() => i.current);\n\tlet d = u.current, f = S.useRef(null), p = S.useRef(0);\n\treturn S.useEffect(() => (d.activate(), () => d.dispose()), [d]), S.useEffect(() => (p.current += 1, f.current = null, () => d.abortCustomer(t)), [\n\t\td,\n\t\tt,\n\t\tn\n\t]), S.useEffect(() => (p.current += 1, f.current = null, () => d.resetCustomer(t)), [d, l]), {\n\t\tenqueue: S.useCallback((e) => {\n\t\t\tlet t = p.current, n = l;\n\t\t\td.enqueue({\n\t\t\t\t...e,\n\t\t\t\talreadyApplied: e.snapshot === f.current,\n\t\t\t\tgeneration: l,\n\t\t\t\tcapability: a,\n\t\t\t\tonApplied: (r) => {\n\t\t\t\t\tif (t !== p.current || n !== s.current.generation) return;\n\t\t\t\t\tlet i = Wt(r);\n\t\t\t\t\tf.current = i ? JSON.stringify(i) : e.snapshot, e.onApplied?.(r);\n\t\t\t\t},\n\t\t\t\tonFailure: (r) => {\n\t\t\t\t\tt !== p.current || n !== s.current.generation || (f.current = null, e.onFailure(r));\n\t\t\t\t}\n\t\t\t});\n\t\t}, [\n\t\t\ta,\n\t\t\tl,\n\t\t\td\n\t\t]),\n\t\tlastSyncedRef: f\n\t};\n}\nfunction Wt(e) {\n\tif (!(!e || e.outcome === \"aborted\")) return e.cart;\n}\n//#endregion\n//#region src/runtime/cartProvider.tsx\nvar Gt = S.createContext(null);\nfunction Kt() {\n\tlet e = S.useContext(Gt);\n\tif (!e) throw Error(\"useCart must be used within CartProvider\");\n\treturn e;\n}\nfunction qt() {\n\treturn S.useContext(Gt);\n}\nfunction Jt(e) {\n\treturn !!e && typeof e == \"object\" && typeof e.productId == \"string\" && e.productId.length > 0 && typeof e.qty == \"number\" && e.qty > 0 && typeof e.unitPrice == \"number\" && typeof e.currency == \"string\" && typeof e.titleSnapshot == \"string\";\n}\nfunction Yt(e, t) {\n\tconsole.warn(`[cedros] Cart server ${e} failed`, t instanceof Error ? t.message : String(t ?? \"\"));\n}\nfunction Xt(e) {\n\tif (!(!e || e.outcome === \"aborted\" || !e.cart || !Array.isArray(e.cart.items))) return St({\n\t\t...e.cart,\n\t\titems: e.cart.items.filter(Jt)\n\t});\n}\nfunction Zt({ children: e }) {\n\tlet { config: t } = z(), n = t.cart?.storageKey ?? \"cedros_shop_cart_v1\", r = t.customer?.id, i = t.customer?.isSignedIn ?? !!r, a = Qt(n, r, i), o = t.cart?.syncDebounceMs ?? 800, s = !!t.adapter.getCartInventoryStatus, [c, l] = S.useReducer(yt, vt), u = S.useRef(c);\n\tu.current = c;\n\tlet [d, f] = S.useState(null), p = S.useRef(null), m = d === a, h = m ? c : vt, g = S.useRef(!1), _ = S.useRef(null), { enqueue: v, lastSyncedRef: y } = Ut(t.adapter, r, i, t.cartSync);\n\tS.useEffect(() => {\n\t\tlet e = wt(), t = p.current !== null && p.current !== a;\n\t\tif (!e) {\n\t\t\tt && l({\n\t\t\t\ttype: \"cart/hydrate\",\n\t\t\t\tstate: vt\n\t\t\t}), p.current = a, f(a);\n\t\t\treturn;\n\t\t}\n\t\tlet r = $t(e, n, a, i);\n\t\tif (r && Array.isArray(r.items)) {\n\t\t\tlet e = r.items.filter(Jt);\n\t\t\tl({\n\t\t\t\ttype: \"cart/hydrate\",\n\t\t\t\tstate: St({\n\t\t\t\t\t...r,\n\t\t\t\t\titems: e\n\t\t\t\t})\n\t\t\t});\n\t\t} else t && l({\n\t\t\ttype: \"cart/hydrate\",\n\t\t\tstate: vt\n\t\t});\n\t\tp.current = a, f(a);\n\t}, [\n\t\tn,\n\t\ti,\n\t\ta\n\t]), S.useEffect(() => {\n\t\tif (!m) return;\n\t\tlet e = wt();\n\t\te && Et(e, a, c);\n\t}, [\n\t\tc,\n\t\ta,\n\t\tm\n\t]), S.useEffect(() => {\n\t\tif (!m) return;\n\t\tlet e = _.current;\n\t\tif ((!e || e.adapter !== t.adapter || e.customerId !== r || e.isSignedIn !== i) && (g.current = !1, y.current = null, _.current = {\n\t\t\tadapter: t.adapter,\n\t\t\tcustomerId: r,\n\t\t\tisSignedIn: i\n\t\t}), !i || !r) return;\n\t\tif (!t.adapter.mergeCart && !t.adapter.getCart) {\n\t\t\tg.current = !0;\n\t\t\treturn;\n\t\t}\n\t\tif (g.current) return;\n\t\tlet n = !1;\n\t\treturn (async () => {\n\t\t\ttry {\n\t\t\t\tlet e = t.adapter.mergeCart ? await t.adapter.mergeCart({\n\t\t\t\t\tcustomerId: r,\n\t\t\t\t\tcart: u.current\n\t\t\t\t}) : await t.adapter.getCart({ customerId: r });\n\t\t\t\tif (n) return;\n\t\t\t\tif (e && Array.isArray(e.items)) {\n\t\t\t\t\tg.current = !0;\n\t\t\t\t\tlet t = St({\n\t\t\t\t\t\t...e,\n\t\t\t\t\t\titems: e.items.filter(Jt)\n\t\t\t\t\t});\n\t\t\t\t\tl({\n\t\t\t\t\t\ttype: \"cart/hydrate\",\n\t\t\t\t\t\tstate: t\n\t\t\t\t\t}), y.current = JSON.stringify(t);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tn || (g.current = !1, Yt(\"merge\", e));\n\t\t\t}\n\t\t})(), () => {\n\t\t\tn = !0;\n\t\t};\n\t}, [\n\t\tt.adapter,\n\t\tr,\n\t\tm,\n\t\ti,\n\t\tc\n\t]), S.useEffect(() => {\n\t\tif (!m || !i || !r || !t.adapter.updateCart || !g.current || typeof window > \"u\") return;\n\t\tlet e = JSON.stringify(c), n = window.setTimeout(() => {\n\t\t\tv({\n\t\t\t\tcustomerId: r,\n\t\t\t\tcart: c,\n\t\t\t\tsnapshot: e,\n\t\t\t\tupdateCart: t.adapter.updateCart,\n\t\t\t\tonApplied: (n) => {\n\t\t\t\t\tlet r = Xt(n);\n\t\t\t\t\t!r || _.current?.adapter !== t.adapter || JSON.stringify(u.current) !== e || (u.current = r, l({\n\t\t\t\t\t\ttype: \"cart/hydrate\",\n\t\t\t\t\t\tstate: r\n\t\t\t\t\t}));\n\t\t\t\t},\n\t\t\t\tonFailure: (e) => Yt(\"update\", e)\n\t\t\t});\n\t\t}, o);\n\t\treturn () => window.clearTimeout(n);\n\t}, [\n\t\tt.adapter,\n\t\tr,\n\t\tv,\n\t\tm,\n\t\ti,\n\t\tc,\n\t\to\n\t]);\n\tlet b = S.useCallback((e, t) => {\n\t\tlet n = h.items.find((n) => n.productId === e && n.variantId === t);\n\t\tif (n) return {\n\t\t\tholdId: n.holdId,\n\t\t\texpiresAt: n.holdExpiresAt\n\t\t};\n\t}, [h.items]), x = S.useCallback((e, t, n, r) => {\n\t\tl({\n\t\t\ttype: \"cart/updateHold\",\n\t\t\tproductId: e,\n\t\t\tvariantId: t,\n\t\t\tholdId: r,\n\t\t\tholdExpiresAt: n\n\t\t});\n\t}, []), C = S.useCallback((e) => {\n\t\tl({\n\t\t\ttype: \"cart/hydrate\",\n\t\t\tstate: St({\n\t\t\t\t...e,\n\t\t\t\titems: e.items.filter(Jt)\n\t\t\t})\n\t\t});\n\t}, []), w = S.useMemo(() => ({\n\t\titems: h.items,\n\t\tpromoCode: h.promoCode,\n\t\tpromoCodes: h.promoCodes ?? [],\n\t\tcount: bt(h.items),\n\t\tsubtotal: xt(h.items),\n\t\taddItem: (e, t) => l({\n\t\t\ttype: \"cart/add\",\n\t\t\titem: e,\n\t\t\tqty: t\n\t\t}),\n\t\tremoveItem: (e, t) => l({\n\t\t\ttype: \"cart/remove\",\n\t\t\tproductId: e,\n\t\t\tvariantId: t\n\t\t}),\n\t\tsetQty: (e, t, n) => l({\n\t\t\ttype: \"cart/setQty\",\n\t\t\tproductId: e,\n\t\t\tvariantId: t,\n\t\t\tqty: n\n\t\t}),\n\t\tclear: () => l({ type: \"cart/clear\" }),\n\t\tsetPromoCode: (e) => l({\n\t\t\ttype: \"cart/setPromoCode\",\n\t\t\tpromoCode: e\n\t\t}),\n\t\taddPromoCode: (e) => l({\n\t\t\ttype: \"cart/addPromoCode\",\n\t\t\tpromoCode: e\n\t\t}),\n\t\tremovePromoCode: (e) => l({\n\t\t\ttype: \"cart/removePromoCode\",\n\t\t\tpromoCode: e\n\t\t}),\n\t\treplaceCart: C,\n\t\tholdsSupported: s,\n\t\tgetItemHold: b,\n\t\tupdateItemHold: x\n\t}), [\n\t\th.items,\n\t\th.promoCode,\n\t\th.promoCodes,\n\t\tC,\n\t\ts,\n\t\tb,\n\t\tx\n\t]);\n\treturn /* @__PURE__ */ T(Gt.Provider, {\n\t\tvalue: w,\n\t\tchildren: e\n\t});\n}\nfunction Qt(e, t, n) {\n\treturn n && t ? `${e}:customer:${at(t)}` : e;\n}\nfunction $t(e, t, n, r) {\n\tif (!r || t === n) return Tt(e, n);\n\tlet i = Tt(e, t);\n\tif (!i) return Tt(e, n);\n\tif (!en(i)) {\n\t\ttry {\n\t\t\te.removeItem(t);\n\t\t} catch {}\n\t\treturn Tt(e, n);\n\t}\n\ttry {\n\t\treturn e.removeItem(t), i;\n\t} catch {\n\t\treturn console.warn(\"[cedros] Cart guest migration could not isolate local state\"), Tt(e, n);\n\t}\n}\nfunction en(e) {\n\treturn e.items.length > 0 || !!e.promoCode || !!e.promoCodes?.length;\n}\n//#endregion\n//#region src/runtime/payFeatureFlags.ts\nvar tn = {\n\tsubscriptions: !0,\n\trefunds: !0,\n\treturns: !0,\n\tinventory: !0,\n\tcoupons: !0,\n\tshipping: !0,\n\ttaxes: !0\n}, nn = {\n\tsubscriptions: [\n\t\t\"subscriptions\",\n\t\t\"subscription\",\n\t\t\"pay.subscriptions\",\n\t\t\"pay.subscription\",\n\t\t\"cedros-pay:subscriptions\"\n\t],\n\trefunds: [\n\t\t\"refunds\",\n\t\t\"refund\",\n\t\t\"pay.refunds\",\n\t\t\"pay.refund\",\n\t\t\"cedros-pay:refunds\"\n\t],\n\treturns: [\n\t\t\"returns\",\n\t\t\"return\",\n\t\t\"pay.returns\",\n\t\t\"pay.return\",\n\t\t\"cedros-pay:returns\"\n\t],\n\tinventory: [\n\t\t\"inventory\",\n\t\t\"stock\",\n\t\t\"pay.inventory\",\n\t\t\"pay.stock\",\n\t\t\"cedros-pay:inventory\"\n\t],\n\tcoupons: [\n\t\t\"coupons\",\n\t\t\"coupon\",\n\t\t\"promoCodes\",\n\t\t\"promotionCodes\",\n\t\t\"discounts\",\n\t\t\"pay.coupons\",\n\t\t\"cedros-pay:coupons\"\n\t],\n\tshipping: [\n\t\t\"shipping\",\n\t\t\"fulfillment.shipping\",\n\t\t\"pay.shipping\",\n\t\t\"cedros-pay:shipping\"\n\t],\n\ttaxes: [\n\t\t\"taxes\",\n\t\t\"tax\",\n\t\t\"pay.taxes\",\n\t\t\"pay.tax\",\n\t\t\"cedros-pay:taxes\"\n\t]\n};\nfunction rn(e) {\n\tlet t = { ...tn };\n\tfor (let n of Object.keys(nn)) {\n\t\tlet r = on(e, nn[n]);\n\t\tr !== void 0 && (t[n] = r);\n\t}\n\treturn t;\n}\nfunction an(e, t) {\n\treturn rn(e.featureFlags)[t];\n}\nfunction V() {\n\treturn rn(dt()?.featureFlags);\n}\nfunction on(e, t) {\n\tfor (let n of t) {\n\t\tlet t = e?.[n];\n\t\tif (typeof t == \"boolean\") return t;\n\t}\n}\n//#endregion\n//#region src/runtime/cartInventory.ts\nvar sn = /* @__PURE__ */ new Map(), cn = 2;\nfunction ln(e, t) {\n\treturn `${e}::${t ?? \"\"}`;\n}\nfunction un(e, t) {\n\tif (t && e.variants?.length) {\n\t\tlet n = e.variants.find((e) => e.id === t);\n\t\tif (n) return {\n\t\t\tqty: n.inventoryQuantity,\n\t\t\tstatus: n.inventoryStatus\n\t\t};\n\t}\n\treturn {\n\t\tqty: e.inventoryQuantity,\n\t\tstatus: e.inventoryStatus\n\t};\n}\nfunction dn(e, t, n) {\n\tlet r = {\n\t\tproductId: e.productId,\n\t\tvariantId: e.variantId,\n\t\tisOutOfStock: !1,\n\t\texceedsAvailable: !1,\n\t\tisLowStock: !1\n\t};\n\tif (!t) return {\n\t\t...r,\n\t\tisOutOfStock: !0,\n\t\treason: \"not_found\",\n\t\tmessage: n.t(\"storefront.stock.out\")\n\t};\n\tlet { qty: i, status: a } = un(t, e.variantId);\n\treturn r.availableQty = i, r.status = a, a === \"out_of_stock\" || typeof i == \"number\" && i <= 0 ? {\n\t\t...r,\n\t\tisOutOfStock: !0,\n\t\treason: \"out_of_stock\",\n\t\tmessage: n.t(\"storefront.stock.out\")\n\t} : typeof i == \"number\" && e.qty > i ? {\n\t\t...r,\n\t\texceedsAvailable: !0,\n\t\treason: \"quantity_exceeded\",\n\t\tmessage: n.t(\"storefront.stock.quantityExceeded\", {\n\t\t\tavailable: i,\n\t\t\tquantity: e.qty\n\t\t})\n\t} : a === \"low\" || typeof i == \"number\" && i > 0 && i <= 5 ? {\n\t\t...r,\n\t\tisLowStock: !0,\n\t\treason: \"low_stock\",\n\t\tmessage: typeof i == \"number\" ? n.t(\"storefront.stock.low\", { count: i }) : n.t(\"storefront.stock.lowGeneric\")\n\t} : r;\n}\nasync function fn(e, t) {\n\tlet n = /* @__PURE__ */ new Map();\n\tfor (let r = 0; r < e.length; r += cn) {\n\t\tlet i = e.slice(r, r + cn), a = await Promise.all(i.map((e) => t(e)));\n\t\tfor (let e of a) pn(n, e);\n\t}\n\treturn n;\n}\nfunction pn(e, t) {\n\tt && (e.set(t.id, t), t.slug && t.slug !== t.id && e.set(t.slug, t));\n}\nfunction mn(e, t, n) {\n\tlet r = /* @__PURE__ */ new Map();\n\tfor (let i of e) r.set(ln(i.productId, i.variantId), dn(i, t.get(i.productId) ?? null, n));\n\treturn r;\n}\nfunction hn({ items: e, refreshInterval: t = 3e4, skip: n = !1 }) {\n\tlet { config: r, i18n: i, dataCacheKey: a } = z(), o = V(), s = x.useMemo(() => Array.from(new Set(e.map((e) => e.productId))).sort(), [e]), c = L(s), l = o.inventory && !n && s.length > 0, { data: u, isLoading: d, error: f, refetch: p } = R({\n\t\tkey: `${a}:cart-inventory:${i.locale}:${c}`,\n\t\tenabled: l,\n\t\tstaleTimeMs: 5e3,\n\t\trefreshIntervalMs: l && t > 0 ? t : 0,\n\t\tfetcher: () => r.adapter.getProductsByIds ? r.adapter.getProductsByIds(s) : fn(s, r.adapter.getProductBySlug)\n\t}), m = x.useMemo(() => l && u !== void 0 ? mn(e, u, i) : sn, [\n\t\tl,\n\t\tu,\n\t\te,\n\t\ti\n\t]);\n\treturn {\n\t\tinventory: m,\n\t\tisLoading: d,\n\t\terror: f,\n\t\trefresh: () => {\n\t\t\tp();\n\t\t},\n\t\tgetItemInventory: x.useCallback((e, t) => m.get(ln(e, t)), [m]),\n\t\thasIssues: x.useMemo(() => Array.from(m.values()).some((e) => e.isOutOfStock || e.exceedsAvailable), [m])\n\t};\n}\n//#endregion\n//#region src/runtime/useStorefrontSettings.ts\nfunction gn() {\n\tlet e = dt(), t = e?.config?.adapter?.getStorefrontSettings ?? null, n = e?.config?.ssr?.storefrontSettings, { data: r, isLoading: i, error: a, refetch: o } = R({\n\t\tkey: `${e?.dataCacheKey ?? \"adapter:none\"}:storefront-settings`,\n\t\tenabled: !!t,\n\t\tinitialData: n ? d(n) : h,\n\t\tinitialDataIsResolved: n !== void 0,\n\t\tstaleTimeMs: 6e4,\n\t\tfetcher: async () => {\n\t\t\tlet e = await t?.();\n\t\t\treturn e ? d(e) : h;\n\t\t}\n\t});\n\treturn {\n\t\tsettings: r ?? h,\n\t\tisLoading: i,\n\t\terror: a === null ? null : a || \"Storefront settings could not be loaded.\",\n\t\trefetch: o\n\t};\n}\n//#endregion\n//#region src/runtime/usePaymentMethodsConfig.ts\nfunction _n() {\n\tlet e = dt(), t = e?.config?.adapter?.getPaymentMethodsConfig ?? null, { data: n, isLoading: r } = R({\n\t\tkey: `${e?.dataCacheKey ?? \"adapter:none\"}:payment-methods`,\n\t\tenabled: !!t,\n\t\tinitialData: o,\n\t\tstaleTimeMs: 6e4,\n\t\tfetcher: async () => g(await t?.())\n\t});\n\treturn {\n\t\tconfig: n ?? o,\n\t\tisLoading: r\n\t};\n}\n//#endregion\n//#region src/runtime/ssrIdentity.ts\nvar vn = 256;\nfunction yn(e, t) {\n\tif (!e || e.length > vn) return;\n\tlet n;\n\tfor (let r of e) if (t(r)) {\n\t\tif (n !== void 0) return;\n\t\tn = r;\n\t}\n\treturn n;\n}\n//#endregion\n//#region src/seoPolicy.ts\nvar bn = /^[A-Za-z]{3}$/, xn = /* @__PURE__ */ new Set([\n\t\"code\",\n\t\"automatic\",\n\t\"bxgy\",\n\t\"free_shipping\",\n\t\"gift_card\",\n\t\"store_credit\",\n\t\"abandoned_checkout\",\n\t\"manual\",\n\t\"custom\"\n]), Sn = /* @__PURE__ */ new Set([\n\t\"order\",\n\t\"line_item\",\n\t\"shipping\",\n\t\"payment\",\n\t\"gift_card\"\n]), Cn = /* @__PURE__ */ new Set([\n\t\"cedros-pay\",\n\t\"cedros-giftcards\",\n\t\"host\",\n\t\"custom\"\n]);\nfunction wn(e) {\n\tif (!e || typeof e != \"object\") return null;\n\tlet t = e;\n\tif (!(H(t.id, 200) && i(t.slug) && H(t.title, 120) && H(t.description, 320) && typeof t.price == \"number\" && Number.isFinite(t.price) && t.price >= 0 && typeof t.currency == \"string\" && bn.test(t.currency) && Array.isArray(t.images) && Array.isArray(t.tags) && t.tags.length <= 100 && t.tags.every((e) => H(e, 100)) && Array.isArray(t.categoryIds) && t.categoryIds.length <= 100 && t.categoryIds.every((e) => H(e, 200)))) return null;\n\tlet n = En(t.images), r = Tn(t);\n\treturn n === null || r === null ? null : {\n\t\t...t,\n\t\t...r,\n\t\tid: t.id.trim(),\n\t\ttitle: t.title.trim(),\n\t\tdescription: t.description.trim(),\n\t\tcurrency: t.currency.toUpperCase(),\n\t\ttags: Kn(t.tags),\n\t\tcategoryIds: Kn(t.categoryIds),\n\t\timages: n\n\t};\n}\nfunction Tn(e) {\n\tlet t = e.variants === void 0 ? void 0 : Dn(e.variants), n = e.variationConfig === void 0 ? void 0 : On(e.variationConfig), r = e.attributes === void 0 ? void 0 : jn(e.attributes), i = Zn(e.compareAtPrice), a = Qn(e.inventoryQuantity), o = Nn(e.checkoutRequirements), s = Pn(e.fulfillment), c = Fn(e.tokenizedAssetConfig);\n\treturn t === null || n === null || r === null || i === null || a === null || o === null || s === null || c === null || !tr(e.inventoryStatus, [\n\t\t\"in_stock\",\n\t\t\"low\",\n\t\t\"out_of_stock\",\n\t\t\"backorder\"\n\t]) || !tr(e.shippingProfile, [\"physical\", \"digital\"]) ? null : {\n\t\tvariants: t,\n\t\tvariationConfig: n,\n\t\tattributes: r,\n\t\tcompareAtPrice: i,\n\t\tinventoryQuantity: a,\n\t\tcheckoutRequirements: o,\n\t\tfulfillment: s,\n\t\ttokenizedAssetConfig: c\n\t};\n}\nfunction En(e) {\n\tif (!Array.isArray(e) || e.length > 20) return null;\n\tlet t = [];\n\tfor (let n of e) {\n\t\tif (!n || typeof n != \"object\") return null;\n\t\tlet e = n, r = er(e.width), i = er(e.height);\n\t\t!rr(e.url) || r === null || i === null || e.alt !== void 0 && !qn(e.alt, 200) || t.push({\n\t\t\turl: e.url,\n\t\t\talt: e.alt?.trim(),\n\t\t\twidth: r,\n\t\t\theight: i\n\t\t});\n\t}\n\treturn t;\n}\nfunction Dn(e) {\n\tif (!Array.isArray(e) || e.length > 500) return null;\n\tlet t = [];\n\tfor (let n of e) {\n\t\tif (!n || typeof n != \"object\") return null;\n\t\tlet e = n, r = Mn(e.options, 20, 100), i = e.optionValueIds === void 0 ? void 0 : Yn(e.optionValueIds, 20, 200), a = Zn(e.price), o = Zn(e.compareAtPrice), s = Qn(e.inventoryQuantity), c = e.images === void 0 ? void 0 : En(e.images);\n\t\tif (!H(e.id, 200) || !H(e.title, 120) || r === null || i === null || a === null || o === null || s === null || c === null || !tr(e.inventoryStatus, [\n\t\t\t\"in_stock\",\n\t\t\t\"low\",\n\t\t\t\"out_of_stock\",\n\t\t\t\"backorder\"\n\t\t]) || e.sku !== void 0 && !qn(e.sku, 120) || e.autoGenerated !== void 0 && typeof e.autoGenerated != \"boolean\") return null;\n\t\tt.push({\n\t\t\t...e,\n\t\t\tid: e.id.trim(),\n\t\t\ttitle: e.title.trim(),\n\t\t\toptions: r,\n\t\t\toptionValueIds: i,\n\t\t\tprice: a,\n\t\t\tcompareAtPrice: o,\n\t\t\tinventoryQuantity: s,\n\t\t\timages: c,\n\t\t\tsku: e.sku?.trim()\n\t\t});\n\t}\n\treturn Gn(t);\n}\nfunction On(e) {\n\tif (!e || typeof e != \"object\" || !Array.isArray(e.variationTypes)) return null;\n\tlet t = e.variationTypes;\n\tif (t.length > 10) return null;\n\tlet n = t.map(kn);\n\tif (n.some((e) => e === null)) return null;\n\tlet r = Gn(n);\n\treturn r ? { variationTypes: r } : null;\n}\nfunction kn(e) {\n\tif (!e || typeof e != \"object\") return null;\n\tlet t = e;\n\tif (!H(t.id, 200) || !H(t.name, 120) || !Number.isSafeInteger(t.displayOrder) || !Array.isArray(t.values) || t.values.length > 100) return null;\n\tlet n = t.values.map(An);\n\tif (n.some((e) => e === null)) return null;\n\tlet r = Gn(n);\n\treturn r ? {\n\t\tid: t.id.trim(),\n\t\tname: t.name.trim(),\n\t\tdisplayOrder: t.displayOrder,\n\t\tvalues: r\n\t} : null;\n}\nfunction An(e) {\n\tif (!e || typeof e != \"object\") return null;\n\tlet t = e;\n\treturn !H(t.id, 200) || !H(t.label, 120) || t.parentValueId !== void 0 && !H(t.parentValueId, 200) ? null : {\n\t\tid: t.id.trim(),\n\t\tlabel: t.label.trim(),\n\t\tparentValueId: t.parentValueId?.trim()\n\t};\n}\nfunction jn(e, t = 100, n = 1e3) {\n\tif (!e || typeof e != \"object\" || Array.isArray(e)) return null;\n\tlet r = Object.entries(e);\n\tif (r.length > t) return null;\n\tlet i = {};\n\tfor (let [e, t] of r) {\n\t\tlet r = e.trim();\n\t\tif (!H(e, 100) || !(typeof t == \"boolean\" || typeof t == \"number\" && Number.isFinite(t) || typeof t == \"string\" && Array.from(t).length <= n) || r in i) return null;\n\t\ti[r] = typeof t == \"string\" ? t.trim() : t;\n\t}\n\treturn i;\n}\nfunction Mn(e, t, n) {\n\tlet r = jn(e, t, n);\n\treturn !r || Object.values(r).some((e) => typeof e != \"string\") ? null : r;\n}\nfunction Nn(e) {\n\tif (e === void 0) return;\n\tif (!e || typeof e != \"object\" || Array.isArray(e)) return null;\n\tlet t = e;\n\treturn !tr(t.email, [\n\t\t\"none\",\n\t\t\"optional\",\n\t\t\"required\"\n\t]) || !tr(t.name, [\n\t\t\"none\",\n\t\t\"optional\",\n\t\t\"required\"\n\t]) || !tr(t.phone, [\n\t\t\"none\",\n\t\t\"optional\",\n\t\t\"required\"\n\t]) || !nr(t.shippingAddress) || !nr(t.billingAddress) ? null : { ...t };\n}\nfunction Pn(e) {\n\tif (e === void 0) return;\n\tif (!e || typeof e != \"object\" || Array.isArray(e)) return null;\n\tlet t = e;\n\treturn ![\n\t\t\"digital_download\",\n\t\t\"shipping\",\n\t\t\"service\"\n\t].includes(String(t.type)) || t.notes !== void 0 && !qn(t.notes, 1e3) ? null : {\n\t\ttype: t.type,\n\t\tnotes: t.notes?.trim()\n\t};\n}\nfunction Fn(e) {\n\tif (e === void 0) return;\n\tif (!e || typeof e != \"object\" || Array.isArray(e)) return null;\n\tlet t = e, n = typeof t.backingCurrency == \"string\" ? t.backingCurrency.toUpperCase() : \"\";\n\treturn !H(t.assetClassCollectionId, 200) || !Number.isSafeInteger(t.backingValueCents) || t.backingValueCents < 0 || !Number.isSafeInteger(t.tokensPerUnit) || t.tokensPerUnit <= 0 || !bn.test(n) || !Jn(t.assetClass, 120) || !Jn(t.assetIdentifier, 200) || !Jn(t.regulatoryNotice, 1e3) || t.custodyProofUrl !== void 0 && !rr(t.custodyProofUrl) || t.nftMintAddress !== void 0 && !/^[1-9A-HJ-NP-Za-km-z]{32,44}$/.test(t.nftMintAddress) ? null : {\n\t\t...t,\n\t\tassetClassCollectionId: t.assetClassCollectionId.trim(),\n\t\tbackingCurrency: n,\n\t\tassetClass: t.assetClass?.trim(),\n\t\tassetIdentifier: t.assetIdentifier?.trim(),\n\t\tregulatoryNotice: t.regulatoryNotice?.trim()\n\t};\n}\nfunction In(e) {\n\tif (!e || typeof e != \"object\") return null;\n\tlet t = e;\n\treturn H(t.id, 200) && i(t.slug) && H(t.name, 120) && H(t.description, 320) ? {\n\t\t...t,\n\t\tid: t.id.trim(),\n\t\tname: t.name.trim(),\n\t\tdescription: t.description.trim()\n\t} : null;\n}\nfunction Ln(e) {\n\treturn Array.isArray(e) ? Un(e.map(wn).filter((e) => e !== null)) : [];\n}\nfunction Rn(e) {\n\treturn Array.isArray(e) ? Un(e.map(In).filter((e) => e !== null)) : [];\n}\nfunction zn(e, t, n, r) {\n\tif (!Number.isSafeInteger(t) || t <= 0 || !Number.isSafeInteger(n) || n <= 0 || !Number.isSafeInteger(e.page) || e.page !== t || !Number.isSafeInteger(e.pageSize) || e.pageSize !== n || !Array.isArray(e.items) || e.items.length > n) return null;\n\tlet i = Ln(e.items);\n\tif (i.length !== e.items.length || r && i.some((e) => e.currency !== r.toUpperCase())) return null;\n\tlet a = (t - 1) * n + i.length;\n\tif (e.total !== void 0) {\n\t\tif (!Number.isSafeInteger(e.total) || e.total < a || e.hasNextPage !== void 0 && e.hasNextPage !== a < e.total) return null;\n\t} else if (e.hasNextPage !== void 0) {\n\t\tif (typeof e.hasNextPage != \"boolean\" || i.length === 0 && e.hasNextPage) return null;\n\t} else if (i.length === n) return null;\n\tlet o = e.hasNextPage ?? (e.total !== void 0 && a < e.total);\n\treturn {\n\t\t...e,\n\t\titems: i,\n\t\thasNextPage: o\n\t};\n}\nfunction Bn(e, t) {\n\tif (!Array.isArray(e) || e.length > 100) return null;\n\tlet n = e.map((e) => Vn(e, t));\n\tif (n.some((e) => e === null)) return null;\n\tlet r = n;\n\treturn Wn(r.map((e) => e.id)).size === r.length ? r : null;\n}\nfunction Vn(e, t) {\n\tif (!e || typeof e != \"object\") return null;\n\tlet n = e, r = typeof n.currency == \"string\" ? n.currency.toUpperCase() : \"\", i = Yn(n.features, 50, 160), a = n.promotionMessages === void 0 ? void 0 : Yn(n.promotionMessages, 20, 160), o = n.discounts === void 0 ? void 0 : Hn(n.discounts, r);\n\treturn !H(n.id, 200) || !H(n.title, 120) || n.description !== void 0 && !qn(n.description, 320) || !Xn(n.priceMonthly) || n.priceAnnual !== void 0 && !Xn(n.priceAnnual) || !bn.test(r) || r !== t.toUpperCase() || i === null || a === null || o === null || !$n(n.inventoryQuantity, !0) || !$n(n.inventorySold) || !nr(n.isPopular) ? null : {\n\t\t...n,\n\t\tid: n.id.trim(),\n\t\ttitle: n.title.trim(),\n\t\tdescription: n.description?.trim(),\n\t\tcurrency: r,\n\t\tfeatures: i,\n\t\tdiscounts: o,\n\t\tpromotionMessages: a\n\t};\n}\nfunction Hn(e, t) {\n\tif (e.length > 20) return null;\n\tlet n = [];\n\tfor (let r of e) {\n\t\tif (!r || typeof r != \"object\") return null;\n\t\tlet e = r, i = e.currency?.toUpperCase();\n\t\tif (!H(e.title, 120) || !xn.has(String(e.type)) || e.amount !== void 0 && !Xn(e.amount) || i !== void 0 && (!bn.test(i) || i !== t) || !Jn(e.id, 200) || !Jn(e.code, 120) || !Jn(e.message, 320) || e.target !== void 0 && !Sn.has(e.target) || e.source !== void 0 && !Cn.has(e.source) || !nr(e.combinable)) return null;\n\t\tn.push({\n\t\t\t...e,\n\t\t\ttitle: e.title.trim(),\n\t\t\tcurrency: i,\n\t\t\tid: e.id?.trim(),\n\t\t\tcode: e.code?.trim(),\n\t\t\tmessage: e.message?.trim()\n\t\t});\n\t}\n\treturn n;\n}\nfunction Un(e) {\n\tlet t = Wn(e.map((e) => e.id.trim())), n = Wn(e.map((e) => e.slug));\n\treturn e.filter((e) => t.get(e.id.trim()) === 1 && n.get(e.slug) === 1);\n}\nfunction Wn(e) {\n\tlet t = /* @__PURE__ */ new Map();\n\treturn e.forEach((e) => t.set(e, (t.get(e) ?? 0) + 1)), t;\n}\nfunction Gn(e) {\n\treturn Wn(e.map((e) => e.id)).size === e.length ? e : null;\n}\nfunction Kn(e) {\n\treturn [...new Set(e.map((e) => e.trim()))];\n}\nfunction H(e, t) {\n\tif (typeof e != \"string\") return !1;\n\tlet n = e.trim();\n\treturn n.length > 0 && Array.from(n).length <= t;\n}\nfunction qn(e, t) {\n\treturn typeof e == \"string\" && Array.from(e.trim()).length <= t;\n}\nfunction Jn(e, t) {\n\treturn e === void 0 || qn(e, t);\n}\nfunction Yn(e, t, n) {\n\treturn !Array.isArray(e) || e.length > t || e.some((e) => !H(e, n)) ? null : e.map((e) => e.trim());\n}\nfunction Xn(e) {\n\treturn typeof e == \"number\" && Number.isFinite(e) && e >= 0;\n}\nfunction Zn(e) {\n\treturn e === void 0 ? void 0 : Xn(e) ? e : null;\n}\nfunction Qn(e) {\n\treturn e === void 0 ? void 0 : Number.isSafeInteger(e) && e >= 0 ? e : null;\n}\nfunction $n(e, t = !1) {\n\treturn e === void 0 || t && e === null || Number.isSafeInteger(e) && e >= 0;\n}\nfunction er(e) {\n\treturn e === void 0 ? void 0 : Number.isSafeInteger(e) && e > 0 && e <= 2e4 ? e : null;\n}\nfunction tr(e, t) {\n\treturn e === void 0 || typeof e == \"string\" && t.includes(e);\n}\nfunction nr(e) {\n\treturn e === void 0 || typeof e == \"boolean\";\n}\nfunction rr(e) {\n\tif (typeof e != \"string\" || e.length === 0 || e.length > 1024 || /[\\\\#\\u0000-\\u0020\\u007f]/.test(e) || ir(e)) return !1;\n\tif (e.startsWith(\"/\") && !e.startsWith(\"//\")) return !e.split(\"/\").some((e) => e === \".\" || e === \"..\");\n\tif (!e.startsWith(\"https://\")) return !1;\n\tlet t = e.slice(8), n = t.split(/[/?]/, 1)[0] ?? \"\", r = t.slice(n.length).split(\"?\", 1)[0] ?? \"\";\n\tif (n.length === 0 || n.includes(\"@\") || r.split(\"/\").some((e) => e === \".\" || e === \"..\")) return !1;\n\ttry {\n\t\tlet t = new URL(e);\n\t\treturn t.protocol === \"https:\" && !t.username && !t.password && !t.hash;\n\t} catch {\n\t\treturn !1;\n\t}\n}\nfunction ir(e) {\n\tfor (let t = e.indexOf(\"%\"); t >= 0; t = e.indexOf(\"%\", t + 3)) {\n\t\tlet n = e.slice(t + 1, t + 3);\n\t\tif (!/^[0-9A-Fa-f]{2}$/.test(n)) return !0;\n\t\tlet r = Number.parseInt(n, 16);\n\t\tif (r <= 31 || r === 127 || [\n\t\t\t35,\n\t\t\t46,\n\t\t\t47,\n\t\t\t63,\n\t\t\t92\n\t\t].includes(r)) return !0;\n\t}\n\treturn !1;\n}\n//#endregion\n//#region src/runtime/dataHooks.ts\nvar ar = [], or = /* @__PURE__ */ new Map();\nfunction sr(e, t) {\n\tlet n = e.get(t);\n\treturn n || (n = {\n\t\tcontrollers: /* @__PURE__ */ new Set(),\n\t\ttimer: null\n\t}, e.set(t, n)), n;\n}\nfunction cr(e = null, t = !0) {\n\tlet { config: n, i18n: r, dataCacheKey: i } = z(), a = yn(n.ssr?.categories, (t) => t.marketId === e?.id && t.locale === r.locale), o = x.useMemo(() => a === void 0 ? ar : Rn(a.categories), [a]), { data: s, isLoading: c, error: l, refetch: u } = R({\n\t\tkey: `${i}:categories:${e?.id ?? \"default\"}:${r.locale}`,\n\t\tenabled: t,\n\t\tinitialData: o,\n\t\tinitialDataIsResolved: a !== void 0,\n\t\tstaleTimeMs: 6e4,\n\t\tfetcher: async () => Rn(await n.adapter.listCategories())\n\t});\n\treturn {\n\t\tcategories: s ?? ar,\n\t\tisLoading: c,\n\t\terror: l,\n\t\trefetch: u\n\t};\n}\nfunction lr(e) {\n\tlet { config: t, i18n: n, dataCacheKey: r } = z(), i = x.useMemo(() => L(e.filters ?? {}), [e.filters]), a = x.useMemo(() => ({\n\t\tcategory: e.category,\n\t\tsearch: e.search,\n\t\tfilters: e.filters,\n\t\tsort: e.sort,\n\t\tpage: e.page,\n\t\tpageSize: e.pageSize\n\t}), [\n\t\ti,\n\t\te.category,\n\t\te.page,\n\t\te.pageSize,\n\t\te.search,\n\t\te.sort\n\t]);\n\treturn R({\n\t\tkey: `${r}:products:${n.locale}:${t.currency}:${L(a)}`,\n\t\tinitialData: null,\n\t\tstaleTimeMs: 3e4,\n\t\tfetcher: async () => fr(await t.adapter.listProducts(a), a.page ?? 1, a.pageSize ?? 24)\n\t});\n}\nfunction ur(e, t, n = !0) {\n\tlet { config: r, i18n: i, dataCacheKey: a } = z(), o = x.useMemo(() => L(e.filters ?? {}), [e.filters]), s = x.useMemo(() => ({\n\t\tcategory: e.category,\n\t\tsearch: e.search,\n\t\tfilters: e.filters,\n\t\tsort: e.sort,\n\t\tpage: e.page,\n\t\tpageSize: e.pageSize\n\t}), [\n\t\to,\n\t\te.category,\n\t\te.page,\n\t\te.pageSize,\n\t\te.search,\n\t\te.sort\n\t]), c = L({\n\t\tlocale: i.locale,\n\t\tfallbackCurrency: r.currency,\n\t\tmarket: t ? {\n\t\t\tid: t.id,\n\t\t\tcurrency: t.currency,\n\t\t\tdefaultLocale: t.defaultLocale,\n\t\t\tpricing: t.pricing,\n\t\t\tcontent: t.content,\n\t\t\tmode: t.productAvailability.mode,\n\t\t\tproductIds: [...t.productAvailability.productIds].sort()\n\t\t} : null\n\t}), l = x.useMemo(() => dr(r.ssr?.catalogPages, s, t?.id, i.locale, t?.currency ?? r.currency), [\n\t\tr.currency,\n\t\tr.ssr?.catalogPages,\n\t\ti.locale,\n\t\tt?.currency,\n\t\tt?.id,\n\t\ts\n\t]), u = `${a}:market-products:${L(s)}:${c}`, d = me(r.adapter), f = x.useRef(/* @__PURE__ */ new Map()), p = R({\n\t\tkey: u,\n\t\tenabled: n,\n\t\tinitialData: l ?? null,\n\t\tinitialDataIsResolved: l !== void 0,\n\t\tstaleTimeMs: 3e4,\n\t\tfetcher: async () => {\n\t\t\tlet e = sr(f.current, u), n = new AbortController();\n\t\t\te.controllers.add(n);\n\t\t\ttry {\n\t\t\t\treturn fr(await d.list(s, t, {\n\t\t\t\t\tsignal: n.signal,\n\t\t\t\t\tscope: `${a}:${c}`\n\t\t\t\t}), s.page ?? 1, s.pageSize ?? 24, t?.currency);\n\t\t\t} finally {\n\t\t\t\te.controllers.delete(n);\n\t\t\t}\n\t\t}\n\t});\n\tx.useEffect(() => {\n\t\tlet e = sr(f.current, u);\n\t\treturn e.timer && clearTimeout(e.timer), e.timer = null, () => {\n\t\t\te.timer = setTimeout(() => {\n\t\t\t\te.controllers.forEach((e) => e.abort()), e.controllers.clear(), f.current.delete(u);\n\t\t\t}, 25);\n\t\t};\n\t}, [n, u]);\n\tlet m = x.useCallback(() => (d.invalidate(s, t, `${a}:${c}`), p.refetch()), [\n\t\ta,\n\t\tc,\n\t\td,\n\t\ts,\n\t\tp.refetch\n\t]);\n\treturn {\n\t\t...p,\n\t\trefetch: m\n\t};\n}\nfunction dr(e, t, n, r, i) {\n\tlet a = L(t), o = yn(e, (e) => e.marketId === n && e.locale === r && e.currency.toUpperCase() === i.toUpperCase() && L(e.request) === a);\n\tif (!o) return;\n\tlet s = t.page ?? 1, c = t.pageSize ?? 24;\n\treturn zn(o.result, s, c, n ? i : void 0) ?? void 0;\n}\nfunction fr(e, t, n, r) {\n\tlet i = zn(e, t, n, r);\n\tif (!i) throw Error(\"The public catalog returned SEO-unsafe or inconsistent product data.\");\n\treturn i;\n}\nfunction pr(e, t = null) {\n\tlet { config: n, i18n: r, dataCacheKey: i } = z(), a = x.useMemo(() => L([...e].sort()), [e]), o = t?.currency ?? n.currency;\n\treturn R({\n\t\tkey: `${i}:productsByIds:${t?.id ?? \"default\"}:${r.locale}:${o}:${a}`,\n\t\tinitialData: or,\n\t\tstaleTimeMs: 6e4,\n\t\tfetcher: async () => {\n\t\t\tlet r = n.adapter.getProductsByIds;\n\t\t\tif (e.length === 0 || !r) return or;\n\t\t\tlet i = await r.call(n.adapter, e);\n\t\t\treturn new Map(Ln([...i.values()]).filter((e) => !t || e.currency === o.toUpperCase()).map((e) => [e.id, e]));\n\t\t}\n\t});\n}\nfunction mr(e, t, n) {\n\tif (!t || t.length === 0) return [];\n\tlet r = new Map(e.map((e) => [e.id, e])), i = /* @__PURE__ */ new Set(), a = [];\n\tfor (let e of t) {\n\t\tlet t = r.get(e);\n\t\tif (!(!t || i.has(e)) && (i.add(e), a.push(t), a.length >= n)) break;\n\t}\n\treturn a;\n}\nfunction hr(e, t, n, r) {\n\tlet { config: i, dataCacheKey: a } = z(), o = x.useMemo(() => t.map((e) => e.id).join(\",\"), [t]), s = r && !!e && !!i.adapter.curateRelatedProducts && t.length > 0, { data: c } = R({\n\t\tkey: `${a}:ai-related:${e?.id ?? \"\"}:${n}:${o}`,\n\t\tenabled: s,\n\t\tinitialData: null,\n\t\tstaleTimeMs: 5 * 6e4,\n\t\tfetcher: async () => {\n\t\t\tlet r = i.adapter.curateRelatedProducts;\n\t\t\treturn !r || !e ? null : r.call(i.adapter, {\n\t\t\t\tproduct: e,\n\t\t\t\tcandidates: t,\n\t\t\t\tmaxItems: n\n\t\t\t});\n\t\t}\n\t});\n\treturn c ?? null;\n}\nfunction gr(e, t = null, n = !0) {\n\tlet { config: r, i18n: a, dataCacheKey: o } = z(), s = i(e), c = t?.currency, l = yn(r.ssr?.productPages, (n) => n.marketId === t?.id && n.locale === a.locale && (!c || n.currency.toUpperCase() === c.toUpperCase()) && n.slug === e), u = l?.product, d = s ? wn(u) : null, f = d?.slug === e && d.currency === l?.currency.toUpperCase() ? d : null, { data: p, isLoading: m, error: h, refetch: g } = R({\n\t\tkey: `${o}:product:${t?.id ?? \"default\"}:${a.locale}:${c ?? \"mixed\"}:${e}`,\n\t\tenabled: s && n,\n\t\tinitialData: f,\n\t\tinitialDataIsResolved: !s || l !== void 0,\n\t\tstaleTimeMs: 6e4,\n\t\tfetcher: async () => {\n\t\t\tlet t = wn(await r.adapter.getProductBySlug(e));\n\t\t\treturn t?.slug === e && (!c || t.currency === c.toUpperCase()) ? t : null;\n\t\t}\n\t});\n\treturn {\n\t\tproduct: p ?? null,\n\t\tisLoading: m,\n\t\terror: h,\n\t\trefetch: g\n\t};\n}\n//#endregion\n//#region src/runtime/analytics.ts\nvar _r = {\n\t\"cedros-shop:product-viewed\": [\n\t\t\"product_ref\",\n\t\t\"category_ref\",\n\t\t\"surface\"\n\t],\n\t\"cedros-shop:collection-viewed\": [\n\t\t\"collection_ref\",\n\t\t\"collection_type\",\n\t\t\"surface\"\n\t],\n\t\"cedros-shop:catalog-searched\": [\n\t\t\"has_query\",\n\t\t\"sort_ref\",\n\t\t\"filter_facets\",\n\t\t\"result_count_bucket\",\n\t\t\"surface\"\n\t],\n\t\"cedros-shop:quick-view-opened\": [\n\t\t\"product_ref\",\n\t\t\"category_ref\",\n\t\t\"surface\"\n\t],\n\t\"cedros-shop:add-to-cart\": [\n\t\t\"product_ref\",\n\t\t\"variant_ref\",\n\t\t\"quantity_bucket\",\n\t\t\"surface\"\n\t],\n\t\"cedros-shop:remove-from-cart\": [\n\t\t\"product_ref\",\n\t\t\"variant_ref\",\n\t\t\"quantity_bucket\",\n\t\t\"surface\"\n\t],\n\t\"cedros-shop:cart-viewed\": [\"cart_item_count_bucket\", \"surface\"],\n\t\"cedros-shop:checkout-started\": [\n\t\t\"cart_item_count_bucket\",\n\t\t\"checkout_mode\",\n\t\t\"surface\"\n\t],\n\t\"cedros-shop:subscription-checkout-started\": [\n\t\t\"tier_ref\",\n\t\t\"billing_interval\",\n\t\t\"surface\"\n\t],\n\t\"cedros-shop:cart-opened\": [\"cart_item_count_bucket\", \"surface\"]\n};\nfunction vr(e, t, n) {\n\tif (!e || e.disabled) return;\n\tlet r = {\n\t\tid: t,\n\t\tproperties: xr(t, n)\n\t};\n\ttry {\n\t\tlet t = e.emit(r);\n\t\tSr(t) && t.catch((t) => e.onError?.(t, r));\n\t} catch (t) {\n\t\te.onError?.(t, r);\n\t}\n}\nfunction U() {\n\tlet { config: e } = z();\n\treturn x.useCallback((t, n) => {\n\t\tvr(e.analytics, t, n);\n\t}, [e.analytics]);\n}\nfunction yr(e) {\n\treturn e <= 1 ? \"1\" : e <= 5 ? \"2-5\" : e <= 10 ? \"6-10\" : \"11+\";\n}\nfunction br(e) {\n\treturn e <= 0 ? \"0\" : yr(e);\n}\nfunction xr(e, t) {\n\tlet n = new Set(_r[e]), r = {};\n\tfor (let [e, i] of Object.entries(t)) n.has(e) && (i == null || i === \"\" || (r[e] = String(i)));\n\treturn r;\n}\nfunction Sr(e) {\n\treturn !!(e && typeof e.catch == \"function\");\n}\n//#endregion\n//#region src/runtime/catalogUrlState.ts\nfunction Cr(e) {\n\tif (!e) return;\n\tlet t = Number(e);\n\treturn Number.isFinite(t) ? t : void 0;\n}\nfunction wr(e) {\n\tlet t = e.get(\"tags\"), n = t ? t.split(\",\").map((e) => e.trim()).filter(Boolean) : void 0, r = Cr(e.get(\"min\")), i = Cr(e.get(\"max\")), a = e.get(\"inStock\"), o = a === \"1\" || a !== \"0\" && void 0;\n\treturn {\n\t\ttags: n && n.length ? n : void 0,\n\t\tpriceMin: r,\n\t\tpriceMax: i,\n\t\tinStock: o\n\t};\n}\nfunction Tr(e, t) {\n\tt.tags?.length ? e.set(\"tags\", t.tags.join(\",\")) : e.delete(\"tags\"), typeof t.priceMin == \"number\" ? e.set(\"min\", String(t.priceMin)) : e.delete(\"min\"), typeof t.priceMax == \"number\" ? e.set(\"max\", String(t.priceMax)) : e.delete(\"max\"), typeof t.inStock == \"boolean\" ? e.set(\"inStock\", t.inStock ? \"1\" : \"0\") : e.delete(\"inStock\");\n}\nfunction Er(e) {\n\tlet t = e.searchParams.toString();\n\treturn `${e.pathname}${t ? `?${t}` : \"\"}${e.hash}`;\n}\nfunction Dr({ baseUrl: e, state: t, includeCategory: n }) {\n\tlet r = new URL(e, \"https://cedros.local\");\n\tr.search = \"\", r.hash = \"\";\n\tlet i = r.searchParams;\n\treturn t.search.trim() ? i.set(\"q\", t.search.trim()) : i.delete(\"q\"), t.sort && t.sort !== \"featured\" ? i.set(\"sort\", t.sort) : i.delete(\"sort\"), t.page && t.page !== 1 ? i.set(\"page\", String(t.page)) : i.delete(\"page\"), n && t.category ? i.set(\"cat\", t.category) : i.delete(\"cat\"), Tr(i, t.filters), Er(r);\n}\nfunction Or({ includeCategory: e }) {\n\tif (typeof window > \"u\") return null;\n\tlet t = new URLSearchParams(window.location.search), n = t.get(\"q\") ?? \"\", r = t.get(\"sort\") ?? \"featured\", i = Cr(t.get(\"page\")) ?? 1, a = wr(t), o = e ? t.get(\"cat\") ?? void 0 : void 0;\n\treturn {\n\t\tsearch: n,\n\t\tsort: r,\n\t\tpage: Math.max(1, Math.floor(i)),\n\t\tcategory: o,\n\t\tfilters: a\n\t};\n}\nfunction kr(e, { includeCategory: t, onRestore: n }) {\n\tlet r = x.useRef(n);\n\tr.current = n, x.useEffect(() => {\n\t\tlet e = () => {\n\t\t\tlet e = Or({ includeCategory: t });\n\t\t\te && r.current?.(e);\n\t\t};\n\t\treturn window.addEventListener(\"popstate\", e), () => window.removeEventListener(\"popstate\", e);\n\t}, [t]);\n\tlet i = e.filters.tags?.join(\",\") ?? \"\";\n\tx.useEffect(() => {\n\t\tif (typeof window > \"u\") return;\n\t\tlet n = window.setTimeout(() => {\n\t\t\tlet n = Dr({\n\t\t\t\tbaseUrl: window.location.href,\n\t\t\t\tstate: e,\n\t\t\t\tincludeCategory: t\n\t\t\t});\n\t\t\tn !== `${window.location.pathname}${window.location.search}${window.location.hash}` && window.history.replaceState({}, \"\", n);\n\t\t}, 250);\n\t\treturn () => window.clearTimeout(n);\n\t}, [\n\t\tt,\n\t\te.category,\n\t\te.page,\n\t\te.search,\n\t\te.sort,\n\t\ti,\n\t\te.filters.priceMin,\n\t\te.filters.priceMax,\n\t\te.filters.inStock\n\t]);\n}\n//#endregion\n//#region src/runtime/checkoutAttempt.ts\nvar Ar = 4320 * 60 * 1e3, jr = 3e3, W = class extends Error {\n\tconstructor(e = \"Durable checkout attempt storage is unavailable\") {\n\t\tsuper(e), this.name = \"CheckoutAttemptStoreError\";\n\t}\n}, Mr = class extends Error {\n\tconstructor(e) {\n\t\tsuper(e), this.terminal = !0, this.name = \"CheckoutSessionTerminalError\";\n\t}\n};\nfunction Nr(e) {\n\treturn e instanceof Mr;\n}\nasync function Pr(e, t, n, r = Date.now(), i = jr) {\n\tif (Rr(e), Ur(t), Wr(n), !Number.isFinite(r) || r < 0) throw new W(\"Checkout attempt timestamp is invalid\");\n\tlet a = {\n\t\tversion: 1,\n\t\tattemptId: Lr(),\n\t\tmaterialFingerprint: n,\n\t\tcreatedAt: r\n\t}, o = await Hr(e.resolve(t, {\n\t\tcandidate: a,\n\t\tnow: r,\n\t\tttlMs: Ar\n\t}), i);\n\treturn zr(o, a, r, Ar), o.binding;\n}\nasync function Fr(e, t, n, r = jr) {\n\tRr(e), Ur(t), Gr(n);\n\tlet i = await Hr(e.clear(t, { expectedAttemptId: n }), r);\n\tif (i !== \"cleared\" && i !== \"missing\" && i !== \"mismatch\") throw new W(\"Checkout attempt store returned an invalid clear result\");\n\treturn i;\n}\nasync function Ir(e, t, n = Date.now(), r = jr) {\n\tif (Rr(e), Ur(t), !Number.isFinite(n) || n < 0) throw new W(\"Checkout attempt timestamp is invalid\");\n\tlet i = await Hr(e.read(t, {\n\t\tnow: n,\n\t\tttlMs: Ar\n\t}), r);\n\tif (i === null) return null;\n\tVr(i, n);\n\tlet a = n - i.createdAt;\n\tif (a < 0 || a >= 2592e5) throw new W(\"Checkout attempt store returned an expired binding\");\n\treturn i;\n}\nfunction Lr() {\n\tlet e = globalThis.crypto;\n\tif (typeof e?.randomUUID == \"function\") return e.randomUUID();\n\tif (typeof e?.getRandomValues != \"function\") throw Error(\"Secure checkout initialization is unavailable\");\n\tlet t = e.getRandomValues(/* @__PURE__ */ new Uint8Array(16));\n\tt[6] = t[6] & 15 | 64, t[8] = t[8] & 63 | 128;\n\tlet n = Array.from(t, (e) => e.toString(16).padStart(2, \"0\")).join(\"\");\n\treturn `${n.slice(0, 8)}-${n.slice(8, 12)}-${n.slice(12, 16)}-${n.slice(16, 20)}-${n.slice(20)}`;\n}\nfunction Rr(e) {\n\tif (!e || e.atomicVersion !== 2 || typeof e.resolve != \"function\" || typeof e.read != \"function\" || typeof e.clear != \"function\") throw new W(\"Atomic checkout attempt storage v2 is unavailable\");\n}\nfunction zr(e, t, n, r) {\n\tif (!e || e.outcome !== \"created\" && e.outcome !== \"existing\") throw new W(\"Checkout attempt store returned an invalid resolve result\");\n\tif (Vr(e.binding, n), e.binding.materialFingerprint !== t.materialFingerprint) throw new W(\"Checkout attempt store returned a binding for different checkout material\");\n\tif (e.outcome === \"created\" && (e.binding.attemptId !== t.attemptId || e.binding.createdAt !== t.createdAt || e.binding.version !== t.version)) throw new W(\"Checkout attempt store returned an invalid created binding\");\n\tlet i = n - e.binding.createdAt;\n\tif (e.outcome === \"existing\" && (i < 0 || i >= r)) throw new W(\"Checkout attempt store returned an expired binding\");\n}\nfunction Br(e, t) {\n\treturn Vr(e, t), e;\n}\nfunction Vr(e, t) {\n\tif (!e || typeof e != \"object\") throw new W(\"Stored checkout attempt is corrupt\");\n\tlet n = e, r = Object.keys(n).sort().join(\",\");\n\tif (n.version !== 1 || !Kr(n.attemptId) || !qr(n.materialFingerprint) || !Number.isFinite(n.createdAt) || !Number.isSafeInteger(n.createdAt) || n.createdAt < 0 || n.createdAt > t + 300 * 1e3 || r !== \"attemptId,createdAt,materialFingerprint,version\") throw new W(\"Stored checkout attempt is corrupt\");\n}\nasync function Hr(e, t) {\n\tif (!Number.isFinite(t) || t <= 0) throw new W(\"Checkout attempt storage timeout is invalid\");\n\tlet n, r = new Promise((e, r) => {\n\t\tn = setTimeout(() => r(new W(\"Checkout attempt storage timed out\")), t);\n\t});\n\ttry {\n\t\treturn await Promise.race([e, r]);\n\t} catch (e) {\n\t\tthrow e instanceof W ? e : new W();\n\t} finally {\n\t\tn !== void 0 && clearTimeout(n);\n\t}\n}\nfunction Ur(e) {\n\tif (!e || e.length > 256 || /[\\u0000-\\u001f\\u007f]/.test(e)) throw new W(\"Checkout attempt scope is invalid\");\n}\nfunction Wr(e) {\n\tif (!qr(e)) throw new W(\"Checkout material fingerprint is invalid\");\n}\nfunction Gr(e) {\n\tif (!Kr(e)) throw new W(\"Checkout attempt identifier is invalid\");\n}\nfunction Kr(e) {\n\treturn typeof e == \"string\" && e.length >= 16 && e.length <= 128 && /^[A-Za-z0-9_-]+$/.test(e);\n}\nfunction qr(e) {\n\treturn typeof e == \"string\" && /^cedros-shop-checkout-material-[A-Za-z0-9_-]{43}$/.test(e);\n}\n//#endregion\n//#region src/runtime/checkoutIdempotency.ts\nvar Jr = \"cedros-shop-checkout-\", Yr = \"cedros-shop-checkout-material-\", Xr = \"cedros-shop-checkout-scope-\", Zr = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_\";\nfunction Qr(e) {\n\tlet t = ht([e.options.discountCode, ...e.options.discountCodes ?? []]).slice(0, 1);\n\treturn {\n\t\tcart: ri(e.cart),\n\t\tcustomer: {\n\t\t\temail: e.customer.email,\n\t\t\tname: e.customer.name,\n\t\t\tphone: e.customer.phone,\n\t\t\tshippingAddress: ai(e.customer.shippingAddress),\n\t\t\tbillingAddress: ai(e.customer.billingAddress)\n\t\t},\n\t\tcheckout: {\n\t\t\tcurrency: e.options.currency,\n\t\t\tsuccessUrl: e.options.successUrl,\n\t\t\tcancelUrl: e.options.cancelUrl,\n\t\t\tmetadata: ii(e.options.metadata),\n\t\t\tdiscountCodes: t.length ? t : void 0,\n\t\t\tpromotionContext: e.options.promotionContext,\n\t\t\ttipAmount: e.options.tipAmount,\n\t\t\tshippingMethodId: e.options.shippingMethodId,\n\t\t\tpaymentMethodId: e.options.paymentMethodId\n\t\t}\n\t};\n}\nfunction $r(e) {\n\treturn `${Yr}${ci({\n\t\tversion: 3,\n\t\t...Qr(e)\n\t})}`;\n}\nfunction ei(e) {\n\tlet t = e.options.attemptId?.trim();\n\tif (!t) throw Error(\"A checkout attempt ID is required for a derived idempotency key\");\n\treturn `${Jr}${ci({\n\t\tversion: 3,\n\t\tattemptId: t,\n\t\t...Qr(e)\n\t})}`;\n}\nfunction ti(e, t) {\n\tlet n = t.trim();\n\tif (!/^[A-Za-z0-9_-]{16,128}$/.test(n)) throw Error(\"A valid opaque quote attempt ID is required for a derived idempotency key\");\n\treturn `${Jr}${ci({\n\t\tversion: 3,\n\t\toperation: \"quote\",\n\t\tquoteAttemptId: n,\n\t\t...Qr(e)\n\t})}`;\n}\nfunction ni(e) {\n\tlet t = e.providerScope.trim();\n\tif (!t || t.length > 512 || /[\\u0000-\\u001f\\u007f]/.test(t)) throw Error(\"A valid opaque checkout provider scope is required\");\n\treturn `${Xr}${ci({\n\t\tproviderScope: t,\n\t\tconfiguredScope: e.configuredScope?.trim() || void 0,\n\t\tcartStorageKey: e.cartStorageKey?.trim() || \"cedros_shop_cart_v1\",\n\t\tcustomerId: e.customerId?.trim() || \"guest\"\n\t})}`;\n}\nfunction ri(e) {\n\treturn e.map((e) => ({\n\t\tresource: e.resource,\n\t\tquantity: e.quantity,\n\t\tvariantId: e.variantId\n\t})).sort((e, t) => si(oi(e), oi(t)));\n}\nfunction ii(e) {\n\tlet t = {\n\t\textensionId: \"cedros-shop\",\n\t\t...e\n\t};\n\treturn Object.fromEntries(Object.entries(t).filter(([e]) => e !== \"idempotencyKey\").sort(([e], [t]) => si(e, t)));\n}\nfunction ai(e) {\n\tif (e) return Object.fromEntries(Object.entries(e).filter(([, e]) => e !== void 0 && e !== \"\").map(([e, t]) => [e, String(t)]).sort(([e], [t]) => si(e, t)));\n}\nfunction oi(e) {\n\treturn Array.isArray(e) ? `[${e.map(oi).join(\",\")}]` : typeof e != \"object\" || !e ? JSON.stringify(e) ?? \"null\" : `{${Object.entries(e).filter(([, e]) => e !== void 0).sort(([e], [t]) => si(e, t)).map(([e, t]) => `${JSON.stringify(e)}:${oi(t)}`).join(\",\")}}`;\n}\nfunction si(e, t) {\n\treturn e < t ? -1 : +(e > t);\n}\nfunction ci(e) {\n\treturn li(it(qe(oi(e))));\n}\nfunction li(e) {\n\tlet t = \"\";\n\tfor (let n = 0; n < e.length; n += 3) {\n\t\tlet r = e[n] << 16 | (e[n + 1] ?? 0) << 8 | (e[n + 2] ?? 0);\n\t\tt += Zr[r >>> 18 & 63] + Zr[r >>> 12 & 63], n + 1 < e.length && (t += Zr[r >>> 6 & 63]), n + 2 < e.length && (t += Zr[r & 63]);\n\t}\n\treturn t;\n}\n//#endregion\n//#region src/runtime/browserCheckoutAttemptStore.ts\nvar ui = \"cedros_shop_checkout_attempt_v1:\", di = \"cedros-shop-checkout-attempt-v1:\";\nfunction fi(e, t) {\n\tlet n = () => e ?? wt(), r = () => t ?? hi();\n\treturn {\n\t\tatomicVersion: 2,\n\t\tasync resolve(e, t) {\n\t\t\treturn gi(r(), e, () => {\n\t\t\t\tlet r = bi(n()), i = _i(r, e, t.now);\n\t\t\t\treturn i && yi(i, t) ? {\n\t\t\t\t\toutcome: \"existing\",\n\t\t\t\t\tbinding: i\n\t\t\t\t} : (vi(r, e, t.candidate), {\n\t\t\t\t\toutcome: \"created\",\n\t\t\t\t\tbinding: t.candidate\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\t\tasync read(e, { now: t, ttlMs: i }) {\n\t\t\treturn gi(r(), e, () => {\n\t\t\t\tlet r = _i(bi(n()), e, t);\n\t\t\t\treturn r && t - r.createdAt < i ? r : null;\n\t\t\t});\n\t\t},\n\t\tasync clear(e, { expectedAttemptId: t }) {\n\t\t\treturn gi(r(), e, () => {\n\t\t\t\tlet r = bi(n()), i = _i(r, e, Date.now());\n\t\t\t\tif (!i) return \"missing\";\n\t\t\t\tif (i.attemptId !== t) return \"mismatch\";\n\t\t\t\ttry {\n\t\t\t\t\tr.removeItem(xi(e));\n\t\t\t\t} catch {\n\t\t\t\t\tthrow new W();\n\t\t\t\t}\n\t\t\t\treturn \"cleared\";\n\t\t\t});\n\t\t}\n\t};\n}\nvar pi = fi();\nfunction mi() {\n\treturn pi;\n}\nfunction hi() {\n\tlet e = typeof navigator > \"u\" ? void 0 : navigator.locks;\n\tif (!e || typeof e.request != \"function\") throw new W(\"Web Locks are required for atomic checkout attempt storage\");\n\treturn e;\n}\nasync function gi(e, t, n) {\n\ttry {\n\t\treturn await e.request(`${di}${t}`, n);\n\t} catch (e) {\n\t\tthrow e instanceof W ? e : new W();\n\t}\n}\nfunction _i(e, t, n) {\n\tlet r;\n\ttry {\n\t\tr = e.getItem(xi(t));\n\t} catch {\n\t\tthrow new W();\n\t}\n\tif (r === null) return null;\n\ttry {\n\t\treturn Br(JSON.parse(r), n);\n\t} catch (e) {\n\t\tthrow e instanceof W ? e : new W(\"Stored checkout attempt is corrupt\");\n\t}\n}\nfunction vi(e, t, n) {\n\ttry {\n\t\te.setItem(xi(t), JSON.stringify(n));\n\t} catch {\n\t\tthrow new W();\n\t}\n}\nfunction yi(e, t) {\n\treturn t.now - e.createdAt < t.ttlMs && e.materialFingerprint === t.candidate.materialFingerprint;\n}\nfunction bi(e) {\n\tif (!e) throw new W();\n\treturn e;\n}\nfunction xi(e) {\n\treturn `${ui}${e}`;\n}\n//#endregion\n//#region src/runtime/cartMetadata.ts\nfunction Si(e) {\n\tlet t = {};\n\te.shippingProfile && (t.shippingProfile = e.shippingProfile), e.checkoutRequirements && (t.checkoutRequirements = JSON.stringify(e.checkoutRequirements)), e.fulfillment?.type && (t.fulfillmentType = e.fulfillment.type), e.fulfillment?.notes && (t.fulfillmentNotes = e.fulfillment.notes);\n\tlet n = e.attributes?.shippingCountries;\n\treturn typeof n == \"string\" && n.trim() && (t.shippingCountries = n), e.tokenizedAssetConfig && (t.tokenizedAsset = \"true\", e.tokenizedAssetConfig.regulatoryNotice && (t.regulatoryNotice = e.tokenizedAssetConfig.regulatoryNotice), e.tokenizedAssetConfig.assetClass && (t.assetClass = e.tokenizedAssetConfig.assetClass), e.tokenizedAssetConfig.backingValueCents != null && (t.backingValueCents = String(e.tokenizedAssetConfig.backingValueCents)), e.tokenizedAssetConfig.backingCurrency && (t.backingCurrency = e.tokenizedAssetConfig.backingCurrency)), Object.keys(t).length ? t : void 0;\n}\n//#endregion\n//#region src/runtime/toast.tsx\nvar Ci = x.createContext(null);\nfunction wi() {\n\tlet e = x.useContext(Ci);\n\tif (!e) throw Error(\"useToast must be used within ToastProvider\");\n\treturn e;\n}\nfunction Ti() {\n\treturn x.useContext(Ci);\n}\nvar Ei = 200, Di = 3;\nfunction Oi({ children: e }) {\n\tlet [t, n] = x.useState([]), r = x.useRef([]);\n\tx.useEffect(() => () => {\n\t\tfor (let e of r.current) clearTimeout(e);\n\t\tr.current = [];\n\t}, []);\n\tlet i = x.useCallback((e, t) => {\n\t\tlet n = (typeof window > \"u\" ? globalThis.setTimeout : window.setTimeout)(() => {\n\t\t\tr.current = r.current.filter((e) => e !== n), e();\n\t\t}, t);\n\t\tr.current.push(n);\n\t}, []), a = x.useCallback((e) => {\n\t\tn((t) => t.map((t) => t.id === e ? {\n\t\t\t...t,\n\t\t\tleaving: !0\n\t\t} : t)), i(() => n((t) => t.filter((t) => t.id !== e)), Ei);\n\t}, [i]), o = x.useCallback((e) => {\n\t\tlet t = `${Date.now()}-${Math.random().toString(36).slice(2)}`, r = {\n\t\t\t...e,\n\t\t\tid: t\n\t\t};\n\t\tn((e) => [...e, r]), i(() => a(t), e.durationMs ?? 5e3);\n\t}, [a, i]);\n\tx.useEffect(() => {\n\t\tlet e = t.filter((e) => !e.leaving);\n\t\tif (!(e.length <= Di)) for (let t of e.slice(0, e.length - Di)) a(t.id);\n\t}, [t, a]);\n\tlet s = /* @__PURE__ */ new Map(), c = t.filter((e) => !e.leaving);\n\treturn c.forEach((e, t) => s.set(e.id, c.length - 1 - t)), /* @__PURE__ */ E(Ci.Provider, {\n\t\tvalue: { toast: o },\n\t\tchildren: [e, /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"cedros-shop-toast\",\n\t\t\trole: \"region\",\n\t\t\t\"aria-live\": \"polite\",\n\t\t\t\"aria-label\": \"Notifications\",\n\t\t\tchildren: t.map((e) => /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-toast__toast\",\n\t\t\t\trole: \"status\",\n\t\t\t\t\"data-state\": e.leaving ? \"closed\" : \"open\",\n\t\t\t\tstyle: { \"--cs-toast-depth\": s.get(e.id) ?? 0 },\n\t\t\t\tchildren: [/* @__PURE__ */ E(\"div\", { children: [e.title ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-toast__title\",\n\t\t\t\t\tchildren: e.title\n\t\t\t\t}) : null, e.description ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-toast__description\",\n\t\t\t\t\tchildren: e.description\n\t\t\t\t}) : null] }), e.actionLabel && e.onAction ? /* @__PURE__ */ T(\"button\", {\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tclassName: \"cedros-shop-toast__action\",\n\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\te.onAction?.(), a(e.id);\n\t\t\t\t\t},\n\t\t\t\t\tchildren: e.actionLabel\n\t\t\t\t}) : null]\n\t\t\t}, e.id))\n\t\t})]\n\t});\n}\n//#endregion\n//#region src/storefront/shared.tsx\nfunction G(...e) {\n\treturn e.filter(Boolean).join(\" \");\n}\nfunction K({ children: e, className: t }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__card rounded-lg border overflow-hidden\", t),\n\t\tchildren: e\n\t});\n}\nfunction ki({ children: e, className: t }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__card-header flex flex-col space-y-1.5 p-6\", t),\n\t\tchildren: e\n\t});\n}\nfunction Ai({ children: e, className: t }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__card-content p-6 pt-0\", t),\n\t\tchildren: e\n\t});\n}\nfunction ji({ children: e, className: t }) {\n\treturn /* @__PURE__ */ T(\"h3\", {\n\t\tclassName: G(\"cedros-shop-public__card-title text-lg font-semibold leading-none tracking-tight\", t),\n\t\tchildren: e\n\t});\n}\nfunction q({ swapKey: e, children: t, className: n }) {\n\treturn /* @__PURE__ */ T(\"span\", {\n\t\tclassName: G(\"cs-anim-value\", n),\n\t\tchildren: t\n\t}, String(e));\n}\nfunction Mi({ children: e, className: t }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__reveal\",\n\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: G(\"cedros-shop-public__collapsible-inner\", t),\n\t\t\tchildren: e\n\t\t})\n\t});\n}\n//#endregion\n//#region src/storefront/EmptyState.tsx\nfunction Ni() {\n\treturn /* @__PURE__ */ E(\"svg\", {\n\t\twidth: \"96\",\n\t\theight: \"84\",\n\t\tviewBox: \"0 0 96 84\",\n\t\tfill: \"none\",\n\t\t\"aria-hidden\": \"true\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(\"path\", {\n\t\t\t\td: \"M24 30h48l-4.6 42a6 6 0 0 1-6 5.4H34.6a6 6 0 0 1-6-5.4L24 30Z\",\n\t\t\t\tstroke: \"currentColor\",\n\t\t\t\tstrokeWidth: \"2.5\",\n\t\t\t\tstrokeLinejoin: \"round\",\n\t\t\t\topacity: \"0.55\"\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"path\", {\n\t\t\t\td: \"M36 38v-12a12 12 0 0 1 24 0v12\",\n\t\t\t\tstroke: \"currentColor\",\n\t\t\t\tstrokeWidth: \"2.5\",\n\t\t\t\tstrokeLinecap: \"round\",\n\t\t\t\topacity: \"0.55\"\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"path\", {\n\t\t\t\td: \"M40 56c2.4 3.2 4.9 4.8 8 4.8s5.6-1.6 8-4.8\",\n\t\t\t\tstroke: \"currentColor\",\n\t\t\t\tstrokeWidth: \"2.5\",\n\t\t\t\tstrokeLinecap: \"round\",\n\t\t\t\topacity: \"0.8\"\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"g\", {\n\t\t\t\tclassName: \"cs-illo-accent\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ T(\"path\", {\n\t\t\t\t\t\td: \"M80 14v8M76 18h8\",\n\t\t\t\t\t\tstroke: \"currentColor\",\n\t\t\t\t\t\tstrokeWidth: \"2\",\n\t\t\t\t\t\tstrokeLinecap: \"round\"\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(\"circle\", {\n\t\t\t\t\t\tcx: \"14\",\n\t\t\t\t\t\tcy: \"22\",\n\t\t\t\t\t\tr: \"2.5\",\n\t\t\t\t\t\tfill: \"currentColor\",\n\t\t\t\t\t\topacity: \"0.7\"\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(\"circle\", {\n\t\t\t\t\t\tcx: \"86\",\n\t\t\t\t\t\tcy: \"44\",\n\t\t\t\t\t\tr: \"2\",\n\t\t\t\t\t\tfill: \"currentColor\",\n\t\t\t\t\t\topacity: \"0.5\"\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(\"path\", {\n\t\t\t\t\t\td: \"M12 48v6M9 51h6\",\n\t\t\t\t\t\tstroke: \"currentColor\",\n\t\t\t\t\t\tstrokeWidth: \"1.8\",\n\t\t\t\t\t\tstrokeLinecap: \"round\",\n\t\t\t\t\t\topacity: \"0.65\"\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t})\n\t\t]\n\t});\n}\nfunction J({ title: e, description: t, actionLabel: n, actionHref: r, onAction: i, className: a }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__state cedros-shop-public__state--empty flex flex-col items-center justify-center rounded-xl border p-10 text-center\", a),\n\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"max-w-sm\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__state-illustration\",\n\t\t\t\t\tchildren: /* @__PURE__ */ T(Ni, {})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(\"h3\", {\n\t\t\t\t\tclassName: \"text-base font-semibold\",\n\t\t\t\t\tchildren: e\n\t\t\t\t}),\n\t\t\t\tt ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\tclassName: \"mt-2 text-sm\",\n\t\t\t\t\tchildren: t\n\t\t\t\t}) : null,\n\t\t\t\tn && (r || i) ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"mt-5\",\n\t\t\t\t\tchildren: r ? /* @__PURE__ */ T(\"a\", {\n\t\t\t\t\t\thref: r,\n\t\t\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--secondary inline-flex h-10 items-center justify-center rounded-md px-4 py-2 text-sm\",\n\t\t\t\t\t\tchildren: n\n\t\t\t\t\t}) : /* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tonClick: i,\n\t\t\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--secondary inline-flex h-10 items-center justify-center rounded-md px-4 py-2 text-sm\",\n\t\t\t\t\t\tchildren: n\n\t\t\t\t\t})\n\t\t\t\t}) : null\n\t\t\t]\n\t\t})\n\t});\n}\n//#endregion\n//#region node_modules/clsx/dist/clsx.mjs\nfunction Pi(e) {\n\tvar t, n, r = \"\";\n\tif (typeof e == \"string\" || typeof e == \"number\") r += e;\n\telse if (typeof e == \"object\") if (Array.isArray(e)) {\n\t\tvar i = e.length;\n\t\tfor (t = 0; t < i; t++) e[t] && (n = Pi(e[t])) && (r && (r += \" \"), r += n);\n\t} else for (n in e) e[n] && (r && (r += \" \"), r += n);\n\treturn r;\n}\nfunction Fi() {\n\tfor (var e, t, n = 0, r = \"\", i = arguments.length; n < i; n++) (e = arguments[n]) && (t = Pi(e)) && (r && (r += \" \"), r += t);\n\treturn r;\n}\n//#endregion\n//#region node_modules/class-variance-authority/dist/index.mjs\nvar Ii = (e) => typeof e == \"boolean\" ? `${e}` : e === 0 ? \"0\" : e, Li = Fi, Ri = (e, t) => (n) => {\n\tif (t?.variants == null) return Li(e, n?.class, n?.className);\n\tlet { variants: r, defaultVariants: i } = t, a = Object.keys(r).map((e) => {\n\t\tlet t = n?.[e], a = i?.[e];\n\t\tif (t === null) return null;\n\t\tlet o = Ii(t) || Ii(a);\n\t\treturn r[e][o];\n\t}), o = n && Object.entries(n).reduce((e, t) => {\n\t\tlet [n, r] = t;\n\t\treturn r === void 0 || (e[n] = r), e;\n\t}, {});\n\treturn Li(e, a, t?.compoundVariants?.reduce((e, t) => {\n\t\tlet { class: n, className: r, ...a } = t;\n\t\treturn Object.entries(a).every((e) => {\n\t\t\tlet [t, n] = e;\n\t\t\treturn Array.isArray(n) ? n.includes({\n\t\t\t\t...i,\n\t\t\t\t...o\n\t\t\t}[t]) : {\n\t\t\t\t...i,\n\t\t\t\t...o\n\t\t\t}[t] === n;\n\t\t}) ? [\n\t\t\t...e,\n\t\t\tn,\n\t\t\tr\n\t\t] : e;\n\t}, []), n?.class, n?.className);\n}, zi = Ri(\"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50\", {\n\tvariants: {\n\t\tvariant: {\n\t\t\tdefault: \"\",\n\t\t\tsecondary: \"\",\n\t\t\toutline: \"border\",\n\t\t\tghost: \"\",\n\t\t\tdestructive: \"\",\n\t\t\tlink: \"underline-offset-4 hover:underline\"\n\t\t},\n\t\tsize: {\n\t\t\tdefault: \"h-10 px-4 py-2\",\n\t\t\tsm: \"h-9 rounded-md px-3\",\n\t\t\tlg: \"h-11 rounded-md px-6\",\n\t\t\ticon: \"h-10 w-10\"\n\t\t}\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"default\",\n\t\tsize: \"default\"\n\t}\n});\nfunction Bi(e, t) {\n\tt?.(e);\n}\nfunction Vi(e, t, n) {\n\tif (!x.isValidElement(e)) return null;\n\tlet r = x.Children.only(e);\n\treturn x.cloneElement(r, {\n\t\t...t,\n\t\tref: n,\n\t\tclassName: G(t.className, r.props.className),\n\t\tonClick: (e) => {\n\t\t\tBi(e, r.props.onClick), e.defaultPrevented || Bi(e, t.onClick);\n\t\t}\n\t});\n}\nvar Y = x.forwardRef(({ className: e, variant: t, size: n, asChild: r, children: i, ...a }, o) => {\n\tlet s = t ?? \"default\", c = n ?? \"default\", l = G(\"cedros-shop-public__button\", `cedros-shop-public__button--${s}`, c === \"default\" ? void 0 : `cedros-shop-public__button--size-${c}`, zi({\n\t\tvariant: t,\n\t\tsize: n\n\t}), e);\n\treturn r ? Vi(i, {\n\t\t...a,\n\t\tclassName: l\n\t}, o) : /* @__PURE__ */ T(\"button\", {\n\t\tref: o,\n\t\tclassName: l,\n\t\t...a,\n\t\tchildren: i\n\t});\n});\nY.displayName = \"Button\";\nvar X = x.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ T(\"input\", {\n\tref: n,\n\tclassName: G(\"cedros-shop-public__input flex h-10 w-full rounded-md border px-3 py-2 text-sm shadow-sm transition-colors file:border-0 file:text-sm file:font-medium focus-visible:outline-none focus-visible:ring-2 disabled:cursor-not-allowed disabled:opacity-50\", e),\n\t...t\n}));\nX.displayName = \"Input\";\nvar Hi = x.forwardRef(({ className: e, orientation: t = \"horizontal\", decorative: n = !0, ...r }, i) => /* @__PURE__ */ T(\"div\", {\n\tref: i,\n\trole: n ? \"presentation\" : \"separator\",\n\t\"aria-orientation\": t,\n\tclassName: G(\"shrink-0\", t === \"horizontal\" ? \"h-px w-full\" : \"h-full w-px\", e),\n\t...r\n}));\nHi.displayName = \"Separator\";\nvar Ui = x.createContext(null);\nfunction Wi({ children: e, open: t, defaultOpen: n = !1, onOpenChange: r }) {\n\tlet [i, a] = x.useState(n), o = t ?? i, s = x.useCallback((e) => {\n\t\tt === void 0 && a(e), r?.(e);\n\t}, [r, t]);\n\treturn /* @__PURE__ */ T(Ui.Provider, {\n\t\tvalue: {\n\t\t\topen: o,\n\t\t\tsetOpen: s\n\t\t},\n\t\tchildren: e\n\t});\n}\nfunction Gi() {\n\treturn x.useContext(Ui) ?? {\n\t\topen: !0,\n\t\tsetOpen: () => void 0\n\t};\n}\nfunction Ki(e) {\n\tlet [t, n] = x.useState(e);\n\treturn x.useEffect(() => {\n\t\tif (e) {\n\t\t\tn(!0);\n\t\t\treturn;\n\t\t}\n\t\tif (!t) return;\n\t\tif (typeof window < \"u\" && window.matchMedia?.(\"(prefers-reduced-motion: reduce)\").matches) {\n\t\t\tn(!1);\n\t\t\treturn;\n\t\t}\n\t\tlet r = window.setTimeout(() => n(!1), 180);\n\t\treturn () => window.clearTimeout(r);\n\t}, [e, t]), t;\n}\nfunction qi(e, t) {\n\tlet n = x.forwardRef(({ asChild: t, children: n, onClick: r, ...i }, a) => {\n\t\tlet o = Gi(), s = (t) => {\n\t\t\tBi(t, r), t.defaultPrevented || o.setOpen(e);\n\t\t};\n\t\treturn t ? Vi(n, {\n\t\t\t...i,\n\t\t\tonClick: s\n\t\t}, a) : /* @__PURE__ */ T(\"button\", {\n\t\t\tref: a,\n\t\t\ttype: \"button\",\n\t\t\tonClick: s,\n\t\t\t...i,\n\t\t\tchildren: n\n\t\t});\n\t});\n\treturn n.displayName = t, n;\n}\nvar Ji = Wi, Yi = x.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ T(\"div\", {\n\tref: n,\n\t\"data-state\": \"open\",\n\tclassName: G(\"cedros-shop-public__overlay fixed inset-0 z-50\", e),\n\t...t\n}));\nYi.displayName = \"DialogOverlay\";\nvar Xi = x.forwardRef(({ className: e, children: t, ...n }, r) => {\n\tlet { t: i } = B(), a = Gi();\n\tif (!Ki(a.open)) return null;\n\tlet o = a.open ? \"open\" : \"closed\";\n\treturn /* @__PURE__ */ E(w, { children: [/* @__PURE__ */ T(Yi, { \"data-state\": o }), /* @__PURE__ */ E(\"div\", {\n\t\tref: r,\n\t\trole: \"dialog\",\n\t\t\"aria-modal\": \"true\",\n\t\t\"data-state\": o,\n\t\tclassName: G(\"cedros-shop-public__dialog fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 border p-6 shadow-lg outline-none transition data-[state=closed]:opacity-0 data-[state=closed]:scale-95 data-[state=open]:opacity-100 data-[state=open]:scale-100 rounded-2xl\", e),\n\t\t...n,\n\t\tchildren: [t, /* @__PURE__ */ T(\"button\", {\n\t\t\ttype: \"button\",\n\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--ghost absolute right-4 top-4 inline-flex h-9 w-9 items-center justify-center rounded-full text-lg leading-none\",\n\t\t\t\"aria-label\": i(\"common.close\"),\n\t\t\tonClick: () => a.setOpen(!1),\n\t\t\tchildren: /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\"aria-hidden\": \"true\",\n\t\t\t\tchildren: \"×\"\n\t\t\t})\n\t\t})]\n\t})] });\n});\nXi.displayName = \"DialogContent\";\nvar Zi = ({ className: e, ...t }) => /* @__PURE__ */ T(\"div\", {\n\tclassName: G(\"flex flex-col space-y-2 text-center sm:text-left\", e),\n\t...t\n}), Qi = x.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ T(\"h2\", {\n\tref: n,\n\tclassName: G(\"text-lg font-semibold leading-none tracking-tight\", e),\n\t...t\n}));\nQi.displayName = \"DialogTitle\";\nvar $i = x.createContext(null), ea = x.createContext(null);\nfunction ta({ children: e, className: t, collapsible: n, defaultValue: r, value: i, onValueChange: a, ...o }) {\n\tlet [s, c] = x.useState(r), l = i ?? s, u = x.useCallback((e) => {\n\t\ti === void 0 && c(e), a?.(e);\n\t}, [a, i]);\n\treturn /* @__PURE__ */ T($i.Provider, {\n\t\tvalue: {\n\t\t\topenValue: l,\n\t\t\tsetOpenValue: u,\n\t\t\tcollapsible: n\n\t\t},\n\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: t,\n\t\t\t...o,\n\t\t\tchildren: e\n\t\t})\n\t});\n}\nvar na = x.forwardRef(({ className: e, value: t, children: n, ...r }, i) => {\n\tlet a = x.useId();\n\treturn /* @__PURE__ */ T(ea.Provider, {\n\t\tvalue: {\n\t\t\tvalue: t,\n\t\t\ttriggerId: `${a}-trigger`,\n\t\t\tcontentId: `${a}-content`\n\t\t},\n\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\tref: i,\n\t\t\tclassName: G(\"border-b\", e),\n\t\t\t...r,\n\t\t\tchildren: n\n\t\t})\n\t});\n});\nna.displayName = \"AccordionItem\";\nvar ra = x.forwardRef(({ className: e, children: t, onClick: n, ...r }, i) => {\n\tlet a = x.useContext($i), o = x.useContext(ea), s = a?.openValue === o?.value;\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"flex\",\n\t\tchildren: /* @__PURE__ */ E(\"button\", {\n\t\t\tref: i,\n\t\t\tid: o?.triggerId,\n\t\t\ttype: \"button\",\n\t\t\t\"aria-expanded\": s,\n\t\t\t\"aria-controls\": o?.contentId,\n\t\t\t\"data-state\": s ? \"open\" : \"closed\",\n\t\t\tclassName: G(\"cedros-shop-public__accordion-trigger flex flex-1 items-center justify-between py-4 text-sm font-medium\", e),\n\t\t\tonClick: (e) => {\n\t\t\t\tBi(e, n), !e.defaultPrevented && a && o && a.setOpenValue(s && a.collapsible ? void 0 : o.value);\n\t\t\t},\n\t\t\t...r,\n\t\t\tchildren: [t, /* @__PURE__ */ T(\"span\", {\n\t\t\t\tclassName: \"cedros-shop-public__accordion-chevron ml-3\",\n\t\t\t\t\"aria-hidden\": !0,\n\t\t\t\tchildren: /* @__PURE__ */ T(oa, {})\n\t\t\t})]\n\t\t})\n\t});\n});\nra.displayName = \"AccordionTrigger\";\nvar ia = x.forwardRef(({ className: e, children: t, ...n }, r) => {\n\tlet i = x.useContext($i), a = x.useContext(ea), o = i?.openValue === a?.value;\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tref: r,\n\t\tid: a?.contentId,\n\t\trole: \"region\",\n\t\t\"aria-labelledby\": a?.triggerId,\n\t\t\"data-state\": o ? \"open\" : \"closed\",\n\t\t\"aria-hidden\": !o,\n\t\tinert: !o || void 0,\n\t\tclassName: G(\"cedros-shop-public__accordion-content text-sm\", e),\n\t\t...n,\n\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"cedros-shop-public__accordion-content-inner\",\n\t\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"pb-4 pt-0\",\n\t\t\t\tchildren: t\n\t\t\t})\n\t\t})\n\t});\n});\nia.displayName = \"AccordionContent\";\nfunction aa({ open: e, onOpenChange: t, openLabel: n, closeLabel: r, children: i, className: a }) {\n\tlet o = x.useId();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__disclosure\", a),\n\t\tchildren: [/* @__PURE__ */ E(Y, {\n\t\t\ttype: \"button\",\n\t\t\tvariant: \"ghost\",\n\t\t\tsize: \"sm\",\n\t\t\t\"aria-expanded\": e,\n\t\t\t\"aria-controls\": o,\n\t\t\tclassName: \"cedros-shop-public__disclosure-trigger\",\n\t\t\tonClick: () => t(!e),\n\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: e ? r : n }), /* @__PURE__ */ T(\"span\", {\n\t\t\t\tclassName: \"cedros-shop-public__disclosure-chevron\",\n\t\t\t\t\"data-state\": e ? \"open\" : \"closed\",\n\t\t\t\t\"aria-hidden\": !0,\n\t\t\t\tchildren: /* @__PURE__ */ T(oa, {})\n\t\t\t})]\n\t\t}), /* @__PURE__ */ T(\"div\", {\n\t\t\tid: o,\n\t\t\tclassName: \"cedros-shop-public__disclosure-content\",\n\t\t\t\"data-state\": e ? \"open\" : \"closed\",\n\t\t\t\"aria-hidden\": !e,\n\t\t\tinert: !e || void 0,\n\t\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__disclosure-content-inner\",\n\t\t\t\tchildren: i\n\t\t\t})\n\t\t})]\n\t});\n}\nfunction oa() {\n\treturn /* @__PURE__ */ T(\"svg\", {\n\t\twidth: \"14\",\n\t\theight: \"14\",\n\t\tviewBox: \"0 0 24 24\",\n\t\tfill: \"none\",\n\t\tstroke: \"currentColor\",\n\t\tstrokeWidth: \"2\",\n\t\tstrokeLinecap: \"round\",\n\t\tstrokeLinejoin: \"round\",\n\t\t\"aria-hidden\": \"true\",\n\t\tchildren: /* @__PURE__ */ T(\"path\", { d: \"m6 9 6 6 6-6\" })\n\t});\n}\nvar sa = x.createContext(null);\nfunction ca({ children: e, value: t, onValueChange: n }) {\n\tlet r = x.useMemo(() => la(e), [e]), i = t ? r.find((e) => e.value === t)?.label : void 0;\n\treturn /* @__PURE__ */ T(sa.Provider, {\n\t\tvalue: {\n\t\t\tvalue: t,\n\t\t\tonValueChange: n,\n\t\t\toptions: r,\n\t\t\tselectedLabel: i\n\t\t},\n\t\tchildren: e\n\t});\n}\nfunction la(e, t = []) {\n\treturn x.Children.forEach(e, (e) => {\n\t\tif (x.isValidElement(e)) {\n\t\t\tif (e.type === pa) {\n\t\t\t\tlet n = e.props;\n\t\t\t\tt.push({\n\t\t\t\t\tvalue: n.value,\n\t\t\t\t\tlabel: String(n.children ?? n.value),\n\t\t\t\t\tdisabled: n.disabled\n\t\t\t\t});\n\t\t\t}\n\t\t\tla(e.props.children, t);\n\t\t}\n\t}), t;\n}\nvar ua = ({ placeholder: e }) => {\n\tlet t = x.useContext(sa);\n\treturn /* @__PURE__ */ T(w, { children: t?.selectedLabel ?? t?.value ?? e });\n}, da = x.forwardRef(({ className: e, children: t, onChange: n, ...r }, i) => {\n\tlet a = x.useContext(sa);\n\treturn /* @__PURE__ */ E(\"span\", {\n\t\tclassName: \"cedros-shop-public__select-field\",\n\t\tchildren: [/* @__PURE__ */ T(\"select\", {\n\t\t\tref: i,\n\t\t\tvalue: a?.value,\n\t\t\tclassName: G(\"cedros-shop-public__select-trigger flex h-10 w-full items-center justify-between rounded-md border px-3 py-2 text-sm shadow-sm focus-visible:outline-none focus-visible:ring-2 disabled:cursor-not-allowed disabled:opacity-50\", e),\n\t\t\tonChange: (e) => {\n\t\t\t\tn?.(e), e.defaultPrevented || a?.onValueChange?.(e.currentTarget.value);\n\t\t\t},\n\t\t\t...r,\n\t\t\tchildren: a?.options.map((e) => /* @__PURE__ */ T(\"option\", {\n\t\t\t\tvalue: e.value,\n\t\t\t\tdisabled: e.disabled,\n\t\t\t\tchildren: e.label\n\t\t\t}, e.value))\n\t\t}), /* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: \"cedros-shop-public__select-arrow\",\n\t\t\t\"aria-hidden\": \"true\"\n\t\t})]\n\t});\n});\nda.displayName = \"SelectTrigger\";\nvar fa = x.forwardRef((e, t) => null);\nfa.displayName = \"SelectContent\";\nvar pa = x.forwardRef(({ className: e, children: t, value: n, onClick: r, ...i }, a) => {\n\tlet o = x.useContext(sa);\n\treturn /* @__PURE__ */ T(\"button\", {\n\t\tref: a,\n\t\ttype: \"button\",\n\t\trole: \"option\",\n\t\t\"aria-selected\": o?.value === n,\n\t\tclassName: G(\"relative flex w-full cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50\", e),\n\t\tonClick: (e) => {\n\t\t\tBi(e, r), e.defaultPrevented || o?.onValueChange?.(n);\n\t\t},\n\t\t...i,\n\t\tchildren: t\n\t});\n});\npa.displayName = \"SelectItem\";\nvar ma = Wi, ha = qi(!0, \"SheetTrigger\"), ga = qi(!1, \"SheetClose\"), _a = Yi, va = Ri(\"fixed z-50 gap-4 p-6 outline-none\", {\n\tvariants: { side: {\n\t\ttop: \"cedros-shop-public__sheet--top inset-x-0 top-0 border-b\",\n\t\tbottom: \"cedros-shop-public__sheet--bottom inset-x-0 bottom-0 border-t\",\n\t\tleft: \"cedros-shop-public__sheet--left inset-y-0 left-0 h-full border-r\",\n\t\tright: \"cedros-shop-public__sheet--right inset-y-0 right-0 h-full border-l\",\n\t\tpopup: \"cedros-shop-public__sheet--popup bottom-4 right-4 w-[420px] max-w-[calc(100vw-2rem)] max-h-[calc(100vh-2rem)] overflow-hidden rounded-2xl border p-4\"\n\t} },\n\tdefaultVariants: { side: \"right\" }\n}), ya = x.forwardRef(({ side: e = \"right\", className: t, children: n, overlayClassName: r, ...i }, a) => {\n\tlet o = Gi();\n\tif (!Ki(o.open)) return null;\n\tlet s = o.open ? \"open\" : \"closed\";\n\treturn /* @__PURE__ */ E(w, { children: [/* @__PURE__ */ T(_a, {\n\t\tclassName: r,\n\t\t\"data-state\": s\n\t}), /* @__PURE__ */ T(\"div\", {\n\t\tref: a,\n\t\trole: \"dialog\",\n\t\t\"aria-modal\": \"true\",\n\t\t\"data-state\": s,\n\t\tclassName: G(\"cedros-shop-public__sheet\", va({ side: e }), t),\n\t\t...i,\n\t\tchildren: n\n\t})] });\n});\nya.displayName = \"SheetContent\";\nvar ba = ({ className: e, ...t }) => /* @__PURE__ */ T(\"div\", {\n\tclassName: G(\"flex flex-col space-y-2 text-left\", e),\n\t...t\n}), xa = x.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ T(\"h2\", {\n\tref: n,\n\tclassName: G(\"text-lg font-semibold leading-none tracking-tight\", e),\n\t...t\n}));\nxa.displayName = \"SheetTitle\";\nvar Sa = x.createContext(null);\nfunction Ca({ children: e, value: t, defaultValue: n, onValueChange: r, ...i }) {\n\tlet [a, o] = x.useState(n), s = t ?? a, c = x.useCallback((e) => {\n\t\tt === void 0 && o(e), r?.(e);\n\t}, [r, t]);\n\treturn /* @__PURE__ */ T(Sa.Provider, {\n\t\tvalue: {\n\t\t\tvalue: s,\n\t\t\tsetValue: c\n\t\t},\n\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\t...i,\n\t\t\tchildren: e\n\t\t})\n\t});\n}\nvar wa = x.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ T(\"div\", {\n\tref: n,\n\trole: \"tablist\",\n\tclassName: G(\"inline-flex h-10 items-center justify-center rounded-md p-1\", e),\n\t...t\n}));\nwa.displayName = \"TabsList\";\nvar Ta = x.forwardRef(({ className: e, value: t, onClick: n, ...r }, i) => {\n\tlet a = x.useContext(Sa);\n\treturn /* @__PURE__ */ T(\"button\", {\n\t\tref: i,\n\t\ttype: \"button\",\n\t\trole: \"tab\",\n\t\t\"aria-selected\": a?.value === t,\n\t\t\"data-state\": a?.value === t ? \"active\" : \"inactive\",\n\t\tclassName: G(\"inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium transition-all focus-visible:outline-none focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm\", e),\n\t\tonClick: (e) => {\n\t\t\tBi(e, n), e.defaultPrevented || a?.setValue(t);\n\t\t},\n\t\t...r\n\t});\n});\nTa.displayName = \"TabsTrigger\";\n//#endregion\n//#region src/storefront/cart.tsx\nfunction Ea(e, t) {\n\ttypeof window > \"u\" || window.location.assign(e.route(\"shop\", void 0, t));\n}\nfunction Da({ innerClassName: e, onRemove: t, children: n }) {\n\tlet [r, i] = x.useState(!1), a = x.useRef(null), o = x.useRef(!1);\n\tx.useEffect(() => () => {\n\t\ta.current !== null && window.clearTimeout(a.current);\n\t}, []);\n\tlet s = () => {\n\t\to.current || (o.current = !0, a.current !== null && window.clearTimeout(a.current), t());\n\t};\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__collapsible\",\n\t\t\"data-leaving\": r || void 0,\n\t\tonTransitionEnd: (e) => {\n\t\t\tr && e.target === e.currentTarget && e.propertyName === \"grid-template-rows\" && s();\n\t\t},\n\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: G(\"cedros-shop-public__collapsible-inner\", e),\n\t\t\tchildren: n(() => {\n\t\t\t\tr || (i(!0), a.current = window.setTimeout(s, 420));\n\t\t\t})\n\t\t})\n\t});\n}\nfunction Oa({ onApply: e }) {\n\tlet { t } = B(), [n, r] = x.useState(\"\");\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"cedros-shop-public__inline-form flex gap-2\",\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"input\", {\n\t\t\t\tvalue: n,\n\t\t\t\tonChange: (e) => r(e.target.value),\n\t\t\t\tplaceholder: t(\"storefront.cart.promoPlaceholder\"),\n\t\t\t\t\"aria-label\": t(\"storefront.cart.promoLabel\"),\n\t\t\t\tclassName: \"cedros-shop-public__input flex h-10 w-full rounded-md border px-3 py-2 text-sm\"\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"button\", {\n\t\t\t\ttype: \"button\",\n\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--secondary inline-flex h-10 items-center justify-center rounded-md border px-4 py-2 text-sm\",\n\t\t\t\tonClick: () => {\n\t\t\t\t\tlet t = n.trim();\n\t\t\t\t\tt && (e(t), r(\"\"));\n\t\t\t\t},\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\tt(\"storefront.cart.applyPromo\"),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction ka({ value: e, values: t, onApply: n, onAdd: r, onRemove: i, className: a, maxCodes: o = 1 }) {\n\tlet { t: s } = B(), c = t?.length ? t : e ? [e] : [], l = (e) => {\n\t\tif (o === 1 && c.length > 0 && !c.some((t) => t.toUpperCase() === e.trim().toUpperCase())) {\n\t\t\tif (!r) {\n\t\t\t\tn?.(e);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tfor (let e of c) i?.(e);\n\t\t}\n\t\tr ? r(e) : n?.(e);\n\t}, u = (t) => {\n\t\ti ? i(t) : e === t && n?.(void 0);\n\t};\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"space-y-2\", a),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"text-sm font-medium\",\n\t\t\t\tchildren: s(\"storefront.cart.promoLabel\")\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(Oa, { onApply: l }),\n\t\t\tc.length ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"flex flex-wrap gap-2 text-xs\",\n\t\t\t\trole: \"status\",\n\t\t\t\t\"aria-label\": s(\"storefront.cart.promoAppliedList\"),\n\t\t\t\tchildren: c.map((e) => /* @__PURE__ */ E(\"span\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__badge inline-flex items-center gap-1\",\n\t\t\t\t\tchildren: [s(\"storefront.cart.promoApplied\", { code: e }), /* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tclassName: \"h-6 px-1 text-xs underline underline-offset-2\",\n\t\t\t\t\t\tonClick: () => u(e),\n\t\t\t\t\t\t\"aria-label\": s(\"storefront.cart.promoRemoveCode\", { code: e }),\n\t\t\t\t\t\tchildren: s(\"common.remove\")\n\t\t\t\t\t})]\n\t\t\t\t}, e))\n\t\t\t}) : null\n\t\t]\n\t});\n}\nfunction Aa({ currency: e, subtotal: t, itemCount: n, onCheckout: r, isCheckoutDisabled: i, checkoutDisabledReason: a, checkoutLabel: o, isCheckoutBusy: s, onRemoveUnavailable: c, footnote: l, className: u }) {\n\tlet d = B();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__cart-summary space-y-4\", u),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"div\", { className: \"border-t\" }),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"flex items-center justify-between text-sm\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"flex items-center gap-2\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"span\", { children: d.t(\"storefront.cart.subtotal\") }),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\ttypeof n == \"number\" ? /* @__PURE__ */ E(w, { children: [/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\t\"aria-hidden\": !0,\n\t\t\t\t\t\t\t\tchildren: \"·\"\n\t\t\t\t\t\t\t}), /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"tabular-nums\",\n\t\t\t\t\t\t\t\tchildren: d.t(\"storefront.cart.itemsCount\", { count: n })\n\t\t\t\t\t\t\t})] }) : null,\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(q, {\n\t\t\t\t\t\tswapKey: d.formatMoney(t, e),\n\t\t\t\t\t\tclassName: \"font-semibold tabular-nums\",\n\t\t\t\t\t\tchildren: d.formatMoney(t, e)\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\tl ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: \"text-xs\",\n\t\t\t\tchildren: l\n\t\t\t}) : null,\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"button\", {\n\t\t\t\ttype: \"button\",\n\t\t\t\tonClick: r,\n\t\t\t\tdisabled: i,\n\t\t\t\t\"aria-busy\": s || void 0,\n\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--default inline-flex w-full items-center justify-center rounded-md px-4 py-2 text-sm font-medium disabled:opacity-50\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\ts ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\tclassName: \"cs-spinner\",\n\t\t\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\to ?? d.t(\"common.checkout\"),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\ti && a ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"space-y-2\",\n\t\t\t\trole: \"status\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__notice text-center text-xs\",\n\t\t\t\t\t\tchildren: a\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\tc ? /* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tonClick: c,\n\t\t\t\t\t\tclassName: \"mx-auto block text-xs underline underline-offset-2\",\n\t\t\t\t\t\tchildren: d.t(\"storefront.cart.removeUnavailable\")\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction ja(e) {\n\treturn /* @__PURE__ */ E(\"svg\", {\n\t\tviewBox: \"0 0 24 24\",\n\t\tfill: \"none\",\n\t\tstroke: \"currentColor\",\n\t\tstrokeWidth: \"2\",\n\t\tstrokeLinecap: \"round\",\n\t\tstrokeLinejoin: \"round\",\n\t\t...e,\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(\"circle\", {\n\t\t\t\tcx: \"12\",\n\t\t\t\tcy: \"12\",\n\t\t\t\tr: \"10\"\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"line\", {\n\t\t\t\tx1: \"12\",\n\t\t\t\ty1: \"8\",\n\t\t\t\tx2: \"12\",\n\t\t\t\ty2: \"12\"\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"line\", {\n\t\t\t\tx1: \"12\",\n\t\t\t\ty1: \"16\",\n\t\t\t\tx2: \"12.01\",\n\t\t\t\ty2: \"16\"\n\t\t\t})\n\t\t]\n\t});\n}\nfunction Ma(e) {\n\treturn /* @__PURE__ */ E(\"svg\", {\n\t\tviewBox: \"0 0 24 24\",\n\t\tfill: \"none\",\n\t\tstroke: \"currentColor\",\n\t\tstrokeWidth: \"2\",\n\t\tstrokeLinecap: \"round\",\n\t\tstrokeLinejoin: \"round\",\n\t\t...e,\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(\"path\", { d: \"M3 6h18\" }),\n\t\t\t/* @__PURE__ */ T(\"path\", { d: \"M8 6V4h8v2\" }),\n\t\t\t/* @__PURE__ */ T(\"path\", { d: \"M6 6l1 16h10l1-16\" }),\n\t\t\t/* @__PURE__ */ T(\"path\", { d: \"M10 11v6\" }),\n\t\t\t/* @__PURE__ */ T(\"path\", { d: \"M14 11v6\" })\n\t\t]\n\t});\n}\nfunction Na({ item: e, onRemove: t, onSetQty: n, variant: r = \"table\", className: i, inventory: a }) {\n\tlet o = B(), s = e.unitPrice * e.qty, [c, l] = x.useState(null), u = `${e.productId}::${e.variantId ?? \"\"}`, d = a?.availableQty ? a.availableQty : void 0, f = !a?.isOutOfStock && (d === void 0 || e.qty < d), p = Ha(a, o.t(\"storefront.stock.out\"), o.t(\"storefront.stock.quantityExceeded\", {\n\t\tavailable: a?.availableQty ?? \"\",\n\t\tquantity: e.qty\n\t}), o.t(\"storefront.stock.lowGeneric\")), m = c === u && e.qty === 1;\n\treturn r === \"compact\" ? /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__cart-line cedros-shop-public__cart-line--compact flex items-start gap-3\", i),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(Fa, {\n\t\t\t\titem: e,\n\t\t\t\tsize: \"sm\"\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"min-w-0 flex-1\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"flex items-center gap-3\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"min-w-0 flex-1\",\n\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(Ia, { item: e }),\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(q, {\n\t\t\t\t\t\t\t\t\t\tswapKey: o.formatMoney(s, e.currency),\n\t\t\t\t\t\t\t\t\t\tclassName: \"mt-0.5 block text-xs tabular-nums\",\n\t\t\t\t\t\t\t\t\t\tchildren: o.formatMoney(s, e.currency)\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(za, {\n\t\t\t\t\t\t\t\t\t\twarning: p,\n\t\t\t\t\t\t\t\t\t\tcompact: !0\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"flex h-12 w-[140px] shrink-0 items-center justify-end\",\n\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\tm ? /* @__PURE__ */ T(Ra, {\n\t\t\t\t\t\t\t\t\t\tonCancel: () => l(null),\n\t\t\t\t\t\t\t\t\t\tonConfirm: t\n\t\t\t\t\t\t\t\t\t}) : /* @__PURE__ */ T(La, {\n\t\t\t\t\t\t\t\t\t\titem: e,\n\t\t\t\t\t\t\t\t\t\tmaxQty: d,\n\t\t\t\t\t\t\t\t\t\tcanIncreaseQty: f,\n\t\t\t\t\t\t\t\t\t\tonSetQty: n,\n\t\t\t\t\t\t\t\t\t\tonRemoveClick: () => l(u),\n\t\t\t\t\t\t\t\t\t\tcompact: !0\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t}) : /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__cart-line grid grid-cols-[64px_1fr] items-start gap-x-4 gap-y-3 sm:grid-cols-[64px_1fr_176px_120px]\", i),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(Fa, { item: e }),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"col-start-2 row-start-1 min-w-0\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"flex items-start justify-between gap-3\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(Ia, { item: e }),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(q, {\n\t\t\t\t\t\t\t\tswapKey: o.formatMoney(s, e.currency),\n\t\t\t\t\t\t\t\tclassName: \"text-sm font-semibold tabular-nums sm:hidden\",\n\t\t\t\t\t\t\t\tchildren: o.formatMoney(s, e.currency)\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"mt-1 text-xs\",\n\t\t\t\t\t\tchildren: o.t(\"storefront.cart.unitEach\", { price: o.formatMoney(e.unitPrice, e.currency) })\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(za, { warning: p }),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"col-span-2 col-start-1 row-start-2 flex items-center justify-between gap-3 sm:col-span-1 sm:col-start-3 sm:row-start-1 sm:justify-center\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(La, {\n\t\t\t\t\t\titem: e,\n\t\t\t\t\t\tmaxQty: d,\n\t\t\t\t\t\tcanIncreaseQty: f,\n\t\t\t\t\t\tonSetQty: n\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tclassName: \"h-9 px-2 text-xs sm:hidden\",\n\t\t\t\t\t\tonClick: t,\n\t\t\t\t\t\tchildren: o.t(\"storefront.cart.removeItem\")\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"hidden sm:col-start-4 sm:row-start-1 sm:flex sm:flex-col sm:items-center sm:text-center\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(q, {\n\t\t\t\t\t\tswapKey: o.formatMoney(s, e.currency),\n\t\t\t\t\t\tclassName: \"text-sm font-semibold tabular-nums\",\n\t\t\t\t\t\tchildren: o.formatMoney(s, e.currency)\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tclassName: \"mt-1 h-8 px-2 text-xs\",\n\t\t\t\t\t\tonClick: t,\n\t\t\t\t\t\tchildren: o.t(\"storefront.cart.removeItem\")\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction Pa({ item: e, inventory: t, className: n }) {\n\tlet r = B(), i = Ha(t, r.t(\"storefront.stock.out\"), r.t(\"storefront.stock.quantityExceeded\", {\n\t\tavailable: t?.availableQty ?? \"\",\n\t\tquantity: e.qty\n\t}), r.t(\"storefront.stock.lowGeneric\"));\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__cart-line cedros-shop-public__cart-line--summary flex items-start gap-3\", n),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(Fa, {\n\t\t\t\titem: e,\n\t\t\t\tsize: \"sm\"\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"min-w-0 flex-1\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ T(Ia, { item: e }),\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"mt-0.5 text-xs tabular-nums\",\n\t\t\t\t\t\tchildren: r.t(\"storefront.checkout.lineQuantity\", {\n\t\t\t\t\t\t\tcount: e.qty,\n\t\t\t\t\t\t\tprice: r.formatMoney(e.unitPrice, e.currency)\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(za, {\n\t\t\t\t\t\twarning: i,\n\t\t\t\t\t\tcompact: !0\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"shrink-0 text-sm font-semibold tabular-nums\",\n\t\t\t\tchildren: r.formatMoney(e.unitPrice * e.qty, e.currency)\n\t\t\t})\n\t\t]\n\t});\n}\nfunction Fa({ item: e, size: t = \"md\" }) {\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"shrink-0 overflow-hidden rounded-lg border\", t === \"sm\" ? \"h-12 w-12\" : \"h-16 w-16\"),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\te.imageSnapshot ? /* @__PURE__ */ T(\"img\", {\n\t\t\t\tsrc: e.imageSnapshot,\n\t\t\t\talt: e.titleSnapshot,\n\t\t\t\tclassName: \"h-full w-full object-cover\"\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction Ia({ item: e }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"truncate text-sm font-medium\",\n\t\tchildren: e.titleSnapshot\n\t});\n}\nfunction La({ item: e, maxQty: t, canIncreaseQty: n, onSetQty: r, onRemoveClick: i, compact: a }) {\n\tlet { t: o } = B(), s = a ? \"inline-flex h-8 w-8 items-center justify-center rounded-md border\" : \"inline-flex h-9 w-9 items-center justify-center rounded-md border\";\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"flex items-center whitespace-nowrap\", a ? \"justify-end gap-1.5\" : \"gap-2\"),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"button\", {\n\t\t\t\ttype: \"button\",\n\t\t\t\tclassName: G(\"cedros-shop-public__button cedros-shop-public__button--icon\", s),\n\t\t\t\t\"aria-label\": e.qty === 1 && i ? o(\"storefront.cart.removeItem\") : o(\"storefront.cart.decreaseQuantity\"),\n\t\t\t\tonClick: () => {\n\t\t\t\t\te.qty === 1 && i ? i() : r(Math.max(1, e.qty - 1));\n\t\t\t\t},\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\te.qty === 1 && i ? /* @__PURE__ */ T(Ma, { className: \"h-4 w-4\" }) : \"-\",\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"input\", {\n\t\t\t\tinputMode: \"numeric\",\n\t\t\t\tpattern: \"[0-9]*\",\n\t\t\t\tvalue: String(e.qty),\n\t\t\t\tonChange: (e) => Wa(e.target.value, t, r),\n\t\t\t\tclassName: G(\"cedros-shop-public__input rounded-md border text-center\", a ? \"h-8 w-11 px-2\" : \"h-9 w-14\"),\n\t\t\t\t\"aria-label\": o(\"storefront.cart.quantity\")\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"button\", {\n\t\t\t\ttype: \"button\",\n\t\t\t\tclassName: G(\"cedros-shop-public__button cedros-shop-public__button--icon\", s),\n\t\t\t\t\"aria-label\": o(\"storefront.cart.increaseQuantity\"),\n\t\t\t\tonClick: () => r(t ? Math.min(t, e.qty + 1) : e.qty + 1),\n\t\t\t\tdisabled: !n,\n\t\t\t\tchildren: \"+\"\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction Ra({ onCancel: e, onConfirm: t }) {\n\tlet { t: n } = B();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"flex w-full flex-col items-center justify-center gap-2\",\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"text-center text-[11px] font-medium leading-none\",\n\t\t\t\tchildren: n(\"storefront.cart.removeConfirmTitle\")\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"flex items-center gap-2\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--secondary h-7 w-[62px] rounded-md border px-0 text-[11px]\",\n\t\t\t\t\t\tonClick: e,\n\t\t\t\t\t\tchildren: n(\"common.cancel\")\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--destructive h-7 w-[62px] rounded-md px-0 text-[11px]\",\n\t\t\t\t\t\tonClick: t,\n\t\t\t\t\t\tchildren: n(\"storefront.cart.removeConfirm\")\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction za({ warning: e, compact: t }) {\n\treturn e ? /* @__PURE__ */ E(\"div\", {\n\t\trole: \"status\",\n\t\tclassName: G(t ? \"mt-1 flex items-center gap-1 text-[11px]\" : \"mt-1.5 flex items-center gap-1 text-xs\", e.type === \"error\" && \"cedros-shop-public__error\", e.type === \"warning\" && \"cedros-shop-public__warning\"),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(ja, { className: t ? \"h-3 w-3 shrink-0\" : \"h-3.5 w-3.5 shrink-0\" }),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"span\", { children: e.message }),\n\t\t\t\" \"\n\t\t]\n\t}) : null;\n}\nfunction Ba({ onCheckout: e, className: t }) {\n\tlet { config: n } = z(), r = B(), { t: i } = r, { settings: a } = gn(), o = V(), s = Kt(), c = U(), { getItemInventory: l, hasIssues: u } = hn({\n\t\titems: s.items,\n\t\trefreshInterval: 3e4,\n\t\tskip: s.items.length === 0 || !o.inventory || !a.inventory.preCheckoutVerification\n\t}), d = () => Ua(s.items, l, (e) => s.removeItem(e.productId, e.variantId)), f = (e) => {\n\t\tc(\"cedros-shop:remove-from-cart\", {\n\t\t\tproduct_ref: e.productId,\n\t\t\tvariant_ref: e.variantId,\n\t\t\tquantity_bucket: yr(e.qty),\n\t\t\tsurface: \"mini-cart\"\n\t\t}), s.removeItem(e.productId, e.variantId);\n\t}, p = s.items[0]?.currency ?? n.currency;\n\treturn s.items.length === 0 ? /* @__PURE__ */ T(J, {\n\t\ttitle: i(\"storefront.cart.emptyTitle\"),\n\t\tdescription: i(\"storefront.cart.emptyDescription\"),\n\t\tactionLabel: i(\"storefront.cart.continueShopping\"),\n\t\tonAction: () => Ea(r, n.routes),\n\t\tclassName: t\n\t}) : /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__cart-panel flex h-full flex-col rounded-xl border p-4\", t),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"-mr-4 min-h-0 flex-1 overflow-y-auto overflow-x-hidden pr-4\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"divide-y\",\n\t\t\t\t\t\tchildren: s.items.map((e) => /* @__PURE__ */ T(Da, {\n\t\t\t\t\t\t\tinnerClassName: \"py-3\",\n\t\t\t\t\t\t\tonRemove: () => f(e),\n\t\t\t\t\t\t\tchildren: (t) => /* @__PURE__ */ T(Na, {\n\t\t\t\t\t\t\t\tvariant: \"compact\",\n\t\t\t\t\t\t\t\titem: e,\n\t\t\t\t\t\t\t\tonRemove: t,\n\t\t\t\t\t\t\t\tonSetQty: (t) => s.setQty(e.productId, e.variantId, t),\n\t\t\t\t\t\t\t\tinventory: l(e.productId, e.variantId)\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}, `${e.productId}::${e.variantId ?? \"\"}`))\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"mt-4 space-y-4\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(Aa, {\n\t\t\t\t\t\tcurrency: p,\n\t\t\t\t\t\tsubtotal: s.subtotal,\n\t\t\t\t\t\titemCount: s.count,\n\t\t\t\t\t\tonCheckout: e,\n\t\t\t\t\t\tisCheckoutDisabled: s.items.length === 0 || u,\n\t\t\t\t\t\tcheckoutDisabledReason: u ? i(\"storefront.cart.checkoutBlocked\") : void 0,\n\t\t\t\t\t\tonRemoveUnavailable: u ? d : void 0\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction Va({ onCheckout: e, showPromoCode: t, className: n, checkoutLabel: r, checkoutDisabled: i, checkoutDisabledReason: a, checkoutBusy: o }) {\n\tlet { config: s } = z(), c = B(), { t: l } = c, { settings: u } = gn(), d = V(), f = Kt(), p = U(), { getItemInventory: m, hasIssues: h } = hn({\n\t\titems: f.items,\n\t\trefreshInterval: 3e4,\n\t\tskip: f.items.length === 0 || !d.inventory || !u.inventory.preCheckoutVerification\n\t}), g = x.useRef(!1);\n\tx.useEffect(() => {\n\t\tg.current || (g.current = !0, p(\"cedros-shop:cart-viewed\", {\n\t\t\tcart_item_count_bucket: br(f.count),\n\t\t\tsurface: \"cart-page\"\n\t\t}));\n\t}, [p, f.count]);\n\tlet [_, v] = x.useState(!!f.promoCodes?.length);\n\tx.useEffect(() => {\n\t\tf.promoCodes?.length && v(!0);\n\t}, [f.promoCodes]);\n\tlet y = () => Ua(f.items, m, (e) => f.removeItem(e.productId, e.variantId)), b = (e) => {\n\t\tp(\"cedros-shop:remove-from-cart\", {\n\t\t\tproduct_ref: e.productId,\n\t\t\tvariant_ref: e.variantId,\n\t\t\tquantity_bucket: yr(e.qty),\n\t\t\tsurface: \"cart-page\"\n\t\t}), f.removeItem(e.productId, e.variantId);\n\t}, S = f.items[0]?.currency ?? s.currency;\n\treturn f.items.length === 0 ? /* @__PURE__ */ T(J, {\n\t\ttitle: l(\"storefront.cart.emptyTitle\"),\n\t\tdescription: l(\"storefront.cart.emptyDescription\"),\n\t\tactionLabel: l(\"storefront.cart.continueShopping\"),\n\t\tonAction: () => Ea(c, s.routes),\n\t\tclassName: n\n\t}) : /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__cart-layout grid items-start gap-6 lg:grid-cols-[1fr_360px]\", n),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__cart-list self-start rounded-2xl border\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"hidden grid-cols-[64px_1fr_176px_120px] gap-x-4 px-5 py-3 text-xs font-medium sm:grid\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {}),\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", { children: l(\"storefront.cart.item\") }),\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"text-center\",\n\t\t\t\t\t\t\t\tchildren: l(\"storefront.cart.quantity\")\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"text-center\",\n\t\t\t\t\t\t\t\tchildren: l(\"storefront.cart.total\")\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"divide-y\",\n\t\t\t\t\t\tchildren: f.items.map((e) => /* @__PURE__ */ T(Da, {\n\t\t\t\t\t\t\tinnerClassName: \"px-4 py-4 sm:px-5\",\n\t\t\t\t\t\t\tonRemove: () => b(e),\n\t\t\t\t\t\t\tchildren: (t) => /* @__PURE__ */ T(Na, {\n\t\t\t\t\t\t\t\titem: e,\n\t\t\t\t\t\t\t\tonRemove: t,\n\t\t\t\t\t\t\t\tonSetQty: (t) => f.setQty(e.productId, e.variantId, t),\n\t\t\t\t\t\t\t\tinventory: m(e.productId, e.variantId)\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}, `${e.productId}::${e.variantId ?? \"\"}`))\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"self-start lg:sticky lg:top-24\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__card rounded-2xl border p-5 shadow-sm\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"text-sm font-semibold\",\n\t\t\t\t\t\t\t\tchildren: l(\"storefront.cart.summary\")\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", { className: \"my-4 border-t\" }),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"space-y-4\",\n\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\tt ? /* @__PURE__ */ T(aa, {\n\t\t\t\t\t\t\t\t\t\topen: _,\n\t\t\t\t\t\t\t\t\t\tonOpenChange: v,\n\t\t\t\t\t\t\t\t\t\topenLabel: l(\"storefront.checkout.addPromoCode\"),\n\t\t\t\t\t\t\t\t\t\tcloseLabel: l(\"storefront.checkout.hidePromoCode\"),\n\t\t\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(ka, {\n\t\t\t\t\t\t\t\t\t\t\tvalues: f.promoCodes,\n\t\t\t\t\t\t\t\t\t\t\tonAdd: f.addPromoCode,\n\t\t\t\t\t\t\t\t\t\t\tonRemove: f.removePromoCode\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t}) : null,\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(Aa, {\n\t\t\t\t\t\t\t\t\t\tcurrency: S,\n\t\t\t\t\t\t\t\t\t\tsubtotal: f.subtotal,\n\t\t\t\t\t\t\t\t\t\titemCount: f.count,\n\t\t\t\t\t\t\t\t\t\tonCheckout: e,\n\t\t\t\t\t\t\t\t\t\tcheckoutLabel: r,\n\t\t\t\t\t\t\t\t\t\tisCheckoutBusy: o,\n\t\t\t\t\t\t\t\t\t\tisCheckoutDisabled: f.items.length === 0 || h || i,\n\t\t\t\t\t\t\t\t\t\tcheckoutDisabledReason: a ?? (h ? l(\"storefront.cart.checkoutBlocked\") : void 0),\n\t\t\t\t\t\t\t\t\t\tonRemoveUnavailable: h ? y : void 0,\n\t\t\t\t\t\t\t\t\t\tfootnote: d.shipping || d.taxes ? l(\"storefront.cart.pricingNote\") : void 0\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction Ha(e, t, n, r) {\n\treturn e ? e.isOutOfStock ? {\n\t\ttype: \"error\",\n\t\tmessage: e.message || t\n\t} : e.exceedsAvailable ? {\n\t\ttype: \"warning\",\n\t\tmessage: e.message || n\n\t} : e.isLowStock ? {\n\t\ttype: \"info\",\n\t\tmessage: e.message || r\n\t} : null : null;\n}\nfunction Ua(e, t, n) {\n\tfor (let r of e) {\n\t\tlet e = t(r.productId, r.variantId);\n\t\t(e?.isOutOfStock || e?.exceedsAvailable) && n(r);\n\t}\n}\nfunction Wa(e, t, n) {\n\tlet r = Math.floor(Number(e));\n\tNumber.isFinite(r) && n(Math.max(1, t ? Math.min(t, r) : r));\n}\n//#endregion\n//#region src/storefront/catalog.tsx\nfunction Ga({ items: e, className: t }) {\n\tlet { t: n } = B();\n\treturn /* @__PURE__ */ E(\"nav\", {\n\t\tclassName: G(\"cedros-shop-public__muted flex items-center gap-2 text-xs\", t),\n\t\t\"aria-label\": n(\"storefront.catalog.breadcrumb\"),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\te.map((t, n) => /* @__PURE__ */ E(\"span\", {\n\t\t\t\tclassName: \"flex items-center gap-2\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\tt.href ? /* @__PURE__ */ T(\"a\", {\n\t\t\t\t\t\thref: t.href,\n\t\t\t\t\t\tclassName: \"hover:underline\",\n\t\t\t\t\t\tchildren: t.label\n\t\t\t\t\t}) : /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\"aria-current\": \"page\",\n\t\t\t\t\t\tchildren: t.label\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\tn < e.length - 1 ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\"aria-hidden\": !0,\n\t\t\t\t\t\tchildren: \"/\"\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}, `${t.label}-${n}`)),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction Ka({ categories: e, activeSlug: t, getHref: n, onSelect: r, className: i }) {\n\tlet { t: a } = B();\n\treturn /* @__PURE__ */ E(\"nav\", {\n\t\tclassName: G(\"cedros-shop-public__category-nav space-y-1\", i),\n\t\t\"aria-label\": a(\"storefront.catalog.categoryNav\"),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\te.map((e) => {\n\t\t\t\tlet i = t === e.slug;\n\t\t\t\treturn /* @__PURE__ */ E(\"a\", {\n\t\t\t\t\thref: n(e),\n\t\t\t\t\tclassName: \"cedros-shop-public__category-nav-item flex w-full items-center justify-between rounded-md px-3 py-2 text-sm transition-colors\",\n\t\t\t\t\tonClick: () => r?.(e),\n\t\t\t\t\t\"aria-current\": i ? \"page\" : void 0,\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\tclassName: \"truncate\",\n\t\t\t\t\t\t\tchildren: e.name\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\tclassName: \"text-xs opacity-70\",\n\t\t\t\t\t\t\t\"aria-hidden\": !0,\n\t\t\t\t\t\t\tchildren: \">\"\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \"\n\t\t\t\t\t]\n\t\t\t\t}, e.id);\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction qa({ value: e, onChange: t, placeholder: n, className: r, onCompositionStart: i, onCompositionEnd: a }) {\n\tlet { t: o } = B();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__search relative\", r),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__search-icon\",\n\t\t\t\t\"aria-hidden\": !0,\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"svg\", {\n\t\t\t\t\t\twidth: \"14\",\n\t\t\t\t\t\theight: \"14\",\n\t\t\t\t\t\tviewBox: \"0 0 24 24\",\n\t\t\t\t\t\tfill: \"none\",\n\t\t\t\t\t\tstroke: \"currentColor\",\n\t\t\t\t\t\tstrokeWidth: \"2\",\n\t\t\t\t\t\tstrokeLinecap: \"round\",\n\t\t\t\t\t\tstrokeLinejoin: \"round\",\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"circle\", {\n\t\t\t\t\t\t\tcx: \"11\",\n\t\t\t\t\t\t\tcy: \"11\",\n\t\t\t\t\t\t\tr: \"7\"\n\t\t\t\t\t\t}), /* @__PURE__ */ T(\"path\", { d: \"m20 20-3.5-3.5\" })]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"input\", {\n\t\t\t\tvalue: e,\n\t\t\t\tonChange: (e) => t(e.target.value),\n\t\t\t\tonCompositionStart: i,\n\t\t\t\tonCompositionEnd: (e) => a?.(e.currentTarget.value),\n\t\t\t\tplaceholder: n ?? o(\"storefront.catalog.searchPlaceholder\"),\n\t\t\t\tclassName: \"cedros-shop-public__input w-full rounded-md border px-3 py-2 pl-9 pr-2 text-sm\",\n\t\t\t\t\"aria-label\": o(\"common.search\")\n\t\t\t}),\n\t\t\t\" \",\n\t\t\te ? /* @__PURE__ */ T(\"button\", {\n\t\t\t\ttype: \"button\",\n\t\t\t\tclassName: \"cedros-shop-public__search-clear\",\n\t\t\t\t\"aria-label\": o(\"common.clear\"),\n\t\t\t\tonClick: () => t(\"\"),\n\t\t\t\tchildren: /* @__PURE__ */ T(\"svg\", {\n\t\t\t\t\twidth: \"12\",\n\t\t\t\t\theight: \"12\",\n\t\t\t\t\tviewBox: \"0 0 24 24\",\n\t\t\t\t\tfill: \"none\",\n\t\t\t\t\tstroke: \"currentColor\",\n\t\t\t\t\tstrokeWidth: \"2.5\",\n\t\t\t\t\tstrokeLinecap: \"round\",\n\t\t\t\t\t\"aria-hidden\": \"true\",\n\t\t\t\t\tchildren: /* @__PURE__ */ T(\"path\", { d: \"M6 6l12 12M18 6 6 18\" })\n\t\t\t\t})\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction Ja({ facets: e, value: t, onChange: n, onClear: r, className: i, enabledFilters: a }) {\n\tlet { t: o } = B(), s = e.tags ?? [], c = new Set(t.tags ?? []), l = a?.tags ?? !0, u = a?.priceRange ?? !0, d = a?.inStock ?? !0;\n\treturn l || u || d ? /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__filters space-y-4\", i),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"flex items-center justify-between\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__eyebrow\",\n\t\t\t\t\t\tchildren: o(\"common.filters\")\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--ghost h-8 px-2 text-xs\",\n\t\t\t\t\t\tonClick: r,\n\t\t\t\t\t\tchildren: o(\"common.clear\")\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"div\", { className: \"border-t\" }),\n\t\t\t\" \",\n\t\t\tl && s.length ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"space-y-2\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__eyebrow\",\n\t\t\t\t\t\tchildren: o(\"storefront.catalog.tags\")\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"space-y-2\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\ts.map((e) => /* @__PURE__ */ E(\"label\", {\n\t\t\t\t\t\t\t\tclassName: \"flex cursor-pointer items-center gap-2 text-sm\",\n\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(\"input\", {\n\t\t\t\t\t\t\t\t\t\ttype: \"checkbox\",\n\t\t\t\t\t\t\t\t\t\tchecked: c.has(e),\n\t\t\t\t\t\t\t\t\t\tonChange: (r) => {\n\t\t\t\t\t\t\t\t\t\t\tlet i = new Set(c);\n\t\t\t\t\t\t\t\t\t\t\tr.target.checked ? i.add(e) : i.delete(e), n({\n\t\t\t\t\t\t\t\t\t\t\t\t...t,\n\t\t\t\t\t\t\t\t\t\t\t\ttags: Array.from(i)\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\te,\n\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}, e)),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}) : null,\n\t\t\t\" \",\n\t\t\tu && e.price ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"space-y-2\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__eyebrow\",\n\t\t\t\t\t\tchildren: o(\"storefront.catalog.price\")\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"grid gap-2 sm:grid-cols-2\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(Ya, {\n\t\t\t\t\t\t\t\tlabel: o(\"storefront.catalog.min\"),\n\t\t\t\t\t\t\t\tplaceholder: String(e.price.min),\n\t\t\t\t\t\t\t\tvalue: t.priceMin,\n\t\t\t\t\t\t\t\tonChange: (e) => n({\n\t\t\t\t\t\t\t\t\t...t,\n\t\t\t\t\t\t\t\t\tpriceMin: e\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(Ya, {\n\t\t\t\t\t\t\t\tlabel: o(\"storefront.catalog.max\"),\n\t\t\t\t\t\t\t\tplaceholder: String(e.price.max),\n\t\t\t\t\t\t\t\tvalue: t.priceMax,\n\t\t\t\t\t\t\t\tonChange: (e) => n({\n\t\t\t\t\t\t\t\t\t...t,\n\t\t\t\t\t\t\t\t\tpriceMax: e\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}) : null,\n\t\t\t\" \",\n\t\t\td ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"space-y-2\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__eyebrow\",\n\t\t\t\t\t\tchildren: o(\"storefront.catalog.availability\")\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"label\", {\n\t\t\t\t\t\tclassName: \"flex cursor-pointer items-center gap-2 text-sm\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"input\", {\n\t\t\t\t\t\t\t\ttype: \"checkbox\",\n\t\t\t\t\t\t\t\tchecked: t.inStock ?? !1,\n\t\t\t\t\t\t\t\tonChange: (e) => n({\n\t\t\t\t\t\t\t\t\t...t,\n\t\t\t\t\t\t\t\t\tinStock: e.target.checked\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\to(\"storefront.catalog.inStockOnly\"),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t}) : null;\n}\nfunction Ya({ label: e, placeholder: t, value: n, onChange: r }) {\n\tlet i = C();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"grid gap-1\",\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"label\", {\n\t\t\t\tclassName: \"text-xs\",\n\t\t\t\thtmlFor: i,\n\t\t\t\tchildren: e\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"input\", {\n\t\t\t\tid: i,\n\t\t\t\tinputMode: \"decimal\",\n\t\t\t\tplaceholder: t,\n\t\t\t\tvalue: n ?? \"\",\n\t\t\t\tonChange: (e) => {\n\t\t\t\t\tlet t = Number(e.target.value);\n\t\t\t\t\tr(Number.isFinite(t) && e.target.value !== \"\" ? t : void 0);\n\t\t\t\t},\n\t\t\t\tclassName: \"cedros-shop-public__input w-full rounded-md border px-3 py-2 text-sm\"\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\n//#endregion\n//#region src/storefront/AssetBadge.tsx\nfunction Xa({ assetClass: e }) {\n\treturn e ? /* @__PURE__ */ T(\"span\", {\n\t\tclassName: \"cedros-shop-public__asset-badge inline-flex items-center rounded-md border px-2 py-0.5 text-xs font-semibold\",\n\t\tchildren: e\n\t}) : null;\n}\n//#endregion\n//#region src/storefront/catalogDisplay.tsx\nfunction Za({ amount: e, currency: t, compareAt: n, className: r, size: i = \"default\" }) {\n\tlet a = B(), o = typeof n == \"number\" && n > e;\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__price flex items-baseline gap-2 tabular-nums\", r),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"span\", {\n\t\t\t\tclassName: G(\"cedros-shop-public__price-current font-semibold\", i === \"sm\" ? \"text-sm\" : \"text-base\"),\n\t\t\t\tchildren: a.formatMoney(e, t)\n\t\t\t}),\n\t\t\t\" \",\n\t\t\to ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\tclassName: G(\"cedros-shop-public__price-compare line-through\", i === \"sm\" ? \"text-xs\" : \"text-sm\"),\n\t\t\t\tchildren: a.formatMoney(n, t)\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction Qa({ images: e, fallbackAlt: t, className: n }) {\n\tlet { t: r } = B(), [i, a] = x.useState(0), o = e[i];\n\treturn e.length === 0 ? /* @__PURE__ */ T(\"div\", { className: G(\"cedros-shop-public__product-media aspect-square w-full rounded-xl border\", n) }) : /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"space-y-3\", n),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__product-media aspect-square overflow-hidden rounded-2xl border\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"img\", {\n\t\t\t\t\t\tsrc: o?.url,\n\t\t\t\t\t\talt: o?.alt ?? t ?? \"\",\n\t\t\t\t\t\twidth: o?.width ?? 1200,\n\t\t\t\t\t\theight: o?.height ?? 1200,\n\t\t\t\t\t\tclassName: \"cs-anim-fade h-full w-full object-cover\",\n\t\t\t\t\t\tloading: \"eager\",\n\t\t\t\t\t\tfetchPriority: \"high\"\n\t\t\t\t\t}, o?.url),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\te.length > 1 ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__product-thumbnails flex gap-2 overflow-x-auto pb-1\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\te.map((e, t) => /* @__PURE__ */ E(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tclassName: \"h-16 w-16 shrink-0 overflow-hidden rounded-lg border\",\n\t\t\t\t\t\tonClick: () => a(t),\n\t\t\t\t\t\t\"aria-pressed\": t === i,\n\t\t\t\t\t\t\"aria-label\": r(\"storefront.a11y.viewImage\", { index: t + 1 }),\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"img\", {\n\t\t\t\t\t\t\t\tsrc: e.url,\n\t\t\t\t\t\t\t\talt: e.alt ?? \"\",\n\t\t\t\t\t\t\t\twidth: e.width ?? 160,\n\t\t\t\t\t\t\t\theight: e.height ?? 160,\n\t\t\t\t\t\t\t\tclassName: \"h-full w-full object-cover\",\n\t\t\t\t\t\t\t\tloading: \"lazy\"\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}, e.url)),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction $a(e) {\n\treturn Array.from(new Set(e.flatMap((e) => Object.keys(e.options))));\n}\nfunction eo(e, t) {\n\treturn Array.from(new Set(e.map((e) => e.options[t]).filter(Boolean)));\n}\nfunction to(e, t) {\n\tlet n = Object.entries(t);\n\treturn e.find((e) => n.every(([t, n]) => e.options[t] === n)) ?? null;\n}\nfunction no(e) {\n\treturn e.inventoryStatus === \"out_of_stock\" || typeof e.inventoryQuantity == \"number\" && e.inventoryQuantity <= 0;\n}\nfunction ro(e) {\n\treturn e.inventoryStatus === \"low\" || typeof e.inventoryQuantity == \"number\" && e.inventoryQuantity > 0 && e.inventoryQuantity <= 5;\n}\nfunction io(e) {\n\tlet t = no(e), n = typeof e.inventoryQuantity == \"number\" ? e.inventoryQuantity : void 0;\n\treturn {\n\t\tisOutOfStock: t,\n\t\tisLow: !t && ro(e),\n\t\tquantity: n\n\t};\n}\nfunction ao(e, t, n, r) {\n\tlet i = {\n\t\t...t,\n\t\t[n]: r\n\t}, a = Object.entries(i);\n\treturn e.some((e) => !no(e) && a.every(([t, n]) => e.options[t] === n));\n}\nfunction oo({ product: e, value: t, onChange: n, className: r, showInventory: i = !0, disableOutOfStock: a = !1 }) {\n\tlet { t: o } = B(), s = x.useMemo(() => e.variants ?? [], [e.variants]), c = x.useMemo(() => $a(s), [s]), l = x.useMemo(() => new Map(c.map((e) => [e, eo(s, e)])), [c, s]), u = x.useMemo(() => to(s, t.selectedOptions), [s, t.selectedOptions]), d = x.useMemo(() => u ? io(u) : null, [u]);\n\treturn s.length === 0 || c.length === 0 ? null : /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"space-y-4\", r),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\tc.map((e) => {\n\t\t\t\tlet r = t.selectedOptions[e];\n\t\t\t\treturn /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"space-y-2\",\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\tclassName: \"flex items-baseline justify-between\",\n\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\t\tclassName: \"text-sm font-medium\",\n\t\t\t\t\t\t\t\t\tchildren: e\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\t\tclassName: \"text-xs\",\n\t\t\t\t\t\t\t\t\tchildren: r || o(\"storefront.product.select\")\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\tclassName: \"flex flex-wrap gap-2\",\n\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\tl.get(e).map((c) => {\n\t\t\t\t\t\t\t\t\tlet l = c === r, u = !i || ao(s, t.selectedOptions, e, c), d = a && !u;\n\t\t\t\t\t\t\t\t\treturn /* @__PURE__ */ E(\"button\", {\n\t\t\t\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\t\t\t\tclassName: G(\"inline-flex h-9 items-center justify-center rounded-md border px-3 text-sm\", !u && !d && \"opacity-50 line-through\"),\n\t\t\t\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t\t\t\tlet r = {\n\t\t\t\t\t\t\t\t\t\t\t\t...t.selectedOptions,\n\t\t\t\t\t\t\t\t\t\t\t\t[e]: c\n\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\tn({\n\t\t\t\t\t\t\t\t\t\t\t\tselectedOptions: r,\n\t\t\t\t\t\t\t\t\t\t\t\tvariant: to(s, r)\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"aria-pressed\": l,\n\t\t\t\t\t\t\t\t\t\tdisabled: d,\n\t\t\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t\t\tc,\n\t\t\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t\t\t!u && !d ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\t\t\t\t\tclassName: \"ml-1 text-[10px] opacity-70\",\n\t\t\t\t\t\t\t\t\t\t\t\tchildren: o(\"storefront.product.variantOut\")\n\t\t\t\t\t\t\t\t\t\t\t}) : null,\n\t\t\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t}, c);\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \"\n\t\t\t\t\t]\n\t\t\t\t}, e);\n\t\t\t}),\n\t\t\t\" \",\n\t\t\ti && u && d ? /* @__PURE__ */ T(so, { inventory: d }) : null,\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction so({ inventory: e }) {\n\tlet { t } = B();\n\treturn e.isOutOfStock ? /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__error pt-2 text-sm font-medium\",\n\t\tchildren: t(\"storefront.stock.out\")\n\t}) : e.isLow && e.quantity !== void 0 ? /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__notice pt-2 text-sm\",\n\t\tchildren: t(\"storefront.stock.low\", { count: e.quantity })\n\t}) : null;\n}\nfunction co({ qty: e, onChange: t, min: n = 1, max: r, className: i }) {\n\tlet { t: a } = B(), o = Number.isFinite(e) ? Math.max(n, Math.floor(e)) : n, s = o > n, c = typeof r != \"number\" || o < r;\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"flex items-center gap-2\", i),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"button\", {\n\t\t\t\ttype: \"button\",\n\t\t\t\tclassName: \"inline-flex h-10 w-10 items-center justify-center rounded-md border\",\n\t\t\t\tonClick: () => t(Math.max(n, o - 1)),\n\t\t\t\tdisabled: !s,\n\t\t\t\t\"aria-label\": a(\"storefront.cart.decreaseQuantity\"),\n\t\t\t\tchildren: \"-\"\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"input\", {\n\t\t\t\tinputMode: \"numeric\",\n\t\t\t\tpattern: \"[0-9]*\",\n\t\t\t\tvalue: String(o),\n\t\t\t\tonChange: (e) => So(e.target.value, n, r, t),\n\t\t\t\tclassName: \"h-10 w-16 rounded-md border px-3 py-2 text-center\",\n\t\t\t\t\"aria-label\": a(\"storefront.cart.quantity\")\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"button\", {\n\t\t\t\ttype: \"button\",\n\t\t\t\tclassName: \"inline-flex h-10 w-10 items-center justify-center rounded-md border\",\n\t\t\t\tonClick: () => t(o + 1),\n\t\t\t\tdisabled: !c,\n\t\t\t\t\"aria-label\": a(\"storefront.cart.increaseQuantity\"),\n\t\t\t\tchildren: \"+\"\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction lo({ title: e, description: t, onRetry: n, className: r }) {\n\tlet { t: i } = B();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__state rounded-xl border p-6\", r),\n\t\tchildren: [\" \", /* @__PURE__ */ E(\"div\", { children: [\n\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__state-icon--error\",\n\t\t\t\t\"aria-hidden\": \"true\",\n\t\t\t\tchildren: /* @__PURE__ */ E(\"svg\", {\n\t\t\t\t\twidth: \"18\",\n\t\t\t\t\theight: \"18\",\n\t\t\t\t\tviewBox: \"0 0 24 24\",\n\t\t\t\t\tfill: \"none\",\n\t\t\t\t\tstroke: \"currentColor\",\n\t\t\t\t\tstrokeWidth: \"2\",\n\t\t\t\t\tstrokeLinecap: \"round\",\n\t\t\t\t\tstrokeLinejoin: \"round\",\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t/* @__PURE__ */ T(\"circle\", {\n\t\t\t\t\t\t\tcx: \"12\",\n\t\t\t\t\t\t\tcy: \"12\",\n\t\t\t\t\t\t\tr: \"10\"\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t/* @__PURE__ */ T(\"line\", {\n\t\t\t\t\t\t\tx1: \"12\",\n\t\t\t\t\t\t\ty1: \"8\",\n\t\t\t\t\t\t\tx2: \"12\",\n\t\t\t\t\t\t\ty2: \"12\"\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t/* @__PURE__ */ T(\"line\", {\n\t\t\t\t\t\t\tx1: \"12\",\n\t\t\t\t\t\t\ty1: \"16\",\n\t\t\t\t\t\t\tx2: \"12.01\",\n\t\t\t\t\t\t\ty2: \"16\"\n\t\t\t\t\t\t})\n\t\t\t\t\t]\n\t\t\t\t})\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"h3\", {\n\t\t\t\tclassName: \"text-sm font-semibold\",\n\t\t\t\tchildren: e ?? i(\"storefront.error.title\")\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: \"mt-2 text-sm\",\n\t\t\t\tchildren: t\n\t\t\t}),\n\t\t\t\" \",\n\t\t\tn ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"mt-4\",\n\t\t\t\tchildren: /* @__PURE__ */ T(\"button\", {\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tclassName: \"cedros-shop-public__button inline-flex h-10 items-center justify-center rounded-md border px-4 py-2 text-sm\",\n\t\t\t\t\tonClick: n,\n\t\t\t\t\tchildren: i(\"common.retry\")\n\t\t\t\t})\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t] })]\n\t});\n}\nfunction Z({ className: e, ...t }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__skeleton animate-pulse rounded-md\", e),\n\t\t...t\n\t});\n}\nfunction uo(e = 1400) {\n\tlet [t, n] = x.useState(!1), r = x.useRef(null);\n\treturn x.useEffect(() => () => {\n\t\tr.current !== null && window.clearTimeout(r.current);\n\t}, []), [t, x.useCallback(() => {\n\t\tn(!0), r.current !== null && window.clearTimeout(r.current), r.current = window.setTimeout(() => n(!1), e);\n\t}, [e])];\n}\nfunction fo() {\n\treturn /* @__PURE__ */ T(\"svg\", {\n\t\tclassName: \"cs-anim-fade\",\n\t\twidth: \"14\",\n\t\theight: \"14\",\n\t\tviewBox: \"0 0 24 24\",\n\t\tfill: \"none\",\n\t\tstroke: \"currentColor\",\n\t\tstrokeWidth: \"2.5\",\n\t\tstrokeLinecap: \"round\",\n\t\tstrokeLinejoin: \"round\",\n\t\t\"aria-hidden\": \"true\",\n\t\tchildren: /* @__PURE__ */ T(\"path\", {\n\t\t\tclassName: \"cs-anim-check\",\n\t\t\tpathLength: 1,\n\t\t\td: \"m4 12.5 5 5L20 6.5\"\n\t\t})\n\t});\n}\nvar po = {\n\tlarge: \"aspect-[4/5]\",\n\tsquare: \"aspect-square\",\n\tcompact: \"aspect-[3/4]\"\n}, mo = {\n\tcenter: \"object-center\",\n\ttop: \"object-top\",\n\tbottom: \"object-bottom\",\n\tleft: \"object-left\",\n\tright: \"object-right\"\n};\nfunction ho({ product: e, href: t, onAddToCart: n, onQuickView: r, className: i, layout: a = \"large\", imageCrop: o = \"center\", imagePriority: s = !1 }) {\n\tlet { t: c } = B(), l = V(), u = l.inventory && (e.inventoryStatus === \"out_of_stock\" || typeof e.inventoryQuantity == \"number\" && e.inventoryQuantity <= 0), d = l.inventory && typeof e.inventoryQuantity == \"number\" ? e.inventoryQuantity : null, f = (e.variants?.length ?? 0) > 0, [p, m] = uo(), h = x.useRef(!1), g = () => {\n\t\tif (!f) {\n\t\t\tn?.(e, null), h.current = !0, m();\n\t\t\treturn;\n\t\t}\n\t\tr ? r(e) : t && typeof window < \"u\" && window.location.assign(t);\n\t}, _ = c(u ? \"storefront.stock.out\" : f ? \"storefront.product.chooseOptions\" : \"storefront.product.addToCart\");\n\treturn /* @__PURE__ */ E(K, {\n\t\tclassName: G(\"cedros-shop-public__product-card group flex h-full flex-col overflow-hidden rounded-2xl\", i),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(go, {\n\t\t\t\tproduct: e,\n\t\t\t\thref: t,\n\t\t\t\tlayout: a,\n\t\t\t\timageCrop: o,\n\t\t\t\tisOutOfStock: u,\n\t\t\t\tlowStockQty: d,\n\t\t\t\tonQuickView: r,\n\t\t\t\timagePriority: s\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: G(\"cedros-shop-public__product-card-body flex flex-1 flex-col\", a === \"compact\" ? \"p-3\" : \"p-4\"),\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"min-w-0\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\tclassName: G(\"cedros-shop-public__product-title line-clamp-1 font-medium\", a === \"compact\" ? \"text-xs\" : \"text-sm\"),\n\t\t\t\t\t\t\t\tchildren: e.title\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"mt-1\",\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(Za, {\n\t\t\t\t\t\t\t\t\tamount: e.price,\n\t\t\t\t\t\t\t\t\tcurrency: e.currency,\n\t\t\t\t\t\t\t\t\tcompareAt: e.compareAtPrice,\n\t\t\t\t\t\t\t\t\tsize: a === \"compact\" ? \"sm\" : \"default\"\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\ta === \"large\" ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__product-description mt-2 line-clamp-2 min-h-8 text-xs leading-4\",\n\t\t\t\t\t\tchildren: e.description\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: G(\"mt-auto\", a === \"compact\" ? \"pt-3\" : \"pt-4\"),\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"button\", {\n\t\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--default inline-flex w-full items-center justify-center rounded-md px-4 py-2 text-sm font-medium\",\n\t\t\t\t\t\t\t\tonClick: g,\n\t\t\t\t\t\t\t\tdisabled: u,\n\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\tp ? /* @__PURE__ */ E(\"span\", {\n\t\t\t\t\t\t\t\t\t\tclassName: \"cs-anim-value inline-flex items-center gap-1.5\",\n\t\t\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(fo, {}),\n\t\t\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t\t\tc(\"storefront.toast.addedToCart\")\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t}, \"added\") : /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\t\t\tclassName: G(h.current && \"cs-anim-value\"),\n\t\t\t\t\t\t\t\t\t\tchildren: _\n\t\t\t\t\t\t\t\t\t}, \"idle\"),\n\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction go({ product: e, href: t, layout: n, imageCrop: r, isOutOfStock: i, lowStockQty: a, onQuickView: o, imagePriority: s }) {\n\tlet { t: c } = B(), l = /* @__PURE__ */ T(_o, {\n\t\tproduct: e,\n\t\tlayout: n,\n\t\timageCrop: r,\n\t\tpriority: s\n\t});\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"cedros-shop-public__product-media relative\",\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\tt ? /* @__PURE__ */ T(\"a\", {\n\t\t\t\thref: t,\n\t\t\t\tclassName: \"block\",\n\t\t\t\t\"aria-label\": c(\"storefront.a11y.viewProduct\", { title: e.title }),\n\t\t\t\tchildren: l\n\t\t\t}) : l,\n\t\t\t\" \",\n\t\t\tn !== \"compact\" && e.tags?.length ? /* @__PURE__ */ T(vo, { tags: e.tags }) : null,\n\t\t\t\" \",\n\t\t\te.tokenizedAssetConfig ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"pointer-events-none absolute bottom-3 right-3\",\n\t\t\t\tchildren: /* @__PURE__ */ T(Xa, { assetClass: e.tokenizedAssetConfig?.assetClass ?? \"\" })\n\t\t\t}) : null,\n\t\t\t\" \",\n\t\t\ti ? /* @__PURE__ */ T(yo, { label: c(\"storefront.stock.out\") }) : a != null && a > 0 && a <= 5 ? /* @__PURE__ */ T(yo, { label: c(\"storefront.stock.low\", { count: a }) }) : null,\n\t\t\t\" \",\n\t\t\to ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__quick-view\",\n\t\t\t\tchildren: /* @__PURE__ */ T(\"button\", {\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tclassName: \"cedros-shop-public__button inline-flex h-9 items-center justify-center rounded-md px-3 text-sm\",\n\t\t\t\t\tonClick: () => o(e),\n\t\t\t\t\tchildren: c(\"storefront.product.quickView\")\n\t\t\t\t})\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction _o({ product: e, layout: t, imageCrop: n, priority: r }) {\n\tlet i = e.images[0];\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__product-media overflow-hidden\", po[t]),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"img\", {\n\t\t\t\tsrc: i?.url,\n\t\t\t\talt: i?.alt ?? e.title,\n\t\t\t\twidth: i?.width ?? 800,\n\t\t\t\theight: i?.height ?? 1e3,\n\t\t\t\tclassName: G(\"h-full w-full object-cover\", mo[n]),\n\t\t\t\tloading: r ? \"eager\" : \"lazy\",\n\t\t\t\tfetchPriority: r ? \"high\" : \"auto\"\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction vo({ tags: e }) {\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"pointer-events-none absolute inset-x-0 bottom-0 flex gap-1 p-3\",\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\te.slice(0, 2).map((e) => /* @__PURE__ */ T(\"span\", {\n\t\t\t\tclassName: \"cedros-shop-public__badge pointer-events-none rounded-md px-2 py-0.5 text-xs backdrop-blur\",\n\t\t\t\tchildren: e\n\t\t\t}, e)),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction yo({ label: e }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"pointer-events-none absolute left-3 top-3\",\n\t\tchildren: /* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: \"cedros-shop-public__badge cedros-shop-public__badge--warning rounded-md px-2 py-0.5 text-xs backdrop-blur\",\n\t\t\tchildren: e\n\t\t})\n\t});\n}\nfunction bo({ products: e, columns: t, onAddToCart: n, onQuickView: r, getProductHref: i, className: a, layout: o, imageCrop: s }) {\n\tlet c = G(\"cedros-shop-public__product-grid grid gap-4\", xo(t?.base ?? 2, \"\"), xo(t?.md ?? 3, \"md:\"), xo(t?.lg ?? 3, \"lg:\")), l = {\n\t\t\"--cebbwf5-shop-grid-base\": t?.base ?? 1,\n\t\t\"--cebbwf5-shop-grid-md\": t?.md ?? 3,\n\t\t\"--cebbwf5-shop-grid-lg\": t?.lg ?? 3\n\t}, u = (e.length - 1) / 2;\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: G(c, a),\n\t\tstyle: l,\n\t\tchildren: e.map((e, t) => /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"cedros-shop-public__product-grid-item\",\n\t\t\tstyle: { \"--cebbwf5-shop-grid-delay\": `${Math.min(600, Math.abs(t - u) * 50)}ms` },\n\t\t\tchildren: /* @__PURE__ */ T(ho, {\n\t\t\t\tproduct: e,\n\t\t\t\thref: i?.(e),\n\t\t\t\tonAddToCart: n,\n\t\t\t\tonQuickView: r,\n\t\t\t\tlayout: o,\n\t\t\t\timageCrop: s,\n\t\t\t\timagePriority: t === 0\n\t\t\t})\n\t\t}, e.id))\n\t});\n}\nfunction xo(e, t) {\n\tlet n = Math.min(4, Math.max(1, e));\n\treturn {\n\t\t\"\": {\n\t\t\t1: \"grid-cols-1\",\n\t\t\t2: \"grid-cols-2\",\n\t\t\t3: \"grid-cols-3\",\n\t\t\t4: \"grid-cols-4\"\n\t\t},\n\t\t\"md:\": {\n\t\t\t1: \"md:grid-cols-1\",\n\t\t\t2: \"md:grid-cols-2\",\n\t\t\t3: \"md:grid-cols-3\",\n\t\t\t4: \"md:grid-cols-4\"\n\t\t},\n\t\t\"lg:\": {\n\t\t\t1: \"lg:grid-cols-1\",\n\t\t\t2: \"lg:grid-cols-2\",\n\t\t\t3: \"lg:grid-cols-3\",\n\t\t\t4: \"lg:grid-cols-4\"\n\t\t}\n\t}[t][n];\n}\nfunction So(e, t, n, r) {\n\tlet i = Math.floor(Number(e));\n\tNumber.isFinite(i) && r(Math.max(t, typeof n == \"number\" ? Math.min(n, i) : i));\n}\n//#endregion\n//#region src/storefront/CartSidebar.tsx\nfunction Co({ trigger: e, side: t = \"right\", open: n, onOpenChange: r, onCheckout: i, className: a, surface: o = \"mini-cart\" }) {\n\tlet { t: s } = B(), c = Kt(), l = U(), u = x.useRef(!1);\n\treturn x.useEffect(() => {\n\t\tn && !u.current && l(\"cedros-shop:cart-opened\", {\n\t\t\tcart_item_count_bucket: br(c.count),\n\t\t\tsurface: o\n\t\t}), u.current = !!n;\n\t}, [\n\t\tn,\n\t\tl,\n\t\tc.count,\n\t\to\n\t]), /* @__PURE__ */ E(ma, {\n\t\tmodal: !1,\n\t\topen: n,\n\t\tonOpenChange: r,\n\t\tchildren: [e ? /* @__PURE__ */ T(ha, {\n\t\t\tasChild: !0,\n\t\t\tchildren: e\n\t\t}) : null, /* @__PURE__ */ E(ya, {\n\t\t\tside: t,\n\t\t\toverlayClassName: \"cedros-shop-public__overlay--ghost\",\n\t\t\tclassName: G(t === \"bottom\" ? \"h-[85vh] rounded-t-2xl\" : void 0, t === \"popup\" ? \"h-[min(640px,calc(100vh-2rem))]\" : \"p-4\", \"flex flex-col overflow-hidden\", a),\n\t\t\tchildren: [/* @__PURE__ */ T(ba, {\n\t\t\t\tclassName: \"space-y-0\",\n\t\t\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"flex items-center justify-between gap-3\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(xa, { children: s(\"common.cart\") }), /* @__PURE__ */ T(ga, {\n\t\t\t\t\t\tasChild: !0,\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\tsize: \"icon\",\n\t\t\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\t\t\tclassName: \"h-9 w-9 rounded-full text-lg leading-none\",\n\t\t\t\t\t\t\t\"aria-label\": s(\"storefront.a11y.closeCart\"),\n\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\t\"aria-hidden\": \"true\",\n\t\t\t\t\t\t\t\tchildren: \"×\"\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t})]\n\t\t\t\t})\n\t\t\t}), /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"mt-3 min-h-0 flex-1 overflow-hidden\",\n\t\t\t\tchildren: /* @__PURE__ */ T(Ba, {\n\t\t\t\t\tonCheckout: () => {\n\t\t\t\t\t\ti(), r?.(!1);\n\t\t\t\t\t},\n\t\t\t\t\tclassName: \"h-full border-0 p-0 shadow-none\"\n\t\t\t\t})\n\t\t\t})]\n\t\t})]\n\t});\n}\n//#endregion\n//#region src/storefront/viewTransition.ts\nfunction wo(e) {\n\tlet t = typeof document > \"u\" ? null : document, n = typeof window < \"u\" && typeof window.matchMedia == \"function\" && window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n\tif (!t || typeof t.startViewTransition != \"function\" || n) {\n\t\te();\n\t\treturn;\n\t}\n\tt.startViewTransition(async () => {\n\t\te(), await To();\n\t});\n}\nfunction To() {\n\treturn new Promise((e) => {\n\t\tif (typeof window.requestAnimationFrame == \"function\") {\n\t\t\twindow.requestAnimationFrame(() => e());\n\t\t\treturn;\n\t\t}\n\t\twindow.setTimeout(e, 0);\n\t});\n}\n//#endregion\n//#region src/storefront/templateShared.tsx\nfunction Eo() {\n\treturn /* @__PURE__ */ E(\"svg\", {\n\t\twidth: \"15\",\n\t\theight: \"15\",\n\t\tviewBox: \"0 0 24 24\",\n\t\tfill: \"none\",\n\t\tstroke: \"currentColor\",\n\t\tstrokeWidth: \"2\",\n\t\tstrokeLinecap: \"round\",\n\t\tstrokeLinejoin: \"round\",\n\t\t\"aria-hidden\": \"true\",\n\t\tchildren: [/* @__PURE__ */ T(\"path\", { d: \"M6 7h12l-1.5 13.5a1.8 1.8 0 0 1-1.8 1.5H9.3a1.8 1.8 0 0 1-1.8-1.5L6 7Z\" }), /* @__PURE__ */ T(\"path\", { d: \"M9 10V6a3 3 0 0 1 6 0v4\" })]\n\t});\n}\nfunction Do() {\n\treturn /* @__PURE__ */ E(\"svg\", {\n\t\twidth: \"15\",\n\t\theight: \"15\",\n\t\tviewBox: \"0 0 24 24\",\n\t\tfill: \"none\",\n\t\tstroke: \"currentColor\",\n\t\tstrokeWidth: \"2\",\n\t\tstrokeLinecap: \"round\",\n\t\tstrokeLinejoin: \"round\",\n\t\t\"aria-hidden\": \"true\",\n\t\tchildren: [/* @__PURE__ */ T(\"path\", { d: \"M19 12H5\" }), /* @__PURE__ */ T(\"path\", { d: \"m12 19-7-7 7-7\" })]\n\t});\n}\nfunction Oo({ className: e }) {\n\tlet { config: t } = z(), n = B(), r = t.customer?.isSignedIn ?? !1, i = r ? n.route(\"account\", void 0, t.routes) : p(t.signInUrl);\n\treturn /* @__PURE__ */ T(Y, {\n\t\tasChild: !0,\n\t\ttype: \"button\",\n\t\tvariant: \"ghost\",\n\t\tclassName: G(\"cedros-shop-public__account-link shrink-0\", e),\n\t\tchildren: /* @__PURE__ */ T(\"a\", {\n\t\t\thref: i,\n\t\t\tchildren: n.t(r ? \"storefront.shop.account\" : \"storefront.shop.signIn\")\n\t\t})\n\t});\n}\nfunction ko({ exitHref: e = \"/\", search: t, setSearch: n, searchComposition: r, cartCount: i, checkoutHref: a, isDesktop: o, isNavOpen: s, setIsNavOpen: c, isCartOpen: l, setIsCartOpen: u, sidebarTitle: d, mobileSidebar: f }) {\n\tlet { t: p } = B();\n\treturn /* @__PURE__ */ T(\"header\", {\n\t\tclassName: \"cedros-shop-public__header sticky top-0 z-40 border-b backdrop-blur\",\n\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"cedros-shop-public__header-inner mx-auto flex max-w-7xl items-center gap-3 px-4 py-3\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\tasChild: !0,\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\tclassName: \"cedros-shop-public__exit shrink-0\",\n\t\t\t\t\tchildren: /* @__PURE__ */ E(\"a\", {\n\t\t\t\t\t\thref: e,\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(Do, {}), p(\"storefront.shop.exitShop\")]\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"flex-1\",\n\t\t\t\t\tchildren: /* @__PURE__ */ T(qa, {\n\t\t\t\t\t\tvalue: t,\n\t\t\t\t\t\tonChange: n,\n\t\t\t\t\t\tonCompositionStart: r?.compositionStart,\n\t\t\t\t\t\tonCompositionEnd: r?.compositionEnd\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__header-actions flex items-center gap-2 lg:hidden\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ E(ma, {\n\t\t\t\t\t\topen: s,\n\t\t\t\t\t\tonOpenChange: c,\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(ha, {\n\t\t\t\t\t\t\tasChild: !0,\n\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\t\t\tchildren: p(\"common.filters\")\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}), /* @__PURE__ */ E(ya, {\n\t\t\t\t\t\t\tside: \"left\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(ba, {\n\t\t\t\t\t\t\t\tclassName: \"space-y-0\",\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\t\tclassName: \"flex items-center justify-between gap-3\",\n\t\t\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(xa, { children: d }), /* @__PURE__ */ T(ga, {\n\t\t\t\t\t\t\t\t\t\tasChild: !0,\n\t\t\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\t\t\t\t\tsize: \"icon\",\n\t\t\t\t\t\t\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\t\t\t\t\t\t\tclassName: \"h-9 w-9 rounded-full text-lg leading-none\",\n\t\t\t\t\t\t\t\t\t\t\t\"aria-label\": p(\"common.close\"),\n\t\t\t\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\t\t\t\t\t\"aria-hidden\": \"true\",\n\t\t\t\t\t\t\t\t\t\t\t\tchildren: \"×\"\n\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t})]\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}), /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"mt-4\",\n\t\t\t\t\t\t\t\tchildren: f\n\t\t\t\t\t\t\t})]\n\t\t\t\t\t\t})]\n\t\t\t\t\t}), /* @__PURE__ */ T(Co, {\n\t\t\t\t\t\topen: !o && l,\n\t\t\t\t\t\tonOpenChange: u,\n\t\t\t\t\t\tside: \"bottom\",\n\t\t\t\t\t\tsurface: \"header\",\n\t\t\t\t\t\tonCheckout: () => window.location.assign(a),\n\t\t\t\t\t\ttrigger: /* @__PURE__ */ E(Y, {\n\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\tvariant: \"default\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(Eo, {}), p(\"storefront.cart.triggerCount\", { count: i })]\n\t\t\t\t\t\t})\n\t\t\t\t\t})]\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__header-actions hidden items-center gap-2 lg:flex\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(Oo, {}), /* @__PURE__ */ T(Co, {\n\t\t\t\t\t\topen: o && l,\n\t\t\t\t\t\tonOpenChange: u,\n\t\t\t\t\t\tside: \"popup\",\n\t\t\t\t\t\tsurface: \"header\",\n\t\t\t\t\t\tonCheckout: () => window.location.assign(a),\n\t\t\t\t\t\ttrigger: /* @__PURE__ */ E(Y, {\n\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(Eo, {}), p(\"storefront.cart.triggerCount\", { count: i })]\n\t\t\t\t\t\t})\n\t\t\t\t\t})]\n\t\t\t\t})\n\t\t\t]\n\t\t})\n\t});\n}\nfunction Ao({ exitHref: e = \"/\", checkoutHref: t }) {\n\tlet { t: n } = B(), r = qt(), i = Io(), [a, o] = x.useState(!1);\n\treturn /* @__PURE__ */ T(\"header\", {\n\t\tclassName: \"cedros-shop-public__header sticky top-0 z-40 border-b backdrop-blur\",\n\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"cedros-shop-public__header-inner mx-auto flex max-w-7xl items-center gap-3 px-4 py-3\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\tasChild: !0,\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\tclassName: \"cedros-shop-public__exit shrink-0\",\n\t\t\t\t\tchildren: /* @__PURE__ */ E(\"a\", {\n\t\t\t\t\t\thref: e,\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(Do, {}), n(\"storefront.shop.exitShop\")]\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(\"div\", { className: \"flex-1\" }),\n\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__header-actions flex items-center gap-2\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(Oo, {}), t && r ? /* @__PURE__ */ T(Co, {\n\t\t\t\t\t\topen: a,\n\t\t\t\t\t\tonOpenChange: o,\n\t\t\t\t\t\tside: i ? \"popup\" : \"bottom\",\n\t\t\t\t\t\tsurface: \"header\",\n\t\t\t\t\t\tonCheckout: () => window.location.assign(t),\n\t\t\t\t\t\ttrigger: /* @__PURE__ */ E(Y, {\n\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(Eo, {}), n(\"storefront.cart.triggerCount\", { count: r.count })]\n\t\t\t\t\t\t})\n\t\t\t\t\t}) : null]\n\t\t\t\t})\n\t\t\t]\n\t\t})\n\t});\n}\nfunction jo({ categories: e, activeCategory: t, onSelectCategory: n, categoryHref: r, catsLoading: i, catsError: a, catsRetry: o, facets: s, filters: c, setFilters: l, setPage: u, sort: d, setSort: f, sortOptions: p, enabledFilters: m, title: h }) {\n\tlet { t: g } = B(), _ = (e) => {\n\t\two(() => {\n\t\t\tl(e), u(1);\n\t\t});\n\t};\n\treturn /* @__PURE__ */ E(K, {\n\t\tclassName: \"flex max-h-[calc(100vh-6rem)] flex-col rounded-2xl\",\n\t\tchildren: [/* @__PURE__ */ T(ki, {\n\t\t\tclassName: \"pb-4\",\n\t\t\tchildren: /* @__PURE__ */ T(ji, {\n\t\t\t\tclassName: \"text-base\",\n\t\t\t\tchildren: h\n\t\t\t})\n\t\t}), /* @__PURE__ */ E(Ai, {\n\t\t\tclassName: \"flex-1 space-y-6 overflow-y-auto pr-2\",\n\t\t\tchildren: [\n\t\t\t\ti || a || e.length > 0 ? /* @__PURE__ */ E(\"div\", { children: [\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__eyebrow\",\n\t\t\t\t\t\tchildren: g(\"storefront.shop.categories\")\n\t\t\t\t\t}),\n\t\t\t\t\ta ? /* @__PURE__ */ T(lo, {\n\t\t\t\t\t\tclassName: \"mt-3\",\n\t\t\t\t\t\ttitle: g(\"storefront.error.title\"),\n\t\t\t\t\t\tdescription: g(\"storefront.error.load\"),\n\t\t\t\t\t\tonRetry: o\n\t\t\t\t\t}) : null,\n\t\t\t\t\ti ? /* @__PURE__ */ T(Fo, {}) : /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"mt-3\",\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(Ka, {\n\t\t\t\t\t\t\tcategories: e,\n\t\t\t\t\t\t\tactiveSlug: t,\n\t\t\t\t\t\t\tgetHref: r,\n\t\t\t\t\t\t\tonSelect: n\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t] }) : null,\n\t\t\t\tp.length > 1 ? /* @__PURE__ */ T(Mo, {\n\t\t\t\t\tsort: d,\n\t\t\t\t\tsetSort: (e) => wo(() => {\n\t\t\t\t\t\tf(e), u(1);\n\t\t\t\t\t}),\n\t\t\t\t\toptions: p\n\t\t\t\t}) : null,\n\t\t\t\t/* @__PURE__ */ T(Ja, {\n\t\t\t\t\tfacets: s,\n\t\t\t\t\tvalue: c,\n\t\t\t\t\tonChange: _,\n\t\t\t\t\tonClear: () => _({}),\n\t\t\t\t\tenabledFilters: m\n\t\t\t\t})\n\t\t\t]\n\t\t})]\n\t});\n}\nfunction Mo({ sort: e, setSort: t, options: n }) {\n\tlet { t: r } = B();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"space-y-2\",\n\t\tchildren: [/* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"cedros-shop-public__eyebrow\",\n\t\t\tchildren: r(\"common.sort\")\n\t\t}), /* @__PURE__ */ E(ca, {\n\t\t\tvalue: e,\n\t\t\tonValueChange: t,\n\t\t\tchildren: [/* @__PURE__ */ T(da, {\n\t\t\t\t\"aria-label\": r(\"common.sort\"),\n\t\t\t\tchildren: /* @__PURE__ */ T(ua, { placeholder: r(\"common.sort\") })\n\t\t\t}), /* @__PURE__ */ T(fa, { children: n.map((e) => /* @__PURE__ */ T(pa, {\n\t\t\t\tvalue: e.value,\n\t\t\t\tchildren: e.label\n\t\t\t}, e.value)) })]\n\t\t})]\n\t});\n}\nfunction No({ isLoading: e, products: t, columns: n, productHref: r, onAddToCart: i, onQuickView: a, layout: o, imageCrop: s, page: c, setPage: l, pageHref: u, hasNextPage: d, hasActiveQuery: f, onClearQuery: p }) {\n\tlet { t: m } = B();\n\treturn e ? /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__product-grid mt-6 grid grid-cols-2 gap-4 md:grid-cols-3 lg:grid-cols-4\",\n\t\tchildren: Array.from({ length: 8 }).map((e, t) => /* @__PURE__ */ T(Z, { className: \"aspect-[4/5] rounded-2xl\" }, t))\n\t}) : t.length === 0 && c <= 1 ? /* @__PURE__ */ T(J, {\n\t\tclassName: \"mt-6\",\n\t\ttitle: m(\"storefront.catalog.emptyTitle\"),\n\t\tdescription: m(f ? \"storefront.catalog.emptyFilteredDescription\" : \"storefront.catalog.emptyDescription\"),\n\t\tactionLabel: f && p ? m(\"storefront.catalog.clearSearchAndFilters\") : void 0,\n\t\tonAction: f && p ? p : void 0\n\t}) : /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"mt-6\",\n\t\tchildren: [t.length === 0 ? /* @__PURE__ */ T(J, {\n\t\t\ttitle: m(\"storefront.catalog.emptyTitle\"),\n\t\t\tdescription: m(\"storefront.catalog.emptyFilteredDescription\")\n\t\t}) : /* @__PURE__ */ T(bo, {\n\t\t\tproducts: t,\n\t\t\tcolumns: n,\n\t\t\tgetProductHref: (e) => r(e.slug),\n\t\t\tonAddToCart: (e) => i(e),\n\t\t\tonQuickView: a,\n\t\t\tlayout: o,\n\t\t\timageCrop: s\n\t\t}), /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"mt-8 flex items-center justify-between\",\n\t\t\tchildren: [\n\t\t\t\tc <= 1 ? /* @__PURE__ */ T(Y, {\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\tdisabled: !0,\n\t\t\t\t\tchildren: m(\"common.previous\")\n\t\t\t\t}) : /* @__PURE__ */ T(Y, {\n\t\t\t\t\tasChild: !0,\n\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\tchildren: /* @__PURE__ */ T(\"a\", {\n\t\t\t\t\t\thref: u(c - 1),\n\t\t\t\t\t\tonClick: () => l(c - 1),\n\t\t\t\t\t\tchildren: m(\"common.previous\")\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"text-xs\",\n\t\t\t\t\tchildren: m(\"common.page\", { page: c })\n\t\t\t\t}),\n\t\t\t\td ? /* @__PURE__ */ T(Y, {\n\t\t\t\t\tasChild: !0,\n\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\tchildren: /* @__PURE__ */ T(\"a\", {\n\t\t\t\t\t\thref: u(c + 1),\n\t\t\t\t\t\tonClick: () => l(c + 1),\n\t\t\t\t\t\tchildren: m(\"common.next\")\n\t\t\t\t\t})\n\t\t\t\t}) : /* @__PURE__ */ T(Y, {\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\tdisabled: !0,\n\t\t\t\t\tchildren: m(\"common.next\")\n\t\t\t\t})\n\t\t\t]\n\t\t})]\n\t});\n}\nfunction Po({ className: e }) {\n\tlet { t } = B();\n\treturn /* @__PURE__ */ T(\"main\", {\n\t\tclassName: G(\"mx-auto max-w-6xl px-4 py-10\", e),\n\t\tchildren: /* @__PURE__ */ T(J, {\n\t\t\ttitle: t(\"storefront.shop.unavailableTitle\"),\n\t\t\tdescription: t(\"storefront.shop.unavailableDescription\")\n\t\t})\n\t});\n}\nfunction Fo() {\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"mt-3 space-y-2\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(Z, { className: \"h-9\" }),\n\t\t\t/* @__PURE__ */ T(Z, { className: \"h-9\" }),\n\t\t\t/* @__PURE__ */ T(Z, { className: \"h-9\" })\n\t\t]\n\t});\n}\nfunction Io() {\n\tlet [e, t] = x.useState(() => typeof window < \"u\" && (window.matchMedia?.(\"(min-width: 1024px)\")?.matches ?? !1));\n\treturn x.useEffect(() => {\n\t\tif (typeof window > \"u\") return;\n\t\tlet e = window.matchMedia?.(\"(min-width: 1024px)\");\n\t\tif (!e) return;\n\t\tlet n = () => t(e.matches);\n\t\treturn n(), e.addEventListener?.(\"change\", n), () => e.removeEventListener?.(\"change\", n);\n\t}, []), e;\n}\nfunction Lo(e) {\n\tlet { t } = B();\n\treturn x.useMemo(() => {\n\t\tlet n = [];\n\t\treturn e.featured && n.push({\n\t\t\tvalue: \"featured\",\n\t\t\tlabel: t(\"storefront.sort.featured\")\n\t\t}), e.priceAsc && n.push({\n\t\t\tvalue: \"price_asc\",\n\t\t\tlabel: t(\"storefront.sort.priceAsc\")\n\t\t}), e.priceDesc && n.push({\n\t\t\tvalue: \"price_desc\",\n\t\t\tlabel: t(\"storefront.sort.priceDesc\")\n\t\t}), n.length === 0 && n.push({\n\t\t\tvalue: \"featured\",\n\t\t\tlabel: t(\"storefront.sort.featured\")\n\t\t}), n;\n\t}, [\n\t\te.featured,\n\t\te.priceAsc,\n\t\te.priceDesc,\n\t\tt\n\t]);\n}\nfunction Ro(e, t, n) {\n\tx.useEffect(() => {\n\t\tt.some((t) => t.value === e) || n(t[0]?.value ?? \"featured\");\n\t}, [\n\t\tt,\n\t\tn,\n\t\te\n\t]);\n}\nfunction zo(e) {\n\tlet t = /* @__PURE__ */ new Set(), n = Infinity, r = 0;\n\tfor (let i of e) {\n\t\tfor (let e of i.tags ?? []) t.add(e);\n\t\tn = Math.min(n, i.price), r = Math.max(r, i.price);\n\t}\n\treturn {\n\t\ttags: Array.from(t).slice(0, 12),\n\t\tprice: Number.isFinite(n) ? {\n\t\t\tmin: n,\n\t\t\tmax: r\n\t\t} : void 0\n\t};\n}\nfunction Bo(e, t, n) {\n\treturn {\n\t\tproductId: e.id,\n\t\tvariantId: t?.id,\n\t\tunitPrice: t?.price ?? e.price,\n\t\tcurrency: e.currency,\n\t\ttitleSnapshot: t ? n.t(\"storefront.product.titleWithVariant\", {\n\t\t\tproductTitle: e.title,\n\t\t\tvariantTitle: t.title\n\t\t}) : e.title,\n\t\timageSnapshot: t?.images?.[0]?.url ?? e.images[0]?.url,\n\t\tpaymentResource: e.id,\n\t\tmetadata: Si(e)\n\t};\n}\nfunction Vo(e, t) {\n\tlet n = e[0]?.currency;\n\treturn n && n !== t ? { previousCurrency: n } : null;\n}\nfunction Ho(e, t, n) {\n\treturn t ? {\n\t\ttitle: n.t(\"storefront.toast.cartCurrencyReset\"),\n\t\tdescription: n.t(\"storefront.toast.cartCurrencyResetDescription\", {\n\t\t\tproductTitle: e.title,\n\t\t\tcurrency: e.currency,\n\t\t\tpreviousCurrency: t.previousCurrency\n\t\t})\n\t} : {\n\t\ttitle: n.t(\"storefront.toast.addedToCart\"),\n\t\tdescription: e.title\n\t};\n}\nfunction Uo(e, t) {\n\tif (!(!e && !t)) return {\n\t\t...e,\n\t\tshop: t?.shop ?? e?.shop,\n\t\tcart: t?.cart ?? e?.cart,\n\t\tcheckout: t?.checkout ?? e?.checkout,\n\t\torders: t?.orders ?? e?.orders,\n\t\tsubscribe: t?.subscribe ?? e?.subscribe,\n\t\tcategory: t?.category ? ({ slug: e }) => t.category(e ?? \"\") : e?.category,\n\t\tproduct: t?.product ? ({ slug: e }) => t.product(e ?? \"\") : e?.product\n\t};\n}\nfunction Wo(e, t, n) {\n\ttypeof window > \"u\" || (t ? window.location.assign(e) : n(!0));\n}\n//#endregion\n//#region src/storefront/QuickViewDialog.tsx\nfunction Go({ product: e, open: t, onOpenChange: n, productHref: r, onAddToCart: i, className: a }) {\n\tlet { t: o } = B(), s = V(), [c, l] = x.useState(1), [u, d] = x.useState({\n\t\tselectedOptions: {},\n\t\tvariant: null\n\t}), [f, p] = x.useState(null);\n\tif (!e) return f !== null && p(null), null;\n\tif (e.id !== f) {\n\t\tlet t = e.variants?.[0];\n\t\tp(e.id), l(1), d(t ? {\n\t\t\tselectedOptions: { ...t.options },\n\t\t\tvariant: t\n\t\t} : {\n\t\t\tselectedOptions: {},\n\t\t\tvariant: null\n\t\t});\n\t}\n\tlet m = u.variant?.price ?? e.price, h = u.variant?.compareAtPrice ?? e.compareAtPrice, g = u.variant?.inventoryStatus === \"out_of_stock\" || typeof u.variant?.inventoryQuantity == \"number\" && u.variant.inventoryQuantity <= 0, _ = e.inventoryStatus === \"out_of_stock\" || typeof e.inventoryQuantity == \"number\" && e.inventoryQuantity <= 0, v = s.inventory && (u.variant ? g : _);\n\treturn /* @__PURE__ */ T(Ji, {\n\t\topen: t,\n\t\tonOpenChange: n,\n\t\tchildren: /* @__PURE__ */ E(Xi, {\n\t\t\tclassName: G(\"max-w-3xl\", a),\n\t\t\tchildren: [/* @__PURE__ */ T(Zi, { children: /* @__PURE__ */ E(Qi, {\n\t\t\t\tclassName: \"flex items-center justify-between gap-3 pr-12\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\tclassName: \"truncate\",\n\t\t\t\t\tchildren: e.title\n\t\t\t\t}), r ? /* @__PURE__ */ T(\"a\", {\n\t\t\t\t\thref: r(e.slug),\n\t\t\t\t\tclassName: \"text-sm font-normal hover:underline\",\n\t\t\t\t\tchildren: o(\"storefront.product.viewDetails\")\n\t\t\t\t}) : null]\n\t\t\t}) }), /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"grid gap-8 md:grid-cols-2\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(Qa, {\n\t\t\t\t\timages: e.images,\n\t\t\t\t\tfallbackAlt: e.title\n\t\t\t\t}), /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"space-y-5\",\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(q, {\n\t\t\t\t\t\t\tswapKey: `${m}:${h ?? \"\"}:${e.currency}`,\n\t\t\t\t\t\t\tclassName: \"inline-block\",\n\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(Za, {\n\t\t\t\t\t\t\t\tamount: m,\n\t\t\t\t\t\t\t\tcurrency: e.currency,\n\t\t\t\t\t\t\t\tcompareAt: h\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}), /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\t\tclassName: \"mt-3 text-sm\",\n\t\t\t\t\t\t\tchildren: e.description\n\t\t\t\t\t\t})] }),\n\t\t\t\t\t\t/* @__PURE__ */ T(oo, {\n\t\t\t\t\t\t\tproduct: e,\n\t\t\t\t\t\t\tvalue: {\n\t\t\t\t\t\t\t\tselectedOptions: u.selectedOptions,\n\t\t\t\t\t\t\t\tvariantId: u.variant?.id\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tonChange: (e) => d(e),\n\t\t\t\t\t\t\tshowInventory: s.inventory\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\tclassName: \"flex flex-wrap items-center gap-3\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(co, {\n\t\t\t\t\t\t\t\tqty: c,\n\t\t\t\t\t\t\t\tonChange: l\n\t\t\t\t\t\t\t}), /* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\t\tclassName: \"flex-1\",\n\t\t\t\t\t\t\t\tdisabled: v,\n\t\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t\ti(e, u.variant, c), n(!1);\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tchildren: o(v ? \"storefront.stock.out\" : \"storefront.product.addToCart\")\n\t\t\t\t\t\t\t})]\n\t\t\t\t\t\t}),\n\t\t\t\t\t\ts.inventory ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\tclassName: \"text-xs\",\n\t\t\t\t\t\t\tchildren: o(v ? \"storefront.stock.out\" : \"storefront.stock.in\")\n\t\t\t\t\t\t}) : null\n\t\t\t\t\t]\n\t\t\t\t})]\n\t\t\t})]\n\t\t})\n\t});\n}\n//#endregion\n//#region src/runtime/useCatalogSearch.ts\nfunction Ko(e = \"\", t = 1) {\n\tlet [n, r] = x.useState(e), [i, a] = x.useState({\n\t\tquery: e.trim(),\n\t\tpage: t\n\t}), o = x.useRef(e), s = x.useRef(!1), c = x.useRef(null), l = x.useCallback(() => {\n\t\tc.current !== null && clearTimeout(c.current), c.current = null;\n\t}, []);\n\tx.useEffect(() => l, [l]);\n\tlet u = x.useCallback((e, t = 1) => {\n\t\tl(), s.current = !1, o.current = e, r(e), a({\n\t\t\tquery: e.trim(),\n\t\t\tpage: t\n\t\t});\n\t}, [l]), d = x.useCallback((e) => {\n\t\tif (l(), o.current = e, r(e), !s.current) {\n\t\t\tif (!e.trim()) {\n\t\t\t\tu(e);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tc.current = setTimeout(() => u(o.current), 250);\n\t\t}\n\t}, [l, u]), f = x.useCallback((e) => {\n\t\tl();\n\t\tlet t = o.current.trim();\n\t\ta((n) => ({\n\t\t\tquery: t,\n\t\t\tpage: t === n.query ? typeof e == \"function\" ? e(n.page) : e : 1\n\t\t}));\n\t}, [l]), p = x.useCallback(() => {\n\t\ts.current = !0, l();\n\t}, [l]), m = x.useCallback((e) => {\n\t\ts.current = !1, d(e);\n\t}, [d]);\n\treturn {\n\t\tvalue: n,\n\t\tquery: i.query,\n\t\tpage: i.page,\n\t\tsetValue: d,\n\t\tsetPage: f,\n\t\tcommit: u,\n\t\tisPending: n.trim() !== i.query,\n\t\tcompositionStart: p,\n\t\tcompositionEnd: m\n\t};\n}\n//#endregion\n//#region src/storefront/catalogAnalytics.ts\nfunction qo(e) {\n\tlet t = [];\n\treturn e.tags?.length && t.push(\"tags\"), (typeof e.priceMin == \"number\" || typeof e.priceMax == \"number\") && t.push(\"price\"), typeof e.inStock == \"boolean\" && t.push(\"stock\"), t;\n}\nfunction Jo({ surface: e, collectionRef: t, collectionType: n }) {\n\tlet r = U(), i = x.useRef(null);\n\tx.useEffect(() => {\n\t\ti.current !== t && (i.current = t, r(\"cedros-shop:collection-viewed\", {\n\t\t\tcollection_ref: t,\n\t\t\tcollection_type: n,\n\t\t\tsurface: e\n\t\t}));\n\t}, [\n\t\tr,\n\t\te,\n\t\tt,\n\t\tn\n\t]);\n}\nfunction Yo(e, t) {\n\treturn e <= 0 ? \"0\" : t ? \"25+\" : e <= 5 ? \"1-5\" : e <= 24 ? \"6-24\" : \"25+\";\n}\nfunction Xo({ surface: e, search: t, sort: n, filterFacets: r, resultCount: i, hasMore: a, isLoading: o }) {\n\tlet s = U(), c = x.useRef(null), l = t.trim(), u = `${l}|${n}|${r}`;\n\tx.useEffect(() => {\n\t\tif (c.current === null) {\n\t\t\to || (c.current = u);\n\t\t\treturn;\n\t\t}\n\t\tif (c.current === u || o || typeof window > \"u\") return;\n\t\tlet t = window.setTimeout(() => {\n\t\t\tc.current = u, !(!l && n === \"featured\" && !r) && s(\"cedros-shop:catalog-searched\", {\n\t\t\t\thas_query: l ? \"true\" : \"false\",\n\t\t\t\tsort_ref: n,\n\t\t\t\tfilter_facets: r || void 0,\n\t\t\t\tresult_count_bucket: Yo(i, a),\n\t\t\t\tsurface: e\n\t\t\t});\n\t\t}, 300);\n\t\treturn () => window.clearTimeout(t);\n\t}, [\n\t\ts,\n\t\te,\n\t\tu,\n\t\tl,\n\t\tn,\n\t\tr,\n\t\ti,\n\t\ta,\n\t\to\n\t]);\n}\n//#endregion\n//#region src/storefront/MerchandisingCollections.tsx\nfunction Zo({ collections: e, onSelect: t, className: n }) {\n\tlet r = e.filter(Qo).slice(0, 8);\n\treturn r.length === 0 ? null : /* @__PURE__ */ T(\"div\", {\n\t\tclassName: G(\"cedros-shop-public__featured-collections flex flex-wrap gap-2\", n),\n\t\tchildren: r.map((e) => /* @__PURE__ */ T(\"button\", {\n\t\t\ttype: \"button\",\n\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--secondary h-9 px-3 text-sm\",\n\t\t\tonClick: () => t(es(e)),\n\t\t\tchildren: e.title\n\t\t}, e.id))\n\t});\n}\nfunction Qo(e) {\n\treturn e.visible && e.featured && e.rules.some($o);\n}\nfunction $o(e) {\n\treturn e.type !== \"manual\" && !!e.value.trim();\n}\nfunction es(e) {\n\tlet t = e.rules.filter($o), n = t.find((e) => e.type === \"category\")?.value.trim(), r = t.find((e) => e.type === \"search\")?.value.trim() ?? \"\";\n\treturn {\n\t\tcategory: n,\n\t\ttags: t.filter((e) => e.type === \"tag\").map((e) => e.value.trim()),\n\t\tsearch: r,\n\t\tsort: ts(e.sort)\n\t};\n}\nfunction ts(e) {\n\treturn e === \"priceAsc\" ? \"price_asc\" : e === \"priceDesc\" ? \"price_desc\" : \"featured\";\n}\n//#endregion\n//#region src/storefront/MerchandisingBundles.tsx\nfunction ns({ bundles: e, productsById: t, productHref: n, onAddToCart: r, layout: i, imageCrop: a, className: o }) {\n\tlet s = B(), c = x.useMemo(() => rs(e, t), [e, t]);\n\treturn c.length === 0 ? null : /* @__PURE__ */ T(\"section\", {\n\t\tclassName: G(\"cedros-shop-public__bundles flex flex-col gap-8\", o),\n\t\t\"aria-label\": s.t(\"storefront.shop.bundlesLabel\"),\n\t\tchildren: c.map(({ bundle: e, products: t }) => {\n\t\t\tlet o = Math.min(4, t.length);\n\t\t\treturn /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__bundle flex flex-col gap-3\",\n\t\t\t\tchildren: [/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__surface-heading\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"h2\", {\n\t\t\t\t\t\tclassName: \"text-xl font-semibold tracking-tight\",\n\t\t\t\t\t\tchildren: e.title\n\t\t\t\t\t}), e.description ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__muted mt-1 text-sm\",\n\t\t\t\t\t\tchildren: e.description\n\t\t\t\t\t}) : null]\n\t\t\t\t}), /* @__PURE__ */ T(bo, {\n\t\t\t\t\tproducts: t,\n\t\t\t\t\tcolumns: {\n\t\t\t\t\t\tbase: 2,\n\t\t\t\t\t\tmd: o,\n\t\t\t\t\t\tlg: o\n\t\t\t\t\t},\n\t\t\t\t\tgetProductHref: (e) => n(e.slug),\n\t\t\t\t\tonAddToCart: (e) => r(e),\n\t\t\t\t\tlayout: i,\n\t\t\t\t\timageCrop: a\n\t\t\t\t})]\n\t\t\t}, e.id);\n\t\t})\n\t});\n}\nfunction rs(e, t) {\n\treturn e.filter((e) => e.visible).map((e) => ({\n\t\tbundle: e,\n\t\tproducts: e.productIds.map((e) => t.get(e)).filter((e) => !!e)\n\t})).filter((e) => e.products.length > 0).sort((e, t) => Number(t.bundle.featured) - Number(e.bundle.featured));\n}\n//#endregion\n//#region src/storefront/CartTemplate.tsx\nfunction is({ className: e, checkoutHref: t }) {\n\tlet { config: n } = z(), r = B();\n\tgn();\n\tlet i = V(), a = t ?? r.route(\"checkout\", void 0, n.routes), o = i.coupons && n.checkout.allowPromoCodes;\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tdir: r.direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--cart min-h-screen\", e),\n\t\tchildren: [/* @__PURE__ */ T(Ao, { exitHref: \"/\" }), /* @__PURE__ */ E(\"main\", {\n\t\t\tclassName: \"mx-auto max-w-6xl px-4 py-10\",\n\t\t\tchildren: [/* @__PURE__ */ T(\"h1\", {\n\t\t\t\tclassName: \"cs-anim-drop text-3xl font-semibold tracking-tight\",\n\t\t\t\tchildren: r.t(\"storefront.cart.title\")\n\t\t\t}), /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"mt-8\",\n\t\t\t\tchildren: /* @__PURE__ */ T(Va, {\n\t\t\t\t\tonCheckout: () => window.location.assign(a),\n\t\t\t\t\tshowPromoCode: o\n\t\t\t\t})\n\t\t\t})]\n\t\t})]\n\t});\n}\n//#endregion\n//#region src/storefront/templates.tsx\nfunction as() {\n\treturn typeof window > \"u\" ? {} : {\n\t\thost: window.location.host,\n\t\tpath: window.location.pathname\n\t};\n}\nfunction os(e) {\n\tlet { inStock: t, ...n } = e;\n\treturn n;\n}\nfunction ss(e) {\n\treturn /* @__PURE__ */ T(cs, { ...e });\n}\nfunction cs({ className: e, routes: t, initialCategorySlug: n }) {\n\tlet { config: r } = z(), i = B(), a = Uo(r.routes, t), o = Kt(), s = U(), l = Ti(), u = Io(), d = x.useMemo(() => Or({ includeCategory: !0 }), []), f = Ko(d?.search ?? \"\", d?.page ?? 1), { value: p, query: h, setValue: g, commit: _, page: y, setPage: b } = f, [S, C] = x.useState(n ?? d?.category), [w, D] = x.useState(d?.sort ?? \"featured\"), [O, k] = x.useState(d?.filters ?? {}), [A, ee] = x.useState(!1), [te, ne] = x.useState(!1), [re, ie] = x.useState(null), [ae, j] = x.useState(!1), oe = V(), M = x.useMemo(() => oe.inventory ? O : os(O), [O, oe.inventory]), { settings: N, isLoading: se, error: ce, refetch: le } = gn(), P = x.useMemo(() => c(N.markets, m(r.market, i.locale, as())), [\n\t\tr.market,\n\t\ti.locale,\n\t\tN.markets\n\t]), { categories: ue, isLoading: de, error: fe, refetch: F } = cr(P, !se && !ce), { data: pe, isLoading: me, error: he, refetch: ge } = ur({\n\t\tcategory: S,\n\t\tsearch: h || void 0,\n\t\tfilters: M,\n\t\tsort: w,\n\t\tpage: y,\n\t\tpageSize: 24\n\t}, P, !se && !ce), _e = se || me || f.isPending, ve = ce ?? he, ye = ce ? le : ge, be = pe?.items ?? [], xe = x.useMemo(() => zo(be), [be]), { data: Se } = pr(x.useMemo(() => Array.from(new Set(N.merchandising.bundles.filter((e) => e.visible).flatMap((e) => e.productIds))), [N.merchandising.bundles]), P), Ce = x.useMemo(() => {\n\t\tlet e = v(Se ? [...Se.values()] : [], P);\n\t\treturn new Map(e.map((e) => [e.id, e]));\n\t}, [Se, P]), we = qo(M), Te = !!(p.trim() || S || we.length > 0), Ee = () => {\n\t\two(() => {\n\t\t\t_(\"\"), C(void 0), k({}), b(1);\n\t\t});\n\t}, De = Lo(N.catalog.sort);\n\tRo(w, De, D), kr({\n\t\tsearch: h,\n\t\tsort: w,\n\t\tpage: y,\n\t\tcategory: S,\n\t\tfilters: O\n\t}, {\n\t\tincludeCategory: !0,\n\t\tonRestore: (e) => wo(() => {\n\t\t\t_(e.search, e.page), D(e.sort), k(e.filters), C(e.category);\n\t\t})\n\t}), Jo({\n\t\tsurface: \"shop\",\n\t\tcollectionRef: S ?? \"all\",\n\t\tcollectionType: S ? \"category\" : \"shop\"\n\t}), Xo({\n\t\tsurface: \"shop\",\n\t\tsearch: h,\n\t\tsort: w,\n\t\tfilterFacets: we.join(\",\"),\n\t\tresultCount: be.length,\n\t\thasMore: !!pe?.hasNextPage,\n\t\tisLoading: _e\n\t});\n\tlet Oe = i.route(\"cart\", void 0, a), I = i.route(\"checkout\", void 0, a), ke = (e) => i.route(\"product\", { slug: e }, a), Ae = (e) => i.route(\"category\", { slug: e.slug }, a), je = (e) => Dr({\n\t\tbaseUrl: i.route(\"shop\", void 0, a),\n\t\tstate: {\n\t\t\tsearch: h,\n\t\t\tsort: w,\n\t\t\tpage: e,\n\t\t\tcategory: S,\n\t\t\tfilters: O\n\t\t},\n\t\tincludeCategory: !0\n\t}), L = (e) => {\n\t\tee(!1), wo(() => {\n\t\t\tC(e.slug), b(1);\n\t\t});\n\t}, Me = (e) => {\n\t\two(() => {\n\t\t\tb(1), D(e.sort), C(e.category), k(e.tags.length ? { tags: e.tags } : {}), _(e.search);\n\t\t});\n\t}, Ne = (e, t, n) => {\n\t\tlet r = Vo(o.items, e.currency);\n\t\to.addItem(Bo(e, t, i), n), s(\"cedros-shop:add-to-cart\", {\n\t\t\tproduct_ref: e.id,\n\t\t\tvariant_ref: t?.id,\n\t\t\tquantity_bucket: yr(n),\n\t\t\tsurface: \"shop\"\n\t\t}), l?.toast({\n\t\t\t...Ho(e, r, i),\n\t\t\tactionLabel: i.t(\"storefront.toast.viewCart\"),\n\t\t\tonAction: () => Wo(Oe, u, ne)\n\t\t});\n\t}, Pe = /* @__PURE__ */ T(jo, {\n\t\tcategories: ue,\n\t\tactiveCategory: S,\n\t\tonSelectCategory: L,\n\t\tcategoryHref: Ae,\n\t\tcatsLoading: de,\n\t\tcatsError: fe,\n\t\tcatsRetry: () => void F(),\n\t\tfacets: xe,\n\t\tfilters: O,\n\t\tsetFilters: k,\n\t\tsetPage: b,\n\t\tsort: w,\n\t\tsetSort: D,\n\t\tsortOptions: De,\n\t\tenabledFilters: {\n\t\t\t...N.catalog.filters,\n\t\t\tinStock: oe.inventory && N.catalog.filters.inStock\n\t\t},\n\t\ttitle: i.t(\"storefront.shop.browse\")\n\t});\n\treturn N.enabled ? /* @__PURE__ */ E(\"div\", {\n\t\tdir: i.direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--shop min-h-screen\", e),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(ko, {\n\t\t\t\tsearch: p,\n\t\t\t\tsetSearch: g,\n\t\t\t\tsearchComposition: f,\n\t\t\t\tcartCount: o.count,\n\t\t\t\tcheckoutHref: I,\n\t\t\t\tisDesktop: u,\n\t\t\t\tisNavOpen: A,\n\t\t\t\tsetIsNavOpen: ee,\n\t\t\t\tisCartOpen: te,\n\t\t\t\tsetIsCartOpen: ne,\n\t\t\t\tsidebarTitle: i.t(\"storefront.shop.browse\"),\n\t\t\t\tmobileSidebar: Pe\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"main\", {\n\t\t\t\tclassName: \"cedros-shop-public__shop-layout mx-auto grid max-w-7xl items-start gap-6 px-4 py-6 lg:grid-cols-[280px_1fr]\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"aside\", {\n\t\t\t\t\t\tclassName: \"hidden lg:block\",\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\tclassName: \"sticky top-24\",\n\t\t\t\t\t\t\tchildren: Pe\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"section\", { children: [\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\tclassName: \"flex items-end justify-between gap-3\",\n\t\t\t\t\t\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"cedros-shop-public__surface-heading cs-anim-drop\",\n\t\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"h1\", {\n\t\t\t\t\t\t\t\t\tclassName: \"text-2xl font-semibold tracking-tight\",\n\t\t\t\t\t\t\t\t\tchildren: N.shopPage.title || i.t(\"storefront.shop.titleFallback\")\n\t\t\t\t\t\t\t\t}), N.shopPage.description ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\t\t\t\tclassName: \"mt-1 text-sm\",\n\t\t\t\t\t\t\t\t\tchildren: N.shopPage.description\n\t\t\t\t\t\t\t\t}) : null]\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t/* @__PURE__ */ T(Zo, {\n\t\t\t\t\t\t\tcollections: N.merchandising.collections,\n\t\t\t\t\t\t\tonSelect: Me,\n\t\t\t\t\t\t\tclassName: \"mt-4\"\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t/* @__PURE__ */ T(ns, {\n\t\t\t\t\t\t\tbundles: N.merchandising.bundles,\n\t\t\t\t\t\t\tproductsById: Ce,\n\t\t\t\t\t\t\tproductHref: ke,\n\t\t\t\t\t\t\tonAddToCart: (e) => Ne(e, null, 1),\n\t\t\t\t\t\t\tlayout: N.shopLayout.layout,\n\t\t\t\t\t\t\timageCrop: N.shopLayout.imageCrop,\n\t\t\t\t\t\t\tclassName: \"mt-6\"\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\tve ? /* @__PURE__ */ T(lo, {\n\t\t\t\t\t\t\tclassName: \"mt-6\",\n\t\t\t\t\t\t\ttitle: i.t(\"storefront.error.title\"),\n\t\t\t\t\t\t\tdescription: i.t(\"storefront.error.load\"),\n\t\t\t\t\t\t\tonRetry: () => void ye()\n\t\t\t\t\t\t}) : null,\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\tve ? null : /* @__PURE__ */ T(No, {\n\t\t\t\t\t\t\tisLoading: _e,\n\t\t\t\t\t\t\tproducts: be,\n\t\t\t\t\t\t\tcolumns: r.ui?.productGrid?.columns,\n\t\t\t\t\t\t\tproductHref: ke,\n\t\t\t\t\t\t\tonAddToCart: (e) => Ne(e, null, 1),\n\t\t\t\t\t\t\tonQuickView: (e) => {\n\t\t\t\t\t\t\t\ts(\"cedros-shop:quick-view-opened\", {\n\t\t\t\t\t\t\t\t\tproduct_ref: e.id,\n\t\t\t\t\t\t\t\t\tcategory_ref: e.categoryIds[0],\n\t\t\t\t\t\t\t\t\tsurface: \"shop\"\n\t\t\t\t\t\t\t\t}), ie(e), j(!0);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlayout: N.shopLayout.layout,\n\t\t\t\t\t\t\timageCrop: N.shopLayout.imageCrop,\n\t\t\t\t\t\t\tpage: y,\n\t\t\t\t\t\t\tsetPage: b,\n\t\t\t\t\t\t\tpageHref: je,\n\t\t\t\t\t\t\thasNextPage: !!pe?.hasNextPage,\n\t\t\t\t\t\t\thasActiveQuery: Te,\n\t\t\t\t\t\t\tonClearQuery: Ee\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \"\n\t\t\t\t\t] }),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(Go, {\n\t\t\t\tproduct: re,\n\t\t\t\topen: ae,\n\t\t\t\tonOpenChange: j,\n\t\t\t\tproductHref: ke,\n\t\t\t\tonAddToCart: Ne\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t}) : /* @__PURE__ */ T(\"div\", {\n\t\tdir: i.direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--shop min-h-screen\", e),\n\t\tchildren: /* @__PURE__ */ T(Po, {})\n\t});\n}\nfunction ls(e) {\n\treturn /* @__PURE__ */ T(us, { ...e });\n}\nfunction us({ categorySlug: e, className: t, routes: n }) {\n\tlet { config: r } = z(), a = B(), o = Uo(r.routes, n), s = Kt(), l = U(), u = Ti(), d = Io(), [f, p] = x.useState(!1), [h, g] = x.useState(!1), _ = x.useMemo(() => Or({ includeCategory: !1 }), []), v = Ko(_?.search ?? \"\", _?.page ?? 1), { value: y, query: b, setValue: S, commit: C, page: w, setPage: D } = v, [O, k] = x.useState(_?.sort ?? \"featured\"), [A, ee] = x.useState(_?.filters ?? {}), [te, ne] = x.useState(null), [re, ie] = x.useState(!1), ae = V(), j = x.useMemo(() => ae.inventory ? A : os(A), [A, ae.inventory]), oe = i(e), { settings: M, isLoading: N, error: se, refetch: ce } = gn(), le = x.useMemo(() => c(M.markets, m(r.market, a.locale, as())), [\n\t\tr.market,\n\t\ta.locale,\n\t\tM.markets\n\t]), { categories: P, isLoading: ue, error: de, refetch: fe } = cr(le, !N && !se), F = oe ? P.find((t) => t.slug === e) ?? null : null, { data: pe, isLoading: me, error: he, refetch: ge } = ur({\n\t\tcategory: e,\n\t\tsearch: b || void 0,\n\t\tfilters: j,\n\t\tsort: O,\n\t\tpage: w,\n\t\tpageSize: 24\n\t}, le, oe && !!F && !ue && !de && !N && !se), _e = N || ue || me || v.isPending, ve = se ?? de ?? he, ye = se ? ce : de ? fe : ge, be = pe?.items ?? [], xe = x.useMemo(() => zo(be), [be]), Se = qo(j), Ce = !!(y.trim() || Se.length > 0), we = () => {\n\t\two(() => {\n\t\t\tC(\"\"), ee({}), D(1);\n\t\t});\n\t}, Te = Lo(M.catalog.sort);\n\tif (Ro(O, Te, k), kr({\n\t\tsearch: b,\n\t\tsort: O,\n\t\tpage: w,\n\t\tfilters: A\n\t}, {\n\t\tincludeCategory: !1,\n\t\tonRestore: (e) => wo(() => {\n\t\t\tC(e.search, e.page), k(e.sort), ee(e.filters);\n\t\t})\n\t}), Jo({\n\t\tsurface: \"category\",\n\t\tcollectionRef: e,\n\t\tcollectionType: \"category\"\n\t}), Xo({\n\t\tsurface: \"category\",\n\t\tsearch: b,\n\t\tsort: O,\n\t\tfilterFacets: Se.join(\",\"),\n\t\tresultCount: be.length,\n\t\thasMore: !!pe?.hasNextPage,\n\t\tisLoading: _e\n\t}), !M.enabled) return /* @__PURE__ */ T(ds, { className: t });\n\tif (!oe || !ue && !de && !F) return /* @__PURE__ */ T(fs, {\n\t\tclassName: t,\n\t\tdescription: a.t(\"storefront.category.notFound\")\n\t});\n\tif (de) return /* @__PURE__ */ T(fs, {\n\t\tclassName: t,\n\t\tdescription: a.t(\"storefront.error.load\"),\n\t\tonRetry: () => void fe()\n\t});\n\tif (ue || !F) return /* @__PURE__ */ T(ps, { className: t });\n\tlet Ee = a.route(\"shop\", void 0, o), De = a.route(\"cart\", void 0, o), Oe = a.route(\"checkout\", void 0, o), I = (e) => a.route(\"product\", { slug: e }, o), ke = (t) => Dr({\n\t\tbaseUrl: a.route(\"category\", { slug: e }, o),\n\t\tstate: {\n\t\t\tsearch: b,\n\t\t\tsort: O,\n\t\t\tpage: t,\n\t\t\tfilters: A\n\t\t},\n\t\tincludeCategory: !1\n\t}), Ae = (e) => {\n\t\two(() => {\n\t\t\tee(e), D(1);\n\t\t});\n\t}, je = (e) => {\n\t\two(() => {\n\t\t\tk(e), D(1);\n\t\t});\n\t}, L = (e, t, n) => {\n\t\tlet r = Vo(s.items, e.currency);\n\t\ts.addItem(Bo(e, t, a), n), l(\"cedros-shop:add-to-cart\", {\n\t\t\tproduct_ref: e.id,\n\t\t\tvariant_ref: t?.id,\n\t\t\tquantity_bucket: yr(n),\n\t\t\tsurface: \"category\"\n\t\t}), u?.toast({\n\t\t\t...Ho(e, r, a),\n\t\t\tactionLabel: a.t(\"storefront.toast.viewCart\"),\n\t\t\tonAction: () => Wo(De, d, g)\n\t\t});\n\t}, Me = /* @__PURE__ */ E(K, {\n\t\tclassName: \"flex max-h-[calc(100vh-6rem)] flex-col rounded-2xl\",\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(Ai, {\n\t\t\t\tclassName: \"flex-1 space-y-5 overflow-y-auto pr-2 pt-6\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"space-y-1\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"flex items-center justify-between gap-2\",\n\t\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\t\tclassName: \"text-xs font-semibold uppercase tracking-wide\",\n\t\t\t\t\t\t\t\t\tchildren: a.t(\"storefront.category.label\")\n\t\t\t\t\t\t\t\t}), /* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\t\t\tasChild: !0,\n\t\t\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\t\t\t\t\tclassName: \"h-8 px-2 text-xs\",\n\t\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(\"a\", {\n\t\t\t\t\t\t\t\t\t\thref: Ee,\n\t\t\t\t\t\t\t\t\t\tchildren: a.t(\"storefront.category.all\")\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t})]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"text-base font-semibold\",\n\t\t\t\t\t\t\t\tchildren: F.name\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"text-sm\",\n\t\t\t\t\t\t\t\tchildren: F.description\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\tTe.length > 1 ? /* @__PURE__ */ T(Mo, {\n\t\t\t\t\t\tsort: O,\n\t\t\t\t\t\tsetSort: je,\n\t\t\t\t\t\toptions: Te\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(Hi, {}),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(Ja, {\n\t\t\t\t\t\tfacets: xe,\n\t\t\t\t\t\tvalue: A,\n\t\t\t\t\t\tonChange: Ae,\n\t\t\t\t\t\tonClear: () => Ae({}),\n\t\t\t\t\t\tenabledFilters: {\n\t\t\t\t\t\t\t...M.catalog.filters,\n\t\t\t\t\t\t\tinStock: ae.inventory && M.catalog.filters.inStock\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tdir: a.direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--category min-h-screen\", t),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(ko, {\n\t\t\t\tsearch: y,\n\t\t\t\tsetSearch: S,\n\t\t\t\tsearchComposition: v,\n\t\t\t\tcartCount: s.count,\n\t\t\t\tcheckoutHref: Oe,\n\t\t\t\tisDesktop: d,\n\t\t\t\tisNavOpen: f,\n\t\t\t\tsetIsNavOpen: p,\n\t\t\t\tisCartOpen: h,\n\t\t\t\tsetIsCartOpen: g,\n\t\t\t\tsidebarTitle: a.t(\"common.filters\"),\n\t\t\t\tmobileSidebar: Me\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"main\", {\n\t\t\t\tclassName: \"cs-anim-fade mx-auto max-w-7xl px-4 py-8\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(Ga, { items: [{\n\t\t\t\t\t\tlabel: a.t(\"common.shop\"),\n\t\t\t\t\t\thref: Ee\n\t\t\t\t\t}, { label: F.name }] }),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__surface-heading cs-anim-drop mt-6\",\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"h1\", {\n\t\t\t\t\t\t\tclassName: \"text-2xl font-semibold tracking-tight\",\n\t\t\t\t\t\t\tchildren: F.name\n\t\t\t\t\t\t}), /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\t\tclassName: \"mt-1 text-sm\",\n\t\t\t\t\t\t\tchildren: F.description\n\t\t\t\t\t\t})]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\tve ? /* @__PURE__ */ T(lo, {\n\t\t\t\t\t\tclassName: \"mt-6\",\n\t\t\t\t\t\ttitle: a.t(\"storefront.error.title\"),\n\t\t\t\t\t\tdescription: a.t(\"storefront.error.load\"),\n\t\t\t\t\t\tonRetry: () => void ye()\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__category-layout mt-6 grid gap-6 lg:grid-cols-[280px_1fr]\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"aside\", {\n\t\t\t\t\t\t\t\tclassName: \"hidden lg:block\",\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\t\t\t\tclassName: \"sticky top-24\",\n\t\t\t\t\t\t\t\t\tchildren: Me\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"div\", { children: ve ? null : /* @__PURE__ */ T(No, {\n\t\t\t\t\t\t\t\tisLoading: _e,\n\t\t\t\t\t\t\t\tproducts: be,\n\t\t\t\t\t\t\t\tcolumns: r.ui?.productGrid?.columns,\n\t\t\t\t\t\t\t\tproductHref: I,\n\t\t\t\t\t\t\t\tonAddToCart: (e) => L(e, null, 1),\n\t\t\t\t\t\t\t\tonQuickView: (e) => {\n\t\t\t\t\t\t\t\t\tl(\"cedros-shop:quick-view-opened\", {\n\t\t\t\t\t\t\t\t\t\tproduct_ref: e.id,\n\t\t\t\t\t\t\t\t\t\tcategory_ref: e.categoryIds[0],\n\t\t\t\t\t\t\t\t\t\tsurface: \"category\"\n\t\t\t\t\t\t\t\t\t}), ne(e), ie(!0);\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tlayout: M.categoryLayout.layout,\n\t\t\t\t\t\t\t\timageCrop: M.categoryLayout.imageCrop,\n\t\t\t\t\t\t\t\tpage: w,\n\t\t\t\t\t\t\t\tsetPage: D,\n\t\t\t\t\t\t\t\tpageHref: ke,\n\t\t\t\t\t\t\t\thasNextPage: !!pe?.hasNextPage,\n\t\t\t\t\t\t\t\thasActiveQuery: Ce,\n\t\t\t\t\t\t\t\tonClearQuery: we\n\t\t\t\t\t\t\t}) }),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(Go, {\n\t\t\t\tproduct: te,\n\t\t\t\topen: re,\n\t\t\t\tonOpenChange: ie,\n\t\t\t\tproductHref: I,\n\t\t\t\tonAddToCart: L\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction ds({ className: e }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tdir: B().direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--category min-h-screen\", e),\n\t\tchildren: /* @__PURE__ */ T(Po, {})\n\t});\n}\nfunction fs({ className: e, description: t, onRetry: n }) {\n\treturn /* @__PURE__ */ T(\"main\", {\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--category min-h-screen p-6\", e),\n\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"mx-auto max-w-7xl\",\n\t\t\tchildren: /* @__PURE__ */ T(lo, {\n\t\t\t\tdescription: t,\n\t\t\t\tonRetry: n\n\t\t\t})\n\t\t})\n\t});\n}\nfunction ps({ className: e }) {\n\treturn /* @__PURE__ */ T(\"main\", {\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--category min-h-screen p-6\", e),\n\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"mx-auto max-w-7xl\",\n\t\t\tchildren: [/* @__PURE__ */ T(Z, { className: \"h-8 w-48\" }), /* @__PURE__ */ T(Z, { className: \"mt-4 h-64 w-full\" })]\n\t\t})\n\t});\n}\n//#endregion\n//#region src/storefront/ProductTemplate.tsx\nfunction ms() {\n\treturn typeof window > \"u\" ? {} : {\n\t\thost: window.location.host,\n\t\tpath: window.location.pathname\n\t};\n}\nfunction hs({ slug: e, className: t, routes: n }) {\n\tlet r = B(), { config: i } = z(), a = Uo(i.routes, n), o = Kt(), l = U(), u = Ti(), { settings: d, isLoading: f, error: p, refetch: h } = gn(), g = V(), _ = x.useMemo(() => c(d.markets, m(i.market, r.locale, ms())), [\n\t\ti.market,\n\t\tr.locale,\n\t\td.markets\n\t]), { product: y, isLoading: b, error: S, refetch: C } = gr(e, _, !f && !p), w = x.useRef(null), [D, O] = x.useState(1), [k, A] = x.useState({\n\t\tselectedOptions: {},\n\t\tvariant: null\n\t}), [ee, te] = x.useState(null), [ne, re] = uo(), ie = x.useRef(!1);\n\tx.useEffect(() => {\n\t\tif (!y || y.id === ee) return;\n\t\tlet e = y.variants?.[0];\n\t\tte(y.id), O(1), A(e ? {\n\t\t\tselectedOptions: { ...e.options },\n\t\t\tvariant: e\n\t\t} : {\n\t\t\tselectedOptions: {},\n\t\t\tvariant: null\n\t\t});\n\t}, [ee, y]), x.useEffect(() => {\n\t\t!y || w.current === y.id || (w.current = y.id, l(\"cedros-shop:product-viewed\", {\n\t\t\tproduct_ref: y.id,\n\t\t\tcategory_ref: y.categoryIds[0],\n\t\t\tsurface: \"product\"\n\t\t}));\n\t}, [l, y]);\n\tlet ae = !f && !p && d.enabled && d.sections.showRelatedProducts && !!y && s(y, _), j = v(ws(y, e, d.relatedProducts.mode, d.relatedProducts.maxItems, _, ae), _), oe = r.route(\"shop\", void 0, a), M = r.route(\"checkout\", void 0, a), N = r.route(\"cart\", void 0, a), se = x.useCallback((e) => r.route(\"product\", { slug: e }, a), [r, a]);\n\tif (!d.enabled) return /* @__PURE__ */ T(\"div\", {\n\t\tdir: r.direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--product min-h-screen\", t),\n\t\tchildren: /* @__PURE__ */ T(Po, {})\n\t});\n\tif (f || b) return /* @__PURE__ */ T(xs, { className: t });\n\tif (p) return /* @__PURE__ */ T(Ss, {\n\t\tclassName: t,\n\t\tdescription: r.t(\"storefront.error.load\"),\n\t\tonRetry: () => void h()\n\t});\n\tif (S && !y) return /* @__PURE__ */ T(Ss, {\n\t\tclassName: t,\n\t\tdescription: r.t(\"storefront.error.load\"),\n\t\tonRetry: () => void C()\n\t});\n\tif (!y || !s(y, _)) return /* @__PURE__ */ T(Ss, {\n\t\tclassName: t,\n\t\tdescription: r.t(\"storefront.product.notFound\")\n\t});\n\tlet ce = k.variant?.price ?? y.price, le = k.variant?.compareAtPrice ?? y.compareAtPrice, P = g.inventory && Es(y, k.variant), ue = () => {\n\t\tif (P) return;\n\t\tie.current = !0, re();\n\t\tlet e = Vo(o.items, y.currency);\n\t\to.addItem(Bo(y, k.variant, r), D), l(\"cedros-shop:add-to-cart\", {\n\t\t\tproduct_ref: y.id,\n\t\t\tvariant_ref: k.variant?.id,\n\t\t\tquantity_bucket: yr(D),\n\t\t\tsurface: \"product\"\n\t\t}), u?.toast({\n\t\t\t...Ho(y, e, r),\n\t\t\tactionLabel: r.t(\"storefront.toast.viewCart\"),\n\t\t\tonAction: () => window.location.assign(N)\n\t\t});\n\t};\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tdir: r.direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--product min-h-screen\", t),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(Ao, {\n\t\t\t\texitHref: \"/\",\n\t\t\t\tcheckoutHref: M\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"main\", {\n\t\t\t\tclassName: \"cs-anim-fade mx-auto max-w-6xl px-4 py-8\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(Ga, { items: [{\n\t\t\t\t\t\tlabel: r.t(\"common.shop\"),\n\t\t\t\t\t\thref: oe\n\t\t\t\t\t}, { label: y.title }] }),\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"mt-6 grid gap-10 lg:grid-cols-2\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(Qa, {\n\t\t\t\t\t\t\t\timages: y.images,\n\t\t\t\t\t\t\t\tfallbackAlt: y.title\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"space-y-6\",\n\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(gs, {\n\t\t\t\t\t\t\t\t\t\tproduct: y,\n\t\t\t\t\t\t\t\t\t\tunitPrice: ce,\n\t\t\t\t\t\t\t\t\t\tcompareAt: le,\n\t\t\t\t\t\t\t\t\t\tisOutOfStock: P,\n\t\t\t\t\t\t\t\t\t\tshowInventory: g.inventory\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(oo, {\n\t\t\t\t\t\t\t\t\t\tproduct: y,\n\t\t\t\t\t\t\t\t\t\tvalue: {\n\t\t\t\t\t\t\t\t\t\t\tselectedOptions: k.selectedOptions,\n\t\t\t\t\t\t\t\t\t\t\tvariantId: k.variant?.id\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tonChange: (e) => A(e),\n\t\t\t\t\t\t\t\t\t\tshowInventory: g.inventory\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\t\t\tclassName: \"flex flex-wrap items-center gap-3\",\n\t\t\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(co, {\n\t\t\t\t\t\t\t\t\t\t\t\tqty: D,\n\t\t\t\t\t\t\t\t\t\t\t\tonChange: O\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\t\t\t\t\t\tonClick: ue,\n\t\t\t\t\t\t\t\t\t\t\t\tclassName: \"flex-1\",\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled: P,\n\t\t\t\t\t\t\t\t\t\t\t\tchildren: ne && !P ? /* @__PURE__ */ E(\"span\", {\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName: \"cs-anim-value inline-flex items-center gap-1.5\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(fo, {}),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tr.t(\"storefront.toast.addedToCart\")\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t}, \"added\") : /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName: G(ie.current && \"cs-anim-value\"),\n\t\t\t\t\t\t\t\t\t\t\t\t\tchildren: P ? r.t(\"storefront.stock.out\") : r.t(\"storefront.product.addToCart\")\n\t\t\t\t\t\t\t\t\t\t\t\t}, \"idle\")\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tP || (ue(), window.location.assign(M));\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled: P,\n\t\t\t\t\t\t\t\t\t\t\t\tchildren: r.t(\"storefront.product.buyNow\")\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(vs, {\n\t\t\t\t\t\t\t\t\t\tproduct: y,\n\t\t\t\t\t\t\t\t\t\tsettings: d\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\td.sections.showRelatedProducts && j.length ? /* @__PURE__ */ E(\"section\", {\n\t\t\t\t\t\tclassName: \"mt-12\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"h2\", {\n\t\t\t\t\t\t\t\tclassName: \"text-lg font-semibold\",\n\t\t\t\t\t\t\t\tchildren: r.t(\"storefront.product.related\")\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"mt-4\",\n\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t/* @__PURE__ */ T(bo, {\n\t\t\t\t\t\t\t\t\t\tproducts: j,\n\t\t\t\t\t\t\t\t\t\tcolumns: {\n\t\t\t\t\t\t\t\t\t\t\tbase: 2,\n\t\t\t\t\t\t\t\t\t\t\tmd: 4,\n\t\t\t\t\t\t\t\t\t\t\tlg: 4\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tlayout: d.relatedProducts.layout.layout,\n\t\t\t\t\t\t\t\t\t\timageCrop: d.relatedProducts.layout.imageCrop,\n\t\t\t\t\t\t\t\t\t\tgetProductHref: (e) => se(e.slug),\n\t\t\t\t\t\t\t\t\t\tonAddToCart: (e) => {\n\t\t\t\t\t\t\t\t\t\t\tlet t = Vo(o.items, e.currency);\n\t\t\t\t\t\t\t\t\t\t\to.addItem(Bo(e, null, r), 1), l(\"cedros-shop:add-to-cart\", {\n\t\t\t\t\t\t\t\t\t\t\t\tproduct_ref: e.id,\n\t\t\t\t\t\t\t\t\t\t\t\tquantity_bucket: \"1\",\n\t\t\t\t\t\t\t\t\t\t\t\tsurface: \"related-products\"\n\t\t\t\t\t\t\t\t\t\t\t}), t && u?.toast(Ho(e, t, r));\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction gs({ product: e, unitPrice: t, compareAt: n, isOutOfStock: r, showInventory: i }) {\n\tlet a = B();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"cedros-shop-public__surface-heading cs-anim-drop\",\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"flex flex-wrap items-center gap-3\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"h1\", {\n\t\t\t\t\t\tclassName: \"text-3xl font-semibold tracking-tight\",\n\t\t\t\t\t\tchildren: e.title\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\te.tokenizedAssetConfig?.assetClass ? /* @__PURE__ */ T(Xa, { assetClass: e.tokenizedAssetConfig.assetClass }) : null,\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"mt-3\",\n\t\t\t\tchildren: /* @__PURE__ */ T(q, {\n\t\t\t\t\tswapKey: `${t}:${n ?? \"\"}:${e.currency}`,\n\t\t\t\t\tclassName: \"inline-block\",\n\t\t\t\t\tchildren: /* @__PURE__ */ T(Za, {\n\t\t\t\t\t\tamount: t,\n\t\t\t\t\t\tcurrency: e.currency,\n\t\t\t\t\t\tcompareAt: n\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t}),\n\t\t\t\" \",\n\t\t\ti && r ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__error mt-2 text-sm font-medium\",\n\t\t\t\tchildren: a.t(\"storefront.stock.out\")\n\t\t\t}) : i ? /* @__PURE__ */ T(_s, { product: e }) : null,\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: \"mt-4 text-sm\",\n\t\t\t\tchildren: e.description\n\t\t\t}),\n\t\t\t\" \",\n\t\t\te.tokenizedAssetConfig ? /* @__PURE__ */ T(ys, {\n\t\t\t\tconfig: e.tokenizedAssetConfig,\n\t\t\t\tcurrency: e.currency\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction _s({ product: e }) {\n\tlet { t } = B();\n\treturn typeof e.inventoryQuantity != \"number\" || e.inventoryQuantity <= 0 || e.inventoryQuantity > 5 ? null : /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__muted mt-2 text-sm\",\n\t\tchildren: t(\"storefront.stock.low\", { count: e.inventoryQuantity })\n\t});\n}\nfunction vs({ product: e, settings: t }) {\n\tlet { t: n } = B();\n\treturn t.sections.showDescription || t.sections.showSpecs ? /* @__PURE__ */ E(ta, {\n\t\ttype: \"single\",\n\t\tcollapsible: !0,\n\t\tdefaultValue: t.sections.showDescription ? \"desc\" : void 0,\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\tt.sections.showDescription ? /* @__PURE__ */ E(na, {\n\t\t\t\tvalue: \"desc\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(ra, { children: n(\"storefront.product.description\") }), /* @__PURE__ */ T(ia, { children: /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"text-sm\",\n\t\t\t\t\tchildren: e.description\n\t\t\t\t}) })]\n\t\t\t}) : null,\n\t\t\t\" \",\n\t\t\tt.sections.showSpecs ? /* @__PURE__ */ E(na, {\n\t\t\t\tvalue: \"specs\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(ra, { children: n(\"storefront.product.specs\") }), /* @__PURE__ */ T(ia, { children: /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"text-sm\",\n\t\t\t\t\tchildren: e.attributes ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"space-y-1\",\n\t\t\t\t\t\tchildren: Object.entries(e.attributes).map(([e, t]) => /* @__PURE__ */ E(\"div\", { children: [\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"font-medium\",\n\t\t\t\t\t\t\t\tchildren: [e, \":\"]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\tString(t)\n\t\t\t\t\t\t] }, e))\n\t\t\t\t\t}) : n(\"storefront.product.noSpecs\")\n\t\t\t\t}) })]\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t}) : null;\n}\nfunction ys({ config: e, currency: t }) {\n\tlet n = B(), i = r(e.custodyProofUrl, y());\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"cedros-shop-public__card mt-4 rounded-xl border p-4\",\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"text-xs font-semibold uppercase tracking-wider\",\n\t\t\t\tchildren: n.t(\"storefront.asset.title\")\n\t\t\t}),\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"mt-2 space-y-1.5 text-sm\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(bs, {\n\t\t\t\t\t\tlabel: n.t(\"storefront.asset.backingValue\"),\n\t\t\t\t\t\tvalue: n.formatMoney(e.backingValueCents / 100, e.backingCurrency || t)\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\te.assetIdentifier ? /* @__PURE__ */ T(bs, {\n\t\t\t\t\t\tlabel: n.t(\"storefront.asset.assetId\"),\n\t\t\t\t\t\tvalue: e.assetIdentifier,\n\t\t\t\t\t\tmono: !0\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\te.tokensPerUnit > 1 ? /* @__PURE__ */ T(bs, {\n\t\t\t\t\t\tlabel: n.t(\"storefront.asset.tokensPerUnit\"),\n\t\t\t\t\t\tvalue: n.formatNumber(e.tokensPerUnit)\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\ti ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"flex justify-between\",\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: n.t(\"storefront.asset.custodyProof\") }), /* @__PURE__ */ T(\"a\", {\n\t\t\t\t\t\t\thref: i,\n\t\t\t\t\t\t\ttarget: \"_blank\",\n\t\t\t\t\t\t\trel: \"noreferrer\",\n\t\t\t\t\t\t\tclassName: \"text-xs font-medium underline underline-offset-2\",\n\t\t\t\t\t\t\tchildren: n.t(\"storefront.asset.viewDocument\")\n\t\t\t\t\t\t})]\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\te.nftMintAddress ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"flex justify-between\",\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: n.t(\"storefront.asset.onChainToken\") }), /* @__PURE__ */ E(\"a\", {\n\t\t\t\t\t\t\thref: `https://solscan.io/account/${e.nftMintAddress}`,\n\t\t\t\t\t\t\ttarget: \"_blank\",\n\t\t\t\t\t\t\trel: \"noreferrer\",\n\t\t\t\t\t\t\tclassName: \"font-mono text-xs font-medium underline underline-offset-2\",\n\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\te.nftMintAddress.slice(0, 4),\n\t\t\t\t\t\t\t\t\"...\",\n\t\t\t\t\t\t\t\te.nftMintAddress.slice(-4)\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t})]\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \",\n\t\t\te.regulatoryNotice ? /* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__notice mt-3 rounded-lg border p-3 text-xs\",\n\t\t\t\tchildren: e.regulatoryNotice\n\t\t\t}) : null,\n\t\t\t\" \"\n\t\t]\n\t});\n}\nfunction bs({ label: e, value: t, mono: n }) {\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"flex justify-between\",\n\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: e }), /* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: G(\"font-medium\", n && \"font-mono text-xs\"),\n\t\t\tchildren: t\n\t\t})]\n\t});\n}\nfunction xs({ className: e }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--product min-h-screen p-6\", e),\n\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"mx-auto max-w-6xl\",\n\t\t\tchildren: [/* @__PURE__ */ T(Z, { className: \"h-5 w-40\" }), /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"mt-6 grid gap-8 lg:grid-cols-2\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(Z, { className: \"aspect-square rounded-2xl\" }), /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"space-y-4\",\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t/* @__PURE__ */ T(Z, { className: \"h-8 w-2/3\" }),\n\t\t\t\t\t\t/* @__PURE__ */ T(Z, { className: \"h-6 w-32\" }),\n\t\t\t\t\t\t/* @__PURE__ */ T(Z, { className: \"h-20\" }),\n\t\t\t\t\t\t/* @__PURE__ */ T(Z, { className: \"h-11\" })\n\t\t\t\t\t]\n\t\t\t\t})]\n\t\t\t})]\n\t\t})\n\t});\n}\nfunction Ss({ className: e, description: t, onRetry: n }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--product min-h-screen p-6\", e),\n\t\tchildren: /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"mx-auto max-w-6xl\",\n\t\t\tchildren: /* @__PURE__ */ T(lo, {\n\t\t\t\tdescription: t,\n\t\t\t\tonRetry: n\n\t\t\t})\n\t\t})\n\t});\n}\nvar Cs = 50;\nfunction ws(e, t, n, r, i, a) {\n\tlet o = ur(x.useMemo(() => n === \"by_category\" && e?.categoryIds?.length ? {\n\t\tcategory: e.categoryIds[0],\n\t\tpage: 1,\n\t\tpageSize: r + 1\n\t} : n === \"ai_curated\" ? {\n\t\tpage: 1,\n\t\tpageSize: Cs\n\t} : {\n\t\tpage: 1,\n\t\tpageSize: r + 4\n\t}, [\n\t\tn,\n\t\tr,\n\t\te?.categoryIds\n\t]), i, a), s = x.useMemo(() => (o.data?.items ?? []).filter((e) => e.slug !== t), [o.data?.items, t]), c = hr(e, s, r, a && n === \"ai_curated\");\n\treturn x.useMemo(() => {\n\t\tif (n === \"ai_curated\") {\n\t\t\tlet e = mr(s, c, r);\n\t\t\treturn e.length ? e : s.slice(0, r);\n\t\t}\n\t\treturn n === \"manual\" && e ? Ts(s, e, r) : s.slice(0, r);\n\t}, [\n\t\tn,\n\t\ts,\n\t\tc,\n\t\te,\n\t\tr\n\t]);\n}\nfunction Ts(e, n, r) {\n\tlet i = n.attributes?.relatedProductIds || n.attributes?.related_product_ids;\n\tif (!i) return e.slice(0, r);\n\tlet a = t(String(i)), o = new Map(e.map((e) => [e.id, e]));\n\treturn a.map((e) => o.get(e)).filter((e) => !!e).slice(0, r);\n}\nfunction Es(e, t) {\n\treturn t ? t.inventoryStatus === \"out_of_stock\" || typeof t.inventoryQuantity == \"number\" && t.inventoryQuantity <= 0 : e.inventoryStatus === \"out_of_stock\" || typeof e.inventoryQuantity == \"number\" && e.inventoryQuantity <= 0;\n}\n//#endregion\n//#region src/storefront/CheckoutOrderPanel.tsx\nfunction Ds(e) {\n\tlet { config: t } = z(), { t: n, route: r } = B(), i = Kt(), [a, o] = x.useState(!!i.promoCodes?.length);\n\tx.useEffect(() => {\n\t\ti.promoCodes?.length && o(!0);\n\t}, [i.promoCodes]);\n\tlet s = e.quote.currency || t.currency;\n\treturn /* @__PURE__ */ T(\"aside\", {\n\t\tclassName: \"self-start lg:sticky lg:top-24\",\n\t\tchildren: /* @__PURE__ */ E(K, {\n\t\t\tclassName: \"cs-anim-rise\",\n\t\t\tchildren: [/* @__PURE__ */ T(ki, { children: /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"flex items-center justify-between gap-3\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(ji, { children: n(\"storefront.checkout.reviewTitle\") }), /* @__PURE__ */ T(Y, {\n\t\t\t\t\tvariant: \"link\",\n\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\tasChild: !0,\n\t\t\t\t\tchildren: /* @__PURE__ */ T(\"a\", {\n\t\t\t\t\t\thref: r(\"cart\", void 0, t.routes),\n\t\t\t\t\t\tchildren: n(\"storefront.checkout.editCart\")\n\t\t\t\t\t})\n\t\t\t\t})]\n\t\t\t}) }), /* @__PURE__ */ E(Ai, {\n\t\t\t\tclassName: \"space-y-5\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ T(Os, { getItemInventory: e.getItemInventory }),\n\t\t\t\t\te.showPromoCode ? /* @__PURE__ */ T(aa, {\n\t\t\t\t\t\topen: a,\n\t\t\t\t\t\tonOpenChange: o,\n\t\t\t\t\t\topenLabel: n(\"storefront.checkout.addPromoCode\"),\n\t\t\t\t\t\tcloseLabel: n(\"storefront.checkout.hidePromoCode\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(ka, {\n\t\t\t\t\t\t\tvalues: i.promoCodes,\n\t\t\t\t\t\t\tonAdd: i.addPromoCode,\n\t\t\t\t\t\t\tonRemove: i.removePromoCode\n\t\t\t\t\t\t})\n\t\t\t\t\t}) : null,\n\t\t\t\t\t/* @__PURE__ */ T(ks, {\n\t\t\t\t\t\tquote: e.quote,\n\t\t\t\t\t\tquoteLoading: e.quoteLoading,\n\t\t\t\t\t\tshowShipping: e.showShipping,\n\t\t\t\t\t\tshowTax: e.showTax,\n\t\t\t\t\t\tcurrency: s\n\t\t\t\t\t}),\n\t\t\t\t\te.quoteError ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__error rounded-lg border p-3 text-sm\",\n\t\t\t\t\t\trole: \"alert\",\n\t\t\t\t\t\tchildren: e.quoteError\n\t\t\t\t\t}) : null,\n\t\t\t\t\te.quote.promotionMessages?.map((e) => /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__notice text-sm\",\n\t\t\t\t\t\tchildren: e\n\t\t\t\t\t}, e)),\n\t\t\t\t\te.quote.warnings?.map((e) => /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__notice text-sm\",\n\t\t\t\t\t\tchildren: e\n\t\t\t\t\t}, e)),\n\t\t\t\t\t/* @__PURE__ */ E(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tonClick: e.onCheckout,\n\t\t\t\t\t\tdisabled: e.checkoutDisabled,\n\t\t\t\t\t\t\"aria-busy\": e.checkoutBusy || void 0,\n\t\t\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--default inline-flex w-full items-center justify-center rounded-md px-4 py-2 text-sm font-medium disabled:opacity-50\",\n\t\t\t\t\t\tchildren: [e.checkoutBusy ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\tclassName: \"cs-spinner\",\n\t\t\t\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t\t\t\t}) : null, /* @__PURE__ */ T(q, {\n\t\t\t\t\t\t\tswapKey: e.checkoutLabel,\n\t\t\t\t\t\t\tchildren: e.checkoutLabel\n\t\t\t\t\t\t})]\n\t\t\t\t\t}),\n\t\t\t\t\te.checkoutDisabled && e.checkoutDisabledReason ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"space-y-2\",\n\t\t\t\t\t\trole: \"status\",\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\t\tclassName: \"cedros-shop-public__notice text-center text-xs\",\n\t\t\t\t\t\t\tchildren: e.checkoutDisabledReason\n\t\t\t\t\t\t}), e.hasInventoryIssues ? /* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\tonClick: e.onRemoveUnavailable,\n\t\t\t\t\t\t\tclassName: \"mx-auto block text-xs underline underline-offset-2\",\n\t\t\t\t\t\t\tchildren: n(\"storefront.cart.removeUnavailable\")\n\t\t\t\t\t\t}) : null]\n\t\t\t\t\t}) : null\n\t\t\t\t]\n\t\t\t})]\n\t\t})\n\t});\n}\nfunction Os({ getItemInventory: e }) {\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"divide-y\",\n\t\tchildren: Kt().items.map((t) => /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"py-3\",\n\t\t\tchildren: /* @__PURE__ */ T(Pa, {\n\t\t\t\titem: t,\n\t\t\t\tinventory: e(t.productId, t.variantId)\n\t\t\t})\n\t\t}, `${t.productId}::${t.variantId ?? \"\"}`))\n\t});\n}\nfunction ks({ quote: e, quoteLoading: t, showShipping: n, showTax: r, currency: i }) {\n\tlet { t: a, formatMoney: o } = B();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"space-y-3 border-t pt-4\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"flex items-center justify-between text-sm\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: a(\"storefront.cart.subtotal\") }), /* @__PURE__ */ T(q, {\n\t\t\t\t\tswapKey: o(e.subtotal, i),\n\t\t\t\t\tclassName: \"font-medium tabular-nums\",\n\t\t\t\t\tchildren: o(e.subtotal, i)\n\t\t\t\t})]\n\t\t\t}),\n\t\t\tn ? /* @__PURE__ */ T(Ns, {\n\t\t\t\tlabel: a(\"storefront.checkout.shipping\"),\n\t\t\t\tvalue: e.shippingTotal,\n\t\t\t\tcurrency: i\n\t\t\t}) : null,\n\t\t\t/* @__PURE__ */ T(js, {\n\t\t\t\tdiscounts: e.discounts,\n\t\t\t\tdiscountTotal: e.discountTotal,\n\t\t\t\tcurrency: i\n\t\t\t}),\n\t\t\tr ? /* @__PURE__ */ T(Ps, {\n\t\t\t\tquote: e,\n\t\t\t\tcurrency: i\n\t\t\t}) : null,\n\t\t\t/* @__PURE__ */ T(Ns, {\n\t\t\t\tlabel: a(\"storefront.checkout.tipAmount\"),\n\t\t\t\tvalue: e.tipAmount,\n\t\t\t\tcurrency: i,\n\t\t\t\thideZero: !0\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"border-t pt-3\",\n\t\t\t\tchildren: [/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"flex items-center justify-between text-base font-semibold\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: a(\"storefront.cart.total\") }), /* @__PURE__ */ T(q, {\n\t\t\t\t\t\tswapKey: o(e.total, i),\n\t\t\t\t\t\tclassName: \"tabular-nums\",\n\t\t\t\t\t\tchildren: o(e.total, i)\n\t\t\t\t\t})]\n\t\t\t\t}), t ? /* @__PURE__ */ E(\"p\", {\n\t\t\t\t\tclassName: \"mt-2 text-xs\",\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\tclassName: \"cs-spinner\",\n\t\t\t\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\ta(\"storefront.checkout.refreshingQuote\")\n\t\t\t\t\t]\n\t\t\t\t}) : null]\n\t\t\t})\n\t\t]\n\t});\n}\nfunction As(e) {\n\tlet { config: t } = z(), { t: n, formatMoney: r } = B(), [i, a] = x.useState(!1), o = e.quote.currency || t.currency, s = r(e.quote.total, o);\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__card cs-anim-rise mt-6 rounded-lg border px-4 py-2 lg:hidden\",\n\t\tchildren: /* @__PURE__ */ T(aa, {\n\t\t\topen: i,\n\t\t\tonOpenChange: a,\n\t\t\topenLabel: n(\"storefront.checkout.showOrderSummary\", { total: s }),\n\t\t\tcloseLabel: n(\"storefront.checkout.hideOrderSummary\", { total: s }),\n\t\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"space-y-5 pb-2\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(Os, { getItemInventory: e.getItemInventory }), /* @__PURE__ */ T(ks, {\n\t\t\t\t\tquote: e.quote,\n\t\t\t\t\tquoteLoading: e.quoteLoading,\n\t\t\t\t\tshowShipping: e.showShipping,\n\t\t\t\t\tshowTax: e.showTax,\n\t\t\t\t\tcurrency: o\n\t\t\t\t})]\n\t\t\t})\n\t\t})\n\t});\n}\nfunction js({ discounts: e, discountTotal: t, currency: n }) {\n\tlet { t: r, formatMoney: i } = B();\n\treturn e?.length ? /* @__PURE__ */ T(Mi, { children: /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"space-y-2\",\n\t\t\"aria-label\": r(\"storefront.checkout.appliedDiscounts\"),\n\t\tchildren: e.map((e, t) => /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"flex items-start justify-between gap-3 text-sm\",\n\t\t\tchildren: [/* @__PURE__ */ E(\"span\", { children: [\n\t\t\t\te.title || Ms(e, r),\n\t\t\t\te.code ? /* @__PURE__ */ E(\"span\", {\n\t\t\t\t\tclassName: \"ml-1 text-xs\",\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\"(\",\n\t\t\t\t\t\te.code,\n\t\t\t\t\t\t\")\"\n\t\t\t\t\t]\n\t\t\t\t}) : null,\n\t\t\t\te.message ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\tclassName: \"block text-xs\",\n\t\t\t\t\tchildren: e.message\n\t\t\t\t}) : null\n\t\t\t] }), /* @__PURE__ */ T(q, {\n\t\t\t\tswapKey: typeof e.amount == \"number\" ? i(-Math.abs(e.amount), e.currency ?? n) : r(\"storefront.checkout.discountApplied\"),\n\t\t\t\tclassName: \"font-medium tabular-nums\",\n\t\t\t\tchildren: typeof e.amount == \"number\" ? i(-Math.abs(e.amount), e.currency ?? n) : r(\"storefront.checkout.discountApplied\")\n\t\t\t})]\n\t\t}, e.id ?? `${e.type}:${e.code ?? e.title}:${t}`))\n\t}) }) : typeof t == \"number\" && t !== 0 ? /* @__PURE__ */ T(Ns, {\n\t\tlabel: r(\"storefront.checkout.discount\"),\n\t\tvalue: -Math.abs(t),\n\t\tcurrency: n\n\t}) : null;\n}\nfunction Ms(e, t) {\n\treturn e.type === \"automatic\" ? t(\"storefront.checkout.discountAutomatic\") : e.type === \"bxgy\" ? t(\"storefront.checkout.discountBxgy\") : e.type === \"free_shipping\" ? t(\"storefront.checkout.discountFreeShipping\") : e.type === \"gift_card\" ? t(\"storefront.checkout.discountGiftCard\") : e.type === \"store_credit\" ? t(\"storefront.checkout.discountStoreCredit\") : e.type === \"abandoned_checkout\" ? t(\"storefront.checkout.discountRecovery\") : t(\"storefront.checkout.discount\");\n}\nfunction Ns({ label: e, value: t, currency: n, hideZero: r }) {\n\tlet { formatMoney: i } = B();\n\treturn t == null || r && t === 0 ? null : /* @__PURE__ */ T(Mi, { children: /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"flex items-center justify-between text-sm\",\n\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: e }), /* @__PURE__ */ T(q, {\n\t\t\tswapKey: i(t, n),\n\t\t\tclassName: \"font-medium tabular-nums\",\n\t\t\tchildren: i(t, n)\n\t\t})]\n\t}) });\n}\nfunction Ps({ quote: e, currency: t }) {\n\tlet { t: n, formatMoney: r } = B();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"flex items-center justify-between text-sm\",\n\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: n(\"storefront.checkout.tax\") }), /* @__PURE__ */ T(q, {\n\t\t\tswapKey: typeof e.taxTotal == \"number\" ? r(e.taxTotal, t) : n(\"storefront.checkout.calculatedByPay\"),\n\t\t\tclassName: \"text-xs tabular-nums\",\n\t\t\tchildren: typeof e.taxTotal == \"number\" ? r(e.taxTotal, t) : n(\"storefront.checkout.calculatedByPay\")\n\t\t})]\n\t});\n}\n//#endregion\n//#region src/storefront/countries.ts\nvar Fs = [\n\t{\n\t\tcode: \"AD\",\n\t\tname: \"Andorra\"\n\t},\n\t{\n\t\tcode: \"AE\",\n\t\tname: \"United Arab Emirates\"\n\t},\n\t{\n\t\tcode: \"AF\",\n\t\tname: \"Afghanistan\"\n\t},\n\t{\n\t\tcode: \"AG\",\n\t\tname: \"Antigua & Barbuda\"\n\t},\n\t{\n\t\tcode: \"AI\",\n\t\tname: \"Anguilla\"\n\t},\n\t{\n\t\tcode: \"AL\",\n\t\tname: \"Albania\"\n\t},\n\t{\n\t\tcode: \"AM\",\n\t\tname: \"Armenia\"\n\t},\n\t{\n\t\tcode: \"AO\",\n\t\tname: \"Angola\"\n\t},\n\t{\n\t\tcode: \"AQ\",\n\t\tname: \"Antarctica\"\n\t},\n\t{\n\t\tcode: \"AR\",\n\t\tname: \"Argentina\"\n\t},\n\t{\n\t\tcode: \"AS\",\n\t\tname: \"American Samoa\"\n\t},\n\t{\n\t\tcode: \"AT\",\n\t\tname: \"Austria\"\n\t},\n\t{\n\t\tcode: \"AU\",\n\t\tname: \"Australia\"\n\t},\n\t{\n\t\tcode: \"AW\",\n\t\tname: \"Aruba\"\n\t},\n\t{\n\t\tcode: \"AX\",\n\t\tname: \"Åland Islands\"\n\t},\n\t{\n\t\tcode: \"AZ\",\n\t\tname: \"Azerbaijan\"\n\t},\n\t{\n\t\tcode: \"BA\",\n\t\tname: \"Bosnia & Herzegovina\"\n\t},\n\t{\n\t\tcode: \"BB\",\n\t\tname: \"Barbados\"\n\t},\n\t{\n\t\tcode: \"BD\",\n\t\tname: \"Bangladesh\"\n\t},\n\t{\n\t\tcode: \"BE\",\n\t\tname: \"Belgium\"\n\t},\n\t{\n\t\tcode: \"BF\",\n\t\tname: \"Burkina Faso\"\n\t},\n\t{\n\t\tcode: \"BG\",\n\t\tname: \"Bulgaria\"\n\t},\n\t{\n\t\tcode: \"BH\",\n\t\tname: \"Bahrain\"\n\t},\n\t{\n\t\tcode: \"BI\",\n\t\tname: \"Burundi\"\n\t},\n\t{\n\t\tcode: \"BJ\",\n\t\tname: \"Benin\"\n\t},\n\t{\n\t\tcode: \"BL\",\n\t\tname: \"St. Barthélemy\"\n\t},\n\t{\n\t\tcode: \"BM\",\n\t\tname: \"Bermuda\"\n\t},\n\t{\n\t\tcode: \"BN\",\n\t\tname: \"Brunei\"\n\t},\n\t{\n\t\tcode: \"BO\",\n\t\tname: \"Bolivia\"\n\t},\n\t{\n\t\tcode: \"BQ\",\n\t\tname: \"Caribbean Netherlands\"\n\t},\n\t{\n\t\tcode: \"BR\",\n\t\tname: \"Brazil\"\n\t},\n\t{\n\t\tcode: \"BS\",\n\t\tname: \"Bahamas\"\n\t},\n\t{\n\t\tcode: \"BT\",\n\t\tname: \"Bhutan\"\n\t},\n\t{\n\t\tcode: \"BV\",\n\t\tname: \"Bouvet Island\"\n\t},\n\t{\n\t\tcode: \"BW\",\n\t\tname: \"Botswana\"\n\t},\n\t{\n\t\tcode: \"BY\",\n\t\tname: \"Belarus\"\n\t},\n\t{\n\t\tcode: \"BZ\",\n\t\tname: \"Belize\"\n\t},\n\t{\n\t\tcode: \"CA\",\n\t\tname: \"Canada\"\n\t},\n\t{\n\t\tcode: \"CC\",\n\t\tname: \"Cocos (Keeling) Islands\"\n\t},\n\t{\n\t\tcode: \"CD\",\n\t\tname: \"Congo - Kinshasa\"\n\t},\n\t{\n\t\tcode: \"CF\",\n\t\tname: \"Central African Republic\"\n\t},\n\t{\n\t\tcode: \"CG\",\n\t\tname: \"Congo - Brazzaville\"\n\t},\n\t{\n\t\tcode: \"CH\",\n\t\tname: \"Switzerland\"\n\t},\n\t{\n\t\tcode: \"CI\",\n\t\tname: \"Côte d’Ivoire\"\n\t},\n\t{\n\t\tcode: \"CK\",\n\t\tname: \"Cook Islands\"\n\t},\n\t{\n\t\tcode: \"CL\",\n\t\tname: \"Chile\"\n\t},\n\t{\n\t\tcode: \"CM\",\n\t\tname: \"Cameroon\"\n\t},\n\t{\n\t\tcode: \"CN\",\n\t\tname: \"China\"\n\t},\n\t{\n\t\tcode: \"CO\",\n\t\tname: \"Colombia\"\n\t},\n\t{\n\t\tcode: \"CR\",\n\t\tname: \"Costa Rica\"\n\t},\n\t{\n\t\tcode: \"CU\",\n\t\tname: \"Cuba\"\n\t},\n\t{\n\t\tcode: \"CV\",\n\t\tname: \"Cape Verde\"\n\t},\n\t{\n\t\tcode: \"CW\",\n\t\tname: \"Curaçao\"\n\t},\n\t{\n\t\tcode: \"CX\",\n\t\tname: \"Christmas Island\"\n\t},\n\t{\n\t\tcode: \"CY\",\n\t\tname: \"Cyprus\"\n\t},\n\t{\n\t\tcode: \"CZ\",\n\t\tname: \"Czechia\"\n\t},\n\t{\n\t\tcode: \"DE\",\n\t\tname: \"Germany\"\n\t},\n\t{\n\t\tcode: \"DJ\",\n\t\tname: \"Djibouti\"\n\t},\n\t{\n\t\tcode: \"DK\",\n\t\tname: \"Denmark\"\n\t},\n\t{\n\t\tcode: \"DM\",\n\t\tname: \"Dominica\"\n\t},\n\t{\n\t\tcode: \"DO\",\n\t\tname: \"Dominican Republic\"\n\t},\n\t{\n\t\tcode: \"DZ\",\n\t\tname: \"Algeria\"\n\t},\n\t{\n\t\tcode: \"EC\",\n\t\tname: \"Ecuador\"\n\t},\n\t{\n\t\tcode: \"EE\",\n\t\tname: \"Estonia\"\n\t},\n\t{\n\t\tcode: \"EG\",\n\t\tname: \"Egypt\"\n\t},\n\t{\n\t\tcode: \"EH\",\n\t\tname: \"Western Sahara\"\n\t},\n\t{\n\t\tcode: \"ER\",\n\t\tname: \"Eritrea\"\n\t},\n\t{\n\t\tcode: \"ES\",\n\t\tname: \"Spain\"\n\t},\n\t{\n\t\tcode: \"ET\",\n\t\tname: \"Ethiopia\"\n\t},\n\t{\n\t\tcode: \"FI\",\n\t\tname: \"Finland\"\n\t},\n\t{\n\t\tcode: \"FJ\",\n\t\tname: \"Fiji\"\n\t},\n\t{\n\t\tcode: \"FK\",\n\t\tname: \"Falkland Islands\"\n\t},\n\t{\n\t\tcode: \"FM\",\n\t\tname: \"Micronesia\"\n\t},\n\t{\n\t\tcode: \"FO\",\n\t\tname: \"Faroe Islands\"\n\t},\n\t{\n\t\tcode: \"FR\",\n\t\tname: \"France\"\n\t},\n\t{\n\t\tcode: \"GA\",\n\t\tname: \"Gabon\"\n\t},\n\t{\n\t\tcode: \"GB\",\n\t\tname: \"United Kingdom\"\n\t},\n\t{\n\t\tcode: \"GD\",\n\t\tname: \"Grenada\"\n\t},\n\t{\n\t\tcode: \"GE\",\n\t\tname: \"Georgia\"\n\t},\n\t{\n\t\tcode: \"GF\",\n\t\tname: \"French Guiana\"\n\t},\n\t{\n\t\tcode: \"GG\",\n\t\tname: \"Guernsey\"\n\t},\n\t{\n\t\tcode: \"GH\",\n\t\tname: \"Ghana\"\n\t},\n\t{\n\t\tcode: \"GI\",\n\t\tname: \"Gibraltar\"\n\t},\n\t{\n\t\tcode: \"GL\",\n\t\tname: \"Greenland\"\n\t},\n\t{\n\t\tcode: \"GM\",\n\t\tname: \"Gambia\"\n\t},\n\t{\n\t\tcode: \"GN\",\n\t\tname: \"Guinea\"\n\t},\n\t{\n\t\tcode: \"GP\",\n\t\tname: \"Guadeloupe\"\n\t},\n\t{\n\t\tcode: \"GQ\",\n\t\tname: \"Equatorial Guinea\"\n\t},\n\t{\n\t\tcode: \"GR\",\n\t\tname: \"Greece\"\n\t},\n\t{\n\t\tcode: \"GS\",\n\t\tname: \"South Georgia & South Sandwich Islands\"\n\t},\n\t{\n\t\tcode: \"GT\",\n\t\tname: \"Guatemala\"\n\t},\n\t{\n\t\tcode: \"GU\",\n\t\tname: \"Guam\"\n\t},\n\t{\n\t\tcode: \"GW\",\n\t\tname: \"Guinea-Bissau\"\n\t},\n\t{\n\t\tcode: \"GY\",\n\t\tname: \"Guyana\"\n\t},\n\t{\n\t\tcode: \"HK\",\n\t\tname: \"Hong Kong SAR China\"\n\t},\n\t{\n\t\tcode: \"HM\",\n\t\tname: \"Heard & McDonald Islands\"\n\t},\n\t{\n\t\tcode: \"HN\",\n\t\tname: \"Honduras\"\n\t},\n\t{\n\t\tcode: \"HR\",\n\t\tname: \"Croatia\"\n\t},\n\t{\n\t\tcode: \"HT\",\n\t\tname: \"Haiti\"\n\t},\n\t{\n\t\tcode: \"HU\",\n\t\tname: \"Hungary\"\n\t},\n\t{\n\t\tcode: \"ID\",\n\t\tname: \"Indonesia\"\n\t},\n\t{\n\t\tcode: \"IE\",\n\t\tname: \"Ireland\"\n\t},\n\t{\n\t\tcode: \"IL\",\n\t\tname: \"Israel\"\n\t},\n\t{\n\t\tcode: \"IM\",\n\t\tname: \"Isle of Man\"\n\t},\n\t{\n\t\tcode: \"IN\",\n\t\tname: \"India\"\n\t},\n\t{\n\t\tcode: \"IO\",\n\t\tname: \"British Indian Ocean Territory\"\n\t},\n\t{\n\t\tcode: \"IQ\",\n\t\tname: \"Iraq\"\n\t},\n\t{\n\t\tcode: \"IR\",\n\t\tname: \"Iran\"\n\t},\n\t{\n\t\tcode: \"IS\",\n\t\tname: \"Iceland\"\n\t},\n\t{\n\t\tcode: \"IT\",\n\t\tname: \"Italy\"\n\t},\n\t{\n\t\tcode: \"JE\",\n\t\tname: \"Jersey\"\n\t},\n\t{\n\t\tcode: \"JM\",\n\t\tname: \"Jamaica\"\n\t},\n\t{\n\t\tcode: \"JO\",\n\t\tname: \"Jordan\"\n\t},\n\t{\n\t\tcode: \"JP\",\n\t\tname: \"Japan\"\n\t},\n\t{\n\t\tcode: \"KE\",\n\t\tname: \"Kenya\"\n\t},\n\t{\n\t\tcode: \"KG\",\n\t\tname: \"Kyrgyzstan\"\n\t},\n\t{\n\t\tcode: \"KH\",\n\t\tname: \"Cambodia\"\n\t},\n\t{\n\t\tcode: \"KI\",\n\t\tname: \"Kiribati\"\n\t},\n\t{\n\t\tcode: \"KM\",\n\t\tname: \"Comoros\"\n\t},\n\t{\n\t\tcode: \"KN\",\n\t\tname: \"St. Kitts & Nevis\"\n\t},\n\t{\n\t\tcode: \"KP\",\n\t\tname: \"North Korea\"\n\t},\n\t{\n\t\tcode: \"KR\",\n\t\tname: \"South Korea\"\n\t},\n\t{\n\t\tcode: \"KW\",\n\t\tname: \"Kuwait\"\n\t},\n\t{\n\t\tcode: \"KY\",\n\t\tname: \"Cayman Islands\"\n\t},\n\t{\n\t\tcode: \"KZ\",\n\t\tname: \"Kazakhstan\"\n\t},\n\t{\n\t\tcode: \"LA\",\n\t\tname: \"Laos\"\n\t},\n\t{\n\t\tcode: \"LB\",\n\t\tname: \"Lebanon\"\n\t},\n\t{\n\t\tcode: \"LC\",\n\t\tname: \"St. Lucia\"\n\t},\n\t{\n\t\tcode: \"LI\",\n\t\tname: \"Liechtenstein\"\n\t},\n\t{\n\t\tcode: \"LK\",\n\t\tname: \"Sri Lanka\"\n\t},\n\t{\n\t\tcode: \"LR\",\n\t\tname: \"Liberia\"\n\t},\n\t{\n\t\tcode: \"LS\",\n\t\tname: \"Lesotho\"\n\t},\n\t{\n\t\tcode: \"LT\",\n\t\tname: \"Lithuania\"\n\t},\n\t{\n\t\tcode: \"LU\",\n\t\tname: \"Luxembourg\"\n\t},\n\t{\n\t\tcode: \"LV\",\n\t\tname: \"Latvia\"\n\t},\n\t{\n\t\tcode: \"LY\",\n\t\tname: \"Libya\"\n\t},\n\t{\n\t\tcode: \"MA\",\n\t\tname: \"Morocco\"\n\t},\n\t{\n\t\tcode: \"MC\",\n\t\tname: \"Monaco\"\n\t},\n\t{\n\t\tcode: \"MD\",\n\t\tname: \"Moldova\"\n\t},\n\t{\n\t\tcode: \"ME\",\n\t\tname: \"Montenegro\"\n\t},\n\t{\n\t\tcode: \"MF\",\n\t\tname: \"St. Martin\"\n\t},\n\t{\n\t\tcode: \"MG\",\n\t\tname: \"Madagascar\"\n\t},\n\t{\n\t\tcode: \"MH\",\n\t\tname: \"Marshall Islands\"\n\t},\n\t{\n\t\tcode: \"MK\",\n\t\tname: \"North Macedonia\"\n\t},\n\t{\n\t\tcode: \"ML\",\n\t\tname: \"Mali\"\n\t},\n\t{\n\t\tcode: \"MM\",\n\t\tname: \"Myanmar (Burma)\"\n\t},\n\t{\n\t\tcode: \"MN\",\n\t\tname: \"Mongolia\"\n\t},\n\t{\n\t\tcode: \"MO\",\n\t\tname: \"Macao SAR China\"\n\t},\n\t{\n\t\tcode: \"MP\",\n\t\tname: \"Northern Mariana Islands\"\n\t},\n\t{\n\t\tcode: \"MQ\",\n\t\tname: \"Martinique\"\n\t},\n\t{\n\t\tcode: \"MR\",\n\t\tname: \"Mauritania\"\n\t},\n\t{\n\t\tcode: \"MS\",\n\t\tname: \"Montserrat\"\n\t},\n\t{\n\t\tcode: \"MT\",\n\t\tname: \"Malta\"\n\t},\n\t{\n\t\tcode: \"MU\",\n\t\tname: \"Mauritius\"\n\t},\n\t{\n\t\tcode: \"MV\",\n\t\tname: \"Maldives\"\n\t},\n\t{\n\t\tcode: \"MW\",\n\t\tname: \"Malawi\"\n\t},\n\t{\n\t\tcode: \"MX\",\n\t\tname: \"Mexico\"\n\t},\n\t{\n\t\tcode: \"MY\",\n\t\tname: \"Malaysia\"\n\t},\n\t{\n\t\tcode: \"MZ\",\n\t\tname: \"Mozambique\"\n\t},\n\t{\n\t\tcode: \"NA\",\n\t\tname: \"Namibia\"\n\t},\n\t{\n\t\tcode: \"NC\",\n\t\tname: \"New Caledonia\"\n\t},\n\t{\n\t\tcode: \"NE\",\n\t\tname: \"Niger\"\n\t},\n\t{\n\t\tcode: \"NF\",\n\t\tname: \"Norfolk Island\"\n\t},\n\t{\n\t\tcode: \"NG\",\n\t\tname: \"Nigeria\"\n\t},\n\t{\n\t\tcode: \"NI\",\n\t\tname: \"Nicaragua\"\n\t},\n\t{\n\t\tcode: \"NL\",\n\t\tname: \"Netherlands\"\n\t},\n\t{\n\t\tcode: \"NO\",\n\t\tname: \"Norway\"\n\t},\n\t{\n\t\tcode: \"NP\",\n\t\tname: \"Nepal\"\n\t},\n\t{\n\t\tcode: \"NR\",\n\t\tname: \"Nauru\"\n\t},\n\t{\n\t\tcode: \"NU\",\n\t\tname: \"Niue\"\n\t},\n\t{\n\t\tcode: \"NZ\",\n\t\tname: \"New Zealand\"\n\t},\n\t{\n\t\tcode: \"OM\",\n\t\tname: \"Oman\"\n\t},\n\t{\n\t\tcode: \"PA\",\n\t\tname: \"Panama\"\n\t},\n\t{\n\t\tcode: \"PE\",\n\t\tname: \"Peru\"\n\t},\n\t{\n\t\tcode: \"PF\",\n\t\tname: \"French Polynesia\"\n\t},\n\t{\n\t\tcode: \"PG\",\n\t\tname: \"Papua New Guinea\"\n\t},\n\t{\n\t\tcode: \"PH\",\n\t\tname: \"Philippines\"\n\t},\n\t{\n\t\tcode: \"PK\",\n\t\tname: \"Pakistan\"\n\t},\n\t{\n\t\tcode: \"PL\",\n\t\tname: \"Poland\"\n\t},\n\t{\n\t\tcode: \"PM\",\n\t\tname: \"St. Pierre & Miquelon\"\n\t},\n\t{\n\t\tcode: \"PN\",\n\t\tname: \"Pitcairn Islands\"\n\t},\n\t{\n\t\tcode: \"PR\",\n\t\tname: \"Puerto Rico\"\n\t},\n\t{\n\t\tcode: \"PS\",\n\t\tname: \"Palestinian Territories\"\n\t},\n\t{\n\t\tcode: \"PT\",\n\t\tname: \"Portugal\"\n\t},\n\t{\n\t\tcode: \"PW\",\n\t\tname: \"Palau\"\n\t},\n\t{\n\t\tcode: \"PY\",\n\t\tname: \"Paraguay\"\n\t},\n\t{\n\t\tcode: \"QA\",\n\t\tname: \"Qatar\"\n\t},\n\t{\n\t\tcode: \"RE\",\n\t\tname: \"Réunion\"\n\t},\n\t{\n\t\tcode: \"RO\",\n\t\tname: \"Romania\"\n\t},\n\t{\n\t\tcode: \"RS\",\n\t\tname: \"Serbia\"\n\t},\n\t{\n\t\tcode: \"RU\",\n\t\tname: \"Russia\"\n\t},\n\t{\n\t\tcode: \"RW\",\n\t\tname: \"Rwanda\"\n\t},\n\t{\n\t\tcode: \"SA\",\n\t\tname: \"Saudi Arabia\"\n\t},\n\t{\n\t\tcode: \"SB\",\n\t\tname: \"Solomon Islands\"\n\t},\n\t{\n\t\tcode: \"SC\",\n\t\tname: \"Seychelles\"\n\t},\n\t{\n\t\tcode: \"SD\",\n\t\tname: \"Sudan\"\n\t},\n\t{\n\t\tcode: \"SE\",\n\t\tname: \"Sweden\"\n\t},\n\t{\n\t\tcode: \"SG\",\n\t\tname: \"Singapore\"\n\t},\n\t{\n\t\tcode: \"SH\",\n\t\tname: \"St. Helena\"\n\t},\n\t{\n\t\tcode: \"SI\",\n\t\tname: \"Slovenia\"\n\t},\n\t{\n\t\tcode: \"SJ\",\n\t\tname: \"Svalbard & Jan Mayen\"\n\t},\n\t{\n\t\tcode: \"SK\",\n\t\tname: \"Slovakia\"\n\t},\n\t{\n\t\tcode: \"SL\",\n\t\tname: \"Sierra Leone\"\n\t},\n\t{\n\t\tcode: \"SM\",\n\t\tname: \"San Marino\"\n\t},\n\t{\n\t\tcode: \"SN\",\n\t\tname: \"Senegal\"\n\t},\n\t{\n\t\tcode: \"SO\",\n\t\tname: \"Somalia\"\n\t},\n\t{\n\t\tcode: \"SR\",\n\t\tname: \"Suriname\"\n\t},\n\t{\n\t\tcode: \"SS\",\n\t\tname: \"South Sudan\"\n\t},\n\t{\n\t\tcode: \"ST\",\n\t\tname: \"São Tomé & Príncipe\"\n\t},\n\t{\n\t\tcode: \"SV\",\n\t\tname: \"El Salvador\"\n\t},\n\t{\n\t\tcode: \"SX\",\n\t\tname: \"Sint Maarten\"\n\t},\n\t{\n\t\tcode: \"SY\",\n\t\tname: \"Syria\"\n\t},\n\t{\n\t\tcode: \"SZ\",\n\t\tname: \"Eswatini\"\n\t},\n\t{\n\t\tcode: \"TC\",\n\t\tname: \"Turks & Caicos Islands\"\n\t},\n\t{\n\t\tcode: \"TD\",\n\t\tname: \"Chad\"\n\t},\n\t{\n\t\tcode: \"TF\",\n\t\tname: \"French Southern Territories\"\n\t},\n\t{\n\t\tcode: \"TG\",\n\t\tname: \"Togo\"\n\t},\n\t{\n\t\tcode: \"TH\",\n\t\tname: \"Thailand\"\n\t},\n\t{\n\t\tcode: \"TJ\",\n\t\tname: \"Tajikistan\"\n\t},\n\t{\n\t\tcode: \"TK\",\n\t\tname: \"Tokelau\"\n\t},\n\t{\n\t\tcode: \"TL\",\n\t\tname: \"Timor-Leste\"\n\t},\n\t{\n\t\tcode: \"TM\",\n\t\tname: \"Turkmenistan\"\n\t},\n\t{\n\t\tcode: \"TN\",\n\t\tname: \"Tunisia\"\n\t},\n\t{\n\t\tcode: \"TO\",\n\t\tname: \"Tonga\"\n\t},\n\t{\n\t\tcode: \"TR\",\n\t\tname: \"Türkiye\"\n\t},\n\t{\n\t\tcode: \"TT\",\n\t\tname: \"Trinidad & Tobago\"\n\t},\n\t{\n\t\tcode: \"TV\",\n\t\tname: \"Tuvalu\"\n\t},\n\t{\n\t\tcode: \"TW\",\n\t\tname: \"Taiwan\"\n\t},\n\t{\n\t\tcode: \"TZ\",\n\t\tname: \"Tanzania\"\n\t},\n\t{\n\t\tcode: \"UA\",\n\t\tname: \"Ukraine\"\n\t},\n\t{\n\t\tcode: \"UG\",\n\t\tname: \"Uganda\"\n\t},\n\t{\n\t\tcode: \"UM\",\n\t\tname: \"U.S. Outlying Islands\"\n\t},\n\t{\n\t\tcode: \"US\",\n\t\tname: \"United States\"\n\t},\n\t{\n\t\tcode: \"UY\",\n\t\tname: \"Uruguay\"\n\t},\n\t{\n\t\tcode: \"UZ\",\n\t\tname: \"Uzbekistan\"\n\t},\n\t{\n\t\tcode: \"VA\",\n\t\tname: \"Vatican City\"\n\t},\n\t{\n\t\tcode: \"VC\",\n\t\tname: \"St. Vincent & Grenadines\"\n\t},\n\t{\n\t\tcode: \"VE\",\n\t\tname: \"Venezuela\"\n\t},\n\t{\n\t\tcode: \"VG\",\n\t\tname: \"British Virgin Islands\"\n\t},\n\t{\n\t\tcode: \"VI\",\n\t\tname: \"U.S. Virgin Islands\"\n\t},\n\t{\n\t\tcode: \"VN\",\n\t\tname: \"Vietnam\"\n\t},\n\t{\n\t\tcode: \"VU\",\n\t\tname: \"Vanuatu\"\n\t},\n\t{\n\t\tcode: \"WF\",\n\t\tname: \"Wallis & Futuna\"\n\t},\n\t{\n\t\tcode: \"WS\",\n\t\tname: \"Samoa\"\n\t},\n\t{\n\t\tcode: \"YE\",\n\t\tname: \"Yemen\"\n\t},\n\t{\n\t\tcode: \"YT\",\n\t\tname: \"Mayotte\"\n\t},\n\t{\n\t\tcode: \"ZA\",\n\t\tname: \"South Africa\"\n\t},\n\t{\n\t\tcode: \"ZM\",\n\t\tname: \"Zambia\"\n\t},\n\t{\n\t\tcode: \"ZW\",\n\t\tname: \"Zimbabwe\"\n\t}\n], Is = Fs.map((e) => e.code), Ls = new Set(Is), Rs = /* @__PURE__ */ new Map();\nfunction zs(e) {\n\treturn Ls.has(e.trim().toUpperCase());\n}\nfunction Bs(e) {\n\tlet t = Rs.get(e);\n\tif (t) return t;\n\tlet n = null;\n\ttry {\n\t\tlet t = Intl.DisplayNames;\n\t\tn = t ? new t([e], { type: \"region\" }) : null;\n\t} catch {\n\t\tn = null;\n\t}\n\tlet r = Fs.map(({ code: e, name: t }) => {\n\t\tlet r = t;\n\t\ttry {\n\t\t\tr = n?.of(e) ?? t;\n\t\t} catch {\n\t\t\tr = t;\n\t\t}\n\t\treturn {\n\t\t\tcode: e,\n\t\t\tlabel: r\n\t\t};\n\t});\n\ttry {\n\t\tlet t = new Intl.Collator(e);\n\t\tr.sort((e, n) => t.compare(e.label, n.label));\n\t} catch {\n\t\tr.sort((e, t) => e.label < t.label ? -1 : +(e.label > t.label));\n\t}\n\treturn Rs.set(e, r), r;\n}\n//#endregion\n//#region src/storefront/regions.ts\nvar Vs = {\n\tUS: [\n\t\t{\n\t\t\tcode: \"AL\",\n\t\t\tname: \"Alabama\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AK\",\n\t\t\tname: \"Alaska\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AZ\",\n\t\t\tname: \"Arizona\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AR\",\n\t\t\tname: \"Arkansas\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CA\",\n\t\t\tname: \"California\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CO\",\n\t\t\tname: \"Colorado\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CT\",\n\t\t\tname: \"Connecticut\"\n\t\t},\n\t\t{\n\t\t\tcode: \"DE\",\n\t\t\tname: \"Delaware\"\n\t\t},\n\t\t{\n\t\t\tcode: \"DC\",\n\t\t\tname: \"District of Columbia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"FL\",\n\t\t\tname: \"Florida\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GA\",\n\t\t\tname: \"Georgia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HI\",\n\t\t\tname: \"Hawaii\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ID\",\n\t\t\tname: \"Idaho\"\n\t\t},\n\t\t{\n\t\t\tcode: \"IL\",\n\t\t\tname: \"Illinois\"\n\t\t},\n\t\t{\n\t\t\tcode: \"IN\",\n\t\t\tname: \"Indiana\"\n\t\t},\n\t\t{\n\t\t\tcode: \"IA\",\n\t\t\tname: \"Iowa\"\n\t\t},\n\t\t{\n\t\t\tcode: \"KS\",\n\t\t\tname: \"Kansas\"\n\t\t},\n\t\t{\n\t\t\tcode: \"KY\",\n\t\t\tname: \"Kentucky\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LA\",\n\t\t\tname: \"Louisiana\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ME\",\n\t\t\tname: \"Maine\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MD\",\n\t\t\tname: \"Maryland\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MA\",\n\t\t\tname: \"Massachusetts\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MI\",\n\t\t\tname: \"Michigan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MN\",\n\t\t\tname: \"Minnesota\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MS\",\n\t\t\tname: \"Mississippi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MO\",\n\t\t\tname: \"Missouri\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MT\",\n\t\t\tname: \"Montana\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NE\",\n\t\t\tname: \"Nebraska\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NV\",\n\t\t\tname: \"Nevada\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NH\",\n\t\t\tname: \"New Hampshire\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NJ\",\n\t\t\tname: \"New Jersey\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NM\",\n\t\t\tname: \"New Mexico\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NY\",\n\t\t\tname: \"New York\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NC\",\n\t\t\tname: \"North Carolina\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ND\",\n\t\t\tname: \"North Dakota\"\n\t\t},\n\t\t{\n\t\t\tcode: \"OH\",\n\t\t\tname: \"Ohio\"\n\t\t},\n\t\t{\n\t\t\tcode: \"OK\",\n\t\t\tname: \"Oklahoma\"\n\t\t},\n\t\t{\n\t\t\tcode: \"OR\",\n\t\t\tname: \"Oregon\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PA\",\n\t\t\tname: \"Pennsylvania\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RI\",\n\t\t\tname: \"Rhode Island\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SC\",\n\t\t\tname: \"South Carolina\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SD\",\n\t\t\tname: \"South Dakota\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TN\",\n\t\t\tname: \"Tennessee\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TX\",\n\t\t\tname: \"Texas\"\n\t\t},\n\t\t{\n\t\t\tcode: \"UT\",\n\t\t\tname: \"Utah\"\n\t\t},\n\t\t{\n\t\t\tcode: \"VT\",\n\t\t\tname: \"Vermont\"\n\t\t},\n\t\t{\n\t\t\tcode: \"VA\",\n\t\t\tname: \"Virginia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WA\",\n\t\t\tname: \"Washington\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WV\",\n\t\t\tname: \"West Virginia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WI\",\n\t\t\tname: \"Wisconsin\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WY\",\n\t\t\tname: \"Wyoming\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AS\",\n\t\t\tname: \"American Samoa\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GU\",\n\t\t\tname: \"Guam\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MP\",\n\t\t\tname: \"Northern Mariana Islands\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PR\",\n\t\t\tname: \"Puerto Rico\"\n\t\t},\n\t\t{\n\t\t\tcode: \"VI\",\n\t\t\tname: \"U.S. Virgin Islands\"\n\t\t}\n\t],\n\tCA: [\n\t\t{\n\t\t\tcode: \"AB\",\n\t\t\tname: \"Alberta\"\n\t\t},\n\t\t{\n\t\t\tcode: \"BC\",\n\t\t\tname: \"British Columbia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MB\",\n\t\t\tname: \"Manitoba\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NB\",\n\t\t\tname: \"New Brunswick\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NL\",\n\t\t\tname: \"Newfoundland and Labrador\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NS\",\n\t\t\tname: \"Nova Scotia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NT\",\n\t\t\tname: \"Northwest Territories\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NU\",\n\t\t\tname: \"Nunavut\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ON\",\n\t\t\tname: \"Ontario\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PE\",\n\t\t\tname: \"Prince Edward Island\"\n\t\t},\n\t\t{\n\t\t\tcode: \"QC\",\n\t\t\tname: \"Quebec\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SK\",\n\t\t\tname: \"Saskatchewan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"YT\",\n\t\t\tname: \"Yukon\"\n\t\t}\n\t],\n\tAU: [\n\t\t{\n\t\t\tcode: \"ACT\",\n\t\t\tname: \"Australian Capital Territory\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NSW\",\n\t\t\tname: \"New South Wales\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NT\",\n\t\t\tname: \"Northern Territory\"\n\t\t},\n\t\t{\n\t\t\tcode: \"QLD\",\n\t\t\tname: \"Queensland\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SA\",\n\t\t\tname: \"South Australia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TAS\",\n\t\t\tname: \"Tasmania\"\n\t\t},\n\t\t{\n\t\t\tcode: \"VIC\",\n\t\t\tname: \"Victoria\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WA\",\n\t\t\tname: \"Western Australia\"\n\t\t}\n\t],\n\tNZ: [\n\t\t{\n\t\t\tcode: \"AUK\",\n\t\t\tname: \"Auckland\"\n\t\t},\n\t\t{\n\t\t\tcode: \"BOP\",\n\t\t\tname: \"Bay of Plenty\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CAN\",\n\t\t\tname: \"Canterbury\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CIT\",\n\t\t\tname: \"Chatham Islands\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GIS\",\n\t\t\tname: \"Gisborne\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HKB\",\n\t\t\tname: \"Hawke’s Bay\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MBH\",\n\t\t\tname: \"Marlborough\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MWT\",\n\t\t\tname: \"Manawatū-Whanganui\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NSN\",\n\t\t\tname: \"Nelson\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NTL\",\n\t\t\tname: \"Northland\"\n\t\t},\n\t\t{\n\t\t\tcode: \"OTA\",\n\t\t\tname: \"Otago\"\n\t\t},\n\t\t{\n\t\t\tcode: \"STL\",\n\t\t\tname: \"Southland\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TAS\",\n\t\t\tname: \"Tasman\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TKI\",\n\t\t\tname: \"Taranaki\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WGN\",\n\t\t\tname: \"Wellington\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WKO\",\n\t\t\tname: \"Waikato\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WTC\",\n\t\t\tname: \"West Coast\"\n\t\t}\n\t],\n\tBR: [\n\t\t{\n\t\t\tcode: \"AC\",\n\t\t\tname: \"Acre\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AL\",\n\t\t\tname: \"Alagoas\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AP\",\n\t\t\tname: \"Amapá\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AM\",\n\t\t\tname: \"Amazonas\"\n\t\t},\n\t\t{\n\t\t\tcode: \"BA\",\n\t\t\tname: \"Bahia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CE\",\n\t\t\tname: \"Ceará\"\n\t\t},\n\t\t{\n\t\t\tcode: \"DF\",\n\t\t\tname: \"Distrito Federal\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ES\",\n\t\t\tname: \"Espírito Santo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GO\",\n\t\t\tname: \"Goiás\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MA\",\n\t\t\tname: \"Maranhão\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MT\",\n\t\t\tname: \"Mato Grosso\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MS\",\n\t\t\tname: \"Mato Grosso do Sul\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MG\",\n\t\t\tname: \"Minas Gerais\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PA\",\n\t\t\tname: \"Pará\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PB\",\n\t\t\tname: \"Paraíba\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PR\",\n\t\t\tname: \"Paraná\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PE\",\n\t\t\tname: \"Pernambuco\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PI\",\n\t\t\tname: \"Piauí\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RJ\",\n\t\t\tname: \"Rio de Janeiro\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RN\",\n\t\t\tname: \"Rio Grande do Norte\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RS\",\n\t\t\tname: \"Rio Grande do Sul\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RO\",\n\t\t\tname: \"Rondônia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RR\",\n\t\t\tname: \"Roraima\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SC\",\n\t\t\tname: \"Santa Catarina\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SP\",\n\t\t\tname: \"São Paulo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SE\",\n\t\t\tname: \"Sergipe\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TO\",\n\t\t\tname: \"Tocantins\"\n\t\t}\n\t],\n\tMX: [\n\t\t{\n\t\t\tcode: \"AGU\",\n\t\t\tname: \"Aguascalientes\"\n\t\t},\n\t\t{\n\t\t\tcode: \"BCN\",\n\t\t\tname: \"Baja California\"\n\t\t},\n\t\t{\n\t\t\tcode: \"BCS\",\n\t\t\tname: \"Baja California Sur\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CAM\",\n\t\t\tname: \"Campeche\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CHP\",\n\t\t\tname: \"Chiapas\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CHH\",\n\t\t\tname: \"Chihuahua\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CMX\",\n\t\t\tname: \"Ciudad de México\"\n\t\t},\n\t\t{\n\t\t\tcode: \"COA\",\n\t\t\tname: \"Coahuila\"\n\t\t},\n\t\t{\n\t\t\tcode: \"COL\",\n\t\t\tname: \"Colima\"\n\t\t},\n\t\t{\n\t\t\tcode: \"DUR\",\n\t\t\tname: \"Durango\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GUA\",\n\t\t\tname: \"Guanajuato\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GRO\",\n\t\t\tname: \"Guerrero\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HID\",\n\t\t\tname: \"Hidalgo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"JAL\",\n\t\t\tname: \"Jalisco\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MEX\",\n\t\t\tname: \"Estado de México\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MIC\",\n\t\t\tname: \"Michoacán\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MOR\",\n\t\t\tname: \"Morelos\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NAY\",\n\t\t\tname: \"Nayarit\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NLE\",\n\t\t\tname: \"Nuevo León\"\n\t\t},\n\t\t{\n\t\t\tcode: \"OAX\",\n\t\t\tname: \"Oaxaca\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PUE\",\n\t\t\tname: \"Puebla\"\n\t\t},\n\t\t{\n\t\t\tcode: \"QUE\",\n\t\t\tname: \"Querétaro\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ROO\",\n\t\t\tname: \"Quintana Roo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SLP\",\n\t\t\tname: \"San Luis Potosí\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SIN\",\n\t\t\tname: \"Sinaloa\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SON\",\n\t\t\tname: \"Sonora\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TAB\",\n\t\t\tname: \"Tabasco\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TAM\",\n\t\t\tname: \"Tamaulipas\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TLA\",\n\t\t\tname: \"Tlaxcala\"\n\t\t},\n\t\t{\n\t\t\tcode: \"VER\",\n\t\t\tname: \"Veracruz\"\n\t\t},\n\t\t{\n\t\t\tcode: \"YUC\",\n\t\t\tname: \"Yucatán\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ZAC\",\n\t\t\tname: \"Zacatecas\"\n\t\t}\n\t],\n\tJP: [\n\t\t{\n\t\t\tcode: \"Hokkaido\",\n\t\t\tname: \"Hokkaido\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Aomori\",\n\t\t\tname: \"Aomori\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Iwate\",\n\t\t\tname: \"Iwate\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Miyagi\",\n\t\t\tname: \"Miyagi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Akita\",\n\t\t\tname: \"Akita\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Yamagata\",\n\t\t\tname: \"Yamagata\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Fukushima\",\n\t\t\tname: \"Fukushima\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Ibaraki\",\n\t\t\tname: \"Ibaraki\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Tochigi\",\n\t\t\tname: \"Tochigi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Gunma\",\n\t\t\tname: \"Gunma\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Saitama\",\n\t\t\tname: \"Saitama\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Chiba\",\n\t\t\tname: \"Chiba\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Tokyo\",\n\t\t\tname: \"Tokyo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Kanagawa\",\n\t\t\tname: \"Kanagawa\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Niigata\",\n\t\t\tname: \"Niigata\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Toyama\",\n\t\t\tname: \"Toyama\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Ishikawa\",\n\t\t\tname: \"Ishikawa\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Fukui\",\n\t\t\tname: \"Fukui\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Yamanashi\",\n\t\t\tname: \"Yamanashi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Nagano\",\n\t\t\tname: \"Nagano\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Gifu\",\n\t\t\tname: \"Gifu\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Shizuoka\",\n\t\t\tname: \"Shizuoka\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Aichi\",\n\t\t\tname: \"Aichi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Mie\",\n\t\t\tname: \"Mie\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Shiga\",\n\t\t\tname: \"Shiga\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Kyoto\",\n\t\t\tname: \"Kyoto\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Osaka\",\n\t\t\tname: \"Osaka\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Hyogo\",\n\t\t\tname: \"Hyogo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Nara\",\n\t\t\tname: \"Nara\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Wakayama\",\n\t\t\tname: \"Wakayama\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Tottori\",\n\t\t\tname: \"Tottori\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Shimane\",\n\t\t\tname: \"Shimane\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Okayama\",\n\t\t\tname: \"Okayama\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Hiroshima\",\n\t\t\tname: \"Hiroshima\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Yamaguchi\",\n\t\t\tname: \"Yamaguchi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Tokushima\",\n\t\t\tname: \"Tokushima\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Kagawa\",\n\t\t\tname: \"Kagawa\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Ehime\",\n\t\t\tname: \"Ehime\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Kochi\",\n\t\t\tname: \"Kochi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Fukuoka\",\n\t\t\tname: \"Fukuoka\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Saga\",\n\t\t\tname: \"Saga\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Nagasaki\",\n\t\t\tname: \"Nagasaki\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Kumamoto\",\n\t\t\tname: \"Kumamoto\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Oita\",\n\t\t\tname: \"Oita\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Miyazaki\",\n\t\t\tname: \"Miyazaki\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Kagoshima\",\n\t\t\tname: \"Kagoshima\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Okinawa\",\n\t\t\tname: \"Okinawa\"\n\t\t}\n\t],\n\tIN: [\n\t\t{\n\t\t\tcode: \"AP\",\n\t\t\tname: \"Andhra Pradesh\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AR\",\n\t\t\tname: \"Arunachal Pradesh\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AS\",\n\t\t\tname: \"Assam\"\n\t\t},\n\t\t{\n\t\t\tcode: \"BR\",\n\t\t\tname: \"Bihar\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CG\",\n\t\t\tname: \"Chhattisgarh\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GA\",\n\t\t\tname: \"Goa\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GJ\",\n\t\t\tname: \"Gujarat\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HR\",\n\t\t\tname: \"Haryana\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HP\",\n\t\t\tname: \"Himachal Pradesh\"\n\t\t},\n\t\t{\n\t\t\tcode: \"JH\",\n\t\t\tname: \"Jharkhand\"\n\t\t},\n\t\t{\n\t\t\tcode: \"KA\",\n\t\t\tname: \"Karnataka\"\n\t\t},\n\t\t{\n\t\t\tcode: \"KL\",\n\t\t\tname: \"Kerala\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MP\",\n\t\t\tname: \"Madhya Pradesh\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MH\",\n\t\t\tname: \"Maharashtra\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MN\",\n\t\t\tname: \"Manipur\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ML\",\n\t\t\tname: \"Meghalaya\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MZ\",\n\t\t\tname: \"Mizoram\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NL\",\n\t\t\tname: \"Nagaland\"\n\t\t},\n\t\t{\n\t\t\tcode: \"OD\",\n\t\t\tname: \"Odisha\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PB\",\n\t\t\tname: \"Punjab\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RJ\",\n\t\t\tname: \"Rajasthan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SK\",\n\t\t\tname: \"Sikkim\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TN\",\n\t\t\tname: \"Tamil Nadu\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TS\",\n\t\t\tname: \"Telangana\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TR\",\n\t\t\tname: \"Tripura\"\n\t\t},\n\t\t{\n\t\t\tcode: \"UP\",\n\t\t\tname: \"Uttar Pradesh\"\n\t\t},\n\t\t{\n\t\t\tcode: \"UK\",\n\t\t\tname: \"Uttarakhand\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WB\",\n\t\t\tname: \"West Bengal\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AN\",\n\t\t\tname: \"Andaman and Nicobar Islands\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CH\",\n\t\t\tname: \"Chandigarh\"\n\t\t},\n\t\t{\n\t\t\tcode: \"DH\",\n\t\t\tname: \"Dadra and Nagar Haveli and Daman and Diu\"\n\t\t},\n\t\t{\n\t\t\tcode: \"DL\",\n\t\t\tname: \"Delhi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"JK\",\n\t\t\tname: \"Jammu and Kashmir\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LA\",\n\t\t\tname: \"Ladakh\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LD\",\n\t\t\tname: \"Lakshadweep\"\n\t\t},\n\t\t{\n\t\t\tcode: \"PY\",\n\t\t\tname: \"Puducherry\"\n\t\t}\n\t],\n\tCN: [\n\t\t{\n\t\t\tcode: \"BJ\",\n\t\t\tname: \"Beijing\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TJ\",\n\t\t\tname: \"Tianjin\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HE\",\n\t\t\tname: \"Hebei\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SX\",\n\t\t\tname: \"Shanxi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NM\",\n\t\t\tname: \"Inner Mongolia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LN\",\n\t\t\tname: \"Liaoning\"\n\t\t},\n\t\t{\n\t\t\tcode: \"JL\",\n\t\t\tname: \"Jilin\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HL\",\n\t\t\tname: \"Heilongjiang\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SH\",\n\t\t\tname: \"Shanghai\"\n\t\t},\n\t\t{\n\t\t\tcode: \"JS\",\n\t\t\tname: \"Jiangsu\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ZJ\",\n\t\t\tname: \"Zhejiang\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AH\",\n\t\t\tname: \"Anhui\"\n\t\t},\n\t\t{\n\t\t\tcode: \"FJ\",\n\t\t\tname: \"Fujian\"\n\t\t},\n\t\t{\n\t\t\tcode: \"JX\",\n\t\t\tname: \"Jiangxi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SD\",\n\t\t\tname: \"Shandong\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HA\",\n\t\t\tname: \"Henan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HB\",\n\t\t\tname: \"Hubei\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HN\",\n\t\t\tname: \"Hunan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GD\",\n\t\t\tname: \"Guangdong\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GX\",\n\t\t\tname: \"Guangxi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"HI\",\n\t\t\tname: \"Hainan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CQ\",\n\t\t\tname: \"Chongqing\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SC\",\n\t\t\tname: \"Sichuan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GZ\",\n\t\t\tname: \"Guizhou\"\n\t\t},\n\t\t{\n\t\t\tcode: \"YN\",\n\t\t\tname: \"Yunnan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"XZ\",\n\t\t\tname: \"Tibet\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SN\",\n\t\t\tname: \"Shaanxi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GS\",\n\t\t\tname: \"Gansu\"\n\t\t},\n\t\t{\n\t\t\tcode: \"QH\",\n\t\t\tname: \"Qinghai\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NX\",\n\t\t\tname: \"Ningxia\"\n\t\t},\n\t\t{\n\t\t\tcode: \"XJ\",\n\t\t\tname: \"Xinjiang\"\n\t\t}\n\t],\n\tKR: [\n\t\t{\n\t\t\tcode: \"Seoul\",\n\t\t\tname: \"Seoul\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Busan\",\n\t\t\tname: \"Busan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Daegu\",\n\t\t\tname: \"Daegu\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Incheon\",\n\t\t\tname: \"Incheon\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Gwangju\",\n\t\t\tname: \"Gwangju\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Daejeon\",\n\t\t\tname: \"Daejeon\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Ulsan\",\n\t\t\tname: \"Ulsan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Sejong\",\n\t\t\tname: \"Sejong\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Gyeonggi\",\n\t\t\tname: \"Gyeonggi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Gangwon\",\n\t\t\tname: \"Gangwon\"\n\t\t},\n\t\t{\n\t\t\tcode: \"North Chungcheong\",\n\t\t\tname: \"North Chungcheong\"\n\t\t},\n\t\t{\n\t\t\tcode: \"South Chungcheong\",\n\t\t\tname: \"South Chungcheong\"\n\t\t},\n\t\t{\n\t\t\tcode: \"North Jeolla\",\n\t\t\tname: \"North Jeolla\"\n\t\t},\n\t\t{\n\t\t\tcode: \"South Jeolla\",\n\t\t\tname: \"South Jeolla\"\n\t\t},\n\t\t{\n\t\t\tcode: \"North Gyeongsang\",\n\t\t\tname: \"North Gyeongsang\"\n\t\t},\n\t\t{\n\t\t\tcode: \"South Gyeongsang\",\n\t\t\tname: \"South Gyeongsang\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Jeju\",\n\t\t\tname: \"Jeju\"\n\t\t}\n\t],\n\tMY: [\n\t\t{\n\t\t\tcode: \"Johor\",\n\t\t\tname: \"Johor\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Kedah\",\n\t\t\tname: \"Kedah\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Kelantan\",\n\t\t\tname: \"Kelantan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Melaka\",\n\t\t\tname: \"Melaka\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Negeri Sembilan\",\n\t\t\tname: \"Negeri Sembilan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Pahang\",\n\t\t\tname: \"Pahang\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Penang\",\n\t\t\tname: \"Penang\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Perak\",\n\t\t\tname: \"Perak\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Perlis\",\n\t\t\tname: \"Perlis\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Sabah\",\n\t\t\tname: \"Sabah\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Sarawak\",\n\t\t\tname: \"Sarawak\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Selangor\",\n\t\t\tname: \"Selangor\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Terengganu\",\n\t\t\tname: \"Terengganu\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Kuala Lumpur\",\n\t\t\tname: \"Kuala Lumpur\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Labuan\",\n\t\t\tname: \"Labuan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Putrajaya\",\n\t\t\tname: \"Putrajaya\"\n\t\t}\n\t],\n\tAR: [\n\t\t{\n\t\t\tcode: \"B\",\n\t\t\tname: \"Buenos Aires\"\n\t\t},\n\t\t{\n\t\t\tcode: \"C\",\n\t\t\tname: \"Ciudad Autónoma de Buenos Aires\"\n\t\t},\n\t\t{\n\t\t\tcode: \"K\",\n\t\t\tname: \"Catamarca\"\n\t\t},\n\t\t{\n\t\t\tcode: \"H\",\n\t\t\tname: \"Chaco\"\n\t\t},\n\t\t{\n\t\t\tcode: \"U\",\n\t\t\tname: \"Chubut\"\n\t\t},\n\t\t{\n\t\t\tcode: \"X\",\n\t\t\tname: \"Córdoba\"\n\t\t},\n\t\t{\n\t\t\tcode: \"W\",\n\t\t\tname: \"Corrientes\"\n\t\t},\n\t\t{\n\t\t\tcode: \"E\",\n\t\t\tname: \"Entre Ríos\"\n\t\t},\n\t\t{\n\t\t\tcode: \"P\",\n\t\t\tname: \"Formosa\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Y\",\n\t\t\tname: \"Jujuy\"\n\t\t},\n\t\t{\n\t\t\tcode: \"L\",\n\t\t\tname: \"La Pampa\"\n\t\t},\n\t\t{\n\t\t\tcode: \"F\",\n\t\t\tname: \"La Rioja\"\n\t\t},\n\t\t{\n\t\t\tcode: \"M\",\n\t\t\tname: \"Mendoza\"\n\t\t},\n\t\t{\n\t\t\tcode: \"N\",\n\t\t\tname: \"Misiones\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Q\",\n\t\t\tname: \"Neuquén\"\n\t\t},\n\t\t{\n\t\t\tcode: \"R\",\n\t\t\tname: \"Río Negro\"\n\t\t},\n\t\t{\n\t\t\tcode: \"A\",\n\t\t\tname: \"Salta\"\n\t\t},\n\t\t{\n\t\t\tcode: \"J\",\n\t\t\tname: \"San Juan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"D\",\n\t\t\tname: \"San Luis\"\n\t\t},\n\t\t{\n\t\t\tcode: \"Z\",\n\t\t\tname: \"Santa Cruz\"\n\t\t},\n\t\t{\n\t\t\tcode: \"S\",\n\t\t\tname: \"Santa Fe\"\n\t\t},\n\t\t{\n\t\t\tcode: \"G\",\n\t\t\tname: \"Santiago del Estero\"\n\t\t},\n\t\t{\n\t\t\tcode: \"V\",\n\t\t\tname: \"Tierra del Fuego\"\n\t\t},\n\t\t{\n\t\t\tcode: \"T\",\n\t\t\tname: \"Tucumán\"\n\t\t}\n\t],\n\tCL: [\n\t\t{\n\t\t\tcode: \"AI\",\n\t\t\tname: \"Aysén\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AN\",\n\t\t\tname: \"Antofagasta\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AP\",\n\t\t\tname: \"Arica y Parinacota\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AR\",\n\t\t\tname: \"La Araucanía\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AT\",\n\t\t\tname: \"Atacama\"\n\t\t},\n\t\t{\n\t\t\tcode: \"BI\",\n\t\t\tname: \"Biobío\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CO\",\n\t\t\tname: \"Coquimbo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LI\",\n\t\t\tname: \"O’Higgins\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LL\",\n\t\t\tname: \"Los Lagos\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LR\",\n\t\t\tname: \"Los Ríos\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MA\",\n\t\t\tname: \"Magallanes\"\n\t\t},\n\t\t{\n\t\t\tcode: \"ML\",\n\t\t\tname: \"Maule\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NB\",\n\t\t\tname: \"Ñuble\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RM\",\n\t\t\tname: \"Región Metropolitana de Santiago\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TA\",\n\t\t\tname: \"Tarapacá\"\n\t\t},\n\t\t{\n\t\t\tcode: \"VS\",\n\t\t\tname: \"Valparaíso\"\n\t\t}\n\t],\n\tZA: [\n\t\t{\n\t\t\tcode: \"EC\",\n\t\t\tname: \"Eastern Cape\"\n\t\t},\n\t\t{\n\t\t\tcode: \"FS\",\n\t\t\tname: \"Free State\"\n\t\t},\n\t\t{\n\t\t\tcode: \"GP\",\n\t\t\tname: \"Gauteng\"\n\t\t},\n\t\t{\n\t\t\tcode: \"KZN\",\n\t\t\tname: \"KwaZulu-Natal\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LP\",\n\t\t\tname: \"Limpopo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MP\",\n\t\t\tname: \"Mpumalanga\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NC\",\n\t\t\tname: \"Northern Cape\"\n\t\t},\n\t\t{\n\t\t\tcode: \"NW\",\n\t\t\tname: \"North West\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WC\",\n\t\t\tname: \"Western Cape\"\n\t\t}\n\t],\n\tAE: [\n\t\t{\n\t\t\tcode: \"AZ\",\n\t\t\tname: \"Abu Dhabi\"\n\t\t},\n\t\t{\n\t\t\tcode: \"AJ\",\n\t\t\tname: \"Ajman\"\n\t\t},\n\t\t{\n\t\t\tcode: \"DU\",\n\t\t\tname: \"Dubai\"\n\t\t},\n\t\t{\n\t\t\tcode: \"FU\",\n\t\t\tname: \"Fujairah\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RK\",\n\t\t\tname: \"Ras Al Khaimah\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SH\",\n\t\t\tname: \"Sharjah\"\n\t\t},\n\t\t{\n\t\t\tcode: \"UQ\",\n\t\t\tname: \"Umm Al Quwain\"\n\t\t}\n\t],\n\tIE: [\n\t\t{\n\t\t\tcode: \"CW\",\n\t\t\tname: \"Carlow\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CN\",\n\t\t\tname: \"Cavan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CE\",\n\t\t\tname: \"Clare\"\n\t\t},\n\t\t{\n\t\t\tcode: \"CO\",\n\t\t\tname: \"Cork\"\n\t\t},\n\t\t{\n\t\t\tcode: \"DL\",\n\t\t\tname: \"Donegal\"\n\t\t},\n\t\t{\n\t\t\tcode: \"D\",\n\t\t\tname: \"Dublin\"\n\t\t},\n\t\t{\n\t\t\tcode: \"G\",\n\t\t\tname: \"Galway\"\n\t\t},\n\t\t{\n\t\t\tcode: \"KY\",\n\t\t\tname: \"Kerry\"\n\t\t},\n\t\t{\n\t\t\tcode: \"KE\",\n\t\t\tname: \"Kildare\"\n\t\t},\n\t\t{\n\t\t\tcode: \"KK\",\n\t\t\tname: \"Kilkenny\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LS\",\n\t\t\tname: \"Laois\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LM\",\n\t\t\tname: \"Leitrim\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LK\",\n\t\t\tname: \"Limerick\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LD\",\n\t\t\tname: \"Longford\"\n\t\t},\n\t\t{\n\t\t\tcode: \"LH\",\n\t\t\tname: \"Louth\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MO\",\n\t\t\tname: \"Mayo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MH\",\n\t\t\tname: \"Meath\"\n\t\t},\n\t\t{\n\t\t\tcode: \"MN\",\n\t\t\tname: \"Monaghan\"\n\t\t},\n\t\t{\n\t\t\tcode: \"OY\",\n\t\t\tname: \"Offaly\"\n\t\t},\n\t\t{\n\t\t\tcode: \"RN\",\n\t\t\tname: \"Roscommon\"\n\t\t},\n\t\t{\n\t\t\tcode: \"SO\",\n\t\t\tname: \"Sligo\"\n\t\t},\n\t\t{\n\t\t\tcode: \"TA\",\n\t\t\tname: \"Tipperary\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WD\",\n\t\t\tname: \"Waterford\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WH\",\n\t\t\tname: \"Westmeath\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WX\",\n\t\t\tname: \"Wexford\"\n\t\t},\n\t\t{\n\t\t\tcode: \"WW\",\n\t\t\tname: \"Wicklow\"\n\t\t}\n\t]\n};\nfunction Hs(e) {\n\treturn Vs[e.trim().toUpperCase()] ?? null;\n}\n//#endregion\n//#region src/storefront/CheckoutFormSections.tsx\nfunction Us({ form: e, requirements: t, issues: n, updateForm: r }) {\n\tlet { t: i } = B(), [a, o] = x.useState(!!e.notes);\n\tx.useEffect(() => {\n\t\te.notes && o(!0);\n\t}, [e.notes]);\n\tlet s = t.phone !== \"none\", c = /* @__PURE__ */ T(Q, {\n\t\tlabel: i(\"storefront.checkout.name\"),\n\t\trequired: t.name === \"required\",\n\t\tinvalid: n.includes(\"name\"),\n\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\tautoComplete: \"name\",\n\t\t\tvalue: e.name,\n\t\t\tonChange: (e) => r({ name: e.target.value }),\n\t\t\t\"aria-invalid\": n.includes(\"name\") || void 0\n\t\t})\n\t});\n\treturn /* @__PURE__ */ E(K, {\n\t\tclassName: \"cs-anim-rise\",\n\t\tchildren: [/* @__PURE__ */ T(ki, { children: /* @__PURE__ */ T(ji, { children: i(\"storefront.checkout.contactTitle\") }) }), /* @__PURE__ */ E(Ai, {\n\t\t\tclassName: \"space-y-4\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T(Q, {\n\t\t\t\t\tlabel: i(\"storefront.checkout.email\"),\n\t\t\t\t\trequired: t.email === \"required\",\n\t\t\t\t\tinvalid: n.includes(\"email\"),\n\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\ttype: \"email\",\n\t\t\t\t\t\tautoComplete: \"email\",\n\t\t\t\t\t\tvalue: e.email,\n\t\t\t\t\t\tonChange: (e) => r({ email: e.target.value }),\n\t\t\t\t\t\t\"aria-invalid\": n.includes(\"email\") || void 0\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\ts ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"grid gap-4 sm:grid-cols-2\",\n\t\t\t\t\tchildren: [c, /* @__PURE__ */ T(Q, {\n\t\t\t\t\t\tlabel: i(\"storefront.checkout.phone\"),\n\t\t\t\t\t\trequired: t.phone === \"required\",\n\t\t\t\t\t\tinvalid: n.includes(\"phone\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\ttype: \"tel\",\n\t\t\t\t\t\t\tautoComplete: \"tel\",\n\t\t\t\t\t\t\tvalue: e.phone,\n\t\t\t\t\t\t\tonChange: (e) => r({ phone: e.target.value }),\n\t\t\t\t\t\t\t\"aria-invalid\": n.includes(\"phone\") || void 0\n\t\t\t\t\t\t})\n\t\t\t\t\t})]\n\t\t\t\t}) : c,\n\t\t\t\tt.fulfillmentNotes ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__notice text-xs\",\n\t\t\t\t\tchildren: t.fulfillmentNotes\n\t\t\t\t}) : null,\n\t\t\t\t/* @__PURE__ */ T(aa, {\n\t\t\t\t\topen: a,\n\t\t\t\t\tonOpenChange: o,\n\t\t\t\t\topenLabel: i(\"storefront.checkout.addOrderNote\"),\n\t\t\t\t\tcloseLabel: i(\"storefront.checkout.hideOrderNote\"),\n\t\t\t\t\tchildren: /* @__PURE__ */ T(Q, {\n\t\t\t\t\t\tlabel: i(\"storefront.checkout.orderNotes\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(\"textarea\", {\n\t\t\t\t\t\t\tclassName: \"resize-none\",\n\t\t\t\t\t\t\tvalue: e.notes,\n\t\t\t\t\t\t\tonChange: (e) => r({ notes: e.target.value }),\n\t\t\t\t\t\t\trows: 3\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t]\n\t\t})]\n\t});\n}\nfunction Ws(e) {\n\tlet { t, formatMoney: n } = B(), r = e;\n\treturn /* @__PURE__ */ E(K, {\n\t\tclassName: \"cs-anim-rise\",\n\t\tchildren: [/* @__PURE__ */ T(ki, { children: /* @__PURE__ */ T(ji, { children: t(r.requirements.shippingAddress ? \"storefront.checkout.deliveryTitle\" : \"storefront.checkout.billingTitle\") }) }), /* @__PURE__ */ E(Ai, {\n\t\t\tclassName: \"space-y-5\",\n\t\t\tchildren: [\n\t\t\t\tr.requirements.shippingAddress ? /* @__PURE__ */ T(qs, {\n\t\t\t\t\taddress: r.form.shippingAddress,\n\t\t\t\t\taddressKey: \"shippingAddress\",\n\t\t\t\t\tissue: r.issues.includes(\"shippingAddress\"),\n\t\t\t\t\tupdateAddress: r.updateAddress\n\t\t\t\t}) : null,\n\t\t\t\tr.shippingLoading ? /* @__PURE__ */ E(\"p\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__notice text-sm\",\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\tclassName: \"cs-spinner\",\n\t\t\t\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\tt(\"storefront.checkout.loadingShipping\")\n\t\t\t\t\t]\n\t\t\t\t}) : null,\n\t\t\t\tr.shippingError ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__error rounded-lg border p-3 text-sm\",\n\t\t\t\t\trole: \"alert\",\n\t\t\t\t\tchildren: r.shippingError\n\t\t\t\t}) : null,\n\t\t\t\tr.shippingRatesDeferred ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__notice text-sm\",\n\t\t\t\t\tchildren: t(\"storefront.checkout.shippingDeferred\")\n\t\t\t\t}) : null,\n\t\t\t\tr.shippingMethods.length ? /* @__PURE__ */ T(Xs, {\n\t\t\t\t\tlabel: t(\"storefront.checkout.shippingMethod\"),\n\t\t\t\t\tinvalid: r.issues.includes(\"shippingMethod\"),\n\t\t\t\t\tchildren: r.shippingMethods.map((e) => /* @__PURE__ */ E(Zs, {\n\t\t\t\t\t\tactive: r.form.shippingMethodId === e.id,\n\t\t\t\t\t\tonClick: () => r.updateForm({ shippingMethodId: e.id }),\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ E(\"span\", {\n\t\t\t\t\t\t\tclassName: \"min-w-0 flex-1 text-left\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"block text-sm font-medium\",\n\t\t\t\t\t\t\t\tchildren: e.label\n\t\t\t\t\t\t\t}), e.detail ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"block text-xs\",\n\t\t\t\t\t\t\t\tchildren: e.detail\n\t\t\t\t\t\t\t}) : null]\n\t\t\t\t\t\t}), /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\tclassName: \"text-sm font-semibold tabular-nums\",\n\t\t\t\t\t\t\tchildren: n(e.price, e.currency)\n\t\t\t\t\t\t})]\n\t\t\t\t\t}, e.id))\n\t\t\t\t}) : null,\n\t\t\t\tr.requirements.billingAddress ? /* @__PURE__ */ T(Ks, {\n\t\t\t\t\tform: r.form,\n\t\t\t\t\tissues: r.issues,\n\t\t\t\t\tcanReuseShipping: r.requirements.shippingAddress,\n\t\t\t\t\tupdateForm: r.updateForm,\n\t\t\t\t\tupdateAddress: r.updateAddress\n\t\t\t\t}) : null\n\t\t\t]\n\t\t})]\n\t});\n}\nfunction Gs({ form: e, issues: t, options: n, allowTipping: r, paymentMethodsLoading: i, updateForm: a }) {\n\tlet { t: o } = B(), [s, c] = x.useState(!!e.tipAmount);\n\treturn x.useEffect(() => {\n\t\te.tipAmount && c(!0);\n\t}, [e.tipAmount]), /* @__PURE__ */ E(K, {\n\t\tclassName: \"cs-anim-rise\",\n\t\tchildren: [/* @__PURE__ */ T(ki, { children: /* @__PURE__ */ T(ji, { children: o(\"storefront.checkout.paymentTitle\") }) }), /* @__PURE__ */ E(Ai, {\n\t\t\tclassName: \"space-y-5\",\n\t\t\tchildren: [\n\t\t\t\ti ? /* @__PURE__ */ E(\"p\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__notice text-sm\",\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\tclassName: \"cs-spinner\",\n\t\t\t\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t\" \",\n\t\t\t\t\t\to(\"storefront.checkout.loadingPaymentMethods\")\n\t\t\t\t\t]\n\t\t\t\t}) : null,\n\t\t\t\t!i && !n.length ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__error rounded-lg border p-3 text-sm\",\n\t\t\t\t\trole: \"alert\",\n\t\t\t\t\tchildren: o(\"storefront.checkout.paymentUnavailable\")\n\t\t\t\t}) : null,\n\t\t\t\tn.length === 1 ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"space-y-2\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"text-sm font-medium\",\n\t\t\t\t\t\tchildren: o(\"storefront.checkout.paymentMethod\")\n\t\t\t\t\t}), /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"flex items-center justify-between gap-3 rounded-lg border p-3\",\n\t\t\t\t\t\tchildren: /* @__PURE__ */ E(\"span\", {\n\t\t\t\t\t\t\tclassName: \"min-w-0\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"block text-sm font-medium\",\n\t\t\t\t\t\t\t\tchildren: n[0].label\n\t\t\t\t\t\t\t}), n[0].description ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"block text-xs\",\n\t\t\t\t\t\t\t\tchildren: n[0].description\n\t\t\t\t\t\t\t}) : null]\n\t\t\t\t\t\t})\n\t\t\t\t\t})]\n\t\t\t\t}) : n.length ? /* @__PURE__ */ T(Xs, {\n\t\t\t\t\tlabel: o(\"storefront.checkout.paymentMethod\"),\n\t\t\t\t\tinvalid: t.includes(\"paymentMethod\"),\n\t\t\t\t\tchildren: n.map((t) => /* @__PURE__ */ T(Zs, {\n\t\t\t\t\t\tactive: e.paymentMethodId === t.id,\n\t\t\t\t\t\tonClick: () => a({ paymentMethodId: t.id }),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ E(\"span\", {\n\t\t\t\t\t\t\tclassName: \"min-w-0 text-left\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"block text-sm font-medium\",\n\t\t\t\t\t\t\t\tchildren: t.label\n\t\t\t\t\t\t\t}), t.description ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"block text-xs\",\n\t\t\t\t\t\t\t\tchildren: t.description\n\t\t\t\t\t\t\t}) : null]\n\t\t\t\t\t\t})\n\t\t\t\t\t}, t.id))\n\t\t\t\t}) : null,\n\t\t\t\tr ? /* @__PURE__ */ T(aa, {\n\t\t\t\t\topen: s,\n\t\t\t\t\tonOpenChange: c,\n\t\t\t\t\topenLabel: o(\"storefront.checkout.addTip\"),\n\t\t\t\t\tcloseLabel: o(\"storefront.checkout.hideTip\"),\n\t\t\t\t\tchildren: /* @__PURE__ */ T(Q, {\n\t\t\t\t\t\tlabel: o(\"storefront.checkout.tipAmount\"),\n\t\t\t\t\t\tinvalid: t.includes(\"tipAmount\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\ttype: \"number\",\n\t\t\t\t\t\t\tmin: \"0\",\n\t\t\t\t\t\t\tstep: \"0.01\",\n\t\t\t\t\t\t\tinputMode: \"decimal\",\n\t\t\t\t\t\t\tvalue: e.tipAmount,\n\t\t\t\t\t\t\tonChange: (e) => a({ tipAmount: e.target.value }),\n\t\t\t\t\t\t\t\"aria-invalid\": t.includes(\"tipAmount\") || void 0\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t}) : null\n\t\t\t]\n\t\t})]\n\t});\n}\nfunction Ks({ form: e, issues: t, canReuseShipping: n, updateForm: r, updateAddress: i }) {\n\tlet { t: a } = B(), o = !n || !e.billingSameAsShipping;\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"space-y-4\",\n\t\tchildren: [n ? /* @__PURE__ */ E(\"label\", {\n\t\t\tclassName: \"flex items-center gap-2 text-sm font-medium\",\n\t\t\tchildren: [/* @__PURE__ */ T(\"input\", {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tchecked: e.billingSameAsShipping,\n\t\t\t\tonChange: (e) => r({ billingSameAsShipping: e.target.checked })\n\t\t\t}), a(\"storefront.checkout.billingSameAsShipping\")]\n\t\t}) : null, o ? /* @__PURE__ */ T(qs, {\n\t\t\taddress: e.billingAddress,\n\t\t\taddressKey: \"billingAddress\",\n\t\t\tissue: t.includes(\"billingAddress\"),\n\t\t\tupdateAddress: i\n\t\t}) : null]\n\t});\n}\nfunction qs({ address: e, addressKey: t, issue: n, updateAddress: r }) {\n\tlet { t: i } = B(), a = (e) => r(t, e);\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: G(\"space-y-4\", n && \"cedros-shop-public__error cedros-shop-public__invalid-shake\"),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(Q, {\n\t\t\t\tlabel: i(\"storefront.checkout.addressLine1\"),\n\t\t\t\trequired: !0,\n\t\t\t\tinvalid: n && !e.line1.trim(),\n\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\tautoComplete: t === \"shippingAddress\" ? \"shipping address-line1\" : \"billing address-line1\",\n\t\t\t\t\tvalue: e.line1,\n\t\t\t\t\tonChange: (e) => a({ line1: e.target.value })\n\t\t\t\t})\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(Q, {\n\t\t\t\tlabel: i(\"storefront.checkout.addressLine2\"),\n\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\tautoComplete: t === \"shippingAddress\" ? \"shipping address-line2\" : \"billing address-line2\",\n\t\t\t\t\tvalue: e.line2 ?? \"\",\n\t\t\t\t\tonChange: (e) => a({ line2: e.target.value })\n\t\t\t\t})\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"grid gap-4 sm:grid-cols-2\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ T(Q, {\n\t\t\t\t\t\tlabel: i(\"storefront.checkout.city\"),\n\t\t\t\t\t\trequired: !0,\n\t\t\t\t\t\tinvalid: n && !e.city.trim(),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tautoComplete: t === \"shippingAddress\" ? \"shipping address-level2\" : \"billing address-level2\",\n\t\t\t\t\t\t\tvalue: e.city,\n\t\t\t\t\t\t\tonChange: (e) => a({ city: e.target.value })\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(Q, {\n\t\t\t\t\t\tlabel: i(\"storefront.checkout.region\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(Js, {\n\t\t\t\t\t\t\tcountry: e.country,\n\t\t\t\t\t\t\tautoComplete: t === \"shippingAddress\" ? \"shipping address-level1\" : \"billing address-level1\",\n\t\t\t\t\t\t\tvalue: e.state ?? \"\",\n\t\t\t\t\t\t\tonChange: (e) => a({ state: e })\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(Q, {\n\t\t\t\t\t\tlabel: i(\"storefront.checkout.postalCode\"),\n\t\t\t\t\t\trequired: !0,\n\t\t\t\t\t\tinvalid: n && !e.postalCode.trim(),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tautoComplete: t === \"shippingAddress\" ? \"shipping postal-code\" : \"billing postal-code\",\n\t\t\t\t\t\t\tvalue: e.postalCode,\n\t\t\t\t\t\t\tonChange: (e) => a({ postalCode: e.target.value })\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(Q, {\n\t\t\t\t\t\tlabel: i(\"storefront.checkout.country\"),\n\t\t\t\t\t\trequired: !0,\n\t\t\t\t\t\tinvalid: n && !e.country.trim(),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(Ys, {\n\t\t\t\t\t\t\tautoComplete: t === \"shippingAddress\" ? \"shipping country\" : \"billing country\",\n\t\t\t\t\t\t\tvalue: e.country,\n\t\t\t\t\t\t\tinvalid: n && !e.country.trim(),\n\t\t\t\t\t\t\tonChange: (e) => a({ country: e })\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t})\n\t\t]\n\t});\n}\nfunction Js({ country: e, value: t, autoComplete: n, onChange: r }) {\n\tlet { t: i } = B(), a = Hs(e);\n\tif (!a) return /* @__PURE__ */ T(X, {\n\t\tautoComplete: n,\n\t\tvalue: t,\n\t\tonChange: (e) => r(e.target.value)\n\t});\n\tlet o = a.some((e) => e.code === t);\n\treturn /* @__PURE__ */ E(\"span\", {\n\t\tclassName: \"cedros-shop-public__select-field\",\n\t\tchildren: [/* @__PURE__ */ E(\"select\", {\n\t\t\tclassName: \"cedros-shop-public__select-trigger flex h-10 w-full items-center justify-between rounded-md border px-3 py-2 text-sm shadow-sm focus-visible:outline-none focus-visible:ring-2\",\n\t\t\tautoComplete: n,\n\t\t\tvalue: t,\n\t\t\tonChange: (e) => r(e.target.value),\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T(\"option\", {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t\tdisabled: !0,\n\t\t\t\t\tchildren: i(\"storefront.checkout.selectRegion\")\n\t\t\t\t}),\n\t\t\t\tt && !o ? /* @__PURE__ */ T(\"option\", {\n\t\t\t\t\tvalue: t,\n\t\t\t\t\tchildren: t\n\t\t\t\t}) : null,\n\t\t\t\ta.map((e) => /* @__PURE__ */ T(\"option\", {\n\t\t\t\t\tvalue: e.code,\n\t\t\t\t\tchildren: e.name\n\t\t\t\t}, e.code))\n\t\t\t]\n\t\t}), /* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: \"cedros-shop-public__select-arrow\",\n\t\t\t\"aria-hidden\": \"true\"\n\t\t})]\n\t});\n}\nfunction Ys({ value: e, invalid: t, autoComplete: n, onChange: r }) {\n\tlet { t: i, locale: a } = B(), o = x.useMemo(() => Bs(a), [a]), s = e.trim().toUpperCase(), c = zs(e) ? s : e;\n\treturn /* @__PURE__ */ E(\"span\", {\n\t\tclassName: \"cedros-shop-public__select-field\",\n\t\tchildren: [/* @__PURE__ */ E(\"select\", {\n\t\t\tclassName: \"cedros-shop-public__select-trigger flex h-10 w-full items-center justify-between rounded-md border px-3 py-2 text-sm shadow-sm focus-visible:outline-none focus-visible:ring-2\",\n\t\t\tautoComplete: n,\n\t\t\tvalue: c,\n\t\t\t\"aria-invalid\": t || void 0,\n\t\t\tonChange: (e) => r(e.target.value),\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T(\"option\", {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t\tdisabled: !0,\n\t\t\t\t\tchildren: i(\"storefront.checkout.selectCountry\")\n\t\t\t\t}),\n\t\t\t\tc && !zs(c) ? /* @__PURE__ */ T(\"option\", {\n\t\t\t\t\tvalue: c,\n\t\t\t\t\tchildren: c\n\t\t\t\t}) : null,\n\t\t\t\to.map((e) => /* @__PURE__ */ T(\"option\", {\n\t\t\t\t\tvalue: e.code,\n\t\t\t\t\tchildren: e.label\n\t\t\t\t}, e.code))\n\t\t\t]\n\t\t}), /* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: \"cedros-shop-public__select-arrow\",\n\t\t\t\"aria-hidden\": \"true\"\n\t\t})]\n\t});\n}\nfunction Q({ label: e, required: t, invalid: n, children: r }) {\n\tlet { t: i } = B(), a = n && x.isValidElement(r) ? x.cloneElement(r, { \"aria-invalid\": !0 }) : r;\n\treturn /* @__PURE__ */ E(\"label\", {\n\t\tclassName: G(\"block space-y-2 text-sm font-medium\", n && \"cedros-shop-public__error cedros-shop-public__invalid-shake\"),\n\t\tchildren: [/* @__PURE__ */ E(\"span\", { children: [e, t ? /* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: \"ml-1 text-xs\",\n\t\t\tchildren: i(\"storefront.checkout.required\")\n\t\t}) : null] }), a]\n\t});\n}\nfunction Xs({ label: e, invalid: t, children: n }) {\n\tlet r = x.useId();\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\trole: \"group\",\n\t\t\"aria-labelledby\": r,\n\t\tclassName: G(\"space-y-2\", t && \"cedros-shop-public__error cedros-shop-public__invalid-shake\"),\n\t\tchildren: [/* @__PURE__ */ T(\"div\", {\n\t\t\tid: r,\n\t\t\tclassName: \"text-sm font-medium\",\n\t\t\tchildren: e\n\t\t}), /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"grid gap-2\",\n\t\t\tchildren: n\n\t\t})]\n\t});\n}\nfunction Zs({ active: e, onClick: t, children: n }) {\n\treturn /* @__PURE__ */ T(\"button\", {\n\t\ttype: \"button\",\n\t\t\"aria-pressed\": e,\n\t\tonClick: t,\n\t\tclassName: \"flex min-h-0 w-full items-center justify-between gap-3 rounded-lg border p-3 text-left\",\n\t\tchildren: n\n\t});\n}\n//#endregion\n//#region src/storefront/checkoutRequirements.ts\nvar Qs = {\n\tnone: 0,\n\toptional: 1,\n\trequired: 2\n};\nfunction $s(e, t) {\n\tlet n = !1, r = !1, i = /* @__PURE__ */ new Set(), a = t.requireEmail ? \"required\" : \"none\", o = t.defaultMode === \"none\" ? \"none\" : \"optional\", s = t.defaultMode === \"full\" ? \"optional\" : \"none\", c = t.allowShipping && (t.defaultMode === \"shipping\" || t.defaultMode === \"full\"), l = t.defaultMode === \"full\";\n\tfor (let u of e) {\n\t\ttc(u) ? (r = !0, c = t.allowShipping || c) : n = !0;\n\t\tlet e = ec(u.metadata?.checkoutRequirements);\n\t\te?.email && (a = nc(a, e.email)), e?.name && (o = nc(o, e.name)), e?.phone && (s = nc(s, e.phone)), typeof e?.shippingAddress == \"boolean\" && (c ||= e.shippingAddress), typeof e?.billingAddress == \"boolean\" && (l ||= e.billingAddress), u.metadata?.fulfillmentNotes && i.add(u.metadata.fulfillmentNotes);\n\t}\n\tlet u = n && !r;\n\treturn {\n\t\temail: a,\n\t\tname: o,\n\t\tphone: s,\n\t\tshippingAddress: !u && c,\n\t\tbillingAddress: l,\n\t\tfulfillmentNotes: Array.from(i).join(\" \"),\n\t\tisDigitalOnly: u,\n\t\thasPhysical: r\n\t};\n}\nfunction ec(e) {\n\tif (!e) return null;\n\ttry {\n\t\tlet t = JSON.parse(e);\n\t\treturn t && typeof t == \"object\" ? t : null;\n\t} catch {\n\t\treturn null;\n\t}\n}\nfunction tc(e) {\n\tlet t = e.metadata?.fulfillmentType;\n\treturn t === \"digital_download\" || t === \"service\" ? !1 : t === \"shipping\" || e.metadata?.shippingProfile !== \"digital\";\n}\nfunction nc(e, t) {\n\treturn Qs[e] >= Qs[t] ? e : t;\n}\n//#endregion\n//#region src/storefront/checkoutModel.ts\nvar rc = {\n\tline1: \"\",\n\tline2: \"\",\n\tcity: \"\",\n\tstate: \"\",\n\tpostalCode: \"\",\n\tcountry: \"\"\n};\nfunction ic(e) {\n\tlet t = e.market?.country?.trim().toUpperCase() ?? \"\";\n\treturn ac({\n\t\temail: e.customer?.email ?? \"\",\n\t\tname: e.customer?.name ?? \"\",\n\t\tphone: e.customer?.phone ?? \"\",\n\t\tnotes: \"\",\n\t\tshippingAddress: {\n\t\t\t...rc,\n\t\t\tcountry: zs(t) ? t : \"\"\n\t\t},\n\t\tbillingAddress: { ...rc },\n\t\tbillingSameAsShipping: !0,\n\t\tshippingMethodId: \"\",\n\t\tpaymentMethodId: \"\",\n\t\ttipAmount: \"\"\n\t}, e.customer?.savedCheckout);\n}\nfunction ac(e, t) {\n\treturn t ? {\n\t\t...e,\n\t\temail: Cc(e.email, t.email),\n\t\tname: Cc(e.name, t.name),\n\t\tphone: Cc(e.phone, t.phone),\n\t\tshippingAddress: wc(e.shippingAddress, t.shippingAddress),\n\t\tbillingAddress: wc(e.billingAddress, t.billingAddress),\n\t\tbillingSameAsShipping: t.billingSameAsShipping ?? e.billingSameAsShipping,\n\t\tshippingMethodId: Cc(e.shippingMethodId, t.preferredShippingMethodId),\n\t\tpaymentMethodId: Cc(e.paymentMethodId, t.preferredPaymentMethodId)\n\t} : e;\n}\nfunction oc(e) {\n\tlet t = [], { form: n, requirements: r } = e;\n\treturn r.email === \"required\" && !bc(n.email) && t.push(\"email\"), r.name === \"required\" && !n.name.trim() && t.push(\"name\"), r.phone === \"required\" && !n.phone.trim() && t.push(\"phone\"), r.shippingAddress && !yc(n.shippingAddress) && t.push(\"shippingAddress\"), e.shippingMethodRequired && e.shippingMethods.length > 0 && !n.shippingMethodId && t.push(\"shippingMethod\"), r.billingAddress && !mc(n, r) && !yc(n.billingAddress) && t.push(\"billingAddress\"), (e.paymentOptions.length === 0 || !n.paymentMethodId) && t.push(\"paymentMethod\"), e.allowTipping && !xc(n.tipAmount) && t.push(\"tipAmount\"), t;\n}\nfunction sc(e, t, n) {\n\tlet r = e.checkout.paymentMethods;\n\treturn r?.length ? r.filter((e) => _c(e.id, t)) : [...[\n\t\t\"card\",\n\t\t\"crypto\",\n\t\t\"credits\"\n\t].filter((e) => t[e]).map((e) => n[e]), ...t.localMethods ?? []];\n}\nfunction cc(e) {\n\tlet t = Sc(e.form.tipAmount), n = e.showPromoCode ? ht([...e.promoCodes ?? [], e.promoCode]).slice(0, 1) : [], r = fc(e.cartItems) ?? dc(e.config, e.market);\n\treturn {\n\t\tcart: e.cartItems.map((e) => ({\n\t\t\tresource: e.paymentResource ?? e.productId,\n\t\t\tquantity: e.qty,\n\t\t\tvariantId: e.variantId\n\t\t})),\n\t\tcustomer: pc(e.form, e.requirements),\n\t\toptions: {\n\t\t\tcurrency: r,\n\t\t\tsuccessUrl: e.config.checkout.successUrl,\n\t\t\tcancelUrl: e.config.checkout.cancelUrl,\n\t\t\tallowPromoCodes: e.showPromoCode,\n\t\t\tdiscountCode: n[0],\n\t\t\tdiscountCodes: n.length ? n : void 0,\n\t\t\tpromotionContext: gc(e.promotionContext),\n\t\t\ttipAmount: t,\n\t\t\tshippingMethodId: e.form.shippingMethodId || void 0,\n\t\t\tpaymentMethodId: e.form.paymentMethodId || void 0,\n\t\t\tmetadata: hc(e.config, e.requirements, e.form, e.quote, n, e.promotionContext, e.market)\n\t\t}\n\t};\n}\nfunction lc(e) {\n\treturn !!(e.country.trim() && e.postalCode.trim());\n}\nfunction uc(e, t, n, r) {\n\tlet i = Sc(r) ?? 0, a = n?.price;\n\treturn {\n\t\tsubtotal: e,\n\t\tshippingTotal: a,\n\t\ttipAmount: i,\n\t\ttaxTotal: void 0,\n\t\ttotal: e + (a ?? 0) + i,\n\t\tcurrency: t\n\t};\n}\nfunction dc(e, t) {\n\treturn t?.currency || e.currency;\n}\nfunction fc(e) {\n\tlet t = e[0]?.currency;\n\treturn t && e.every((e) => e.currency === t) ? t : void 0;\n}\nfunction pc(e, t) {\n\treturn {\n\t\temail: e.email.trim() || void 0,\n\t\tname: e.name.trim() || void 0,\n\t\tphone: e.phone.trim() || void 0,\n\t\tnotes: e.notes.trim() || t.fulfillmentNotes || void 0,\n\t\tshippingAddress: t.shippingAddress ? vc(e.shippingAddress) : void 0,\n\t\tbillingAddress: t.billingAddress ? vc(mc(e, t) ? e.shippingAddress : e.billingAddress) : void 0\n\t};\n}\nfunction mc(e, t) {\n\treturn t.shippingAddress && e.billingSameAsShipping;\n}\nfunction hc(e, t, n, r, i = [], a, o) {\n\treturn Object.fromEntries(Object.entries({\n\t\textensionId: \"cedros-shop\",\n\t\tcheckoutMode: e.checkout.mode,\n\t\tmarketId: o?.id,\n\t\tmarketCurrency: o?.currency,\n\t\tmarketPricingStrategy: o?.pricing.strategy,\n\t\tshippingRequired: String(t.shippingAddress),\n\t\tpaymentMethodId: n.paymentMethodId || void 0,\n\t\tshippingMethodId: n.shippingMethodId || void 0,\n\t\tquoteId: r?.id,\n\t\tpromotionCodeCount: i.length ? String(i.length) : void 0,\n\t\tpromotionSource: a?.source\n\t}).filter(([, e]) => e));\n}\nfunction gc(e) {\n\tif (!e) return;\n\tlet t = {\n\t\tsource: e.source,\n\t\trecoveryToken: e.recoveryToken?.trim() || void 0,\n\t\trecoveryCode: e.recoveryCode?.trim() || void 0,\n\t\tlandingPath: e.landingPath?.trim() || void 0\n\t};\n\treturn Object.values(t).some(Boolean) ? t : void 0;\n}\nfunction _c(e, t) {\n\treturn e === \"card\" || e === \"stripe\" ? t.card : e === \"crypto\" || e === \"x402\" ? t.crypto : e === \"credits\" ? t.credits : !!t.localMethods?.some((t) => t.id === e);\n}\nfunction vc(e) {\n\treturn {\n\t\tline1: e.line1.trim(),\n\t\tline2: e.line2?.trim() || void 0,\n\t\tcity: e.city.trim(),\n\t\tstate: e.state?.trim() || void 0,\n\t\tpostalCode: e.postalCode.trim(),\n\t\tcountry: e.country.trim().toUpperCase()\n\t};\n}\nfunction yc(e) {\n\treturn !!(e.line1.trim() && e.city.trim() && e.postalCode.trim() && e.country.trim());\n}\nfunction bc(e) {\n\treturn /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(e.trim());\n}\nfunction xc(e) {\n\tif (!e.trim()) return !0;\n\tlet t = Number(e);\n\treturn Number.isFinite(t) && t >= 0;\n}\nfunction Sc(e) {\n\tif (!e.trim()) return;\n\tlet t = Number(e);\n\treturn Number.isFinite(t) && t > 0 ? Math.round(t * 100) / 100 : void 0;\n}\nfunction Cc(e, t) {\n\treturn e.trim() || !t?.trim() ? e : t;\n}\nfunction wc(e, t) {\n\treturn t ? {\n\t\tline1: Cc(e.line1, t.line1),\n\t\tline2: Cc(e.line2 ?? \"\", t.line2) || void 0,\n\t\tcity: Cc(e.city, t.city),\n\t\tstate: Cc(e.state ?? \"\", t.state) || void 0,\n\t\tpostalCode: Cc(e.postalCode, t.postalCode),\n\t\tcountry: Cc(e.country, t.country)\n\t} : e;\n}\n//#endregion\n//#region src/storefront/checkoutRuntime.ts\nfunction Tc(e, t) {\n\treturn e.kind === \"redirect\" ? t(\"storefront.checkout.opening\") : t(\"storefront.checkout.created\");\n}\nfunction Ec(e) {\n\treturn {\n\t\tcard: {\n\t\t\tid: \"card\",\n\t\t\tlabel: e(\"storefront.checkout.paymentCard\"),\n\t\t\tdescription: e(\"storefront.checkout.paymentCardDescription\")\n\t\t},\n\t\tcrypto: {\n\t\t\tid: \"crypto\",\n\t\t\tlabel: e(\"storefront.checkout.paymentCrypto\"),\n\t\t\tdescription: e(\"storefront.checkout.paymentCryptoDescription\")\n\t\t},\n\t\tcredits: {\n\t\t\tid: \"credits\",\n\t\t\tlabel: e(\"storefront.checkout.paymentCredits\"),\n\t\t\tdescription: e(\"storefront.checkout.paymentCreditsDescription\")\n\t\t}\n\t};\n}\nfunction Dc(e) {\n\treturn e.some((e) => e !== \"shippingMethod\" && e !== \"paymentMethod\");\n}\nasync function Oc(e, t, n) {\n\treturn e ? e(t) : n;\n}\nfunction kc(e) {\n\treturn e.canCheckout ? e.isSubmitting ? e.t(\"storefront.checkout.preparing\") : e.hasInventoryIssues ? e.t(\"storefront.cart.checkoutBlocked\") : e.paymentMethodsLoading ? e.t(\"storefront.checkout.loadingPaymentMethods\") : e.shippingLoading ? e.t(\"storefront.checkout.loadingShipping\") : e.shippingError ? e.shippingError : e.quoteError ? e.quoteError : Ac(e.validationIssues[0], e.t) : e.t(\"storefront.checkout.unavailable\");\n}\nfunction Ac(e, t) {\n\tif (e) return t(e === \"paymentMethod\" ? \"storefront.checkout.selectPaymentMethod\" : e === \"shippingMethod\" ? \"storefront.checkout.selectShippingMethod\" : \"storefront.checkout.completeRequiredFields\");\n}\nfunction jc() {\n\tlet e = new URLSearchParams(window.location.search);\n\treturn Object.fromEntries(Array.from(e.entries()));\n}\n//#endregion\n//#region src/storefront/useCheckoutTemplateController.ts\nvar Mc = /* @__PURE__ */ new Set([\n\t\"returnArtifact\",\n\t\"session_id\",\n\t\"checkout_session_id\",\n\t\"orderId\",\n\t\"order_id\",\n\t\"demoOrderId\",\n\t\"status\",\n\t\"checkout\",\n\t\"canceled\",\n\t\"cancelled\",\n\t\"cancel\",\n\t\"error\",\n\t\"error_message\",\n\t\"message\"\n]), Nc = 500;\nfunction Pc(e, t) {\n\tlet [n, r] = x.useState(() => ic(e)), i = x.useCallback((e) => r((t) => ({\n\t\t...t,\n\t\t...e\n\t})), []), a = x.useCallback((e, t) => {\n\t\tr((n) => {\n\t\t\tlet r = n[e], i = t.country !== void 0 && t.country !== r.country, a = e === \"shippingAddress\" && (i || t.postalCode !== void 0 && t.postalCode !== r.postalCode), o = {\n\t\t\t\t...r,\n\t\t\t\t...t,\n\t\t\t\t...i && t.state === void 0 ? { state: \"\" } : {}\n\t\t\t};\n\t\t\treturn {\n\t\t\t\t...n,\n\t\t\t\t[e]: o,\n\t\t\t\tshippingMethodId: a ? \"\" : n.shippingMethodId\n\t\t\t};\n\t\t});\n\t}, []);\n\treturn x.useEffect(() => {\n\t\tt.length && !t.some((e) => e.id === n.paymentMethodId) && i({ paymentMethodId: t[0].id });\n\t}, [\n\t\tn.paymentMethodId,\n\t\tt,\n\t\ti\n\t]), x.useEffect(() => {\n\t\tif (!e.customer?.isSignedIn || !e.adapter.getSavedCheckoutData) return;\n\t\tlet t = !1;\n\t\treturn e.adapter.getSavedCheckoutData().then((e) => {\n\t\t\t!t && e && r((t) => ac(t, e));\n\t\t}).catch((e) => {\n\t\t\tt || console.warn(\"[cedros] Saved checkout defaults failed to load\", e instanceof Error ? e.message : String(e ?? \"\"));\n\t\t}), () => {\n\t\t\tt = !0;\n\t\t};\n\t}, [\n\t\te.adapter,\n\t\te.customer?.id,\n\t\te.customer?.isSignedIn\n\t]), {\n\t\tform: n,\n\t\tupdateForm: i,\n\t\tupdateAddress: a\n\t};\n}\nfunction Fc(e, t, n, r, i, a) {\n\tlet [o, s] = x.useState([]), [c, l] = x.useState(!1), [u, d] = x.useState(null);\n\tx.useEffect(() => {\n\t\to.length && !o.some((e) => e.id === n.shippingMethodId) && a({ shippingMethodId: o[0].id });\n\t}, [\n\t\tn.shippingMethodId,\n\t\to,\n\t\ta\n\t]);\n\tlet f = e.adapter.getShippingMethods, p = x.useMemo(() => JSON.stringify({\n\t\tcurrency: i,\n\t\tshippingAddress: n.shippingAddress\n\t}), [i, n.shippingAddress]), m = x.useRef(n.shippingAddress);\n\treturn m.current = n.shippingAddress, x.useEffect(() => {\n\t\tlet e = m.current;\n\t\tif (!r.shippingAddress || !f || !lc(e)) {\n\t\t\ts([]), d(null), l(!1);\n\t\t\treturn;\n\t\t}\n\t\tlet n = !1;\n\t\tl(!0), d(null);\n\t\tlet a = window.setTimeout(() => Promise.resolve().then(() => f({\n\t\t\tcurrency: i,\n\t\t\tcustomer: { shippingAddress: e }\n\t\t})).then((e) => {\n\t\t\tn || s(e);\n\t\t}).catch((e) => {\n\t\t\tn || (Wc(\"shipping rates\", e), d(t(\"storefront.checkout.shippingError\")));\n\t\t}).finally(() => {\n\t\t\tn || l(!1);\n\t\t}), Nc);\n\t\treturn () => {\n\t\t\tn = !0, window.clearTimeout(a);\n\t\t};\n\t}, [\n\t\ti,\n\t\tf,\n\t\tp,\n\t\tr.shippingAddress,\n\t\tt\n\t]), {\n\t\tmethods: o,\n\t\tsetMethods: s,\n\t\tloading: c,\n\t\terror: u\n\t};\n}\nfunction Ic(e, t, n, r, i) {\n\tlet [a, o] = x.useState(null), [s, c] = x.useState(!1), [l, u] = x.useState(null), d = x.useMemo(() => JSON.stringify(n), [n]), f = x.useRef(n);\n\tf.current = n;\n\tlet p = e.adapter.createCheckoutQuote;\n\treturn x.useEffect(() => {\n\t\tif (!r || !p) {\n\t\t\to(null), u(null), c(!1);\n\t\t\treturn;\n\t\t}\n\t\tlet e = !1;\n\t\tc(!0), u(null);\n\t\tlet n = window.setTimeout(() => Promise.resolve().then(() => p(f.current)).then((t) => {\n\t\t\te || (o(t), t.shippingMethods?.length && i(t.shippingMethods));\n\t\t}).catch((n) => {\n\t\t\te || (Wc(\"quote\", n), u(t(\"storefront.checkout.quoteError\")));\n\t\t}).finally(() => {\n\t\t\te || c(!1);\n\t\t}), Nc);\n\t\treturn () => {\n\t\t\te = !0, window.clearTimeout(n);\n\t\t};\n\t}, [\n\t\tp,\n\t\tr,\n\t\td,\n\t\ti,\n\t\tt\n\t]), {\n\t\tquote: a,\n\t\tsetQuote: o,\n\t\tloading: s,\n\t\terror: l\n\t};\n}\nfunction Lc() {\n\tlet [e, t] = x.useState(null), [n, r] = x.useState(null), [i, a] = x.useState(null), [o, s] = x.useState(!1), [c, l] = x.useState(!1);\n\treturn {\n\t\tmessage: e,\n\t\tsetMessage: t,\n\t\terror: n,\n\t\tsetError: r,\n\t\tconfirmation: i,\n\t\tsetConfirmation: a,\n\t\tisSubmitting: o,\n\t\tsetIsSubmitting: s,\n\t\thasAttempted: c,\n\t\tsetHasAttempted: l\n\t};\n}\nasync function Rc(e, t) {\n\tif (e.kind !== \"idle\") {\n\t\tif (await Fr(t.attemptStore, t.attemptScope, e.checkoutAttemptId) !== \"cleared\") throw Error(\"Checkout return does not match the active attempt\");\n\t\tJc(), e.kind === \"success\" ? (t.status.setConfirmation({ orderId: e.orderId }), t.status.setMessage(null), t.status.setError(null), t.cart.clear()) : e.kind === \"cancel\" ? (t.status.setMessage(null), t.status.setError(t.t(\"storefront.checkout.cancelled\"))) : (t.status.setMessage(null), t.status.setError(e.message || t.t(\"storefront.checkout.returnError\")));\n\t}\n}\nfunction zc(e) {\n\tlet t = x.useRef(null), n = x.useRef(null), r = x.useRef(e);\n\tr.current = e, x.useEffect(() => {\n\t\tlet i = e.config.adapter.resolveCheckoutReturn;\n\t\tif (!i || typeof window > \"u\") return;\n\t\tlet a = Kc(jc()), o = qc(a);\n\t\tif (!o || t.current === o || n.current === o) return;\n\t\tlet s = !1;\n\t\treturn n.current = o, Ir(e.attemptStore, e.attemptScope).then((e) => {\n\t\t\tif (!e) throw Error(\"No active checkout attempt is available for return verification\");\n\t\t\treturn i({\n\t\t\t\tquery: a,\n\t\t\t\texpectedAttemptId: e.attemptId\n\t\t\t});\n\t\t}).then(async (e) => {\n\t\t\tif (!s) {\n\t\t\t\tif (n.current === o && (n.current = null), e.kind === \"idle\") {\n\t\t\t\t\tt.current = o;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tawait Rc(e, r.current), s || (t.current = o);\n\t\t\t}\n\t\t}).catch(() => {\n\t\t\ts || (n.current === o && (n.current = null), r.current.status.setMessage(null), r.current.status.setError(r.current.t(\"storefront.checkout.returnError\")));\n\t\t}), () => {\n\t\t\ts = !0, n.current === o && (n.current = null);\n\t\t};\n\t}, [\n\t\te.attemptScope,\n\t\te.attemptStore,\n\t\te.config.adapter,\n\t\te.t\n\t]);\n}\nasync function Bc(e) {\n\tlet t;\n\ttry {\n\t\tlet n = await Oc(e.config.adapter.createCheckoutQuote, e.quotePayload, e.quote);\n\t\tn && e.setQuote(n);\n\t\tlet r = cc({\n\t\t\tcartItems: e.cart.items,\n\t\t\tconfig: e.config,\n\t\t\tform: e.form,\n\t\t\tshowPromoCode: e.showPromoCode,\n\t\t\tpromoCodes: e.cart.promoCodes,\n\t\t\trequirements: e.requirements,\n\t\t\tquote: n ?? e.quote,\n\t\t\tpromotionContext: e.recovery,\n\t\t\tmarket: e.market\n\t\t}), i = await Pr(e.attemptStore, e.attemptScope, $r(r));\n\t\tt = r.options.attemptId = i.attemptId;\n\t\tlet o = await e.config.adapter.createCheckoutSession(r);\n\t\tif (o.kind !== \"redirect\" && await Fr(e.attemptStore, e.attemptScope, i.attemptId), o.kind === \"redirect\") {\n\t\t\tlet t = a(o.url, \"checkout session\");\n\t\t\tif (t === \"blocked\" || t === \"failed\") {\n\t\t\t\te.status.setError(e.i18n.t(\"storefront.checkout.error\"));\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\te.status.setMessage(Tc(o, e.i18n.t));\n\t} catch (n) {\n\t\tif (Nr(n) && t) try {\n\t\t\tawait Fr(e.attemptStore, e.attemptScope, t);\n\t\t} catch (e) {\n\t\t\tWc(\"attempt cleanup\", e);\n\t\t}\n\t\tWc(\"session\", n), e.status.setError(e.i18n.t(\"storefront.checkout.error\"));\n\t}\n}\nfunction Vc(e) {\n\tlet t = x.useRef(!1);\n\treturn x.useCallback(async () => {\n\t\tif (t.current) return;\n\t\tlet n = e.disabledReason ?? Ac(e.validationIssues[0], e.i18n.t);\n\t\tif (n || e.status.isSubmitting) {\n\t\t\te.status.setHasAttempted(!0), n && e.status.setError(n);\n\t\t\treturn;\n\t\t}\n\t\tt.current = !0, e.status.setHasAttempted(!0), e.status.setIsSubmitting(!0), e.status.setError(null), e.status.setMessage(null), e.emit(\"cedros-shop:checkout-started\", {\n\t\t\tcart_item_count_bucket: br(e.cart.items.length),\n\t\t\tcheckout_mode: e.config.checkout.mode,\n\t\t\tsurface: \"checkout\"\n\t\t});\n\t\ttry {\n\t\t\tawait Bc(e);\n\t\t} finally {\n\t\t\tt.current = !1, e.status.setIsSubmitting(!1);\n\t\t}\n\t}, [e]);\n}\nfunction Hc(e, t) {\n\tlet n = x.useMemo(Xc, []), r = x.useRef(!1);\n\treturn x.useEffect(() => {\n\t\t!t || !n?.recoveryCode || r.current || (r.current = !0, e.setPromoCode(n.recoveryCode));\n\t}, [\n\t\te,\n\t\tt,\n\t\tn?.recoveryCode\n\t]), n;\n}\nfunction Uc() {\n\tlet { config: e } = z(), t = B(), n = Kt(), r = U(), { settings: i } = gn(), a = V(), { config: o, isLoading: s } = _n(), l = x.useMemo(() => sc(e, o, Ec(t.t)), [\n\t\te,\n\t\tt.t,\n\t\to\n\t]), u = Pc(e, l), d = x.useMemo(() => $s(n.items, {\n\t\trequireEmail: !!e.checkout.requireEmail,\n\t\tdefaultMode: e.checkout.mode,\n\t\tallowShipping: a.shipping && e.checkout.allowShipping !== !1\n\t}), [\n\t\tn.items,\n\t\te.checkout.allowShipping,\n\t\te.checkout.mode,\n\t\te.checkout.requireEmail,\n\t\ta.shipping\n\t]), f = x.useMemo(() => c(i.markets, m({\n\t\t...e.market,\n\t\tcountry: u.form.shippingAddress.country || e.market?.country\n\t}, t.locale, Gc())), [\n\t\te.market,\n\t\tu.form.shippingAddress.country,\n\t\tt.locale,\n\t\ti.markets\n\t]), p = n.items[0]?.currency ?? dc(e, f), h = Fc(e, t.t, u.form, d, p, u.updateForm), g = oc({\n\t\tform: u.form,\n\t\trequirements: d,\n\t\tpaymentOptions: l,\n\t\tshippingMethods: h.methods,\n\t\tshippingMethodRequired: d.shippingAddress && h.methods.length > 0,\n\t\tallowTipping: !!e.checkout.allowTipping\n\t}), _ = !!(a.coupons && e.checkout.allowPromoCodes), v = Hc(n, _), y = e.checkout.mode !== \"none\" && n.items.length > 0, b = x.useMemo(() => cc({\n\t\tcartItems: n.items,\n\t\tconfig: e,\n\t\tform: u.form,\n\t\tshowPromoCode: _,\n\t\tpromoCodes: n.promoCodes,\n\t\trequirements: d,\n\t\tpromotionContext: v,\n\t\tmarket: f\n\t}), [\n\t\tn.items,\n\t\tn.promoCodes,\n\t\te,\n\t\tu.form,\n\t\tf,\n\t\tv,\n\t\td,\n\t\t_\n\t]), S = Ic(e, t.t, b, !!(e.adapter.createCheckoutQuote && y && !Dc(g)), h.setMethods), C = Lc(), w = a.inventory && i.inventory.preCheckoutVerification, T = hn({\n\t\titems: n.items,\n\t\trefreshInterval: 3e4,\n\t\tskip: n.items.length === 0 || !w\n\t}), E = kc({\n\t\tcanCheckout: y,\n\t\thasInventoryIssues: T.hasIssues,\n\t\tpaymentMethodsLoading: s,\n\t\tshippingLoading: h.loading,\n\t\tshippingError: h.error,\n\t\tquoteError: S.error,\n\t\tvalidationIssues: g,\n\t\tisSubmitting: C.isSubmitting,\n\t\tt: t.t\n\t}), D = e.checkout.attemptStore ?? mi(), O = e.adapter.checkoutProviderScope ? ni({\n\t\tproviderScope: e.adapter.checkoutProviderScope,\n\t\tconfiguredScope: e.checkout.attemptScope,\n\t\tcartStorageKey: e.cart?.storageKey,\n\t\tcustomerId: e.customer?.id\n\t}) : \"\";\n\tzc(x.useMemo(() => ({\n\t\tconfig: e,\n\t\tt: t.t,\n\t\tcart: n,\n\t\tstatus: C,\n\t\tattemptScope: O,\n\t\tattemptStore: D\n\t}), [\n\t\tO,\n\t\tD,\n\t\tn,\n\t\te,\n\t\tt.t,\n\t\tC\n\t]));\n\tlet k = Vc({\n\t\tconfig: e,\n\t\ti18n: t,\n\t\tcart: n,\n\t\tform: u.form,\n\t\trequirements: d,\n\t\tmarket: f,\n\t\tshowPromoCode: _,\n\t\trecovery: v,\n\t\tquote: S.quote,\n\t\tquotePayload: b,\n\t\tdisabledReason: E,\n\t\tvalidationIssues: g,\n\t\tattemptScope: O,\n\t\tattemptStore: D,\n\t\tstatus: C,\n\t\tsetQuote: S.setQuote,\n\t\temit: r\n\t}), A = h.methods.find((e) => e.id === u.form.shippingMethodId);\n\treturn {\n\t\tconfig: e,\n\t\ti18n: t,\n\t\tcart: n,\n\t\tformState: u,\n\t\trequirements: d,\n\t\tpaymentOptions: l,\n\t\tpaymentLoading: s,\n\t\tshipping: h,\n\t\tquoteState: S,\n\t\tstatus: C,\n\t\tfeatures: a,\n\t\tshowPromoCode: _,\n\t\tvalidationIssues: g,\n\t\tdisabledReason: E,\n\t\tstartCheckout: k,\n\t\tdisplayQuote: S.quote ?? uc(n.subtotal, p, A, u.form.tipAmount),\n\t\tinventory: T,\n\t\tremoveUnavailable: x.useCallback(() => {\n\t\t\tfor (let e of n.items) {\n\t\t\t\tlet t = T.getItemInventory(e.productId, e.variantId);\n\t\t\t\t(t?.isOutOfStock || t?.exceedsAvailable) && n.removeItem(e.productId, e.variantId);\n\t\t\t}\n\t\t}, [n, T]),\n\t\trequireSignIn: !i.checkout.guestCheckout && !e.customer?.isSignedIn\n\t};\n}\nfunction Wc(e, t) {\n\tconsole.warn(`[cedros] Checkout ${e} failed`);\n}\nfunction Gc() {\n\treturn typeof window > \"u\" ? {} : {\n\t\thost: window.location.host,\n\t\tpath: window.location.pathname\n\t};\n}\nfunction Kc(e) {\n\treturn Object.fromEntries(Object.entries(e).filter(([e]) => Mc.has(e)));\n}\nfunction qc(e) {\n\tlet t = Object.entries(e).sort(([e], [t]) => e.localeCompare(t));\n\treturn t.length ? JSON.stringify(t) : null;\n}\nfunction Jc() {\n\tif (typeof window > \"u\") return;\n\tlet e = new URL(window.location.href);\n\tfor (let t of Mc) e.searchParams.delete(t);\n\tlet t = e.searchParams.toString();\n\twindow.history.replaceState(window.history.state, \"\", `${e.pathname}${t ? `?${t}` : \"\"}${e.hash}`);\n}\nfunction Yc(e, t) {\n\tfor (let n of t) {\n\t\tlet t = e.get(n)?.trim();\n\t\tif (t) return t;\n\t}\n}\nfunction Xc() {\n\tif (typeof window > \"u\") return;\n\tlet e = new URLSearchParams(window.location.search), t = Yc(e, [\n\t\t\"checkout_recovery_token\",\n\t\t\"abandoned_checkout_token\",\n\t\t\"recovery_token\",\n\t\t\"recoveryToken\"\n\t]), n = Yc(e, [\n\t\t\"recovery_discount\",\n\t\t\"discount_code\",\n\t\t\"discount\",\n\t\t\"promoCode\",\n\t\t\"promo\",\n\t\t\"code\"\n\t]);\n\tif (!(!t && !n)) return {\n\t\tsource: t ? \"abandoned_checkout\" : \"storefront\",\n\t\trecoveryToken: t,\n\t\trecoveryCode: n,\n\t\tlandingPath: window.location.pathname\n\t};\n}\n//#endregion\n//#region src/storefront/CheckoutTemplate.tsx\nfunction Zc({ className: e }) {\n\tlet t = Uc();\n\treturn t.status.confirmation ? /* @__PURE__ */ T(tl, {\n\t\tclassName: e,\n\t\tcontroller: t\n\t}) : t.cart.items.length === 0 ? /* @__PURE__ */ T(nl, {\n\t\tclassName: e,\n\t\tcontroller: t,\n\t\tkind: \"empty\"\n\t}) : t.requireSignIn ? /* @__PURE__ */ T(nl, {\n\t\tclassName: e,\n\t\tcontroller: t,\n\t\tkind: \"sign-in\"\n\t}) : /* @__PURE__ */ T(rl, {\n\t\tclassName: e,\n\t\tcontroller: t\n\t});\n}\nfunction Qc({ className: e, controller: t, children: n }) {\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tdir: t.i18n.direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--checkout min-h-screen\", e),\n\t\tchildren: [/* @__PURE__ */ T(Ao, { exitHref: \"/\" }), n]\n\t});\n}\nfunction $c({ controller: e }) {\n\treturn /* @__PURE__ */ E(w, { children: [e.status.message ? /* @__PURE__ */ T(\"p\", {\n\t\tclassName: \"cedros-shop-public__success mt-4 rounded-lg border p-3 text-sm\",\n\t\trole: \"status\",\n\t\tchildren: e.status.message\n\t}) : null, e.status.error ? /* @__PURE__ */ T(\"p\", {\n\t\tclassName: \"cedros-shop-public__error mt-4 rounded-lg border p-3 text-sm\",\n\t\trole: \"alert\",\n\t\tchildren: e.status.error\n\t}) : null] });\n}\nfunction el(e) {\n\treturn /* @__PURE__ */ E(\"svg\", {\n\t\tviewBox: \"0 0 24 24\",\n\t\tfill: \"none\",\n\t\tstroke: \"currentColor\",\n\t\tstrokeWidth: \"2\",\n\t\tstrokeLinecap: \"round\",\n\t\tstrokeLinejoin: \"round\",\n\t\t...e,\n\t\tchildren: [/* @__PURE__ */ T(\"circle\", {\n\t\t\tcx: \"12\",\n\t\t\tcy: \"12\",\n\t\t\tr: \"10\"\n\t\t}), /* @__PURE__ */ T(\"path\", {\n\t\t\tclassName: \"cs-anim-check\",\n\t\t\tpathLength: 1,\n\t\t\td: \"m8.5 12.5 2.5 2.5 5-5.5\"\n\t\t})]\n\t});\n}\nfunction tl({ className: e, controller: t }) {\n\tlet { t: n } = t.i18n, r = t.status.confirmation, i = t.config.customer?.isSignedIn ? t.i18n.route(\"orders\", void 0, t.config.routes) : null;\n\treturn /* @__PURE__ */ T(Qc, {\n\t\tclassName: e,\n\t\tcontroller: t,\n\t\tchildren: /* @__PURE__ */ T(\"main\", {\n\t\t\tclassName: \"mx-auto max-w-6xl px-4 py-10\",\n\t\t\tchildren: /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__state cedros-shop-public__state--confirmed mx-auto max-w-lg rounded-xl border p-10 text-center\",\n\t\t\t\trole: \"status\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__state-icon--success\",\n\t\t\t\t\t\t\"aria-hidden\": \"true\",\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(el, { className: \"h-5 w-5\" })\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(\"h1\", {\n\t\t\t\t\t\tclassName: \"mt-3 text-2xl font-semibold tracking-tight\",\n\t\t\t\t\t\tchildren: n(\"storefront.checkout.confirmedTitle\")\n\t\t\t\t\t}),\n\t\t\t\t\tr?.orderId ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"mt-2 text-sm font-medium tabular-nums\",\n\t\t\t\t\t\tchildren: n(\"storefront.checkout.confirmedOrder\", { orderId: r.orderId })\n\t\t\t\t\t}) : null,\n\t\t\t\t\t/* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"mt-2 text-sm\",\n\t\t\t\t\t\tchildren: n(\"storefront.checkout.confirmedDescription\")\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"mt-6 flex flex-col items-center gap-2\",\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\tonClick: () => il(t.i18n, t.config.routes),\n\t\t\t\t\t\t\tchildren: n(\"storefront.cart.continueShopping\")\n\t\t\t\t\t\t}), i ? /* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\tvariant: \"link\",\n\t\t\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\t\t\tasChild: !0,\n\t\t\t\t\t\t\tchildren: /* @__PURE__ */ T(\"a\", {\n\t\t\t\t\t\t\t\thref: i,\n\t\t\t\t\t\t\t\tchildren: n(\"storefront.checkout.viewPurchaseHistory\")\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}) : null]\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t})\n\t\t})\n\t});\n}\nfunction nl({ className: e, controller: t, kind: r }) {\n\tlet { t: i } = t.i18n, a = r === \"empty\";\n\treturn /* @__PURE__ */ T(Qc, {\n\t\tclassName: e,\n\t\tcontroller: t,\n\t\tchildren: /* @__PURE__ */ E(\"main\", {\n\t\t\tclassName: \"mx-auto max-w-6xl px-4 py-10\",\n\t\t\tchildren: [/* @__PURE__ */ T($c, { controller: t }), /* @__PURE__ */ T(J, {\n\t\t\t\ttitle: i(a ? \"storefront.cart.emptyTitle\" : \"storefront.checkout.signInTitle\"),\n\t\t\t\tdescription: i(a ? \"storefront.cart.emptyDescription\" : \"storefront.checkout.signInDescription\"),\n\t\t\t\tactionLabel: i(a ? \"storefront.cart.continueShopping\" : \"storefront.shop.signIn\"),\n\t\t\t\tactionHref: a ? t.i18n.route(\"shop\", void 0, t.config.routes) : void 0,\n\t\t\t\tonAction: a ? void 0 : () => n(t.config.signInUrl)\n\t\t\t})]\n\t\t})\n\t});\n}\nfunction rl({ className: e, controller: t }) {\n\tlet n = t.status.hasAttempted ? t.validationIssues : [], r = t.requirements.shippingAddress || t.requirements.billingAddress;\n\treturn /* @__PURE__ */ T(Qc, {\n\t\tclassName: e,\n\t\tcontroller: t,\n\t\tchildren: /* @__PURE__ */ E(\"main\", {\n\t\t\tclassName: \"mx-auto max-w-6xl px-4 py-10\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__surface-heading\",\n\t\t\t\t\tchildren: /* @__PURE__ */ T(\"h1\", {\n\t\t\t\t\t\tclassName: \"cs-anim-drop text-3xl font-semibold tracking-tight\",\n\t\t\t\t\t\tchildren: t.i18n.t(\"storefront.checkout.title\")\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T($c, { controller: t }),\n\t\t\t\t/* @__PURE__ */ T(As, {\n\t\t\t\t\tquote: t.displayQuote,\n\t\t\t\t\tquoteLoading: t.quoteState.loading,\n\t\t\t\t\tshowShipping: t.features.shipping,\n\t\t\t\t\tshowTax: t.features.taxes,\n\t\t\t\t\tgetItemInventory: t.inventory.getItemInventory\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"mt-8 grid gap-6 lg:grid-cols-[1fr_360px]\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ E(\"section\", {\n\t\t\t\t\t\tclassName: \"space-y-6\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t/* @__PURE__ */ T(Us, {\n\t\t\t\t\t\t\t\tform: t.formState.form,\n\t\t\t\t\t\t\t\trequirements: t.requirements,\n\t\t\t\t\t\t\t\tissues: n,\n\t\t\t\t\t\t\t\tupdateForm: t.formState.updateForm\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tr ? /* @__PURE__ */ T(Ws, {\n\t\t\t\t\t\t\t\tform: t.formState.form,\n\t\t\t\t\t\t\t\trequirements: t.requirements,\n\t\t\t\t\t\t\t\tissues: n,\n\t\t\t\t\t\t\t\tshippingMethods: t.shipping.methods,\n\t\t\t\t\t\t\t\tshippingLoading: t.shipping.loading,\n\t\t\t\t\t\t\t\tshippingError: t.shipping.error,\n\t\t\t\t\t\t\t\tshippingRatesDeferred: t.requirements.shippingAddress && !t.config.adapter.getShippingMethods && !t.shipping.methods.length,\n\t\t\t\t\t\t\t\tupdateForm: t.formState.updateForm,\n\t\t\t\t\t\t\t\tupdateAddress: t.formState.updateAddress\n\t\t\t\t\t\t\t}) : null,\n\t\t\t\t\t\t\t/* @__PURE__ */ T(Gs, {\n\t\t\t\t\t\t\t\tform: t.formState.form,\n\t\t\t\t\t\t\t\tissues: n,\n\t\t\t\t\t\t\t\toptions: t.paymentOptions,\n\t\t\t\t\t\t\t\tallowTipping: !!t.config.checkout.allowTipping,\n\t\t\t\t\t\t\t\tpaymentMethodsLoading: t.paymentLoading,\n\t\t\t\t\t\t\t\tupdateForm: t.formState.updateForm\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t}), /* @__PURE__ */ T(Ds, {\n\t\t\t\t\t\tquote: t.displayQuote,\n\t\t\t\t\t\tquoteLoading: t.quoteState.loading,\n\t\t\t\t\t\tquoteError: t.quoteState.error,\n\t\t\t\t\t\tshowPromoCode: t.showPromoCode,\n\t\t\t\t\t\tshowShipping: t.features.shipping,\n\t\t\t\t\t\tshowTax: t.features.taxes,\n\t\t\t\t\t\tcheckoutLabel: t.status.isSubmitting ? t.i18n.t(\"storefront.checkout.preparing\") : t.i18n.t(\"storefront.checkout.continueToPayment\"),\n\t\t\t\t\t\tcheckoutBusy: t.status.isSubmitting,\n\t\t\t\t\t\tcheckoutDisabled: !!t.disabledReason,\n\t\t\t\t\t\tcheckoutDisabledReason: t.disabledReason,\n\t\t\t\t\t\tgetItemInventory: t.inventory.getItemInventory,\n\t\t\t\t\t\thasInventoryIssues: t.inventory.hasIssues,\n\t\t\t\t\t\tonRemoveUnavailable: t.removeUnavailable,\n\t\t\t\t\t\tonCheckout: () => void t.startCheckout()\n\t\t\t\t\t})]\n\t\t\t\t})\n\t\t\t]\n\t\t})\n\t});\n}\nfunction il(e, t) {\n\ttypeof window < \"u\" && window.location.assign(e.route(\"shop\", void 0, t));\n}\n//#endregion\n//#region src/storefront/AccountTemplate.tsx\nvar al = null, ol = {\n\tline1: \"\",\n\tline2: \"\",\n\tcity: \"\",\n\tstate: \"\",\n\tpostalCode: \"\",\n\tcountry: \"\",\n\tlabel: \"\"\n};\nfunction sl({ className: e }) {\n\tlet { config: t, dataCacheKey: r } = z(), i = B(), a = !!(t.customer?.isSignedIn && t.adapter.getCustomerAccount), { data: o, isLoading: s, error: c, refetch: l } = R({\n\t\tkey: `${r}:customer-account:${t.customer?.id ?? \"guest\"}`,\n\t\tenabled: a,\n\t\tinitialData: al,\n\t\tstaleTimeMs: 5e3,\n\t\tfetcher: async () => t.adapter.getCustomerAccount?.() ?? null\n\t});\n\treturn t.customer?.isSignedIn ? t.adapter.getCustomerAccount ? /* @__PURE__ */ E(cl, {\n\t\tclassName: e,\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ E(\"header\", {\n\t\t\t\tclassName: \"cedros-shop-public__history-header\",\n\t\t\t\tchildren: [/* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"h1\", {\n\t\t\t\t\tclassName: \"cs-anim-drop text-3xl font-semibold tracking-tight\",\n\t\t\t\t\tchildren: i.t(\"storefront.account.title\")\n\t\t\t\t}), /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\tclassName: \"cs-anim-drop mt-2 text-sm\",\n\t\t\t\t\tchildren: i.t(\"storefront.account.subtitle\")\n\t\t\t\t})] }), /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__badge\",\n\t\t\t\t\tchildren: i.t(\"storefront.account.poweredByLogin\")\n\t\t\t\t})]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(ll, {\n\t\t\t\tisLoading: s,\n\t\t\t\terror: c,\n\t\t\t\taccount: o ?? null,\n\t\t\t\tonRetry: l\n\t\t\t}),\n\t\t\to ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__account-grid mt-8\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ T(ul, {\n\t\t\t\t\t\taccount: o,\n\t\t\t\t\t\tonRefresh: l\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(fl, {\n\t\t\t\t\t\taccount: o,\n\t\t\t\t\t\tonRefresh: l\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(dl, {\n\t\t\t\t\t\taccount: o,\n\t\t\t\t\t\tonRefresh: l\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(gl, { account: o })\n\t\t\t\t]\n\t\t\t}) : null\n\t\t]\n\t}) : /* @__PURE__ */ T(cl, {\n\t\tclassName: e,\n\t\tchildren: /* @__PURE__ */ T(J, {\n\t\t\ttitle: i.t(\"storefront.account.unavailableTitle\"),\n\t\t\tdescription: i.t(\"storefront.account.unavailableDescription\")\n\t\t})\n\t}) : /* @__PURE__ */ T(cl, {\n\t\tclassName: e,\n\t\tchildren: /* @__PURE__ */ T(J, {\n\t\t\ttitle: i.t(\"storefront.account.signInTitle\"),\n\t\t\tdescription: i.t(\"storefront.account.signInDescription\"),\n\t\t\tactionLabel: i.t(\"storefront.shop.signIn\"),\n\t\t\tonAction: () => n(t.signInUrl)\n\t\t})\n\t});\n}\nfunction cl({ className: e, children: t }) {\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tdir: B().direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--account min-h-screen\", e),\n\t\tchildren: [/* @__PURE__ */ T(Ao, { exitHref: \"/\" }), /* @__PURE__ */ T(\"main\", {\n\t\t\tclassName: \"mx-auto max-w-6xl px-4 py-10\",\n\t\t\tchildren: t\n\t\t})]\n\t});\n}\nfunction ll(e) {\n\tlet t = B();\n\treturn e.isLoading ? /* @__PURE__ */ E(\"p\", {\n\t\tclassName: \"mt-8 flex items-center gap-2 text-sm\",\n\t\trole: \"status\",\n\t\tchildren: [/* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: \"cs-spinner\",\n\t\t\t\"aria-hidden\": \"true\"\n\t\t}), t.t(\"storefront.account.loading\")]\n\t}) : e.error ? /* @__PURE__ */ T(J, {\n\t\tclassName: \"mt-8\",\n\t\ttitle: t.t(\"storefront.account.unavailableTitle\"),\n\t\tdescription: t.t(\"storefront.error.load\"),\n\t\tactionLabel: t.t(\"common.retry\"),\n\t\tonAction: () => void e.onRetry()\n\t}) : e.account ? null : /* @__PURE__ */ T(J, {\n\t\tclassName: \"mt-8\",\n\t\ttitle: t.t(\"storefront.account.emptyTitle\"),\n\t\tdescription: t.t(\"storefront.account.emptyDescription\")\n\t});\n}\nfunction ul({ account: e, onRefresh: t }) {\n\tlet { config: n } = z(), r = B(), [i, a] = x.useState(() => yl(e)), [o, s] = x.useState(null);\n\tx.useEffect(() => a(yl(e)), [e]);\n\tlet c = async () => {\n\t\tif (n.adapter.updateCustomerProfile) {\n\t\t\ts({\n\t\t\t\tkind: \"busy\",\n\t\t\t\tmessage: r.t(\"common.saving\")\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tawait n.adapter.updateCustomerProfile(Sl(i)), s({\n\t\t\t\t\tkind: \"success\",\n\t\t\t\t\tmessage: r.t(\"storefront.account.profileSaved\")\n\t\t\t\t}), await t();\n\t\t\t} catch (e) {\n\t\t\t\ts({\n\t\t\t\t\tkind: \"error\",\n\t\t\t\t\tmessage: e instanceof Error ? e.message : r.t(\"storefront.account.saveError\")\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n\treturn /* @__PURE__ */ E(K, {\n\t\tclassName: \"cs-anim-rise\",\n\t\tchildren: [/* @__PURE__ */ E(ki, { children: [/* @__PURE__ */ T(ji, { children: r.t(\"storefront.account.profileTitle\") }), /* @__PURE__ */ T(\"p\", {\n\t\t\tclassName: \"text-sm\",\n\t\t\tchildren: r.t(\"storefront.account.profileDescription\")\n\t\t})] }), /* @__PURE__ */ E(Ai, {\n\t\t\tclassName: \"space-y-4\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\tlabel: r.t(\"storefront.checkout.email\"),\n\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\ttype: \"email\",\n\t\t\t\t\t\tautoComplete: \"email\",\n\t\t\t\t\t\tvalue: i.email ?? \"\",\n\t\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t\t...i,\n\t\t\t\t\t\t\temail: e.target.value\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\tlabel: r.t(\"storefront.checkout.name\"),\n\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\tautoComplete: \"name\",\n\t\t\t\t\t\tvalue: i.name ?? \"\",\n\t\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t\t...i,\n\t\t\t\t\t\t\tname: e.target.value\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\tlabel: r.t(\"storefront.checkout.phone\"),\n\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\ttype: \"tel\",\n\t\t\t\t\t\tautoComplete: \"tel\",\n\t\t\t\t\t\tvalue: i.phone ?? \"\",\n\t\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t\t...i,\n\t\t\t\t\t\t\tphone: e.target.value\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ E(\"label\", {\n\t\t\t\t\tclassName: \"flex items-center gap-2 text-sm font-medium\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"input\", {\n\t\t\t\t\t\ttype: \"checkbox\",\n\t\t\t\t\t\tchecked: !!i.marketingOptIn,\n\t\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t\t...i,\n\t\t\t\t\t\t\tmarketingOptIn: e.target.checked\n\t\t\t\t\t\t})\n\t\t\t\t\t}), r.t(\"storefront.account.marketingOptIn\")]\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(_l, { state: o }),\n\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tdisabled: !n.adapter.updateCustomerProfile || o?.kind === \"busy\",\n\t\t\t\t\tonClick: () => void c(),\n\t\t\t\t\tchildren: o?.kind === \"busy\" ? r.t(\"common.saving\") : r.t(\"common.save\")\n\t\t\t\t})\n\t\t\t]\n\t\t})]\n\t});\n}\nfunction dl({ account: e, onRefresh: t }) {\n\tlet { config: n } = z(), r = B(), [i, a] = x.useState(ol), [o, s] = x.useState(null), c = (e) => a({ ...e }), l = async () => {\n\t\tif (n.adapter.upsertCustomerAddress) {\n\t\t\ts({\n\t\t\t\tkind: \"busy\",\n\t\t\t\tmessage: r.t(\"common.saving\")\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tawait n.adapter.upsertCustomerAddress(Cl(i)), a(ol), s({\n\t\t\t\t\tkind: \"success\",\n\t\t\t\t\tmessage: r.t(\"storefront.account.addressSaved\")\n\t\t\t\t}), await t();\n\t\t\t} catch (e) {\n\t\t\t\ts({\n\t\t\t\t\tkind: \"error\",\n\t\t\t\t\tmessage: e instanceof Error ? e.message : r.t(\"storefront.account.saveError\")\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n\treturn /* @__PURE__ */ E(K, {\n\t\tclassName: \"cs-anim-rise\",\n\t\tchildren: [/* @__PURE__ */ E(ki, { children: [/* @__PURE__ */ T(ji, { children: r.t(\"storefront.account.addressesTitle\") }), /* @__PURE__ */ T(\"p\", {\n\t\t\tclassName: \"text-sm\",\n\t\t\tchildren: r.t(\"storefront.account.addressesDescription\")\n\t\t})] }), /* @__PURE__ */ E(Ai, {\n\t\t\tclassName: \"space-y-5\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__address-list\",\n\t\t\t\t\tchildren: e.addresses.length ? e.addresses.map((e) => /* @__PURE__ */ T(pl, {\n\t\t\t\t\t\taddress: e,\n\t\t\t\t\t\tonEdit: () => c(e),\n\t\t\t\t\t\tonDeleted: async () => {\n\t\t\t\t\t\t\ts({\n\t\t\t\t\t\t\t\tkind: \"success\",\n\t\t\t\t\t\t\t\tmessage: r.t(\"storefront.account.addressDeleted\")\n\t\t\t\t\t\t\t}), await t();\n\t\t\t\t\t\t}\n\t\t\t\t\t}, e.id)) : /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__muted\",\n\t\t\t\t\t\tchildren: r.t(\"storefront.account.noAddresses\")\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(ml, {\n\t\t\t\t\tform: i,\n\t\t\t\t\tsetForm: a\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(_l, { state: o }),\n\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tdisabled: !n.adapter.upsertCustomerAddress || o?.kind === \"busy\",\n\t\t\t\t\tonClick: () => void l(),\n\t\t\t\t\tchildren: i.id ? r.t(\"common.update\") : r.t(\"common.create\")\n\t\t\t\t})\n\t\t\t]\n\t\t})]\n\t});\n}\nfunction fl({ account: e, onRefresh: t }) {\n\tlet { config: n } = z(), r = B(), [i, a] = x.useState(() => bl(e)), [o, s] = x.useState(null);\n\tx.useEffect(() => a(bl(e)), [e]);\n\tlet c = async () => {\n\t\tif (n.adapter.updateSavedCheckoutData) {\n\t\t\ts({\n\t\t\t\tkind: \"busy\",\n\t\t\t\tmessage: r.t(\"common.saving\")\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tawait n.adapter.updateSavedCheckoutData(xl(i, e.addresses)), s({\n\t\t\t\t\tkind: \"success\",\n\t\t\t\t\tmessage: r.t(\"storefront.account.savedCheckoutSaved\")\n\t\t\t\t}), await t();\n\t\t\t} catch (e) {\n\t\t\t\ts({\n\t\t\t\t\tkind: \"error\",\n\t\t\t\t\tmessage: e instanceof Error ? e.message : r.t(\"storefront.account.saveError\")\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n\treturn /* @__PURE__ */ E(K, {\n\t\tclassName: \"cs-anim-rise\",\n\t\tchildren: [/* @__PURE__ */ E(ki, { children: [/* @__PURE__ */ T(ji, { children: r.t(\"storefront.account.savedCheckoutTitle\") }), /* @__PURE__ */ T(\"p\", {\n\t\t\tclassName: \"text-sm\",\n\t\t\tchildren: r.t(\"storefront.account.savedCheckoutDescription\")\n\t\t})] }), /* @__PURE__ */ E(Ai, {\n\t\t\tclassName: \"space-y-4\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\tlabel: r.t(\"storefront.checkout.email\"),\n\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\ttype: \"email\",\n\t\t\t\t\t\tvalue: i.email,\n\t\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t\t...i,\n\t\t\t\t\t\t\temail: e.target.value\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"grid gap-4 sm:grid-cols-2\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T($, {\n\t\t\t\t\t\tlabel: r.t(\"storefront.checkout.name\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tvalue: i.name,\n\t\t\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t\t\t...i,\n\t\t\t\t\t\t\t\tname: e.target.value\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t}), /* @__PURE__ */ T($, {\n\t\t\t\t\t\tlabel: r.t(\"storefront.checkout.phone\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tvalue: i.phone,\n\t\t\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t\t\t...i,\n\t\t\t\t\t\t\t\tphone: e.target.value\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t})]\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(hl, {\n\t\t\t\t\tlabel: r.t(\"storefront.account.defaultShippingAddress\"),\n\t\t\t\t\tvalue: i.shippingAddressId,\n\t\t\t\t\taddresses: e.addresses,\n\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t...i,\n\t\t\t\t\t\tshippingAddressId: e\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(hl, {\n\t\t\t\t\tlabel: r.t(\"storefront.account.defaultBillingAddress\"),\n\t\t\t\t\tvalue: i.billingAddressId,\n\t\t\t\t\taddresses: e.addresses,\n\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t...i,\n\t\t\t\t\t\tbillingAddressId: e\n\t\t\t\t\t})\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ E(\"label\", {\n\t\t\t\t\tclassName: \"flex items-center gap-2 text-sm font-medium\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"input\", {\n\t\t\t\t\t\ttype: \"checkbox\",\n\t\t\t\t\t\tchecked: i.billingSameAsShipping,\n\t\t\t\t\t\tonChange: (e) => a({\n\t\t\t\t\t\t\t...i,\n\t\t\t\t\t\t\tbillingSameAsShipping: e.target.checked\n\t\t\t\t\t\t})\n\t\t\t\t\t}), r.t(\"storefront.checkout.billingSameAsShipping\")]\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(_l, { state: o }),\n\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tdisabled: !n.adapter.updateSavedCheckoutData || o?.kind === \"busy\",\n\t\t\t\t\tonClick: () => void c(),\n\t\t\t\t\tchildren: o?.kind === \"busy\" ? r.t(\"common.saving\") : r.t(\"common.save\")\n\t\t\t\t})\n\t\t\t]\n\t\t})]\n\t});\n}\nfunction pl({ address: e, onEdit: t, onDeleted: n }) {\n\tlet { config: r } = z(), i = B(), [a, o] = x.useState(!1), [s, c] = x.useState(null), l = async () => {\n\t\tif (r.adapter.deleteCustomerAddress) {\n\t\t\tc({\n\t\t\t\tkind: \"busy\",\n\t\t\t\tmessage: i.t(\"storefront.account.deletingAddress\")\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tawait r.adapter.deleteCustomerAddress({ addressId: e.id }), await n();\n\t\t\t} catch {\n\t\t\t\tc({\n\t\t\t\t\tkind: \"error\",\n\t\t\t\t\tmessage: i.t(\"storefront.account.deleteAddressError\")\n\t\t\t\t}), o(!1);\n\t\t\t}\n\t\t}\n\t}, u = s?.kind === \"busy\", d = e.label || i.t(\"storefront.account.address\");\n\treturn /* @__PURE__ */ E(\"section\", {\n\t\tclassName: \"cedros-shop-public__address-row\",\n\t\tchildren: [/* @__PURE__ */ E(\"div\", { children: [\n\t\t\t/* @__PURE__ */ T(\"strong\", { children: e.label || i.t(\"storefront.account.address\") }),\n\t\t\t/* @__PURE__ */ T(\"p\", { children: El(e) }),\n\t\t\t/* @__PURE__ */ T(vl, { address: e })\n\t\t] }), /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"space-y-2\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"flex flex-wrap gap-2\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(Y, {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\t\tdisabled: u,\n\t\t\t\t\t\tonClick: t,\n\t\t\t\t\t\tchildren: i.t(\"common.edit\")\n\t\t\t\t\t}), /* @__PURE__ */ T(Y, {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\t\tdisabled: !r.adapter.deleteCustomerAddress || u,\n\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\tc(null), o(!0);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tchildren: i.t(\"common.delete\")\n\t\t\t\t\t})]\n\t\t\t\t}),\n\t\t\t\ta ? /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__address-delete\",\n\t\t\t\t\trole: \"group\",\n\t\t\t\t\t\"aria-label\": i.t(\"storefront.account.deleteAddressTitle\", { name: d }),\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"p\", { children: i.t(\"storefront.account.deleteAddressDescription\", { name: d }) }), /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"flex flex-wrap justify-end gap-2\",\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\t\t\tdisabled: u,\n\t\t\t\t\t\t\tonClick: () => o(!1),\n\t\t\t\t\t\t\tchildren: i.t(\"common.cancel\")\n\t\t\t\t\t\t}), /* @__PURE__ */ T(Y, {\n\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\tvariant: \"destructive\",\n\t\t\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\t\t\tdisabled: u,\n\t\t\t\t\t\t\tonClick: () => void l(),\n\t\t\t\t\t\t\tchildren: u ? i.t(\"storefront.account.deletingAddress\") : i.t(\"common.delete\")\n\t\t\t\t\t\t})]\n\t\t\t\t\t})]\n\t\t\t\t}) : null,\n\t\t\t\t/* @__PURE__ */ T(_l, { state: s?.kind === \"error\" ? s : null })\n\t\t\t]\n\t\t})]\n\t});\n}\nfunction ml({ form: e, setForm: t }) {\n\tlet n = B(), r = (n) => t({\n\t\t...e,\n\t\t...n\n\t});\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"space-y-4\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\tlabel: n.t(\"storefront.account.addressLabel\"),\n\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\tvalue: e.label ?? \"\",\n\t\t\t\t\tonChange: (e) => r({ label: e.target.value })\n\t\t\t\t})\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"grid gap-4 sm:grid-cols-2\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\t\tlabel: n.t(\"storefront.checkout.addressLine1\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tvalue: e.line1,\n\t\t\t\t\t\t\tonChange: (e) => r({ line1: e.target.value })\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\t\tlabel: n.t(\"storefront.checkout.addressLine2\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tvalue: e.line2 ?? \"\",\n\t\t\t\t\t\t\tonChange: (e) => r({ line2: e.target.value })\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\t\tlabel: n.t(\"storefront.checkout.city\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tvalue: e.city,\n\t\t\t\t\t\t\tonChange: (e) => r({ city: e.target.value })\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\t\tlabel: n.t(\"storefront.checkout.region\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tvalue: e.state ?? \"\",\n\t\t\t\t\t\t\tonChange: (e) => r({ state: e.target.value })\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\t\tlabel: n.t(\"storefront.checkout.postalCode\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tvalue: e.postalCode,\n\t\t\t\t\t\t\tonChange: (e) => r({ postalCode: e.target.value })\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T($, {\n\t\t\t\t\t\tlabel: n.t(\"storefront.checkout.country\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ T(X, {\n\t\t\t\t\t\t\tvalue: e.country,\n\t\t\t\t\t\t\tonChange: (e) => r({ country: e.target.value })\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"flex flex-wrap gap-4 text-sm font-medium\",\n\t\t\t\tchildren: [/* @__PURE__ */ E(\"label\", {\n\t\t\t\t\tclassName: \"flex items-center gap-2\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"input\", {\n\t\t\t\t\t\ttype: \"checkbox\",\n\t\t\t\t\t\tchecked: !!e.defaultShipping,\n\t\t\t\t\t\tonChange: (e) => r({ defaultShipping: e.target.checked })\n\t\t\t\t\t}), n.t(\"storefront.account.defaultShipping\")]\n\t\t\t\t}), /* @__PURE__ */ E(\"label\", {\n\t\t\t\t\tclassName: \"flex items-center gap-2\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"input\", {\n\t\t\t\t\t\ttype: \"checkbox\",\n\t\t\t\t\t\tchecked: !!e.defaultBilling,\n\t\t\t\t\t\tonChange: (e) => r({ defaultBilling: e.target.checked })\n\t\t\t\t\t}), n.t(\"storefront.account.defaultBilling\")]\n\t\t\t\t})]\n\t\t\t})\n\t\t]\n\t});\n}\nfunction hl(e) {\n\tlet t = B();\n\treturn /* @__PURE__ */ T($, {\n\t\tlabel: e.label,\n\t\tchildren: /* @__PURE__ */ E(\"span\", {\n\t\t\tclassName: \"cedros-shop-public__select-field\",\n\t\t\tchildren: [/* @__PURE__ */ E(\"select\", {\n\t\t\t\tclassName: \"cedros-shop-public__select-trigger h-10 rounded-md border px-3 text-sm\",\n\t\t\t\tvalue: e.value,\n\t\t\t\tonChange: (t) => e.onChange(t.target.value),\n\t\t\t\tchildren: [/* @__PURE__ */ T(\"option\", {\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t\tchildren: t.t(\"common.none\")\n\t\t\t\t}), e.addresses.map((e) => /* @__PURE__ */ T(\"option\", {\n\t\t\t\t\tvalue: e.id,\n\t\t\t\t\tchildren: e.label || El(e)\n\t\t\t\t}, e.id))]\n\t\t\t}), /* @__PURE__ */ T(\"span\", {\n\t\t\t\tclassName: \"cedros-shop-public__select-arrow\",\n\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t})]\n\t\t})\n\t});\n}\nfunction gl({ account: e }) {\n\tlet t = B(), n = y(), i = (e.supportLinks ?? []).flatMap((e) => {\n\t\tlet t = r(e.href, n);\n\t\treturn t ? [{\n\t\t\t...e,\n\t\t\thref: t\n\t\t}] : [];\n\t});\n\treturn i.length ? /* @__PURE__ */ E(K, {\n\t\tclassName: \"cs-anim-rise\",\n\t\tchildren: [/* @__PURE__ */ E(ki, { children: [/* @__PURE__ */ T(ji, { children: t.t(\"storefront.account.supportTitle\") }), /* @__PURE__ */ T(\"p\", {\n\t\t\tclassName: \"text-sm\",\n\t\t\tchildren: t.t(\"storefront.account.supportDescription\")\n\t\t})] }), /* @__PURE__ */ T(Ai, { children: /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"cedros-shop-public__order-links\",\n\t\t\tchildren: i.map((e) => /* @__PURE__ */ T(\"a\", {\n\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--outline cedros-shop-public__button--size-sm\",\n\t\t\t\thref: e.href,\n\t\t\t\tchildren: e.label\n\t\t\t}, e.id))\n\t\t}) })]\n\t}) : null;\n}\nfunction $({ label: e, children: t }) {\n\treturn /* @__PURE__ */ E(\"label\", {\n\t\tclassName: \"cedros-shop-public__field\",\n\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: e }), t]\n\t});\n}\nfunction _l({ state: e }) {\n\treturn e ? /* @__PURE__ */ T(\"p\", {\n\t\tclassName: e.kind === \"error\" ? \"cedros-shop-public__error\" : \"cedros-shop-public__success\",\n\t\trole: e.kind === \"error\" ? \"alert\" : \"status\",\n\t\tchildren: e.message\n\t}) : null;\n}\nfunction vl({ address: e }) {\n\tlet t = B(), n = [e.defaultShipping ? t.t(\"storefront.account.defaultShipping\") : \"\", e.defaultBilling ? t.t(\"storefront.account.defaultBilling\") : \"\"].filter(Boolean);\n\treturn n.length ? /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"mt-2 flex flex-wrap gap-1\",\n\t\tchildren: n.map((e) => /* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: \"cedros-shop-public__badge\",\n\t\t\tchildren: e\n\t\t}, e))\n\t}) : null;\n}\nfunction yl(e) {\n\treturn {\n\t\temail: e.profile.email ?? \"\",\n\t\tname: e.profile.name ?? \"\",\n\t\tphone: e.profile.phone ?? \"\",\n\t\tmarketingOptIn: e.profile.marketingOptIn\n\t};\n}\nfunction bl(e) {\n\tlet t = e.savedCheckout ?? {};\n\treturn {\n\t\temail: t.email ?? e.profile.email ?? \"\",\n\t\tname: t.name ?? e.profile.name ?? \"\",\n\t\tphone: t.phone ?? e.profile.phone ?? \"\",\n\t\tshippingAddressId: Tl(e.addresses, t.shippingAddress, \"defaultShipping\"),\n\t\tbillingAddressId: Tl(e.addresses, t.billingAddress, \"defaultBilling\"),\n\t\tbillingSameAsShipping: t.billingSameAsShipping ?? !0,\n\t\tpreferredPaymentMethodId: t.preferredPaymentMethodId ?? \"\",\n\t\tpreferredShippingMethodId: t.preferredShippingMethodId ?? \"\"\n\t};\n}\nfunction xl(e, t) {\n\tlet n = t.find((t) => t.id === e.shippingAddressId), r = t.find((t) => t.id === e.billingAddressId);\n\treturn {\n\t\temail: e.email.trim() || void 0,\n\t\tname: e.name.trim() || void 0,\n\t\tphone: e.phone.trim() || void 0,\n\t\tshippingAddress: n ? wl(n) : void 0,\n\t\tbillingAddress: r ? wl(r) : void 0,\n\t\tbillingSameAsShipping: e.billingSameAsShipping,\n\t\tpreferredPaymentMethodId: e.preferredPaymentMethodId.trim() || void 0,\n\t\tpreferredShippingMethodId: e.preferredShippingMethodId.trim() || void 0\n\t};\n}\nfunction Sl(e) {\n\treturn {\n\t\temail: e.email?.trim() || void 0,\n\t\tname: e.name?.trim() || void 0,\n\t\tphone: e.phone?.trim() || void 0,\n\t\tmarketingOptIn: e.marketingOptIn\n\t};\n}\nfunction Cl(e) {\n\treturn {\n\t\t...wl(e),\n\t\tid: e.id,\n\t\tlabel: e.label?.trim() || void 0,\n\t\tdefaultShipping: e.defaultShipping,\n\t\tdefaultBilling: e.defaultBilling\n\t};\n}\nfunction wl(e) {\n\treturn {\n\t\tline1: e.line1.trim(),\n\t\tline2: e.line2?.trim() || void 0,\n\t\tcity: e.city.trim(),\n\t\tstate: e.state?.trim() || void 0,\n\t\tpostalCode: e.postalCode.trim(),\n\t\tcountry: e.country.trim().toUpperCase()\n\t};\n}\nfunction Tl(e, t, n) {\n\treturn t ? e.find((e) => e.line1 === t.line1 && e.postalCode === t.postalCode && e.country.toUpperCase() === t.country.toUpperCase())?.id ?? \"\" : e.find((e) => e[n])?.id ?? \"\";\n}\nfunction El(e) {\n\treturn [\n\t\te.line1,\n\t\te.line2,\n\t\te.city,\n\t\te.state,\n\t\te.postalCode,\n\t\te.country\n\t].filter(Boolean).join(\", \");\n}\n//#endregion\n//#region src/storefront/OrderOperationsPanel.tsx\nvar Dl = {\n\treturn: {\n\t\tflag: \"returnRequest\",\n\t\tmethod: \"requestOrderReturn\",\n\t\tlabelKey: \"storefront.history.requestReturn\",\n\t\ttitleKey: \"storefront.history.returnTitle\",\n\t\tdescriptionKey: \"storefront.history.returnDescription\",\n\t\tresolution: \"refund\"\n\t},\n\trefund: {\n\t\tflag: \"refundRequest\",\n\t\tmethod: \"requestOrderRefund\",\n\t\tlabelKey: \"storefront.history.requestRefund\",\n\t\ttitleKey: \"storefront.history.refundTitle\",\n\t\tdescriptionKey: \"storefront.history.refundDescription\",\n\t\tresolution: \"refund\"\n\t},\n\texchange: {\n\t\tflag: \"exchangeRequest\",\n\t\tmethod: \"requestOrderExchange\",\n\t\tlabelKey: \"storefront.history.requestExchange\",\n\t\ttitleKey: \"storefront.history.exchangeTitle\",\n\t\tdescriptionKey: \"storefront.history.exchangeDescription\",\n\t\tresolution: \"exchange\"\n\t},\n\tcancel: {\n\t\tflag: \"cancel\",\n\t\tmethod: \"requestOrderCancel\",\n\t\tlabelKey: \"storefront.history.requestCancel\",\n\t\ttitleKey: \"storefront.history.cancelTitle\",\n\t\tdescriptionKey: \"storefront.history.cancelDescription\",\n\t\tresolution: void 0\n\t}\n};\nfunction Ol({ order: e, adapter: t, onRefresh: n }) {\n\tlet r = B(), i = V(), a = Al({\n\t\torder: e,\n\t\tadapter: t,\n\t\tonRefresh: n\n\t});\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"cedros-shop-public__order-ops\",\n\t\tchildren: [\n\t\t\ti.shipping ? /* @__PURE__ */ T(jl, { order: e }) : null,\n\t\t\t/* @__PURE__ */ T(Pl, { order: e }),\n\t\t\t/* @__PURE__ */ T(Fl, {\n\t\t\t\torder: e,\n\t\t\t\tpayFeatures: i\n\t\t\t}),\n\t\t\ti.returns ? /* @__PURE__ */ T(Il, { order: e }) : null,\n\t\t\t/* @__PURE__ */ T(kl, {\n\t\t\t\torder: e,\n\t\t\t\tadapter: t\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__order-actions\",\n\t\t\t\t\"aria-label\": r.t(\"storefront.history.orderActions\"),\n\t\t\t\tchildren: Object.keys(Dl).map((n) => /* @__PURE__ */ T(Ll, {\n\t\t\t\t\torder: e,\n\t\t\t\t\tadapter: t,\n\t\t\t\t\tpayFeatures: i,\n\t\t\t\t\tkind: n,\n\t\t\t\t\tactive: a.active === n,\n\t\t\t\t\tonClick: () => a.setActive(a.active === n ? null : n)\n\t\t\t\t}, n))\n\t\t\t}),\n\t\t\ta.active ? /* @__PURE__ */ T(Rl, {\n\t\t\t\torder: e,\n\t\t\t\tkind: a.active,\n\t\t\t\treason: a.reason,\n\t\t\t\tnote: a.note,\n\t\t\t\tselectedItemIds: a.selectedItemIds,\n\t\t\t\taction: a.action,\n\t\t\t\tsubmitting: a.submitting,\n\t\t\t\tonReason: a.setReason,\n\t\t\t\tonNote: a.setNote,\n\t\t\t\tonSelectedItemIds: a.setSelectedItemIds,\n\t\t\t\tonSubmit: () => void a.submit()\n\t\t\t}) : null\n\t\t]\n\t});\n}\nfunction kl({ order: t, adapter: n }) {\n\tlet { config: r } = z(), i = B(), o = qt(), [s, c] = x.useState(null), [l, u] = x.useState(null), d = t.operations?.reorder !== !0 || typeof n.createReorderCart != \"function\" || !o, f = t.operations?.payNow !== !0 || typeof n.createOrderPaymentSession != \"function\", p = async () => {\n\t\tif (!(d || !n.createReorderCart || !o)) {\n\t\t\tu(\"reorder\"), c(null);\n\t\t\ttry {\n\t\t\t\tlet e = await n.createReorderCart({ orderId: t.id });\n\t\t\t\to.replaceCart(e), c({\n\t\t\t\t\tkind: \"success\",\n\t\t\t\t\tmessage: i.t(\"storefront.history.reorderReady\")\n\t\t\t\t}), typeof window < \"u\" && window.location.assign(i.route(\"cart\", void 0, r.routes));\n\t\t\t} catch (e) {\n\t\t\t\tc({\n\t\t\t\t\tkind: \"error\",\n\t\t\t\t\tmessage: e instanceof Error ? e.message : i.t(\"storefront.history.operationError\")\n\t\t\t\t});\n\t\t\t} finally {\n\t\t\t\tu(null);\n\t\t\t}\n\t\t}\n\t}, m = async () => {\n\t\tif (!(f || !n.createOrderPaymentSession)) {\n\t\t\tu(\"payNow\"), c(null);\n\t\t\ttry {\n\t\t\t\tlet e = await n.createOrderPaymentSession({\n\t\t\t\t\torderId: t.id,\n\t\t\t\t\tsuccessUrl: r.checkout.successUrl,\n\t\t\t\t\tcancelUrl: r.checkout.cancelUrl\n\t\t\t\t});\n\t\t\t\tif (e.kind === \"redirect\") {\n\t\t\t\t\tlet t = a(e.url, \"order payment session\");\n\t\t\t\t\tif (t === \"blocked\" || t === \"failed\") {\n\t\t\t\t\t\tc({\n\t\t\t\t\t\t\tkind: \"error\",\n\t\t\t\t\t\t\tmessage: i.t(\"storefront.history.operationError\")\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tc({\n\t\t\t\t\tkind: \"success\",\n\t\t\t\t\tmessage: i.t(\"storefront.history.payNowOpening\")\n\t\t\t\t});\n\t\t\t} catch {\n\t\t\t\te(\"order payment session\"), c({\n\t\t\t\t\tkind: \"error\",\n\t\t\t\t\tmessage: i.t(\"storefront.history.operationError\")\n\t\t\t\t});\n\t\t\t} finally {\n\t\t\t\tu(null);\n\t\t\t}\n\t\t}\n\t};\n\treturn t.operations?.reorder !== !0 && t.operations?.payNow !== !0 ? null : /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"cedros-shop-public__order-actions\",\n\t\tchildren: [\n\t\t\tt.operations?.reorder === !0 ? /* @__PURE__ */ T(Y, {\n\t\t\t\ttype: \"button\",\n\t\t\t\tvariant: \"outline\",\n\t\t\t\tsize: \"sm\",\n\t\t\t\tdisabled: d || l !== null,\n\t\t\t\tonClick: () => void p(),\n\t\t\t\tchildren: l === \"reorder\" ? i.t(\"common.saving\") : i.t(\"storefront.history.reorder\")\n\t\t\t}) : null,\n\t\t\tt.operations?.payNow === !0 ? /* @__PURE__ */ T(Y, {\n\t\t\t\ttype: \"button\",\n\t\t\t\tvariant: \"outline\",\n\t\t\t\tsize: \"sm\",\n\t\t\t\tdisabled: f || l !== null,\n\t\t\t\tonClick: () => void m(),\n\t\t\t\tchildren: l === \"payNow\" ? i.t(\"storefront.history.payNowOpening\") : i.t(\"storefront.history.payNow\")\n\t\t\t}) : null,\n\t\t\ts ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: s.kind === \"success\" ? \"cedros-shop-public__success\" : \"cedros-shop-public__notice\",\n\t\t\t\tchildren: s.message\n\t\t\t}) : null\n\t\t]\n\t});\n}\nfunction Al({ order: e, adapter: t, onRefresh: n }) {\n\tlet r = B(), [i, a] = x.useState(null), [o, s] = x.useState(\"\"), [c, l] = x.useState(\"\"), [u, d] = x.useState(() => e.items.map(Gl)), [f, p] = x.useState(null), [m, h] = x.useState(!1);\n\treturn x.useEffect(() => {\n\t\td(e.items.map(Gl));\n\t}, [e.id, e.items]), {\n\t\tactive: i,\n\t\tsetActive: a,\n\t\treason: o,\n\t\tsetReason: s,\n\t\tnote: c,\n\t\tsetNote: l,\n\t\tselectedItemIds: u,\n\t\tsetSelectedItemIds: d,\n\t\taction: f,\n\t\tsubmitting: m,\n\t\tsubmit: async () => {\n\t\t\tif (i) {\n\t\t\t\tif (!o.trim()) return p({\n\t\t\t\t\tkind: \"error\",\n\t\t\t\t\tmessage: r.t(\"storefront.history.reasonRequired\")\n\t\t\t\t});\n\t\t\t\tif (i !== \"cancel\" && u.length === 0) return p({\n\t\t\t\t\tkind: \"error\",\n\t\t\t\t\tmessage: r.t(\"storefront.history.selectItemsRequired\")\n\t\t\t\t});\n\t\t\t\th(!0);\n\t\t\t\ttry {\n\t\t\t\t\tlet a = await Bl({\n\t\t\t\t\t\torder: e,\n\t\t\t\t\t\tadapter: t,\n\t\t\t\t\t\tactive: i,\n\t\t\t\t\t\treason: o,\n\t\t\t\t\t\tnote: c,\n\t\t\t\t\t\tselectedItemIds: u,\n\t\t\t\t\t\tunavailableMessage: r.t(\"storefront.history.operationUnavailable\")\n\t\t\t\t\t});\n\t\t\t\t\tp({\n\t\t\t\t\t\tkind: \"success\",\n\t\t\t\t\t\tmessage: a.message ?? r.t(\"storefront.history.requestSubmitted\"),\n\t\t\t\t\t\tresult: a\n\t\t\t\t\t}), s(\"\"), l(\"\"), await n();\n\t\t\t\t} catch (e) {\n\t\t\t\t\tp({\n\t\t\t\t\t\tkind: \"error\",\n\t\t\t\t\t\tmessage: e instanceof Error ? e.message : r.t(\"storefront.history.operationError\")\n\t\t\t\t\t});\n\t\t\t\t} finally {\n\t\t\t\t\th(!1);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\nfunction jl({ order: e }) {\n\tlet t = B();\n\treturn e.shipments?.length ? /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__shipment-grid\",\n\t\tchildren: e.shipments.map((n) => /* @__PURE__ */ E(\"section\", {\n\t\t\tclassName: \"cedros-shop-public__shipment-card\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"flex flex-wrap items-center justify-between gap-2\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"text-sm font-medium\",\n\t\t\t\t\t\tchildren: n.carrier ?? t.t(\"storefront.history.fulfillment\")\n\t\t\t\t\t}), /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__muted\",\n\t\t\t\t\t\tchildren: n.serviceLevel ?? t.t(`storefront.fulfillment.status.${n.status}`)\n\t\t\t\t\t})] }), /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\tclassName: G(\"cedros-shop-public__badge\", n.ddp ? \"cedros-shop-public__badge--accent\" : void 0),\n\t\t\t\t\t\tchildren: n.ddp ? t.t(\"storefront.history.ddp\") : t.t(`storefront.fulfillment.status.${n.status}`)\n\t\t\t\t\t})]\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(Ml, {\n\t\t\t\t\torder: e,\n\t\t\t\t\tshipmentId: n.id\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(Nl, { items: n.items }),\n\t\t\t\tn.trackingNumber ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__muted\",\n\t\t\t\t\tchildren: t.t(\"storefront.history.trackingNumber\", { value: n.trackingNumber })\n\t\t\t\t}) : null\n\t\t\t]\n\t\t}, n.id))\n\t}) : /* @__PURE__ */ T(\"p\", {\n\t\tclassName: \"cedros-shop-public__muted\",\n\t\tchildren: t.t(\"storefront.history.noShipments\")\n\t});\n}\nfunction Ml({ order: e, shipmentId: t }) {\n\tlet n = B(), r = e.shipments?.find((e) => e.id === t);\n\tif (!r) return null;\n\tlet i = [\n\t\tr.shippedAt ? n.t(\"storefront.history.shippedAt\", { date: n.formatDate(r.shippedAt) }) : \"\",\n\t\tr.estimatedDeliveryAt ? n.t(\"storefront.history.estimatedDelivery\", { date: n.formatDate(r.estimatedDeliveryAt) }) : \"\",\n\t\tr.deliveredAt ? n.t(\"storefront.history.deliveredAt\", { date: n.formatDate(r.deliveredAt) }) : \"\"\n\t].filter(Boolean);\n\treturn i.length === 0 ? null : /* @__PURE__ */ T(\"ul\", {\n\t\tclassName: \"cedros-shop-public__compact-list\",\n\t\tchildren: i.map((e) => /* @__PURE__ */ T(\"li\", { children: e }, e))\n\t});\n}\nfunction Nl({ items: e }) {\n\tlet t = B();\n\treturn e?.length ? /* @__PURE__ */ T(\"ul\", {\n\t\tclassName: \"cedros-shop-public__compact-list\",\n\t\tchildren: e.map((e, n) => /* @__PURE__ */ T(\"li\", { children: t.t(\"storefront.history.orderLine\", {\n\t\t\tquantity: e.quantity,\n\t\t\ttitle: e.title ?? t.t(\"storefront.history.item\")\n\t\t}) }, `${e.title ?? \"item\"}-${n}`))\n\t}) : null;\n}\nfunction Pl({ order: e }) {\n\tlet t = B();\n\treturn e.timeline?.length ? /* @__PURE__ */ T(\"ol\", {\n\t\tclassName: \"cedros-shop-public__timeline\",\n\t\t\"aria-label\": t.t(\"storefront.history.timeline\"),\n\t\tchildren: e.timeline.map((e) => /* @__PURE__ */ E(\"li\", { children: [/* @__PURE__ */ T(\"span\", { \"aria-hidden\": \"true\" }), /* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"strong\", { children: e.label }), /* @__PURE__ */ T(\"p\", { children: t.t(\"storefront.history.timelineMeta\", {\n\t\t\tdate: t.formatDateTime(e.occurredAt),\n\t\t\tdetail: e.detail ?? \"\"\n\t\t}) })] })] }, e.id))\n\t}) : null;\n}\nfunction Fl({ order: e, payFeatures: t }) {\n\tlet n = Ul(e, B(), t, y());\n\treturn n.length === 0 ? null : /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__order-links\",\n\t\tchildren: n.map((e) => /* @__PURE__ */ T(\"a\", {\n\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--outline cedros-shop-public__button--size-sm\",\n\t\t\thref: e.href,\n\t\t\ttarget: \"_blank\",\n\t\t\trel: \"noreferrer\",\n\t\t\tchildren: e.label\n\t\t}, e.href))\n\t});\n}\nfunction Il({ order: e }) {\n\tlet t = B();\n\tif (!e.returnWindow) return null;\n\tlet { status: n, returnableUntil: i, reason: a, policyUrl: o } = e.returnWindow, s = r(o, y()), c = n === \"returnable\" && i ? t.t(\"storefront.history.returnableUntil\", { date: t.formatDate(i) }) : t.t(`storefront.history.returnWindow.${n}`, { reason: a ?? \"\" });\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"cedros-shop-public__return-policy\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(\"span\", {\n\t\t\t\tclassName: \"cedros-shop-public__badge\",\n\t\t\t\tchildren: t.t(\"storefront.history.returns\")\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"span\", { children: c }),\n\t\t\ts ? /* @__PURE__ */ T(\"a\", {\n\t\t\t\thref: s,\n\t\t\t\ttarget: \"_blank\",\n\t\t\t\trel: \"noreferrer\",\n\t\t\t\tchildren: t.t(\"storefront.history.returnPolicy\")\n\t\t\t}) : null\n\t\t]\n\t});\n}\nfunction Ll({ order: e, adapter: t, payFeatures: n, kind: r, active: i, onClick: a }) {\n\tlet o = B(), s = !Hl(n, r) || !Vl(e, t, r);\n\treturn /* @__PURE__ */ T(Y, {\n\t\ttype: \"button\",\n\t\tvariant: i ? \"default\" : \"outline\",\n\t\tsize: \"sm\",\n\t\tdisabled: s,\n\t\t\"aria-pressed\": i,\n\t\tonClick: a,\n\t\tchildren: o.t(Dl[r].labelKey)\n\t});\n}\nfunction Rl(e) {\n\tlet t = B(), n = Dl[e.kind];\n\treturn /* @__PURE__ */ E(\"section\", {\n\t\tclassName: \"cedros-shop-public__operation-form\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"h3\", { children: t.t(n.titleKey) }), /* @__PURE__ */ T(\"p\", { children: t.t(n.descriptionKey) })] }),\n\t\t\te.kind === \"cancel\" ? null : /* @__PURE__ */ T(zl, {\n\t\t\t\torder: e.order,\n\t\t\t\tselectedItemIds: e.selectedItemIds,\n\t\t\t\tonSelectedItemIds: e.onSelectedItemIds\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"label\", {\n\t\t\t\tclassName: \"cedros-shop-public__field\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: t.t(\"storefront.history.reason\") }), /* @__PURE__ */ T(X, {\n\t\t\t\t\tvalue: e.reason,\n\t\t\t\t\tonChange: (t) => e.onReason(t.target.value),\n\t\t\t\t\tplaceholder: t.t(\"storefront.history.reasonPlaceholder\")\n\t\t\t\t})]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"label\", {\n\t\t\t\tclassName: \"cedros-shop-public__field\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: t.t(\"storefront.history.note\") }), /* @__PURE__ */ T(\"textarea\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__textarea\",\n\t\t\t\t\trows: 3,\n\t\t\t\t\tvalue: e.note,\n\t\t\t\t\tonChange: (t) => e.onNote(t.target.value),\n\t\t\t\t\tplaceholder: t.t(\"storefront.history.notePlaceholder\")\n\t\t\t\t})]\n\t\t\t}),\n\t\t\te.action ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: e.action.kind === \"success\" ? \"cedros-shop-public__success\" : \"cedros-shop-public__notice\",\n\t\t\t\tchildren: e.action.message\n\t\t\t}) : null,\n\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\ttype: \"button\",\n\t\t\t\tdisabled: e.submitting,\n\t\t\t\tonClick: e.onSubmit,\n\t\t\t\tchildren: e.submitting ? t.t(\"common.saving\") : t.t(\"storefront.history.submitRequest\")\n\t\t\t})\n\t\t]\n\t});\n}\nfunction zl({ order: e, selectedItemIds: t, onSelectedItemIds: n }) {\n\tlet r = B();\n\treturn /* @__PURE__ */ E(\"fieldset\", {\n\t\tclassName: \"cedros-shop-public__line-selector\",\n\t\tchildren: [/* @__PURE__ */ T(\"legend\", { children: r.t(\"storefront.history.itemsToInclude\") }), e.items.map((e) => {\n\t\t\tlet i = Gl(e);\n\t\t\treturn /* @__PURE__ */ E(\"label\", { children: [/* @__PURE__ */ T(\"input\", {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tchecked: t.includes(i),\n\t\t\t\tonChange: () => n(Kl(t, i))\n\t\t\t}), r.t(\"storefront.history.orderLine\", {\n\t\t\t\tquantity: e.qty,\n\t\t\t\ttitle: e.title\n\t\t\t})] }, i);\n\t\t})]\n\t});\n}\nasync function Bl(e) {\n\tlet t = Dl[e.active], n = e.adapter[t.method];\n\tif (typeof n != \"function\") throw Error(e.unavailableMessage);\n\tlet r = {\n\t\torderId: e.order.id,\n\t\treason: e.reason.trim(),\n\t\tnote: e.note.trim() || void 0\n\t};\n\treturn e.active === \"cancel\" ? n.call(e.adapter, r) : n.call(e.adapter, {\n\t\t...r,\n\t\titemIds: e.selectedItemIds,\n\t\tresolution: t.resolution\n\t});\n}\nfunction Vl(e, t, n) {\n\tlet r = Dl[n];\n\treturn e.operations?.[r.flag] === !0 && typeof t[r.method] == \"function\";\n}\nfunction Hl(e, t) {\n\treturn t === \"refund\" ? e.refunds : t === \"return\" || t === \"exchange\" ? e.returns : !0;\n}\nfunction Ul(e, t, n, r) {\n\tlet i = (e.shipments ?? []).flatMap((i) => [\n\t\tn.shipping ? Wl(i.trackingUrl, t.t(\"storefront.history.trackShipment\"), r) : null,\n\t\tn.shipping && e.operations?.shippingLabel ? Wl(i.labelUrl, t.t(\"storefront.history.printShippingLabel\"), r) : null,\n\t\tn.returns && e.operations?.returnLabel ? Wl(i.returnLabelUrl, t.t(\"storefront.history.printReturnLabel\"), r) : null\n\t]);\n\treturn [\n\t\tWl(e.receiptUrl, t.t(\"storefront.history.viewReceipt\"), r),\n\t\tWl(e.invoiceUrl, t.t(\"storefront.history.viewInvoice\"), r),\n\t\t...i,\n\t\tWl(e.supportUrl, t.t(\"storefront.history.contactSupport\"), r)\n\t].filter((e) => !!e);\n}\nfunction Wl(e, t, n) {\n\tlet i = r(e, n);\n\treturn i ? {\n\t\thref: i,\n\t\tlabel: t\n\t} : null;\n}\nfunction Gl(e) {\n\treturn e.id ?? e.variantId ?? e.productId ?? e.title;\n}\nfunction Kl(e, t) {\n\treturn e.includes(t) ? e.filter((e) => e !== t) : [...e, t];\n}\n//#endregion\n//#region src/storefront/PurchaseHistoryTemplate.tsx\nvar ql = [], Jl = 20;\nfunction Yl({ className: e, requireSignedIn: t = !0 }) {\n\tlet { config: r, dataCacheKey: i } = z(), a = B(), o = !t || !!r.customer?.isSignedIn, s = `${i}:${r.customer?.id ?? \"guest\"}`, [c, l] = x.useState({\n\t\tscope: s,\n\t\tpage: 1\n\t}), { data: u, isLoading: d, error: f, refetch: p } = R({\n\t\tkey: `${i}:order-history:${r.customer?.id ?? \"guest\"}`,\n\t\tenabled: o,\n\t\tinitialData: ql,\n\t\tstaleTimeMs: 5e3,\n\t\tfetcher: () => r.adapter.getOrderHistory()\n\t}), m = Math.max(1, Math.ceil((u?.length ?? 0) / Jl)), h = c.scope === s ? Math.min(c.page, m) : 1, g = (e) => l({\n\t\tscope: s,\n\t\tpage: Math.max(1, Math.min(e, m))\n\t}), _ = o ? (u ?? ql).slice((h - 1) * Jl, h * Jl) : ql;\n\treturn t && !r.customer?.isSignedIn ? /* @__PURE__ */ T(Xl, {\n\t\tclassName: e,\n\t\tchildren: /* @__PURE__ */ T(J, {\n\t\t\ttitle: a.t(\"storefront.history.signInTitle\"),\n\t\t\tdescription: a.t(\"storefront.history.signInDescription\"),\n\t\t\tactionLabel: a.t(\"storefront.shop.signIn\"),\n\t\t\tonAction: () => n(r.signInUrl)\n\t\t})\n\t}) : /* @__PURE__ */ E(Xl, {\n\t\tclassName: e,\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ E(\"header\", {\n\t\t\t\tclassName: \"cedros-shop-public__history-header\",\n\t\t\t\tchildren: [/* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"h1\", {\n\t\t\t\t\tclassName: \"cs-anim-drop text-3xl font-semibold tracking-tight\",\n\t\t\t\t\tchildren: a.t(\"storefront.history.title\")\n\t\t\t\t}), /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\tclassName: \"cs-anim-drop mt-2 text-sm\",\n\t\t\t\t\tchildren: a.t(\"storefront.history.subtitle\")\n\t\t\t\t})] }), /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__badge\",\n\t\t\t\t\tchildren: a.t(\"storefront.history.poweredByPay\")\n\t\t\t\t})]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(Zl, {\n\t\t\t\tisLoading: d,\n\t\t\t\terror: f,\n\t\t\t\torderCount: (u ?? ql).length,\n\t\t\t\tshopHref: a.route(\"shop\", void 0, r.routes),\n\t\t\t\tonRetry: p\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\tclassName: \"mt-8 space-y-5\",\n\t\t\t\tchildren: _.map((e) => /* @__PURE__ */ T(Ql, {\n\t\t\t\t\torder: e,\n\t\t\t\t\tonRefresh: p\n\t\t\t\t}, e.id))\n\t\t\t}),\n\t\t\tm > 1 && o ? /* @__PURE__ */ E(\"nav\", {\n\t\t\t\tclassName: \"mt-6 flex items-center justify-between\",\n\t\t\t\t\"aria-label\": a.t(\"storefront.history.title\"),\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\tdisabled: h === 1,\n\t\t\t\t\t\tonClick: () => g(h - 1),\n\t\t\t\t\t\tchildren: a.t(\"common.previous\")\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\trole: \"status\",\n\t\t\t\t\t\tchildren: a.t(\"common.page\", { page: h })\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\tdisabled: h === m,\n\t\t\t\t\t\tonClick: () => g(h + 1),\n\t\t\t\t\t\tchildren: a.t(\"common.next\")\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t}) : null\n\t\t]\n\t});\n}\nfunction Xl({ className: e, children: t }) {\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tdir: B().direction,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--history min-h-screen\", e),\n\t\tchildren: [/* @__PURE__ */ T(Ao, { exitHref: \"/\" }), /* @__PURE__ */ T(\"main\", {\n\t\t\tclassName: \"mx-auto max-w-6xl px-4 py-10\",\n\t\t\tchildren: t\n\t\t})]\n\t});\n}\nfunction Zl({ isLoading: e, error: t, orderCount: n, shopHref: r, onRetry: i }) {\n\tlet a = B();\n\treturn e ? /* @__PURE__ */ E(\"p\", {\n\t\tclassName: \"mt-8 flex items-center gap-2 text-sm\",\n\t\trole: \"status\",\n\t\tchildren: [/* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: \"cs-spinner\",\n\t\t\t\"aria-hidden\": \"true\"\n\t\t}), a.t(\"storefront.history.loading\")]\n\t}) : t ? /* @__PURE__ */ T(J, {\n\t\tclassName: \"mt-8\",\n\t\ttitle: a.t(\"storefront.history.unavailable\"),\n\t\tdescription: a.t(\"storefront.error.load\"),\n\t\tactionLabel: a.t(\"common.retry\"),\n\t\tonAction: () => void i()\n\t}) : n === 0 ? /* @__PURE__ */ T(J, {\n\t\tclassName: \"mt-8\",\n\t\ttitle: a.t(\"storefront.history.emptyTitle\"),\n\t\tdescription: a.t(\"storefront.history.emptyDescription\"),\n\t\tactionLabel: a.t(\"storefront.cart.continueShopping\"),\n\t\tactionHref: r\n\t}) : null;\n}\nfunction Ql({ order: e, onRefresh: t }) {\n\tlet { config: n } = z(), r = B();\n\treturn /* @__PURE__ */ E(\"article\", {\n\t\tclassName: \"cedros-shop-public__order-card rounded-xl border p-5\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__order-card-head\",\n\t\t\t\tchildren: [/* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"text-sm font-semibold\",\n\t\t\t\t\tchildren: r.t(\"storefront.history.orderTitle\", { id: e.id })\n\t\t\t\t}), /* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__muted mt-1 text-xs\",\n\t\t\t\t\tchildren: r.t(\"storefront.history.orderMeta\", {\n\t\t\t\t\t\tdate: r.formatDate(e.createdAt),\n\t\t\t\t\t\tstatus: r.t(`storefront.order.status.${e.status}`)\n\t\t\t\t\t})\n\t\t\t\t})] }), /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__order-total\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: r.formatMoney(e.total, e.currency) }), /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__badge\",\n\t\t\t\t\t\tchildren: r.t(`storefront.fulfillment.status.${e.fulfillmentStatus ?? nu(e.status)}`)\n\t\t\t\t\t})]\n\t\t\t\t})]\n\t\t\t}),\n\t\t\ttu(e) ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: \"cedros-shop-public__success mt-4 rounded-lg border p-3 text-sm\",\n\t\t\t\trole: \"status\",\n\t\t\t\tchildren: r.t(\"storefront.history.purchaseConfirmed\")\n\t\t\t}) : null,\n\t\t\t/* @__PURE__ */ T($l, { order: e }),\n\t\t\t/* @__PURE__ */ T(eu, { order: e }),\n\t\t\t/* @__PURE__ */ T(Ol, {\n\t\t\t\torder: e,\n\t\t\t\tadapter: n.adapter,\n\t\t\t\tonRefresh: t\n\t\t\t})\n\t\t]\n\t});\n}\nfunction $l({ order: e }) {\n\tlet t = B(), n = [\n\t\t[\"storefront.history.subtotal\", e.totals?.subtotal],\n\t\t[\"storefront.checkout.discount\", e.totals?.discount],\n\t\t[\"storefront.checkout.shipping\", e.totals?.shipping],\n\t\t[\"storefront.checkout.tax\", e.totals?.tax],\n\t\t[\"storefront.history.duties\", e.totals?.duties],\n\t\t[\"storefront.history.refunded\", e.totals?.refunded]\n\t].filter(([, e]) => typeof e == \"number\");\n\treturn n.length === 0 ? null : /* @__PURE__ */ T(\"dl\", {\n\t\tclassName: \"cedros-shop-public__order-totals\",\n\t\tchildren: n.map(([n, r]) => /* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"dt\", { children: t.t(n) }), /* @__PURE__ */ T(\"dd\", { children: t.formatMoney(r ?? 0, e.currency) })] }, n))\n\t});\n}\nfunction eu({ order: e }) {\n\tlet t = B();\n\treturn /* @__PURE__ */ T(\"div\", {\n\t\tclassName: \"cedros-shop-public__order-lines mt-4 space-y-2 border-t pt-4 text-sm\",\n\t\tchildren: e.items.map((n, r) => /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"flex justify-between gap-4\",\n\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: t.t(\"storefront.history.orderLine\", {\n\t\t\t\tquantity: n.qty,\n\t\t\t\ttitle: n.title\n\t\t\t}) }), /* @__PURE__ */ T(\"span\", { children: t.formatMoney(n.unitPrice * n.qty, n.currency) })]\n\t\t}, n.id ?? `${e.id}:${n.title}:${r}`))\n\t});\n}\nfunction tu(e) {\n\treturn [\n\t\t\"paid\",\n\t\t\"processing\",\n\t\t\"fulfilled\",\n\t\t\"shipped\",\n\t\t\"delivered\"\n\t].includes(e.status);\n}\nfunction nu(e) {\n\treturn e === \"shipped\" || e === \"delivered\" || e === \"cancelled\" ? e : e === \"fulfilled\" ? \"fulfilled\" : e === \"refunded\" ? \"returned\" : \"unfulfilled\";\n}\n//#endregion\n//#region src/runtime/useSubscriptionTiers.ts\nvar ru = [];\nfunction iu(e, t = !0) {\n\tlet { config: n, dataCacheKey: r } = z(), { locale: i } = B(), a = x.useMemo(() => c(e.markets, m(n.market, i, ou())), [\n\t\tn.market,\n\t\ti,\n\t\te.markets\n\t]), o = a?.currency ?? n.currency, s = x.useMemo(() => au(n.ssr?.subscriptionTiers, a?.id, i, o), [\n\t\tn.ssr?.subscriptionTiers,\n\t\to,\n\t\ti,\n\t\ta?.id\n\t]);\n\treturn R({\n\t\tkey: `${r}:subscription-tiers:${a?.id ?? \"default\"}:${i}:${o}`,\n\t\tenabled: t,\n\t\tinitialData: s ?? ru,\n\t\tinitialDataIsResolved: s !== void 0,\n\t\tstaleTimeMs: 6e4,\n\t\tfetcher: async () => {\n\t\t\tif (!n.adapter.listSubscriptionTiers) throw Error(\"Subscription plans are unavailable.\");\n\t\t\tlet e = Bn(await n.adapter.listSubscriptionTiers(), o);\n\t\t\tif (!e) throw Error(\"The public subscription catalog returned invalid data.\");\n\t\t\treturn e;\n\t\t}\n\t});\n}\nfunction au(e, t, n, r) {\n\tlet i = yn(e, (e) => e.marketId === t && e.locale === n && e.currency.toUpperCase() === r.toUpperCase());\n\tif (i) return Bn(i.tiers, r) ?? void 0;\n}\nfunction ou() {\n\treturn typeof window > \"u\" ? {} : {\n\t\thost: window.location.host,\n\t\tpath: window.location.pathname\n\t};\n}\n//#endregion\n//#region src/storefront/SubscriptionTemplate.tsx\nvar su = [];\nfunction cu(e, t) {\n\treturn e.kind === \"redirect\" ? t(\"storefront.checkout.opening\") : t(\"storefront.checkout.created\");\n}\nfunction lu(e, t) {\n\treturn e.message?.trim() || t;\n}\nfunction uu({ className: e }) {\n\tlet { config: t, dataCacheKey: n } = z(), { t: r, direction: i } = B(), a = V(), { settings: o, isLoading: s, error: c, refetch: l } = gn(), u = U(), [d, f] = x.useState(\"monthly\"), [p, m] = x.useState(null), [h, g] = x.useState(null), [_, v] = x.useState(null), { data: y, isLoading: b, error: S, refetch: C } = iu(o, a.subscriptions && !s && !c), w = !!(a.subscriptions && t.customer?.isSignedIn && t.adapter.getSubscriptionStatus), { data: D, isLoading: O, error: k, refetch: A } = R({\n\t\tkey: `${n}:subscription-status:${t.customer?.id ?? \"guest\"}`,\n\t\tenabled: w,\n\t\tinitialData: null,\n\t\tstaleTimeMs: 5e3,\n\t\tfetcher: async () => t.adapter.getSubscriptionStatus?.() ?? null\n\t}), ee = async (e) => {\n\t\tif (_) return;\n\t\tif (!a.subscriptions) {\n\t\t\tg(r(\"storefront.subscription.unavailable\"));\n\t\t\treturn;\n\t\t}\n\t\tif (!t.customer?.isSignedIn || s || c) {\n\t\t\tg(r(\"storefront.subscription.checkoutError\"));\n\t\t\treturn;\n\t\t}\n\t\tif (!t.adapter.createSubscriptionCheckoutSession) {\n\t\t\tg(r(\"storefront.subscription.checkoutError\"));\n\t\t\treturn;\n\t\t}\n\t\tlet n = du(o.subscriptions.successPath);\n\t\tif (!n) {\n\t\t\tg(r(\"storefront.subscription.checkoutError\"));\n\t\t\treturn;\n\t\t}\n\t\tm(null), g(null), v(e), u(\"cedros-shop:subscription-checkout-started\", {\n\t\t\ttier_ref: e,\n\t\t\tbilling_interval: d,\n\t\t\tsurface: \"subscription\"\n\t\t});\n\t\ttry {\n\t\t\tlet i = await t.adapter.createSubscriptionCheckoutSession({\n\t\t\t\ttierId: e,\n\t\t\t\tinterval: d,\n\t\t\t\tsuccessUrl: n.successUrl,\n\t\t\t\tcancelUrl: n.cancelUrl\n\t\t\t}), a = mu(i, e, d, n.successPath);\n\t\t\tif (a === \"error\") {\n\t\t\t\tg(r(\"storefront.subscription.checkoutError\"));\n\t\t\t\treturn;\n\t\t\t}\n\t\t\ta === \"message\" && m(cu(i, r));\n\t\t} catch {\n\t\t\tg(r(\"storefront.subscription.checkoutError\"));\n\t\t} finally {\n\t\t\tv(null);\n\t\t}\n\t}, te = y ?? [], ne = Tu(D ?? null, te), re = h ?? (c || S ? r(\"storefront.error.load\") : null), ie = s || b, ae = () => c ? l() : C();\n\treturn a.subscriptions ? /* @__PURE__ */ E(\"div\", {\n\t\tdir: i,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--subscription min-h-screen\", e),\n\t\tchildren: [\n\t\t\t\" \",\n\t\t\t/* @__PURE__ */ T(Ao, { exitHref: \"/\" }),\n\t\t\t/* @__PURE__ */ E(\"main\", {\n\t\t\t\tclassName: \"mx-auto max-w-6xl px-4 py-10\",\n\t\t\t\tchildren: [\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\tclassName: \"flex flex-wrap items-end justify-between gap-4\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"cs-anim-drop\",\n\t\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"h1\", {\n\t\t\t\t\t\t\t\t\tclassName: \"text-3xl font-semibold tracking-tight\",\n\t\t\t\t\t\t\t\t\tchildren: r(\"storefront.subscription.title\")\n\t\t\t\t\t\t\t\t}), /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\t\t\t\tclassName: \"mt-2 text-sm\",\n\t\t\t\t\t\t\t\t\tchildren: r(\"storefront.subscription.subtitle\")\n\t\t\t\t\t\t\t\t})]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"cedros-shop-public__segmented\",\n\t\t\t\t\t\t\t\trole: \"group\",\n\t\t\t\t\t\t\t\t\"aria-label\": r(\"storefront.subscription.billingInterval\"),\n\t\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\t\t\t[\"monthly\", \"annual\"].map((e) => /* @__PURE__ */ T(\"button\", {\n\t\t\t\t\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\t\t\t\t\"aria-pressed\": d === e,\n\t\t\t\t\t\t\t\t\t\tclassName: \"rounded-md px-3 py-1.5 text-sm\",\n\t\t\t\t\t\t\t\t\t\tonClick: () => f(e),\n\t\t\t\t\t\t\t\t\t\tchildren: r(e === \"monthly\" ? \"storefront.subscription.monthly\" : \"storefront.subscription.annual\")\n\t\t\t\t\t\t\t\t\t}, e)),\n\t\t\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \"\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t\" \",\n\t\t\t\t\tp ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__success mt-5 rounded-lg border p-3 text-sm\",\n\t\t\t\t\t\trole: \"status\",\n\t\t\t\t\t\tchildren: p\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(_u, {\n\t\t\t\t\t\tstatus: D ?? null,\n\t\t\t\t\t\tsubscriptions: ne,\n\t\t\t\t\t\tisLoading: O,\n\t\t\t\t\t\terror: k,\n\t\t\t\t\t\tonRefresh: A\n\t\t\t\t\t}),\n\t\t\t\t\tre ? /* @__PURE__ */ T(J, {\n\t\t\t\t\t\tclassName: \"mt-8\",\n\t\t\t\t\t\ttitle: r(\"storefront.subscription.unavailable\"),\n\t\t\t\t\t\tdescription: re,\n\t\t\t\t\t\tactionLabel: r(\"common.retry\"),\n\t\t\t\t\t\tonAction: () => void ae()\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\tie ? /* @__PURE__ */ E(\"p\", {\n\t\t\t\t\t\tclassName: \"mt-8 flex items-center gap-2 text-sm\",\n\t\t\t\t\t\trole: \"status\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t/* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"cs-spinner\",\n\t\t\t\t\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\" \",\n\t\t\t\t\t\t\tr(\"storefront.subscription.loading\")\n\t\t\t\t\t\t]\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\t!ie && !re && te.length === 0 ? /* @__PURE__ */ T(J, {\n\t\t\t\t\t\tclassName: \"mt-8\",\n\t\t\t\t\t\ttitle: r(\"storefront.subscription.emptyTitle\"),\n\t\t\t\t\t\tdescription: r(\"storefront.subscription.emptyDescription\")\n\t\t\t\t\t}) : null,\n\t\t\t\t\t\" \",\n\t\t\t\t\t/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\t\tclassName: \"mt-8 grid gap-4 md:grid-cols-3\",\n\t\t\t\t\t\tchildren: te.map((e) => /* @__PURE__ */ T(gu, {\n\t\t\t\t\t\t\ttier: e,\n\t\t\t\t\t\t\tinterval: d,\n\t\t\t\t\t\t\tisPending: _ === e.id,\n\t\t\t\t\t\t\tisDisabled: _ !== null || s,\n\t\t\t\t\t\t\tonSelect: () => void ee(e.id)\n\t\t\t\t\t\t}, e.id))\n\t\t\t\t\t}),\n\t\t\t\t\t\" \"\n\t\t\t\t]\n\t\t\t}),\n\t\t\t\" \"\n\t\t]\n\t}) : /* @__PURE__ */ E(\"div\", {\n\t\tdir: i,\n\t\tclassName: G(\"cedros-shop-public cedros-shop-public--subscription min-h-screen\", e),\n\t\tchildren: [/* @__PURE__ */ T(Ao, { exitHref: \"/\" }), /* @__PURE__ */ T(\"main\", {\n\t\t\tclassName: \"mx-auto max-w-6xl px-4 py-10\",\n\t\t\tchildren: /* @__PURE__ */ T(J, {\n\t\t\t\ttitle: r(\"storefront.subscription.unavailable\"),\n\t\t\t\tdescription: r(\"storefront.subscription.managementUnavailable\")\n\t\t\t})\n\t\t})]\n\t});\n}\nfunction du(e) {\n\tlet t = u(typeof window > \"u\" ? \"\" : window.location.search, e);\n\tif (!t.ok) return;\n\tlet n = y(), r = l(t.path, \"success\"), i = _(n, t.path, \"success\"), a = _(n, t.path, \"cancelled\");\n\treturn r && i && a ? {\n\t\tsuccessPath: r,\n\t\tsuccessUrl: i,\n\t\tcancelUrl: a\n\t} : void 0;\n}\nfunction fu(e, t) {\n\treturn typeof e == \"object\" && !!e && \"kind\" in e && e.kind === t;\n}\nfunction pu(e, t, n) {\n\tlet r = fu(e, \"custom\") ? e.data : e;\n\tif (!r || typeof r != \"object\") return !1;\n\tlet i = r, a = n === \"annual\" ? \"yearly\" : \"monthly\";\n\treturn i.complete === !0 && i.planId === t && i.interval === a && typeof i.billingInterval == \"number\" && Number.isInteger(i.billingInterval) && i.billingInterval > 0 && [\n\t\t\"free_selected\",\n\t\t\"active\",\n\t\t\"trialing\"\n\t].includes(String(i.status)) && typeof i.subscriptionId == \"string\" && i.subscriptionId.trim().length > 0;\n}\nfunction mu(e, t, n, r) {\n\tif (fu(e, \"redirect\")) {\n\t\tlet t = a(e.url, \"subscription checkout session\");\n\t\treturn t === \"blocked\" || t === \"failed\" ? \"error\" : \"navigated\";\n\t}\n\treturn pu(e, t, n) ? a(r, \"subscription checkout session\") === \"navigated\" ? \"navigated\" : \"error\" : fu(e, \"embedded\") ? \"message\" : \"error\";\n}\nfunction hu() {\n\treturn /* @__PURE__ */ T(\"svg\", {\n\t\twidth: \"14\",\n\t\theight: \"14\",\n\t\tviewBox: \"0 0 24 24\",\n\t\tfill: \"none\",\n\t\tstroke: \"currentColor\",\n\t\tstrokeWidth: \"2.5\",\n\t\tstrokeLinecap: \"round\",\n\t\tstrokeLinejoin: \"round\",\n\t\t\"aria-hidden\": \"true\",\n\t\tchildren: /* @__PURE__ */ T(\"path\", { d: \"m4 12.5 5 5L20 6.5\" })\n\t});\n}\nfunction gu({ tier: e, interval: t, onSelect: n, isPending: r, isDisabled: i }) {\n\tlet a = B(), o = typeof e.priceAnnual == \"number\", s = t === \"annual\" && o ? e.priceAnnual : e.priceMonthly, c = t === \"annual\" && o ? a.t(\"storefront.subscription.year\") : a.t(\"storefront.subscription.month\");\n\treturn /* @__PURE__ */ E(\"article\", {\n\t\tclassName: G(\"cedros-shop-public__plan-card rounded-xl border\", e.isPopular && \"cedros-shop-public__plan-card--popular\"),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"flex flex-wrap items-center justify-between gap-2\",\n\t\t\t\tchildren: [/* @__PURE__ */ T(\"div\", {\n\t\t\t\t\tclassName: \"text-lg font-semibold\",\n\t\t\t\t\tchildren: e.title\n\t\t\t\t}), e.isPopular ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__badge cedros-shop-public__badge--accent\",\n\t\t\t\t\tchildren: a.t(\"storefront.subscription.popular\")\n\t\t\t\t}) : null]\n\t\t\t}),\n\t\t\te.description ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: \"mt-2 text-sm\",\n\t\t\t\tchildren: e.description\n\t\t\t}) : null,\n\t\t\t/* @__PURE__ */ T(Su, {\n\t\t\t\tdiscounts: e.discounts,\n\t\t\t\tmessages: e.promotionMessages,\n\t\t\t\tcurrency: e.currency\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__plan-price mt-5\",\n\t\t\t\tchildren: [a.formatMoney(s, e.currency), /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__muted text-sm font-normal\",\n\t\t\t\t\tchildren: a.t(\"storefront.subscription.interval\", { interval: c })\n\t\t\t\t})]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"ul\", {\n\t\t\t\tclassName: \"cedros-shop-public__plan-features mt-5 text-sm\",\n\t\t\t\tchildren: e.features.map((e) => /* @__PURE__ */ E(\"li\", { children: [/* @__PURE__ */ T(hu, {}), /* @__PURE__ */ T(\"span\", { children: e })] }, e))\n\t\t\t}),\n\t\t\t/* @__PURE__ */ E(Y, {\n\t\t\t\ttype: \"button\",\n\t\t\t\tclassName: \"mt-6 w-full\",\n\t\t\t\tonClick: n,\n\t\t\t\tdisabled: i,\n\t\t\t\t\"aria-busy\": r || void 0,\n\t\t\t\tchildren: [r ? /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\tclassName: \"cs-spinner\",\n\t\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t\t}) : null, r ? a.t(\"storefront.subscription.opening\") : a.t(\"storefront.subscription.subscribe\")]\n\t\t\t})\n\t\t]\n\t});\n}\nfunction _u({ status: e, subscriptions: t, isLoading: i, error: a, onRefresh: o }) {\n\tlet { config: s } = z(), c = B(), l = r(e?.supportUrl, y());\n\treturn s.customer?.isSignedIn ? s.adapter.getSubscriptionStatus ? i && t.length === 0 ? /* @__PURE__ */ E(\"p\", {\n\t\tclassName: \"mt-8 flex items-center gap-2 text-sm\",\n\t\trole: \"status\",\n\t\tchildren: [/* @__PURE__ */ T(\"span\", {\n\t\t\tclassName: \"cs-spinner\",\n\t\t\t\"aria-hidden\": \"true\"\n\t\t}), c.t(\"storefront.subscription.loadingStatus\")]\n\t}) : a && t.length === 0 ? /* @__PURE__ */ T(J, {\n\t\tclassName: \"mt-8\",\n\t\ttitle: c.t(\"storefront.subscription.statusUnavailable\"),\n\t\tdescription: c.t(\"storefront.error.load\"),\n\t\tactionLabel: c.t(\"common.retry\"),\n\t\tonAction: () => void o()\n\t}) : /* @__PURE__ */ E(\"section\", {\n\t\tclassName: \"mt-8\",\n\t\tchildren: [/* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"flex flex-wrap items-end justify-between gap-3\",\n\t\t\tchildren: [/* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"h2\", {\n\t\t\t\tclassName: \"text-xl font-semibold\",\n\t\t\t\tchildren: c.t(\"storefront.subscription.manageTitle\")\n\t\t\t}), /* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: \"mt-1 text-sm\",\n\t\t\t\tchildren: c.t(\"storefront.subscription.manageDescription\")\n\t\t\t})] }), l ? /* @__PURE__ */ T(\"a\", {\n\t\t\t\tclassName: \"cedros-shop-public__button cedros-shop-public__button--outline cedros-shop-public__button--size-sm\",\n\t\t\t\thref: l,\n\t\t\t\tchildren: c.t(\"storefront.history.contactSupport\")\n\t\t\t}) : null]\n\t\t}), t.length ? /* @__PURE__ */ T(\"div\", {\n\t\t\tclassName: \"mt-4 grid gap-4\",\n\t\t\tchildren: t.map((e) => /* @__PURE__ */ T(vu, {\n\t\t\t\tsubscription: e,\n\t\t\t\tonRefresh: o\n\t\t\t}, e.id))\n\t\t}) : /* @__PURE__ */ T(J, {\n\t\t\tclassName: \"mt-4\",\n\t\t\ttitle: c.t(\"storefront.subscription.noActiveTitle\"),\n\t\t\tdescription: c.t(\"storefront.subscription.noActiveDescription\")\n\t\t})]\n\t}) : /* @__PURE__ */ E(\"section\", {\n\t\tclassName: \"cedros-shop-public__card mt-8 rounded-lg border p-5\",\n\t\tchildren: [/* @__PURE__ */ T(\"h2\", {\n\t\t\tclassName: \"text-lg font-semibold\",\n\t\t\tchildren: c.t(\"storefront.subscription.manageTitle\")\n\t\t}), /* @__PURE__ */ T(\"p\", {\n\t\t\tclassName: \"mt-2 text-sm\",\n\t\t\tchildren: c.t(\"storefront.subscription.managementUnavailable\")\n\t\t})]\n\t}) : /* @__PURE__ */ E(\"section\", {\n\t\tclassName: \"cedros-shop-public__card mt-8 rounded-lg border p-5\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ T(\"h2\", {\n\t\t\t\tclassName: \"text-lg font-semibold\",\n\t\t\t\tchildren: c.t(\"storefront.subscription.manageTitle\")\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: \"mt-2 text-sm\",\n\t\t\t\tchildren: c.t(\"storefront.subscription.signInManage\")\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\ttype: \"button\",\n\t\t\t\tvariant: \"outline\",\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclassName: \"mt-4\",\n\t\t\t\tonClick: () => n(s.signInUrl),\n\t\t\t\tchildren: c.t(\"storefront.shop.signIn\")\n\t\t\t})\n\t\t]\n\t});\n}\nfunction vu({ subscription: e, onRefresh: t }) {\n\tlet { config: n } = z(), r = B(), [i, a] = x.useState(null), [o, s] = x.useState(!1), [c, l] = x.useState(\"\");\n\treturn /* @__PURE__ */ E(\"article\", {\n\t\tclassName: \"cedros-shop-public__order-card rounded-xl border p-5\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ E(\"div\", {\n\t\t\t\tclassName: \"cedros-shop-public__order-card-head\",\n\t\t\t\tchildren: [/* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"h3\", {\n\t\t\t\t\tclassName: \"text-base font-semibold\",\n\t\t\t\t\tchildren: e.tierTitle\n\t\t\t\t}), /* @__PURE__ */ T(\"p\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__muted mt-1 text-xs\",\n\t\t\t\t\tchildren: r.t(\"storefront.subscription.subscriptionMeta\", {\n\t\t\t\t\t\tinterval: r.t(`storefront.subscription.${e.interval}`),\n\t\t\t\t\t\tstatus: r.t(`storefront.subscription.status.${e.status}`)\n\t\t\t\t\t})\n\t\t\t\t})] }), /* @__PURE__ */ E(\"div\", {\n\t\t\t\t\tclassName: \"cedros-shop-public__order-total\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ T(\"span\", { children: r.formatMoney(e.price, e.currency) }), /* @__PURE__ */ T(\"span\", {\n\t\t\t\t\t\tclassName: \"cedros-shop-public__badge\",\n\t\t\t\t\t\tchildren: r.t(`storefront.subscription.status.${e.status}`)\n\t\t\t\t\t})]\n\t\t\t\t})]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(yu, { subscription: e }),\n\t\t\t/* @__PURE__ */ T(Su, {\n\t\t\t\tdiscounts: e.discounts,\n\t\t\t\tcurrency: e.currency\n\t\t\t}),\n\t\t\t/* @__PURE__ */ T(bu, {\n\t\t\t\tsubscription: e,\n\t\t\t\tbusy: i?.kind === \"busy\",\n\t\t\t\tcancelOpen: o,\n\t\t\t\treason: c,\n\t\t\t\tsetReason: l,\n\t\t\t\tsetCancelOpen: s,\n\t\t\t\tonRun: async (i) => {\n\t\t\t\t\ta({\n\t\t\t\t\t\tkind: \"busy\",\n\t\t\t\t\t\tmessage: r.t(\"storefront.subscription.actionWorking\")\n\t\t\t\t\t});\n\t\t\t\t\ttry {\n\t\t\t\t\t\tlet o = await Cu(n.adapter, e, i, c);\n\t\t\t\t\t\ta({\n\t\t\t\t\t\t\tkind: \"success\",\n\t\t\t\t\t\t\tmessage: lu(o, r.t(\"storefront.subscription.actionSubmitted\"))\n\t\t\t\t\t\t}), s(!1), l(\"\"), await t();\n\t\t\t\t\t} catch {\n\t\t\t\t\t\ta({\n\t\t\t\t\t\t\tkind: \"error\",\n\t\t\t\t\t\t\tmessage: r.t(\"storefront.subscription.actionError\")\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}),\n\t\t\ti ? /* @__PURE__ */ T(\"p\", {\n\t\t\t\tclassName: i.kind === \"error\" ? \"cedros-shop-public__error\" : \"cedros-shop-public__success\",\n\t\t\t\trole: i.kind === \"error\" ? \"alert\" : \"status\",\n\t\t\t\tchildren: i.message\n\t\t\t}) : null\n\t\t]\n\t});\n}\nfunction yu({ subscription: e }) {\n\tlet t = B(), n = [\n\t\t[\"storefront.subscription.renewsAt\", e.renewsAt],\n\t\t[\"storefront.subscription.nextBillingAt\", e.nextBillingAt],\n\t\t[\"storefront.subscription.currentPeriodEnd\", e.currentPeriodEnd],\n\t\t[\"storefront.subscription.pausedUntil\", e.pausedUntil],\n\t\t[\"storefront.subscription.cancelAt\", e.cancelAt]\n\t].filter(([, e]) => e);\n\treturn n.length ? /* @__PURE__ */ T(\"dl\", {\n\t\tclassName: \"cedros-shop-public__order-totals\",\n\t\tchildren: n.map(([e, n]) => /* @__PURE__ */ E(\"div\", { children: [/* @__PURE__ */ T(\"dt\", { children: t.t(e) }), /* @__PURE__ */ T(\"dd\", { children: t.formatDate(n) })] }, e))\n\t}) : null;\n}\nfunction bu(e) {\n\tlet { config: t } = z(), n = B(), i = e.subscription.operations ?? {}, a = !!(r(e.subscription.managementUrl, y()) || t.adapter.createSubscriptionManagementSession);\n\treturn /* @__PURE__ */ E(\"div\", {\n\t\tclassName: \"mt-4 space-y-3\",\n\t\tchildren: [/* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"cedros-shop-public__order-links\",\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ T(xu, {\n\t\t\t\t\tenabled: i.pause && !!t.adapter.pauseSubscription,\n\t\t\t\t\tbusy: e.busy,\n\t\t\t\t\tlabel: n.t(\"storefront.subscription.pause\"),\n\t\t\t\t\tonClick: () => e.onRun(\"pause\")\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(xu, {\n\t\t\t\t\tenabled: i.resume && !!t.adapter.resumeSubscription,\n\t\t\t\t\tbusy: e.busy,\n\t\t\t\t\tlabel: n.t(\"storefront.subscription.resume\"),\n\t\t\t\t\tonClick: () => e.onRun(\"resume\")\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(xu, {\n\t\t\t\t\tenabled: i.skipNext && !!t.adapter.skipSubscriptionRenewal,\n\t\t\t\t\tbusy: e.busy,\n\t\t\t\t\tlabel: n.t(\"storefront.subscription.skipNext\"),\n\t\t\t\t\tonClick: () => e.onRun(\"skip\")\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(xu, {\n\t\t\t\t\tenabled: (i.managementPortal || i.updatePayment) && a,\n\t\t\t\t\tbusy: e.busy,\n\t\t\t\t\tlabel: n.t(\"storefront.subscription.updatePayment\"),\n\t\t\t\t\tonClick: () => e.onRun(\"portal\")\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ T(Y, {\n\t\t\t\t\ttype: \"button\",\n\t\t\t\t\tvariant: \"destructive\",\n\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\tdisabled: !i.cancel || !t.adapter.cancelSubscription || e.busy,\n\t\t\t\t\tonClick: () => e.setCancelOpen(!e.cancelOpen),\n\t\t\t\t\tchildren: n.t(\"storefront.subscription.cancelSubscription\")\n\t\t\t\t})\n\t\t\t]\n\t\t}), e.cancelOpen ? /* @__PURE__ */ E(\"div\", {\n\t\t\tclassName: \"grid gap-2 sm:grid-cols-[1fr_auto]\",\n\t\t\tchildren: [/* @__PURE__ */ T(X, {\n\t\t\t\tvalue: e.reason,\n\t\t\t\tonChange: (t) => e.setReason(t.target.value),\n\t\t\t\tplaceholder: n.t(\"storefront.subscription.cancelReason\")\n\t\t\t}), /* @__PURE__ */ T(Y, {\n\t\t\t\ttype: \"button\",\n\t\t\t\tdisabled: e.busy || !e.reason.trim(),\n\t\t\t\tonClick: () => e.onRun(\"cancel\"),\n\t\t\t\tchildren: n.t(\"storefront.subscription.confirmCancel\")\n\t\t\t})]\n\t\t}) : null]\n\t});\n}\nfunction xu({ enabled: e, busy: t, label: n, onClick: r }) {\n\treturn /* @__PURE__ */ T(Y, {\n\t\ttype: \"button\",\n\t\tvariant: \"outline\",\n\t\tsize: \"sm\",\n\t\tdisabled: !e || t,\n\t\tonClick: () => void r(),\n\t\tchildren: n\n\t});\n}\nfunction Su({ discounts: e, messages: t, currency: n }) {\n\tlet r = B(), i = [...(e ?? []).map((e) => e.amount ? `${e.title} ${r.formatMoney(e.amount, e.currency ?? n)}` : e.title), ...t ?? []].filter(Boolean);\n\treturn i.length ? /* @__PURE__ */ T(\"ul\", {\n\t\tclassName: \"mt-4 flex flex-wrap gap-2 text-xs\",\n\t\tchildren: i.map((e) => /* @__PURE__ */ T(\"li\", {\n\t\t\tclassName: \"cedros-shop-public__badge\",\n\t\t\tchildren: e\n\t\t}, e))\n\t}) : null;\n}\nasync function Cu(e, t, n, r) {\n\tif (n === \"pause\" && e.pauseSubscription) return e.pauseSubscription({\n\t\tsubscriptionId: t.id,\n\t\treason: \"customer_request\"\n\t});\n\tif (n === \"resume\" && e.resumeSubscription) return e.resumeSubscription({ subscriptionId: t.id });\n\tif (n === \"skip\" && e.skipSubscriptionRenewal) return e.skipSubscriptionRenewal({\n\t\tsubscriptionId: t.id,\n\t\treason: \"customer_request\"\n\t});\n\tif (n === \"cancel\" && e.cancelSubscription) return e.cancelSubscription({\n\t\tsubscriptionId: t.id,\n\t\treason: r.trim()\n\t});\n\tif (n === \"portal\") return wu(e, t);\n\tthrow Error(\"Subscription action is unavailable\");\n}\nasync function wu(e, t) {\n\tlet n = r(t.managementUrl, y());\n\tif (n) {\n\t\tlet e = a(n, \"subscription management URL\");\n\t\tif (e === \"blocked\" || e === \"failed\") throw Error(\"Subscription management navigation failed\");\n\t} else if (e.createSubscriptionManagementSession) {\n\t\tt.managementUrl && f(\"subscription management URL\");\n\t\tlet n = await e.createSubscriptionManagementSession({\n\t\t\tsubscriptionId: t.id,\n\t\t\treturnUrl: Eu()\n\t\t});\n\t\tif (n.kind === \"redirect\") {\n\t\t\tlet e = a(n.url, \"subscription management session\");\n\t\t\tif (e === \"blocked\" || e === \"failed\") throw Error(\"Subscription management navigation failed\");\n\t\t}\n\t} else throw t.managementUrl && f(\"subscription management URL\"), Error(\"Subscription action is unavailable\");\n\treturn {\n\t\tid: t.id,\n\t\tstatus: \"completed\"\n\t};\n}\nfunction Tu(e, t) {\n\tif (!e) return su;\n\tif (e.subscriptions?.length) return e.subscriptions;\n\tif (!e.isActive || !e.currentTierId) return su;\n\tlet n = t.find((t) => t.id === e.currentTierId);\n\treturn [{\n\t\tid: e.currentTierId,\n\t\ttierId: e.currentTierId,\n\t\ttierTitle: n?.title ?? e.currentTierId,\n\t\tstatus: \"active\",\n\t\tinterval: \"monthly\",\n\t\tprice: n?.priceMonthly ?? 0,\n\t\tcurrency: n?.currency ?? \"USD\",\n\t\trenewsAt: e.renewsAt\n\t}];\n}\nfunction Eu() {\n\tif (!(typeof window > \"u\")) return `${window.location.origin}${window.location.pathname}`;\n}\n//#endregion\nexport { wa as $, ta as A, Zt as At, ca as B, Ja as C, lr as Ct, Ba as D, an as Dt, Va as E, hn as Et, Ji as F, ft as Ft, Hi as G, pa as H, Xi as I, z as It, ya as J, ma as K, Zi as L, B as Lt, na as M, qt as Mt, ra as N, It as Nt, Aa as O, rn as Ot, Y as P, ht as Pt, Ca as Q, Qi as R, dt as Rt, Ka as S, gr as St, Na as T, gn as Tt, da as U, fa as V, ua as W, xa as X, ba as Y, ha as Z, bo as _, br as _t, Zc as a, wi as at, oo as b, U as bt, ss as c, ei as ct, Io as d, Mr as dt, Ta as et, Co as f, Lr as ft, Qa as g, kr as gt, ho as h, Or as ht, sl as i, Ti as it, ia as j, Kt as jt, ka as k, V as kt, is as l, ti as lt, Za as m, Dr as mt, Yl as n, G as nt, hs as o, Si as ot, lo as p, Ir as pt, ga as q, Ol as r, Oi as rt, ls as s, fi as st, uu as t, J as tt, Go as u, Ar as ut, co as v, yr as vt, qa as w, _n as wt, Ga as x, cr as xt, Z as y, vr as yt, X as z, D as zt };\n","imports":[{"dynamic":false,"end":212,"specifier":"./styleInjection-BL155Khs.js","start":184},{"dynamic":false,"end":240,"specifier":"react","start":235},{"dynamic":false,"end":279,"specifier":"react","start":274},{"dynamic":false,"end":351,"specifier":"react/jsx-runtime","start":334}],"hasUnsupportedDynamicImports":false},{"path":"workspace/react/dist/styleInjection-BL155Khs.js","kind":"module","text":"//#region src/extension/constants.ts\nvar e = \"cedros-shop\", t = \"4.0.7\", n = \"cedros-shop:admin\", r = \"cedros-shop:storefront\", i = \"cedros-shop:commerce-analytics-card\", a = \"cedros-shop:shop-page\", o = \"cedros-shop:cart-page\", s = \"cedros-shop:checkout-page\", c = \"cedros-shop:account-page\", l = \"cedros-shop:purchase-history-page\", u = \"cedros-shop:subscription-page\", ee = \"cedros-shop:category-page\", te = \"cedros-shop:product-page\", ne = \"cedros-pay:product-read\", re = \"cedros-pay:product-read\", ie = \"cedros-pay:product-read\", ae = \"cedros-pay:checkout\", oe = \"cedros-pay:versioned-cart-write-v1\", se = \"cedros-settings-atomic-cas-v1\", ce = \"cedros-data:extension-storage-cas-v1\", le = \"/extensions/cedros-pay/products/v1/catalog\", ue = \"cedros-pay:admin\", de = \"cedros-pay:catalog\", fe = \"cedros-pay:settings-hub\", pe = \"cedros-pay:coupons\", me = \"cedros-shop:storefront-settings\", he = \"cedros-shop:storefront-settings-v1\", ge = \"cedros-shop:storefront-settings-schema\", _e = \"cedros-shop:storefront-settings-db\", ve = \"/extensions/cedros-shop/admin/config/shop\", ye = \"cedros-shop:storefront-manage\", be = \"cedros-shop:commerce-analytics\", xe = \"cedros-shop:observability\", Se = \"cedros-shop:agentic-commerce-provider\", Ce = \"cedros-shop:agentic-commerce\", we = \"cedros-shop:agentic-catalog-export\", Te = \"cedros-shop:agentic-checkout-intent\", Ee = \"cedros-shop:admin-section-saved\", De = \"cedros-shop:setup-completed\", Oe = \"cedros-shop:setup-blocked\", ke = \"cedros-shop:admin-config-saved\", Ae = \"cedros-shop:checkout-handoff-failed\", je = \"cedros-shop:setup-blocked-notification\", Me = \"cedros-shop:checkout-handoff-failed-notification\", Ne = \"cedros-shop:pwa-shop-shortcut\", Pe = \"cedros-shop:pwa-cart-shortcut\", Fe = \"cedros-shop:pwa-orders-shortcut\", Ie = \"Cedros Shop\", Le = \"Cedros storefront presentation extension backed by Cedros Pay catalog, checkout, subscriptions, and market-settlement contracts.\", Re = (/* @__PURE__ */ \"{\\\"schemaVersion\\\":1,\\\"extensionId\\\":\\\"cedros-shop\\\",\\\"displayName\\\":\\\"Cedros Shop\\\",\\\"version\\\":\\\"4.0.7\\\",\\\"description\\\":\\\"Cedros storefront presentation extension backed by Cedros Pay catalog, checkout, subscriptions, and market-settlement contracts.\\\",\\\"platformApiVersion\\\":\\\"1\\\",\\\"i18nCatalogs\\\":[{\\\"locale\\\":\\\"en\\\",\\\"namespace\\\":\\\"cedros-shop:manifest\\\",\\\"catalog\\\":{\\\"fields\\\":{\\\"displayName\\\":\\\"Cedros Shop\\\",\\\"description\\\":\\\"Cedros storefront presentation extension backed by Cedros Pay catalog, checkout, subscriptions, and market-settlement contracts.\\\"},\\\"dependencies\\\":{\\\"extension:cedros-login\\\":{\\\"reason\\\":\\\"Admin identity and session context must come from the official Cedros Login extension or host service.\\\"},\\\"extension:cedros-pay\\\":{\\\"reason\\\":\\\"Shop catalog reads, checkout, shipping, tax, subscriptions, order-settlement handoffs(, and pay-now recovery depend on Cedros Pay or its host-provided equivalent.\\\"},\\\"capability:cedros-pay:product-read\\\":{\\\"reason\\\":\\\"Storefront category and product pages read active public catalog records from Cedros Pay via GET /extensions/cedros-pay/products/v1/catalog.\\\"},\\\"capability:cedros-data:extension-storage-cas-v1\\\":{\\\"reason\\\":\\\"Storefront settings use Cedros Data's typed compare-and-set seam to prevent lost updates and atomically preserve the compatibility mirror.\\\"}},\\\"adminModules\\\":{\\\"cedros-shop:admin\\\":{\\\"displayName\\\":\\\"Cedros Shop admin\\\"}},\\\"contentBlocks\\\":{\\\"cedros-shop:shop-surface\\\":{\\\"displayName\\\":\\\"Shop Surface\\\",\\\"description\\\":\\\"Renders the storefront shop catalog surface.\\\"},\\\"cedros-shop:category-surface\\\":{\\\"displayName\\\":\\\"Category Surface\\\",\\\"description\\\":\\\"Renders a storefront category listing (by category slug.\\\"},\\\"cedros-shop:product-surface\\\":{\\\"displayName\\\":\\\"Product Surface\\\",\\\"description\\\":\\\"Renders a storefront product detail page by product slug.\\\"},\\\"cedros-shop:cart-surface\\\":{\\\"displayName\\\":\\\"Cart Surface\\\",\\\"description\\\":\\\"Renders the storefront cart page.\\\"},\\\"cedros-shop:checkout-surface\\\":{\\\"displayName\\\":\\\"Checkout Surface\\\",\\\"description\\\":\\\"Renders the host-coordinated checkout entry page.\\\"},\\\"cedros-shop:account-surface\\\":{\\\"displayName\\\":\\\"Account Surface\\\",\\\"description\\\":\\\"Renders authenticated customer profile, addresses, saved checkout details, and support links.\\\"},\\\"cedros-shop:purchase-history-surface\\\":{\\\"displayName\\\":\\\"Purchase History Surface\\\",\\\"description\\\":\\\"Renders authenticated customer purchase history.\\\"},\\\"cedros-shop:subscription-surface\\\":{\\\"displayName\\\":\\\"Subscription Surface\\\",\\\"descrip(tion\\\":\\\"Renders subscription tiers, Pay checkout, and signed-in lifecycle management.\\\"}},\\\"contentTemplates\\\":{\\\"cedros-shop:shop-page-template\\\":{\\\"displayName\\\":\\\"Shop Page\\\",\\\"description\\\":\\\"Owner-editable shop landing page template.\\\"},\\\"cedros-shop:category-page-template\\\":{\\\"displayName\\\":\\\"Category Page\\\",\\\"description\\\":\\\"Owner-editable category listing page template.\\\"},\\\"cedros-shop:product-page-template\\\":{\\\"displayName\\\":\\\"Product Page\\\",\\\"description\\\":\\\"Owner-editable product detail page template.\\\"},\\\"cedros-shop:cart-page-template\\\":{\\\"displayName\\\":\\\"Cart Page\\\",\\\"description\\\":\\\"Owner-editable cart page template.\\\"},\\\"cedros-shop:checkout-page-template\\\":{\\\"displayName\\\":\\\"Checkout Page\\\",\\\"description\\\":\\\"Owner-editable checkout entry page template.\\\"},\\\"cedros-shop:account-page-template\\\":{\\\"displayName\\\":\\\"Account Page\\\",\\\"des(cription\\\":\\\"Owner-editable customer account page template.\\\"},\\\"cedros-shop:purchase-history-page-template\\\":{\\\"displayName\\\":\\\"Purchase History Page\\\",\\\"description\\\":\\\"Owner-editable purchase history page template.\\\"},\\\"cedros-shop:subscription-page-template\\\":{\\\"displayName\\\":\\\"Subscription Page\\\",\\\"description\\\":\\\"Owner-editable subscription page template.\\\"}},\\\"pageSeeds\\\":{\\\"cedros-shop:shop-page\\\":{\\\"displayName\\\":\\\"Shop Page\\\",\\\"title\\\":\\\"Shop\\\",\\\"description\\\":\\\"Browse products, collections, and current offers.\\\"},\\\"cedros-shop:cart-page\\\":{\\\"displayName\\\":\\\"Cart Page\\\",\\\"title\\\":\\\"Cart\\\",\\\"description\\\":\\\"Review the items in your cart before checkout.\\\"},\\\"cedros-shop:checkout-page\\\":{\\\"displayName\\\":\\\"Checkout Page\\\",\\\"title\\\":\\\"Checkout\\\",\\\"description\\\":\\\"Securely complete your purchase.\\\"},\\\"cedros-shop:account-page\\\":{\\\"displayName\\\":\\\"Account (Page\\\",\\\"title\\\":\\\"Account\\\",\\\"description\\\":\\\"Manage your profile, addresses, saved checkout details, and support links.\\\"},\\\"cedros-shop:purchase-history-page\\\":{\\\"displayName\\\":\\\"Purchase History Page\\\",\\\"title\\\":\\\"Purchase history\\\",\\\"description\\\":\\\"View your past orders and receipts.\\\"},\\\"cedros-shop:subscription-page\\\":{\\\"displayName\\\":\\\"Subscription Page\\\",\\\"title\\\":\\\"Subscriptions\\\",\\\"description\\\":\\\"Choose a plan and manage eligible subscription actions.\\\"}},\\\"authoredSurfaces\\\":{\\\"cedros-shop:storefront-pages\\\":{\\\"displayName\\\":\\\"Storefront Pages\\\",\\\"description\\\":\\\"Owner-editable storefront page templates for shop, cart, checkout, account, history, and subscriptions.\\\",\\\"eyebrow\\\":\\\"Shop\\\"}},\\\"authoredTemplateUtilities\\\":{\\\"cedros-shop:storefront-starter-set\\\":{\\\"displayName\\\":\\\"Storefront Starter Set\\\",\\\"description\\\":\\\"Adds the standard C(edros Shop page templates.\\\"}},\\\"onboardingPages\\\":{\\\"cedros-shop:onboarding-storefront\\\":{\\\"displayName\\\":\\\"Review storefront settings\\\",\\\"description\\\":\\\"Verify products, payment availability, and public access before shaping storefront presentation, checkout, merchandising, and Markets.\\\"}},\\\"setupSeeds\\\":{\\\"cedros-shop:setup-blocked-notification\\\":{\\\"displayName\\\":\\\"Setup Blocked Notification\\\",\\\"title\\\":\\\"Cedros Shop setup blocked\\\",\\\"description\\\":\\\"Team notification route for missing dependencies or launch-blocking setup issues.\\\",\\\"subjectTemplate\\\":\\\"Cedros Shop setup is blocked\\\",\\\"bodyTemplate\\\":\\\"Cedros Shop setup is blocked by missing dependencies or invalid configuration. Review the Shop storefront settings before making the shop public.\\\"},\\\"cedros-shop:checkout-handoff-failed-notification\\\":{\\\"displayName\\\":\\\"Check(out Handoff Failed Notification\\\",\\\"title\\\":\\\"Cedros Shop checkout handoff failed\\\",\\\"description\\\":\\\"Team notification route for checkout handoff failures before Cedros Pay takes over.\\\",\\\"subjectTemplate\\\":\\\"Cedros Shop checkout handoff failed\\\",\\\"bodyTemplate\\\":\\\"Cedros Shop could not complete a checkout handoff. Review Cedros Pay availability and shop checkout configuration.\\\"}},\\\"pwaShortcuts\\\":{\\\"cedros-shop:pwa-shop-shortcut\\\":{\\\"name\\\":\\\"Shop\\\",\\\"shortName\\\":\\\"Shop\\\",\\\"description\\\":\\\"Open the shop catalog.\\\"},\\\"cedros-shop:pwa-cart-shortcut\\\":{\\\"name\\\":\\\"Cart\\\",\\\"shortName\\\":\\\"Cart\\\",\\\"description\\\":\\\"Open the cart review page.\\\"},\\\"cedros-shop:pwa-orders-shortcut\\\":{\\\"name\\\":\\\"Purchase history\\\",\\\"shortName\\\":\\\"Purchases\\\",\\\"description\\\":\\\"See your past orders and receipts. Sign-in required.\\\"}},\\\"analyticsEvents\\\":{\\\"cedros-shop:product-vie(wed\\\":{\\\"displayName\\\":\\\"Product Viewed\\\",\\\"description\\\":\\\"Counts product detail views so owners can compare product interest.\\\"},\\\"cedros-shop:add-to-cart\\\":{\\\"displayName\\\":\\\"Add To Cart\\\",\\\"description\\\":\\\"Counts storefront cart additions so owners can identify product conversion interest.\\\"},\\\"cedros-shop:checkout-started\\\":{\\\"displayName\\\":\\\"Checkout Started\\\",\\\"description\\\":\\\"Counts checkout attempts before Cedros Pay handoff so owners can monitor checkout intent.\\\"},\\\"cedros-shop:subscription-checkout-started\\\":{\\\"displayName\\\":\\\"Subscription Checkout Started\\\",\\\"description\\\":\\\"Counts subscription checkout attempts so owners can monitor subscription interest.\\\"},\\\"cedros-shop:cart-opened\\\":{\\\"displayName\\\":\\\"Cart Opened\\\",\\\"description\\\":\\\"Counts cart drawer opens so owners can monitor shopping cart interest.\\\"},\\\"cedros-shop:ad(min-section-saved\\\":{\\\"displayName\\\":\\\"Admin Section Saved\\\",\\\"description\\\":\\\"Counts successful owner configuration saves by admin section.\\\"},\\\"cedros-shop:collection-viewed\\\":{\\\"displayName\\\":\\\"Collection Viewed\\\",\\\"description\\\":\\\"Counts shop and category listing views so owners can see which collections draw traffic.\\\"},\\\"cedros-shop:catalog-searched\\\":{\\\"displayName\\\":\\\"Catalog Searched\\\",\\\"description\\\":\\\"Counts catalog search, sort, and filter refinements so owners can see how visitors browse.\\\"},\\\"cedros-shop:quick-view-opened\\\":{\\\"displayName\\\":\\\"Quick View Opened\\\",\\\"description\\\":\\\"Counts product quick-view opens from listing grids so owners can gauge product interest.\\\"},\\\"cedros-shop:cart-viewed\\\":{\\\"displayName\\\":\\\"Cart Viewed\\\",\\\"description\\\":\\\"Counts cart page views so owners can monitor cart engagement before checkout(.\\\"},\\\"cedros-shop:remove-from-cart\\\":{\\\"displayName\\\":\\\"Remove From Cart\\\",\\\"description\\\":\\\"Counts cart line removals so owners can monitor cart drop-off.\\\"}},\\\"capabilities\\\":{\\\"cedros-shop:storefront-manage\\\":{\\\"displayName\\\":\\\"Storefront Management\\\",\\\"description\\\":\\\"Manage storefront settings, Markets controls, and layouts.\\\"},\\\"cedros-shop:commerce-analytics\\\":{\\\"displayName\\\":\\\"Commerce analytics\\\",\\\"description\\\":\\\"Read aggregate storefront reports, abandoned-checkout recovery queues, and payment-event health from host analytics and Cedros Pay.\\\"},\\\"cedros-shop:observability\\\":{\\\"displayName\\\":\\\"Shop Observability\\\",\\\"description\\\":\\\"Records storefront analytics, configuration changes, and checkout handoff issues. No customer personal data is included.\\\"}},\\\"databaseAccess\\\":{\\\"cedros-shop:storefront-settings-db\\\":{\\\"displayNa(me\\\":\\\"Storefront Settings Database\\\",\\\"description\\\":\\\"Reads and writes extension-owned storefront display, catalog, checkout, inventory, merchandising, and Markets settings.\\\"}},\\\"providerAccess\\\":{\\\"cedros-shop:agentic-commerce-provider\\\":{\\\"displayName\\\":\\\"Agentic Commerce Provider\\\",\\\"description\\\":\\\"Legacy compatibility grant retained without a guest provider call. Agentic commerce execution uses the declared AI routes and host-validated bearer capabilities.\\\"}},\\\"aiSkills\\\":{\\\"cedros-shop:agentic-commerce\\\":{\\\"name\\\":\\\"Agentic Commerce\\\",\\\"description\\\":\\\"Expose structured product cards and checkout handoff intent for AI shopping channels.\\\",\\\"docsMarkdown\\\":\\\"Use this skill when an authenticated host AI channel needs machine-readable product data or a buyer-safe checkout intent. Cedros Shop normalizes storefront-sa(fe payloads only; Cedros Pay remains source of truth for catalog reads, quote, checkout, orders, discounts, shipping, tax, subscriptions, and payment execution.\\\"}},\\\"aiCapabilities\\\":{\\\"cedros-shop:agentic-catalog-export\\\":{\\\"name\\\":\\\"Export Agentic Catalog Cards\\\",\\\"description\\\":\\\"Normalize storefront-safe product snapshots into structured product cards and schema.org Product data for AI channel discovery.\\\"},\\\"cedros-shop:agentic-checkout-intent\\\":{\\\"name\\\":\\\"Prepare Agentic Checkout Intent\\\",\\\"description\\\":\\\"Prepare a buyer-safe cart handoff intent for chat checkout without creating payment state or duplicating Cedros Pay quote/checkout policy.\\\"}}}}],\\\"compatibility\\\":{\\\"platformApiVersion\\\":\\\"1\\\",\\\"witChecksum\\\":\\\"5f2c9823127864b7fb7ecd4599cf0681ae2fa63c8028ae2259acb271b23c7c58\\\"},\\\"packageFamily\\\":{\\\"server\\\":{\\\"packa(geName\\\":\\\"cedros-shop\\\",\\\"version\\\":\\\"4.0.7\\\",\\\"required\\\":true},\\\"react\\\":{\\\"packageName\\\":\\\"@cedros/shop-react\\\",\\\"version\\\":\\\"4.0.7\\\",\\\"required\\\":true},\\\"reactNative\\\":{\\\"packageName\\\":\\\"@cedros/shop-react-native\\\",\\\"version\\\":\\\"4.0.7\\\",\\\"required\\\":true}},\\\"dependencies\\\":{\\\"capabilities\\\":[{\\\"capabilityId\\\":\\\"cedros-pay:product-read\\\",\\\"required\\\":true,\\\"reason\\\":\\\"Storefront category and product pages read active public catalog records from Cedros Pay via GET /extensions/cedros-pay/products/v1/catalog.\\\"},{\\\"capabilityId\\\":\\\"cedros-data:extension-storage-cas-v1\\\",\\\"required\\\":true,\\\"reason\\\":\\\"Storefront settings require the typed host compare-and-set seam for conflict-safe, atomic multi-record writes.\\\"}],\\\"extensions\\\":[{\\\"extensionId\\\":\\\"cedros-login\\\",\\\"minVersion\\\":\\\"0.0.55\\\",\\\"required\\\":true,\\\"reason\\\":\\\"Admin identity and session context must c(ome from the official Cedros Login extension or host service.\\\"},{\\\"extensionId\\\":\\\"cedros-pay\\\",\\\"minVersion\\\":\\\"3.0.7\\\",\\\"required\\\":true,\\\"reason\\\":\\\"Shop catalog reads, checkout, shipping, tax, subscriptions, order-settlement handoffs, and pay-now recovery depend on Cedros Pay or its host-provided equivalent.\\\"}]},\\\"requiredServices\\\":[],\\\"requiredCapabilities\\\":[\\\"cedros-pay:product-read\\\",\\\"cedros-data:extension-storage-cas-v1\\\"],\\\"surfaces\\\":{\\\"server\\\":{\\\"packageRef\\\":\\\"server\\\",\\\"required\\\":true,\\\"migrations\\\":[\\\"cedros-shop:storefront-settings-v1\\\"],\\\"settingsSchemas\\\":[\\\"cedros-shop:storefront-settings-schema\\\"],\\\"contentModels\\\":[\\\"cedros-shop:storefront-settings\\\"],\\\"routes\\\":[\\\"cedros-shop:storefront-read\\\",\\\"cedros-shop:storefront-write\\\",\\\"cedros-shop:agentic-catalog-export\\\",\\\"cedros-shop:agentic-checkout-intent\\\"],\\\"jobs\\\":[],\\\"(events\\\":[\\\"cedros-shop:admin-section-saved\\\",\\\"cedros-shop:setup-completed\\\",\\\"cedros-shop:setup-blocked\\\",\\\"cedros-shop:admin-config-saved\\\",\\\"cedros-shop:checkout-handoff-failed\\\"]},\\\"admin\\\":{\\\"packageRef\\\":\\\"react\\\",\\\"required\\\":true,\\\"moduleIds\\\":[\\\"cedros-shop:admin\\\"],\\\"slotIds\\\":[],\\\"editorSurfaceIds\\\":[]},\\\"web\\\":{\\\"packageRef\\\":\\\"react\\\",\\\"required\\\":true,\\\"routeIds\\\":[\\\"cedros-shop:shop-page\\\",\\\"cedros-shop:cart-page\\\",\\\"cedros-shop:checkout-page\\\",\\\"cedros-shop:account-page\\\",\\\"cedros-shop:purchase-history-page\\\",\\\"cedros-shop:subscription-page\\\",\\\"cedros-shop:category-page\\\",\\\"cedros-shop:product-page\\\"],\\\"blockTypes\\\":[\\\"cedros-shop:shop-surface\\\",\\\"cedros-shop:category-surface\\\",\\\"cedros-shop:product-surface\\\",\\\"cedros-shop:cart-surface\\\",\\\"cedros-shop:checkout-surface\\\",\\\"cedros-shop:account-surface\\\",\\\"cedros-shop:purchase-history-surface(\\\",\\\"cedros-shop:subscription-surface\\\"],\\\"templateIds\\\":[\\\"cedros-shop:shop-page-template\\\",\\\"cedros-shop:category-page-template\\\",\\\"cedros-shop:product-page-template\\\",\\\"cedros-shop:cart-page-template\\\",\\\"cedros-shop:checkout-page-template\\\",\\\"cedros-shop:account-page-template\\\",\\\"cedros-shop:purchase-history-page-template\\\",\\\"cedros-shop:subscription-page-template\\\"],\\\"authoredSurfaceIds\\\":[\\\"cedros-shop:storefront-pages\\\"],\\\"templateUtilityIds\\\":[\\\"cedros-shop:storefront-starter-set\\\"]},\\\"native\\\":{\\\"packageRef\\\":\\\"reactNative\\\",\\\"required\\\":true,\\\"screenIds\\\":[],\\\"stackIds\\\":[],\\\"providerIds\\\":[]},\\\"ai\\\":{\\\"packageRef\\\":\\\"server\\\",\\\"skills\\\":[{\\\"id\\\":\\\"cedros-shop:agentic-commerce\\\",\\\"name\\\":\\\"Agentic Commerce\\\",\\\"description\\\":\\\"Expose structured product cards and checkout handoff intent for AI shopping channels.\\\",\\\"category\\\":\\\"commerce\\\",\\\"tags\\\":[(\\\"catalog\\\",\\\"checkout\\\",\\\"agentic-commerce\\\"],\\\"visibility\\\":\\\"authenticated\\\",\\\"docs\\\":{\\\"markdown\\\":\\\"Use this skill when an authenticated host AI channel needs machine-readable product data or a buyer-safe checkout intent. Cedros Shop normalizes storefront-safe payloads only; Cedros Pay remains source of truth for catalog reads, quote, checkout, orders, discounts, shipping, tax, subscriptions, and payment execution.\\\"}}],\\\"capabilities\\\":[{\\\"id\\\":\\\"cedros-shop:agentic-catalog-export\\\",\\\"name\\\":\\\"Export Agentic Catalog Cards\\\",\\\"description\\\":\\\"Normalize storefront-safe product snapshots into structured product cards and schema.org Product data for AI channel discovery.\\\",\\\"kind\\\":\\\"tool\\\",\\\"tags\\\":[\\\"catalog\\\",\\\"structured-data\\\"],\\\"visibility\\\":\\\"authenticated\\\",\\\"endpoint\\\":{\\\"method\\\":\\\"POST\\\",\\\"path\\\":\\\"/extensions/cedros-shop/agenti(c/catalog/export\\\"},\\\"auth\\\":{\\\"schemes\\\":[\\\"bearer-token\\\"]},\\\"inputSchema\\\":{\\\"type\\\":\\\"object\\\",\\\"required\\\":[\\\"products\\\"],\\\"properties\\\":{\\\"channel\\\":{\\\"type\\\":\\\"string\\\"},\\\"market\\\":{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"country\\\":{\\\"type\\\":\\\"string\\\"},\\\"locale\\\":{\\\"type\\\":\\\"string\\\"},\\\"currency\\\":{\\\"type\\\":\\\"string\\\"},\\\"channel\\\":{\\\"type\\\":\\\"string\\\"}},\\\"additionalProperties\\\":false},\\\"products\\\":{\\\"type\\\":\\\"array\\\",\\\"minItems\\\":1,\\\"maxItems\\\":100,\\\"items\\\":{\\\"type\\\":\\\"object\\\",\\\"required\\\":[\\\"productId\\\",\\\"title\\\"],\\\"properties\\\":{\\\"productId\\\":{\\\"type\\\":\\\"string\\\"},\\\"title\\\":{\\\"type\\\":\\\"string\\\"},\\\"slug\\\":{\\\"type\\\":\\\"string\\\"},\\\"description\\\":{\\\"type\\\":\\\"string\\\"},\\\"price\\\":{\\\"type\\\":\\\"number\\\"},\\\"currency\\\":{\\\"type\\\":\\\"string\\\"},\\\"availability\\\":{\\\"type\\\":\\\"string\\\"},\\\"url\\\":{\\\"type\\\":\\\"string\\\"},\\\"imageUrl\\\":{\\\"type\\\":\\\"string\\\"},\\\"categories\\\":{\\\"type\\\":\\\"array\\\",\\\"items\\\":{\\\"type\\\":\\\"string\\\"}},\\\"tags\\\":{\\\"type\\\":\\\"array\\\",\\\"item(s\\\":{\\\"type\\\":\\\"string\\\"}},\\\"attributes\\\":{\\\"type\\\":\\\"object\\\"}}}}},\\\"additionalProperties\\\":false},\\\"outputSchema\\\":{\\\"type\\\":\\\"object\\\",\\\"required\\\":[\\\"schemaVersion\\\",\\\"products\\\",\\\"policy\\\"],\\\"properties\\\":{\\\"schemaVersion\\\":{\\\"type\\\":\\\"number\\\"},\\\"products\\\":{\\\"type\\\":\\\"array\\\"},\\\"policy\\\":{\\\"type\\\":\\\"object\\\"},\\\"warnings\\\":{\\\"type\\\":\\\"array\\\"}}}},{\\\"id\\\":\\\"cedros-shop:agentic-checkout-intent\\\",\\\"name\\\":\\\"Prepare Agentic Checkout Intent\\\",\\\"description\\\":\\\"Prepare a buyer-safe cart handoff intent for chat checkout without creating payment state or duplicating Cedros Pay quote/checkout policy.\\\",\\\"kind\\\":\\\"action\\\",\\\"tags\\\":[\\\"checkout\\\",\\\"chat-commerce\\\"],\\\"visibility\\\":\\\"authenticated\\\",\\\"endpoint\\\":{\\\"method\\\":\\\"POST\\\",\\\"path\\\":\\\"/extensions/cedros-shop/agentic/checkout/intent\\\"},\\\"auth\\\":{\\\"schemes\\\":[\\\"bearer-token\\\"]},\\\"inputSchema\\\":{\\\"type\\\":\\\"object\\\",\\\"required\\\":[\\\"cart\\\"],\\\"pro(perties\\\":{\\\"channel\\\":{\\\"type\\\":\\\"string\\\"},\\\"currency\\\":{\\\"type\\\":\\\"string\\\"},\\\"market\\\":{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"country\\\":{\\\"type\\\":\\\"string\\\"},\\\"locale\\\":{\\\"type\\\":\\\"string\\\"},\\\"currency\\\":{\\\"type\\\":\\\"string\\\"},\\\"channel\\\":{\\\"type\\\":\\\"string\\\"}},\\\"additionalProperties\\\":false},\\\"successUrl\\\":{\\\"type\\\":\\\"string\\\"},\\\"cancelUrl\\\":{\\\"type\\\":\\\"string\\\"},\\\"cart\\\":{\\\"type\\\":\\\"array\\\",\\\"minItems\\\":1,\\\"maxItems\\\":100,\\\"items\\\":{\\\"type\\\":\\\"object\\\",\\\"required\\\":[\\\"productId\\\",\\\"quantity\\\"],\\\"properties\\\":{\\\"productId\\\":{\\\"type\\\":\\\"string\\\"},\\\"variantId\\\":{\\\"type\\\":\\\"string\\\"},\\\"quantity\\\":{\\\"type\\\":\\\"integer\\\",\\\"minimum\\\":1,\\\"maximum\\\":999}}}}},\\\"additionalProperties\\\":false},\\\"outputSchema\\\":{\\\"type\\\":\\\"object\\\",\\\"required\\\":[\\\"schemaVersion\\\",\\\"checkoutMode\\\",\\\"quoteRequired\\\",\\\"checkoutPath\\\",\\\"cart\\\",\\\"policy\\\"],\\\"properties\\\":{\\\"schemaVersion\\\":{\\\"type\\\":\\\"number\\\"},\\\"checkoutMode\\\":{\\\"type\\\":\\\"string\\\"},\\\"quoteReq(uired\\\":{\\\"type\\\":\\\"boolean\\\"},\\\"checkoutPath\\\":{\\\"type\\\":\\\"string\\\"},\\\"cart\\\":{\\\"type\\\":\\\"array\\\"},\\\"policy\\\":{\\\"type\\\":\\\"object\\\"}}}}]}},\\\"registration\\\":{\\\"server\\\":{\\\"entrypoint\\\":\\\"cedros_shop::register_extension_family\\\"},\\\"admin\\\":{\\\"entrypoint\\\":\\\"@cedros/shop-react/admin/register\\\"},\\\"web\\\":{\\\"entrypoint\\\":\\\"@cedros/shop-react/web/register\\\"},\\\"native\\\":{\\\"entrypoint\\\":\\\"@cedros/shop-react-native/register\\\"}},\\\"adminModules\\\":[{\\\"moduleId\\\":\\\"cedros-shop:admin\\\",\\\"extensionId\\\":\\\"cedros-shop\\\",\\\"displayName\\\":\\\"Cedros Shop admin\\\",\\\"version\\\":\\\"4.0.7\\\",\\\"packageName\\\":\\\"@cedros/shop-react\\\",\\\"packageSubpath\\\":\\\"./admin/register\\\",\\\"requiredServices\\\":[],\\\"requiredCapabilities\\\":[\\\"cedros-pay:product-read\\\"],\\\"sectionIds\\\":[\\\"cedros-shop:storefront\\\"],\\\"sectionIcons\\\":{\\\"cedros-shop:storefront\\\":\\\"extensions\\\"},\\\"navigation\\\":{\\\"sections\\\":[{\\\"id\\\":\\\"cedros-shop:storefront\\\",\\\"la(bel\\\":\\\"Storefront\\\",\\\"group\\\":\\\"Extension Settings\\\",\\\"order\\\":0,\\\"requiredPermission\\\":\\\"cedros-shop:storefront-manage\\\"}],\\\"groups\\\":[{\\\"id\\\":\\\"extension-settings\\\",\\\"label\\\":\\\"Extension Settings\\\",\\\"order\\\":0}]},\\\"contributions\\\":{\\\"dashboardCards\\\":[{\\\"id\\\":\\\"cedros-shop:commerce-analytics-card\\\",\\\"displayName\\\":\\\"Commerce analytics\\\",\\\"description\\\":\\\"Shows aggregate storefront performance and abandoned-checkout recovery readiness.\\\",\\\"order\\\":21}]}}],\\\"contentBlocks\\\":[{\\\"type\\\":\\\"cedros-shop:shop-surface\\\",\\\"displayName\\\":\\\"Shop Surface\\\",\\\"description\\\":\\\"Renders the storefront shop catalog surface.\\\",\\\"category\\\":\\\"commerce\\\",\\\"order\\\":10},{\\\"type\\\":\\\"cedros-shop:category-surface\\\",\\\"displayName\\\":\\\"Category Surface\\\",\\\"description\\\":\\\"Renders a storefront category listing by category slug.\\\",\\\"category\\\":\\\"commerce\\\",\\\"order\\\":20},{\\\"type\\\":\\\"cedros-shop:produc(t-surface\\\",\\\"displayName\\\":\\\"Product Surface\\\",\\\"description\\\":\\\"Renders a storefront product detail page by product slug.\\\",\\\"category\\\":\\\"commerce\\\",\\\"order\\\":30},{\\\"type\\\":\\\"cedros-shop:cart-surface\\\",\\\"displayName\\\":\\\"Cart Surface\\\",\\\"description\\\":\\\"Renders the storefront cart page.\\\",\\\"category\\\":\\\"commerce\\\",\\\"order\\\":40},{\\\"type\\\":\\\"cedros-shop:checkout-surface\\\",\\\"displayName\\\":\\\"Checkout Surface\\\",\\\"description\\\":\\\"Renders the host-coordinated checkout entry page.\\\",\\\"category\\\":\\\"commerce\\\",\\\"order\\\":50},{\\\"type\\\":\\\"cedros-shop:account-surface\\\",\\\"displayName\\\":\\\"Account Surface\\\",\\\"description\\\":\\\"Renders authenticated customer profile, addresses, saved checkout details, and support links.\\\",\\\"category\\\":\\\"commerce\\\",\\\"order\\\":60},{\\\"type\\\":\\\"cedros-shop:purchase-history-surface\\\",\\\"displayName\\\":\\\"Purchase History Surface\\\",\\\"description\\\":\\\"Renders auth(enticated customer purchase history.\\\",\\\"category\\\":\\\"commerce\\\",\\\"order\\\":70},{\\\"type\\\":\\\"cedros-shop:subscription-surface\\\",\\\"displayName\\\":\\\"Subscription Surface\\\",\\\"description\\\":\\\"Renders subscription tiers, Pay checkout, and signed-in lifecycle management.\\\",\\\"category\\\":\\\"commerce\\\",\\\"order\\\":80}],\\\"contentTemplates\\\":[{\\\"id\\\":\\\"cedros-shop:shop-page-template\\\",\\\"displayName\\\":\\\"Shop Page\\\",\\\"description\\\":\\\"Owner-editable shop landing page template.\\\",\\\"order\\\":10,\\\"contentTypes\\\":[\\\"page\\\"],\\\"surfaceId\\\":\\\"cedros-shop:storefront-pages\\\",\\\"zones\\\":[{\\\"id\\\":\\\"main\\\",\\\"label\\\":\\\"Main\\\",\\\"order\\\":0}],\\\"blocks\\\":[{\\\"type\\\":\\\"cedros-shop:shop-surface\\\",\\\"zoneId\\\":\\\"main\\\",\\\"props\\\":{}}]},{\\\"id\\\":\\\"cedros-shop:category-page-template\\\",\\\"displayName\\\":\\\"Category Page\\\",\\\"description\\\":\\\"Owner-editable category listing page template.\\\",\\\"order\\\":20,\\\"contentTypes\\\":[\\\"page\\\"],\\\"s(urfaceId\\\":\\\"cedros-shop:storefront-pages\\\",\\\"zones\\\":[{\\\"id\\\":\\\"main\\\",\\\"label\\\":\\\"Main\\\",\\\"order\\\":0}],\\\"blocks\\\":[{\\\"type\\\":\\\"cedros-shop:category-surface\\\",\\\"zoneId\\\":\\\"main\\\",\\\"props\\\":{}}]},{\\\"id\\\":\\\"cedros-shop:product-page-template\\\",\\\"displayName\\\":\\\"Product Page\\\",\\\"description\\\":\\\"Owner-editable product detail page template.\\\",\\\"order\\\":30,\\\"contentTypes\\\":[\\\"page\\\"],\\\"surfaceId\\\":\\\"cedros-shop:storefront-pages\\\",\\\"zones\\\":[{\\\"id\\\":\\\"main\\\",\\\"label\\\":\\\"Main\\\",\\\"order\\\":0}],\\\"blocks\\\":[{\\\"type\\\":\\\"cedros-shop:product-surface\\\",\\\"zoneId\\\":\\\"main\\\",\\\"props\\\":{}}]},{\\\"id\\\":\\\"cedros-shop:cart-page-template\\\",\\\"displayName\\\":\\\"Cart Page\\\",\\\"description\\\":\\\"Owner-editable cart page template.\\\",\\\"order\\\":40,\\\"contentTypes\\\":[\\\"page\\\"],\\\"surfaceId\\\":\\\"cedros-shop:storefront-pages\\\",\\\"zones\\\":[{\\\"id\\\":\\\"main\\\",\\\"label\\\":\\\"Main\\\",\\\"order\\\":0}],\\\"blocks\\\":[{\\\"type\\\":\\\"cedros-shop:cart-surface\\\",\\\"zoneI(d\\\":\\\"main\\\",\\\"props\\\":{}}]},{\\\"id\\\":\\\"cedros-shop:checkout-page-template\\\",\\\"displayName\\\":\\\"Checkout Page\\\",\\\"description\\\":\\\"Owner-editable checkout entry page template.\\\",\\\"order\\\":50,\\\"contentTypes\\\":[\\\"page\\\"],\\\"surfaceId\\\":\\\"cedros-shop:storefront-pages\\\",\\\"zones\\\":[{\\\"id\\\":\\\"main\\\",\\\"label\\\":\\\"Main\\\",\\\"order\\\":0}],\\\"blocks\\\":[{\\\"type\\\":\\\"cedros-shop:checkout-surface\\\",\\\"zoneId\\\":\\\"main\\\",\\\"props\\\":{}}]},{\\\"id\\\":\\\"cedros-shop:account-page-template\\\",\\\"displayName\\\":\\\"Account Page\\\",\\\"description\\\":\\\"Owner-editable customer account page template.\\\",\\\"order\\\":60,\\\"contentTypes\\\":[\\\"page\\\"],\\\"surfaceId\\\":\\\"cedros-shop:storefront-pages\\\",\\\"zones\\\":[{\\\"id\\\":\\\"main\\\",\\\"label\\\":\\\"Main\\\",\\\"order\\\":0}],\\\"blocks\\\":[{\\\"type\\\":\\\"cedros-shop:account-surface\\\",\\\"zoneId\\\":\\\"main\\\",\\\"props\\\":{}}]},{\\\"id\\\":\\\"cedros-shop:purchase-history-page-template\\\",\\\"displayName\\\":\\\"Purchase History Page\\\",\\\"descrip(tion\\\":\\\"Owner-editable purchase history page template.\\\",\\\"order\\\":70,\\\"contentTypes\\\":[\\\"page\\\"],\\\"surfaceId\\\":\\\"cedros-shop:storefront-pages\\\",\\\"zones\\\":[{\\\"id\\\":\\\"main\\\",\\\"label\\\":\\\"Main\\\",\\\"order\\\":0}],\\\"blocks\\\":[{\\\"type\\\":\\\"cedros-shop:purchase-history-surface\\\",\\\"zoneId\\\":\\\"main\\\",\\\"props\\\":{\\\"requireSignedIn\\\":true}}]},{\\\"id\\\":\\\"cedros-shop:subscription-page-template\\\",\\\"displayName\\\":\\\"Subscription Page\\\",\\\"description\\\":\\\"Owner-editable subscription page template.\\\",\\\"order\\\":80,\\\"contentTypes\\\":[\\\"page\\\"],\\\"surfaceId\\\":\\\"cedros-shop:storefront-pages\\\",\\\"zones\\\":[{\\\"id\\\":\\\"main\\\",\\\"label\\\":\\\"Main\\\",\\\"order\\\":0}],\\\"blocks\\\":[{\\\"type\\\":\\\"cedros-shop:subscription-surface\\\",\\\"zoneId\\\":\\\"main\\\",\\\"props\\\":{}}]}],\\\"pageSeeds\\\":[{\\\"id\\\":\\\"cedros-shop:shop-page\\\",\\\"displayName\\\":\\\"Shop Page\\\",\\\"title\\\":\\\"Shop\\\",\\\"description\\\":\\\"Browse products, collections, and current offers.\\\",\\\"routePa(th\\\":\\\"/shop\\\",\\\"templateId\\\":\\\"cedros-shop:shop-page-template\\\",\\\"chromeMode\\\":\\\"headless\\\",\\\"seo\\\":{\\\"title\\\":\\\"Shop\\\",\\\"description\\\":\\\"Browse products, collections, and current offers.\\\",\\\"canonicalPath\\\":\\\"/shop\\\",\\\"ogTitle\\\":\\\"Shop\\\",\\\"ogDescription\\\":\\\"Browse products, collections, and current offers.\\\",\\\"noindex\\\":false},\\\"autoCreateOnEnable\\\":true,\\\"publishOnEnable\\\":true},{\\\"id\\\":\\\"cedros-shop:cart-page\\\",\\\"displayName\\\":\\\"Cart Page\\\",\\\"title\\\":\\\"Cart\\\",\\\"description\\\":\\\"Review the items in your cart before checkout.\\\",\\\"routePath\\\":\\\"/cart\\\",\\\"templateId\\\":\\\"cedros-shop:cart-page-template\\\",\\\"chromeMode\\\":\\\"headless\\\",\\\"seo\\\":{\\\"title\\\":\\\"Cart\\\",\\\"description\\\":\\\"Review the items in your cart before checkout.\\\",\\\"noindex\\\":true},\\\"autoCreateOnEnable\\\":true,\\\"publishOnEnable\\\":true},{\\\"id\\\":\\\"cedros-shop:checkout-page\\\",\\\"displayName\\\":\\\"Checkout Page\\\",\\\"title\\\":\\\"Checko(ut\\\",\\\"description\\\":\\\"Securely complete your purchase.\\\",\\\"routePath\\\":\\\"/checkout\\\",\\\"templateId\\\":\\\"cedros-shop:checkout-page-template\\\",\\\"chromeMode\\\":\\\"headless\\\",\\\"seo\\\":{\\\"title\\\":\\\"Checkout\\\",\\\"description\\\":\\\"Securely complete your purchase.\\\",\\\"noindex\\\":true},\\\"autoCreateOnEnable\\\":true,\\\"publishOnEnable\\\":true},{\\\"id\\\":\\\"cedros-shop:account-page\\\",\\\"displayName\\\":\\\"Account Page\\\",\\\"title\\\":\\\"Account\\\",\\\"description\\\":\\\"Manage your profile, addresses, saved checkout details, and support links.\\\",\\\"routePath\\\":\\\"/account\\\",\\\"templateId\\\":\\\"cedros-shop:account-page-template\\\",\\\"chromeMode\\\":\\\"headless\\\",\\\"seo\\\":{\\\"title\\\":\\\"Account\\\",\\\"description\\\":\\\"Manage your account profile, addresses, saved checkout details, and support links.\\\",\\\"noindex\\\":true},\\\"autoCreateOnEnable\\\":true,\\\"publishOnEnable\\\":true},{\\\"id\\\":\\\"cedros-shop:purchase-history-page\\\",\\\"displayN(ame\\\":\\\"Purchase History Page\\\",\\\"title\\\":\\\"Purchase history\\\",\\\"description\\\":\\\"View your past orders and receipts.\\\",\\\"routePath\\\":\\\"/account/orders\\\",\\\"templateId\\\":\\\"cedros-shop:purchase-history-page-template\\\",\\\"chromeMode\\\":\\\"headless\\\",\\\"seo\\\":{\\\"title\\\":\\\"Purchase history\\\",\\\"description\\\":\\\"View your past orders and receipts.\\\",\\\"noindex\\\":true},\\\"autoCreateOnEnable\\\":true,\\\"publishOnEnable\\\":true},{\\\"id\\\":\\\"cedros-shop:subscription-page\\\",\\\"displayName\\\":\\\"Subscription Page\\\",\\\"title\\\":\\\"Subscriptions\\\",\\\"description\\\":\\\"Choose a plan and manage eligible subscription actions.\\\",\\\"routePath\\\":\\\"/subscribe\\\",\\\"templateId\\\":\\\"cedros-shop:subscription-page-template\\\",\\\"chromeMode\\\":\\\"headless\\\",\\\"seo\\\":{\\\"title\\\":\\\"Subscriptions\\\",\\\"description\\\":\\\"Choose a plan and manage eligible subscription actions.\\\",\\\"canonicalPath\\\":\\\"/subscribe\\\",\\\"ogTitle\\\":\\\"Subscriptions\\\"(,\\\"ogDescription\\\":\\\"Choose a plan and manage eligible subscription actions.\\\",\\\"noindex\\\":false},\\\"autoCreateOnEnable\\\":true,\\\"publishOnEnable\\\":true}],\\\"seoRoutes\\\":[{\\\"routeId\\\":\\\"cedros-shop:category-page\\\",\\\"pathPattern\\\":\\\"/shop/:slug\\\",\\\"indexable\\\":true,\\\"includeInSitemap\\\":true,\\\"canonicalStrategy\\\":\\\"self\\\",\\\"schemaType\\\":\\\"CollectionPage\\\",\\\"chromeMode\\\":\\\"headless\\\"},{\\\"routeId\\\":\\\"cedros-shop:product-page\\\",\\\"pathPattern\\\":\\\"/product/:slug\\\",\\\"indexable\\\":true,\\\"includeInSitemap\\\":true,\\\"canonicalStrategy\\\":\\\"self\\\",\\\"schemaType\\\":\\\"Product\\\",\\\"chromeMode\\\":\\\"headless\\\"}],\\\"authoredSurfaces\\\":[{\\\"id\\\":\\\"cedros-shop:storefront-pages\\\",\\\"displayName\\\":\\\"Storefront Pages\\\",\\\"description\\\":\\\"Owner-editable storefront page templates for shop, cart, checkout, account, history, and subscriptions.\\\",\\\"eyebrow\\\":\\\"Shop\\\",\\\"templateIds\\\":[\\\"cedros-shop:shop-page-tem(plate\\\",\\\"cedros-shop:category-page-template\\\",\\\"cedros-shop:product-page-template\\\",\\\"cedros-shop:cart-page-template\\\",\\\"cedros-shop:checkout-page-template\\\",\\\"cedros-shop:account-page-template\\\",\\\"cedros-shop:purchase-history-page-template\\\",\\\"cedros-shop:subscription-page-template\\\"]}],\\\"authoredTemplateUtilities\\\":[{\\\"id\\\":\\\"cedros-shop:storefront-starter-set\\\",\\\"displayName\\\":\\\"Storefront Starter Set\\\",\\\"description\\\":\\\"Adds the standard Cedros Shop page templates.\\\",\\\"order\\\":10,\\\"templateIds\\\":[\\\"cedros-shop:shop-page-template\\\",\\\"cedros-shop:category-page-template\\\",\\\"cedros-shop:product-page-template\\\",\\\"cedros-shop:cart-page-template\\\",\\\"cedros-shop:checkout-page-template\\\",\\\"cedros-shop:account-page-template\\\",\\\"cedros-shop:purchase-history-page-template\\\",\\\"cedros-shop:subscription-page-template\\\"],\\\"contentTypes\\\":[\\\"page\\\"],\\\"su(rfaceIds\\\":[\\\"cedros-shop:storefront-pages\\\"],\\\"suggestedBlockTypes\\\":[\\\"cedros-shop:shop-surface\\\",\\\"cedros-shop:category-surface\\\",\\\"cedros-shop:product-surface\\\",\\\"cedros-shop:cart-surface\\\",\\\"cedros-shop:checkout-surface\\\",\\\"cedros-shop:account-surface\\\",\\\"cedros-shop:purchase-history-surface\\\",\\\"cedros-shop:subscription-surface\\\"]}],\\\"formTemplates\\\":[],\\\"docsArticles\\\":[],\\\"policies\\\":[],\\\"onboardingPages\\\":[{\\\"id\\\":\\\"cedros-shop:onboarding-storefront\\\",\\\"moduleId\\\":\\\"cedros-shop:admin\\\",\\\"sectionId\\\":\\\"cedros-shop:storefront\\\",\\\"displayName\\\":\\\"Review storefront settings\\\",\\\"description\\\":\\\"Verify products, payment availability, and public access before shaping storefront presentation, checkout, merchandising, and Markets.\\\"}],\\\"setupSeeds\\\":{\\\"notifications\\\":[{\\\"id\\\":\\\"cedros-shop:setup-blocked-notification\\\",\\\"displayName\\\":\\\"Setup Blocke(d Notification\\\",\\\"title\\\":\\\"Cedros Shop setup blocked\\\",\\\"description\\\":\\\"Team notification route for missing dependencies or launch-blocking setup issues.\\\",\\\"eventId\\\":\\\"cedros-shop:setup-blocked\\\",\\\"audience\\\":\\\"team\\\",\\\"severity\\\":\\\"warning\\\",\\\"defaultChannels\\\":[\\\"email\\\"],\\\"subjectTemplate\\\":\\\"Cedros Shop setup is blocked\\\",\\\"bodyTemplate\\\":\\\"Cedros Shop setup is blocked by missing dependencies or invalid configuration. Review the Shop storefront settings before making the shop public.\\\",\\\"tags\\\":[\\\"shop\\\",\\\"setup\\\"]},{\\\"id\\\":\\\"cedros-shop:checkout-handoff-failed-notification\\\",\\\"displayName\\\":\\\"Checkout Handoff Failed Notification\\\",\\\"title\\\":\\\"Cedros Shop checkout handoff failed\\\",\\\"description\\\":\\\"Team notification route for checkout handoff failures before Cedros Pay takes over.\\\",\\\"eventId\\\":\\\"cedros-shop:checkout-handoff-failed\\\",\\\"aud(ience\\\":\\\"team\\\",\\\"severity\\\":\\\"error\\\",\\\"defaultChannels\\\":[\\\"email\\\"],\\\"subjectTemplate\\\":\\\"Cedros Shop checkout handoff failed\\\",\\\"bodyTemplate\\\":\\\"Cedros Shop could not complete a checkout handoff. Review Cedros Pay availability and shop checkout configuration.\\\",\\\"tags\\\":[\\\"shop\\\",\\\"checkout\\\"]}]},\\\"pwaShortcuts\\\":[{\\\"id\\\":\\\"cedros-shop:pwa-shop-shortcut\\\",\\\"name\\\":\\\"Shop\\\",\\\"shortName\\\":\\\"Shop\\\",\\\"description\\\":\\\"Open the shop catalog.\\\",\\\"url\\\":\\\"/shop\\\"},{\\\"id\\\":\\\"cedros-shop:pwa-cart-shortcut\\\",\\\"name\\\":\\\"Cart\\\",\\\"shortName\\\":\\\"Cart\\\",\\\"description\\\":\\\"Open the cart review page.\\\",\\\"url\\\":\\\"/cart\\\"},{\\\"id\\\":\\\"cedros-shop:pwa-orders-shortcut\\\",\\\"name\\\":\\\"Purchase history\\\",\\\"shortName\\\":\\\"Purchases\\\",\\\"description\\\":\\\"See your past orders and receipts. Sign-in required.\\\",\\\"url\\\":\\\"/account/orders\\\"}],\\\"analytics\\\":{\\\"events\\\":[{\\\"id\\\":\\\"cedros-shop:product-viewed\\\",\\\"display(Name\\\":\\\"Product Viewed\\\",\\\"description\\\":\\\"Counts product detail views so owners can compare product interest.\\\",\\\"category\\\":\\\"storefront\\\",\\\"visibility\\\":\\\"public\\\",\\\"kind\\\":\\\"purchase_intent_view\\\"},{\\\"id\\\":\\\"cedros-shop:add-to-cart\\\",\\\"displayName\\\":\\\"Add To Cart\\\",\\\"description\\\":\\\"Counts storefront cart additions so owners can identify product conversion interest.\\\",\\\"category\\\":\\\"cart\\\",\\\"visibility\\\":\\\"public\\\"},{\\\"id\\\":\\\"cedros-shop:checkout-started\\\",\\\"displayName\\\":\\\"Checkout Started\\\",\\\"description\\\":\\\"Counts checkout attempts before Cedros Pay handoff so owners can monitor checkout intent.\\\",\\\"category\\\":\\\"checkout\\\",\\\"visibility\\\":\\\"public\\\",\\\"kind\\\":\\\"purchase_intent_view\\\"},{\\\"id\\\":\\\"cedros-shop:subscription-checkout-started\\\",\\\"displayName\\\":\\\"Subscription Checkout Started\\\",\\\"description\\\":\\\"Counts subscription checkout attempts so owners can (monitor subscription interest.\\\",\\\"category\\\":\\\"subscriptions\\\",\\\"visibility\\\":\\\"public\\\"},{\\\"id\\\":\\\"cedros-shop:cart-opened\\\",\\\"displayName\\\":\\\"Cart Opened\\\",\\\"description\\\":\\\"Counts cart drawer opens so owners can monitor shopping cart interest.\\\",\\\"category\\\":\\\"cart\\\",\\\"visibility\\\":\\\"public\\\"},{\\\"id\\\":\\\"cedros-shop:admin-section-saved\\\",\\\"displayName\\\":\\\"Admin Section Saved\\\",\\\"description\\\":\\\"Counts successful owner configuration saves by admin section.\\\",\\\"category\\\":\\\"admin\\\",\\\"visibility\\\":\\\"admin\\\"},{\\\"id\\\":\\\"cedros-shop:collection-viewed\\\",\\\"displayName\\\":\\\"Collection Viewed\\\",\\\"description\\\":\\\"Counts shop and category listing views so owners can see which collections draw traffic.\\\",\\\"category\\\":\\\"storefront\\\",\\\"visibility\\\":\\\"public\\\"},{\\\"id\\\":\\\"cedros-shop:catalog-searched\\\",\\\"displayName\\\":\\\"Catalog Searched\\\",\\\"description\\\":\\\"Counts catalog search, sor(t, and filter refinements so owners can see how visitors browse.\\\",\\\"category\\\":\\\"storefront\\\",\\\"visibility\\\":\\\"public\\\"},{\\\"id\\\":\\\"cedros-shop:quick-view-opened\\\",\\\"displayName\\\":\\\"Quick View Opened\\\",\\\"description\\\":\\\"Counts product quick-view opens from listing grids so owners can gauge product interest.\\\",\\\"category\\\":\\\"storefront\\\",\\\"visibility\\\":\\\"public\\\",\\\"kind\\\":\\\"purchase_intent_view\\\"},{\\\"id\\\":\\\"cedros-shop:cart-viewed\\\",\\\"displayName\\\":\\\"Cart Viewed\\\",\\\"description\\\":\\\"Counts cart page views so owners can monitor cart engagement before checkout.\\\",\\\"category\\\":\\\"cart\\\",\\\"visibility\\\":\\\"public\\\"},{\\\"id\\\":\\\"cedros-shop:remove-from-cart\\\",\\\"displayName\\\":\\\"Remove From Cart\\\",\\\"description\\\":\\\"Counts cart line removals so owners can monitor cart drop-off.\\\",\\\"category\\\":\\\"cart\\\",\\\"visibility\\\":\\\"public\\\"}]},\\\"capabilities\\\":[{\\\"id\\\":\\\"cedros-shop:storefront-(manage\\\",\\\"displayName\\\":\\\"Storefront Management\\\",\\\"description\\\":\\\"Manage storefront settings, Markets controls, and layouts.\\\",\\\"category\\\":\\\"admin\\\",\\\"requestedScopes\\\":[{\\\"verb\\\":\\\"write\\\",\\\"resource\\\":\\\"storefront-settings\\\",\\\"summary\\\":\\\"Create and update storefront display, catalog, checkout, inventory, merchandising, and Markets settings.\\\"}]},{\\\"id\\\":\\\"cedros-shop:commerce-analytics\\\",\\\"displayName\\\":\\\"Commerce analytics\\\",\\\"description\\\":\\\"Read aggregate storefront reports, abandoned-checkout recovery queues, and payment-event health from host analytics and Cedros Pay.\\\",\\\"category\\\":\\\"admin\\\",\\\"requestedScopes\\\":[{\\\"verb\\\":\\\"read\\\",\\\"resource\\\":\\\"host commerce analytics aggregate reports\\\",\\\"summary\\\":\\\"Read redacted storefront funnel, product interest, and cart/checkout conversion metrics.\\\"},{\\\"verb\\\":\\\"read\\\",\\\"resource\\\":\\\"cedros-pay ab(andoned checkout and payment-event views\\\",\\\"summary\\\":\\\"Read Pay-owned abandoned checkout status, recovery state, and payment-event health without exposing raw customer PII.\\\"},{\\\"verb\\\":\\\"trigger\\\",\\\"resource\\\":\\\"cedros-pay abandoned checkout recovery\\\",\\\"summary\\\":\\\"Request a Pay-owned recovery action for eligible abandoned checkouts.\\\"}]},{\\\"id\\\":\\\"cedros-shop:observability\\\",\\\"displayName\\\":\\\"Shop Observability\\\",\\\"description\\\":\\\"Records storefront analytics, configuration changes, and checkout handoff issues. No customer personal data is included.\\\",\\\"category\\\":\\\"runtime\\\",\\\"requestedScopes\\\":[{\\\"verb\\\":\\\"write\\\",\\\"resource\\\":\\\"site-brain-record:setup\\\",\\\"summary\\\":\\\"Write setup completion and setup blocked records.\\\"},{\\\"verb\\\":\\\"write\\\",\\\"resource\\\":\\\"site-brain-record:configuration\\\",\\\"summary\\\":\\\"Write admin configuration change recor(ds.\\\"},{\\\"verb\\\":\\\"write\\\",\\\"resource\\\":\\\"site-brain-record:checkout\\\",\\\"summary\\\":\\\"Write checkout handoff failure records.\\\"}]}],\\\"providerAccess\\\":[{\\\"id\\\":\\\"cedros-shop:agentic-commerce-provider\\\",\\\"provider\\\":\\\"intelligence\\\",\\\"displayName\\\":\\\"Agentic Commerce Provider\\\",\\\"description\\\":\\\"Legacy compatibility grant retained without a guest provider call. Agentic commerce execution uses the declared AI routes and host-validated bearer capabilities.\\\",\\\"scopes\\\":[\\\"chat.generate\\\"],\\\"tags\\\":[\\\"commerce\\\",\\\"ai-channel\\\"]}],\\\"databaseAccess\\\":[{\\\"id\\\":\\\"cedros-shop:storefront-settings-db\\\",\\\"displayName\\\":\\\"Storefront Settings Database\\\",\\\"description\\\":\\\"Reads and writes extension-owned storefront display, catalog, checkout, inventory, merchandising, and Markets settings.\\\",\\\"contentModels\\\":[\\\"cedros-shop:storefront-settings\\\"],\\\"migrations\\\":[\\\"c(edros-shop:storefront-settings-v1\\\"],\\\"tags\\\":[\\\"commerce\\\",\\\"settings\\\"],\\\"scopes\\\":[{\\\"verb\\\":\\\"read\\\",\\\"resource\\\":\\\"storefront settings\\\",\\\"summary\\\":\\\"Load storefront display, catalog, checkout, inventory, merchandising, and Markets settings.\\\"},{\\\"verb\\\":\\\"write\\\",\\\"resource\\\":\\\"storefront settings\\\",\\\"summary\\\":\\\"Persist admin-managed storefront settings.\\\"},{\\\"verb\\\":\\\"migrate\\\",\\\"resource\\\":\\\"storefront settings schema\\\",\\\"summary\\\":\\\"Provision the storefront settings content model.\\\"}]}]}\".split(\"(\")).join(\"\"), ze = JSON.parse(Re);\n//#endregion\n//#region src/storefront/helpers.ts\nfunction d(e, t) {\n\tif (!(typeof e != \"string\" || !e || e.trim() !== e || /[\\u0000-\\u0020\\u007f]/.test(e)) && !(e.includes(\"\\\\\") || /^\\/{2,}/.test(e) || /%(?:00|0a|0d)/i.test(e))) try {\n\t\tif (/^[A-Za-z][A-Za-z\\d+.-]*:/.test(e)) return Ge(e);\n\t\tlet n = new URL(\"https://placeholder.invalid\");\n\t\tif (e.startsWith(\"?\")) {\n\t\t\tlet t = new URL(e, n);\n\t\t\treturn `${t.search}${t.hash}`;\n\t\t}\n\t\tif (e.startsWith(\"#\")) return new URL(e, n).hash;\n\t\tif (e.startsWith(\"/\")) {\n\t\t\tlet t = new URL(e, n);\n\t\t\treturn `${t.pathname}${t.search}${t.hash}`;\n\t\t}\n\t\tlet r = Ke(t ?? f());\n\t\tif (!r) return;\n\t\tlet i = new URL(e, r), a = i.protocol === \"https:\" || i.protocol === \"http:\", o = !!(i.username || i.password) || /^https?:\\/\\/[^/?#]*@/i.test(e);\n\t\treturn a && !o && i.origin === r.origin ? `${i.pathname}${i.search}${i.hash}` : void 0;\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction f() {\n\treturn typeof window > \"u\" ? void 0 : window.location.href;\n}\nfunction Be(e, t = f()) {\n\treturn d(e ?? \"/login\", t) ?? \"/login\";\n}\nfunction Ve(e) {\n\ttypeof window < \"u\" && window.location.assign(Be(e));\n}\nfunction He(e) {\n\tconsole.warn(\"[cedros] Blocked unsafe adapter navigation\", { operation: e });\n}\nfunction Ue(e) {\n\tconsole.warn(\"[cedros] Adapter navigation failed\", { operation: e });\n}\nfunction We(e, t, n, r = f()) {\n\tlet i = d(e, r);\n\tif (!i) return He(t), \"blocked\";\n\tlet a = n ?? (typeof window > \"u\" ? void 0 : (e) => window.location.assign(e));\n\tif (!a) return \"unavailable\";\n\ttry {\n\t\treturn a(i), \"navigated\";\n\t} catch {\n\t\treturn Ue(t), \"failed\";\n\t}\n}\nfunction Ge(e) {\n\tif (!/^https?:\\/\\//i.test(e)) return;\n\tlet t = new URL(e), n = t.protocol === \"https:\" || t.protocol === \"http:\", r = !!(t.username || t.password) || /^https?:\\/\\/[^/?#]*@/i.test(e);\n\treturn n && t.hostname && !r ? t.href : void 0;\n}\nfunction Ke(e) {\n\tif (!(!e || e.trim() !== e || /[\\u0000-\\u0020\\u007f\\\\]/.test(e)) && !(!/^https?:\\/\\//i.test(e) || /%(?:00|0a|0d)/i.test(e))) try {\n\t\tlet t = new URL(e);\n\t\tif (!Ge(e)) return;\n\t\tlet n = f();\n\t\treturn n && new URL(n).origin !== t.origin ? void 0 : t;\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction qe(e) {\n\treturn !e || typeof e != \"string\" ? [] : e.split(\",\").map((e) => e.trim()).filter(Boolean);\n}\n//#endregion\n//#region src/i18n/messages.admin.ts\nvar Je = {\n\t\"admin.auth.ownerRequired\": \"A stable organization or user identity is required before storefront settings can load.\",\n\t\"admin.nav.storefront\": \"Storefront\",\n\t\"admin.auth.tokenRequired\": \"An authenticated admin token is required.\",\n\t\"admin.auth.loginRequired\": \"The Cedros Login service is required to manage the shop.\",\n\t\"admin.auth.signIn\": \"Sign in to manage the shop.\",\n\t\"admin.dialog.close\": \"Close dialog\",\n\t\"admin.dialog.cannotUndo\": \"This can't be undone.\",\n\t\"admin.analytics.missingBridgeTitle\": \"Commerce analytics is not connected\",\n\t\"admin.analytics.missingBridgeDescription\": \"Commerce analytics needs the host reporting bridge before this card can show storefront metrics.\",\n\t\"admin.analytics.emptyMetrics\": \"No aggregate metrics are available for this period.\",\n\t\"admin.analytics.cardTitle\": \"Commerce analytics\",\n\t\"admin.analytics.cardLoading\": \"Loading commerce analytics…\",\n\t\"admin.analytics.cardError\": \"Cedros couldn't load commerce analytics. Try again from the dashboard.\",\n\t\"admin.analytics.cardAction\": \"Open analytics\",\n\t\"admin.analytics.cardActionUnavailable\": \"Connect the commerce analytics bridge to open analytics from this card.\",\n\t\"admin.analytics.cardRecovery\": \"{count, plural, one {# checkout needs recovery} other {# checkouts need recovery}}\",\n\t\"admin.error.save\": \"Could not save {resource}. Your changes are still here — try again.\",\n\t\"admin.storefront.description\": \"See what shoppers can access, then shape the storefront experience.\",\n\t\"admin.storefront.loading\": \"Loading storefront settings…\",\n\t\"admin.storefront.loadErrorTitle\": \"Cedros couldn't load storefront settings\",\n\t\"admin.storefront.loadErrorDescription\": \"Your saved settings are safe. Try again before editing.\",\n\t\"admin.storefront.loadErrorCause\": \"Cause: {cause}\",\n\t\"admin.storefront.unsavedChanges\": \"Unsaved changes\",\n\t\"admin.storefront.autosaveError\": \"Couldn't save\",\n\t\"admin.storefront.autosaveSaved\": \"Saved just now\",\n\t\"admin.storefront.autosaveOffline\": \"Offline — changes will sync\",\n\t\"admin.storefront.autosaveConflict\": \"Conflict — review changes\",\n\t\"admin.storefront.autosaveFailed\": \"Save failed — retry\",\n\t\"admin.storefront.conflictRecoveryHelp\": \"Reload discards this draft. Reapply preserves it on top of the latest saved settings.\",\n\t\"admin.storefront.reloadLatest\": \"Reload latest\",\n\t\"admin.storefront.reapplyChanges\": \"Reapply my changes\",\n\t\"admin.storefront.conflictRecoveryFailed\": \"Couldn't refresh the latest settings. Your draft is still safe.\",\n\t\"admin.storefront.fixIssues\": \"{count, plural, one {Fix # issue before changes can save} other {Fix # issues before changes can save}}\",\n\t\"admin.storefront.tabIssues\": \"{count, plural, one {# issue needs attention} other {# issues need attention}}\",\n\t\"admin.storefront.tabsLabel\": \"Storefront settings\",\n\t\"admin.storefront.storefrontVisibility\": \"Public storefront\",\n\t\"admin.storefront.enabledHelp\": \"When off, the public shop, category, and product pages show an \\\"unavailable\\\" notice instead of the catalog.\",\n\t\"admin.storefront.presaleMode\": \"Presale mode\",\n\t\"admin.storefront.presaleModeHelp\": \"Sell from a purchase-first landing page while the rest of the site stays hidden.\",\n\t\"admin.storefront.presaleModeHostRequired\": \"Update Cedros Data to manage presale mode from Shop.\",\n\t\"admin.storefront.presaleModeLoading\": \"Checking the current site mode…\",\n\t\"admin.storefront.presaleModeUpdating\": \"Switching the public site mode…\",\n\t\"admin.storefront.presaleModeUnavailable\": \"Presale mode is unavailable: {requirements}.\",\n\t\"admin.storefront.presaleModeRequirements\": \"required Login, Pay, and Shop contracts\",\n\t\"admin.storefront.presaleModeError\": \"Presale mode couldn't be loaded or updated.\",\n\t\"admin.storefront.tabs.overview\": \"Overview\",\n\t\"admin.storefront.tabs.shopPage\": \"Shop page\",\n\t\"admin.storefront.tabs.productPages\": \"Product pages\",\n\t\"admin.storefront.tabs.checkout\": \"Checkout\",\n\t\"admin.storefront.tabs.subscriptions\": \"Subscriptions\",\n\t\"admin.storefront.tabs.merchandising\": \"Merchandising\",\n\t\"admin.storefront.tabs.markets\": \"Markets\",\n\t\"admin.storefront.overview.statusTitle\": \"Storefront status\",\n\t\"admin.storefront.overview.statusLive\": \"Live\",\n\t\"admin.storefront.overview.statusHidden\": \"Hidden\",\n\t\"admin.storefront.overview.statusBlocked\": \"Live — can't sell\",\n\t\"admin.storefront.overview.statusChecking\": \"Checking…\",\n\t\"admin.storefront.overview.rowProducts\": \"Products\",\n\t\"admin.storefront.overview.rowPayments\": \"Payments\",\n\t\"admin.storefront.overview.rowCheckout\": \"Checkout\",\n\t\"admin.storefront.overview.rowMerchandising\": \"Merchandising\",\n\t\"admin.storefront.overview.rowMarkets\": \"Markets\",\n\t\"admin.storefront.overview.rowSiteMode\": \"Site mode\",\n\t\"admin.storefront.overview.siteModePresale\": \"Presale\",\n\t\"admin.storefront.overview.siteModeNormal\": \"Normal\",\n\t\"admin.storefront.overview.catalogChecking\": \"Checking…\",\n\t\"admin.storefront.overview.catalogError\": \"Couldn't check\",\n\t\"admin.storefront.overview.catalogEmpty\": \"None available\",\n\t\"admin.storefront.overview.catalogCount\": \"{count, number} available\",\n\t\"admin.storefront.overview.catalogCountTruncated\": \"{count, number}+ available\",\n\t\"admin.storefront.overview.paymentUnknown\": \"Not verified\",\n\t\"admin.storefront.overview.paymentUnavailable\": \"None available\",\n\t\"admin.storefront.overview.paymentCount\": \"{count, plural, one {# method available} other {# methods available}}\",\n\t\"admin.storefront.overview.guestCheckout\": \"Guest checkout allowed\",\n\t\"admin.storefront.overview.accountRequired\": \"Account required\",\n\t\"admin.storefront.overview.collectionCount\": \"{count, plural, one {# collection} other {# collections}}\",\n\t\"admin.storefront.overview.bundleCount\": \"{count, plural, one {# bundle} other {# bundles}}\",\n\t\"admin.storefront.overview.merchandisingNone\": \"Nothing published yet\",\n\t\"admin.storefront.overview.marketsCount\": \"{count, plural, one {# regional market} other {# regional markets}}\",\n\t\"admin.storefront.overview.marketsNone\": \"Home market only\",\n\t\"admin.storefront.overview.viewShop\": \"View storefront\",\n\t\"admin.storefront.overview.manageCatalog\": \"Manage products in Cedros Pay\",\n\t\"admin.storefront.overview.configurePayments\": \"Configure payments in Cedros Pay\",\n\t\"admin.storefront.overview.setupTitle\": \"Open your storefront.\",\n\t\"admin.storefront.overview.setupBody\": \"Shoppers need one product they can buy and one way to pay for it.\",\n\t\"admin.storefront.overview.setupReadyTitle\": \"You're ready to open.\",\n\t\"admin.storefront.overview.setupReadyBody\": \"Products and payments are in place. Make the storefront visible when you want shoppers in.\",\n\t\"admin.storefront.overview.setupSteps\": \"Steps to open the storefront\",\n\t\"admin.storefront.overview.stepProducts\": \"Add a product in Cedros Pay\",\n\t\"admin.storefront.overview.stepPayments\": \"Turn on a payment method in Cedros Pay\",\n\t\"admin.storefront.overview.stepVisible\": \"Make the storefront visible\",\n\t\"admin.storefront.overview.stepDone\": \"Done\",\n\t\"admin.storefront.overview.stepTodo\": \"Not done yet\",\n\t\"admin.storefront.overview.addProducts\": \"Add products in Cedros Pay\",\n\t\"admin.storefront.overview.makeVisible\": \"Make storefront visible\",\n\t\"admin.storefront.overview.setupNoPayAdmin\": \"Cedros Pay admin is not available from here — open Cedros Pay to finish these steps.\",\n\t\"admin.storefront.overview.blockedTitle\": \"Shoppers can't complete a purchase.\",\n\t\"admin.storefront.overview.blockedNoProducts\": \"No product in the Cedros Pay catalog is available to buy.\",\n\t\"admin.storefront.overview.blockedNoPayments\": \"No payment method is available at checkout.\",\n\t\"admin.storefront.overview.blockedCatalogUnknown\": \"Cedros couldn't reach the Cedros Pay catalog to confirm products are available.\",\n\t\"admin.storefront.overview.blockedPaymentsUnknown\": \"Cedros could not verify that a payment method is available.\",\n\t\"admin.storefront.overview.unverifiedTitle\": \"Cedros couldn't check your catalog.\",\n\t\"admin.storefront.overview.unverifiedBody\": \"Your storefront is unchanged. Try again to confirm shoppers can buy.\",\n\t\"admin.storefront.overview.launchBlockedHelp\": \"Add a product and turn on a payment method first.\",\n\t\"admin.storefront.pageTitle\": \"Page title\",\n\t\"admin.storefront.pageDescription\": \"Page description\",\n\t\"admin.storefront.pageDescriptionHelp\": \"Shown under the shop page title.\",\n\t\"admin.storefront.tagsFilter\": \"Tags filter\",\n\t\"admin.storefront.priceRangeFilter\": \"Price range filter\",\n\t\"admin.storefront.inStockFilter\": \"In-stock filter\",\n\t\"admin.storefront.shopLayout\": \"Shop layout\",\n\t\"admin.storefront.categoryLayout\": \"Category layout\",\n\t\"admin.storefront.imageCrop\": \"Shop image crop\",\n\t\"admin.storefront.categoryImageCrop\": \"Category image crop\",\n\t\"admin.storefront.relatedLayout\": \"Related products layout\",\n\t\"admin.storefront.relatedImageCrop\": \"Related image crop\",\n\t\"admin.storefront.relatedMode\": \"Related products mode\",\n\t\"admin.storefront.relatedManualHelp\": \"Uses each product's \\\"relatedProductIds\\\" attribute (comma-separated product IDs) from the catalog.\",\n\t\"admin.storefront.relatedAiHelp\": \"An AI model reviews each product against your catalog and picks the most relevant matches. Falls back to recent products when AI curation is unavailable.\",\n\t\"admin.storefront.maxRelatedItems\": \"Max related items\",\n\t\"admin.storefront.maxRelatedItemsHelp\": \"1–12 products.\",\n\t\"admin.storefront.showDescription\": \"Show description\",\n\t\"admin.storefront.showSpecs\": \"Show specs\",\n\t\"admin.storefront.showRelated\": \"Show related products\",\n\t\"admin.storefront.preCheckoutVerification\": \"Pre-checkout inventory verification\",\n\t\"admin.storefront.preCheckoutVerificationHelp\": \"Re-checks stock when checkout starts and blocks unavailable items.\",\n\t\"admin.storefront.inventoryHolds\": \"Inventory holds\",\n\t\"admin.storefront.inventoryHoldsHelp\": \"Reserves items while a shopper checks out so the last unit cannot be bought twice.\",\n\t\"admin.storefront.card.subscriptionCompletion\": \"Subscription completion\",\n\t\"admin.storefront.card.subscriptionCompletionHelp\": \"Choose where signed-in customers continue after a subscription succeeds.\",\n\t\"admin.storefront.subscriptionSuccessPath\": \"After subscription success\",\n\t\"admin.storefront.subscriptionSuccessPathHelp\": \"Use one path on this site, beginning with /. Shop adds the checkout result and sends Cedros Pay a full HTTPS URL.\",\n\t\"admin.storefront.subscriptionSuccessPathError\": \"Enter one root-relative path, such as /welcome. Absolute URLs, // paths, and backslashes are not allowed.\",\n\t\"admin.storefront.holdDuration\": \"Hold duration (minutes)\",\n\t\"admin.storefront.holdDurationHelp\": \"5–60 minutes. How long items stay reserved while a shopper checks out.\",\n\t\"admin.storefront.collections\": \"Collections\",\n\t\"admin.storefront.collectionsHelp\": \"Curated groups of products that match conditions you set — by tag, category, or search. A collection shows up as a quick filter shoppers can browse on your storefront when it is both visible and featured.\",\n\t\"admin.storefront.addCollection\": \"Add collection\",\n\t\"admin.storefront.collectionsEmpty\": \"No curated collections yet.\",\n\t\"admin.storefront.bundles\": \"Bundles\",\n\t\"admin.storefront.bundlesHelp\": \"Hand-picked sets of products sold together. Choose the exact products in each bundle; visible bundles appear on your shop page, and featured ones are shown first.\",\n\t\"admin.storefront.addBundle\": \"Add bundle\",\n\t\"admin.storefront.bundlesEmpty\": \"No bundles yet.\",\n\t\"admin.storefront.untitledCollection\": \"Untitled collection\",\n\t\"admin.storefront.untitledBundle\": \"Untitled bundle\",\n\t\"admin.storefront.newCollection\": \"New collection\",\n\t\"admin.storefront.newBundle\": \"New bundle\",\n\t\"admin.storefront.collectionTitle\": \"Collection title\",\n\t\"admin.storefront.bundleTitle\": \"Bundle title\",\n\t\"admin.storefront.handle\": \"Handle\",\n\t\"admin.storefront.ruleType\": \"Condition type\",\n\t\"admin.storefront.ruleValue\": \"Condition value\",\n\t\"admin.storefront.collectionSort\": \"Collection sort\",\n\t\"admin.storefront.conditions\": \"Conditions\",\n\t\"admin.storefront.conditionsHelp\": \"Show products that match all of these conditions.\",\n\t\"admin.storefront.conditionsEmpty\": \"No conditions yet — this collection won't filter the catalog.\",\n\t\"admin.storefront.addCondition\": \"Add condition\",\n\t\"admin.storefront.removeCondition\": \"Remove condition\",\n\t\"admin.storefront.deleteCollection\": \"Delete collection\",\n\t\"admin.storefront.deleteBundle\": \"Delete bundle\",\n\t\"admin.storefront.deleteMarket\": \"Delete market\",\n\t\"admin.storefront.deleteNamed\": \"Delete {name}?\",\n\t\"admin.storefront.deleteCollectionImpact\": \"The collection is removed from storefront merchandising.\",\n\t\"admin.storefront.deleteBundleImpact\": \"The bundle is removed from storefront merchandising.\",\n\t\"admin.storefront.deleteMarketImpact\": \"The market and its regional storefront settings are deleted.\",\n\t\"admin.storefront.deleteProductsRemain\": \"Products remain in your catalog.\",\n\t\"admin.storefront.deletePrimaryUnchanged\": \"Your primary market remains unchanged.\",\n\t\"admin.storefront.manualConditionNote\": \"Curated in the catalog — no condition value needed.\",\n\t\"admin.storefront.conditionPlaceholder.category\": \"Category slug\",\n\t\"admin.storefront.conditionPlaceholder.tag\": \"Tag\",\n\t\"admin.storefront.conditionPlaceholder.search\": \"Search query\",\n\t\"admin.storefront.itemDescription\": \"Description\",\n\t\"admin.storefront.bundleProducts\": \"Products\",\n\t\"admin.storefront.bundleProductsHelp\": \"Search your catalog and select the products in this bundle.\",\n\t\"admin.storefront.bundleProductsPlaceholder\": \"Add products…\",\n\t\"admin.storefront.bundleProductsLoading\": \"Loading products from your catalog…\",\n\t\"admin.storefront.bundleProductsError\": \"Couldn't load your catalog. Reopen this tab to try again.\",\n\t\"admin.storefront.bundleProductsTruncated\": \"Showing your first {count} products. Your catalog is larger than the picker can list, so some products may not appear here.\",\n\t\"admin.storefront.visible\": \"Visible\",\n\t\"admin.storefront.featured\": \"Featured\",\n\t\"admin.storefront.rule.category\": \"Category\",\n\t\"admin.storefront.rule.tag\": \"Tag\",\n\t\"admin.storefront.rule.search\": \"Search\",\n\t\"admin.storefront.rule.manual\": \"Manual product IDs\",\n\t\"admin.storefront.sort.featured\": \"Featured\",\n\t\"admin.storefront.sort.newest\": \"Newest\",\n\t\"admin.storefront.sort.priceAsc\": \"Price: low to high\",\n\t\"admin.storefront.sort.priceDesc\": \"Price: high to low\",\n\t\"admin.storefront.sort.titleAsc\": \"Title: A-Z\",\n\t\"admin.storefront.marketRoutingCard\": \"Routing\",\n\t\"admin.storefront.marketsHelp\": \"Sell to different regions with their own currency, language, and available products. Cedros Pay still calculates the final tax, duties, and totals at checkout.\",\n\t\"admin.storefront.marketsEnabled\": \"Enable markets\",\n\t\"admin.storefront.marketsEnabledHelp\": \"When on, shoppers are routed to the market that matches their country, domain, or language. When off, every shopper sees your primary market.\",\n\t\"admin.storefront.primaryMarket\": \"Primary market\",\n\t\"admin.storefront.primaryMarketHelp\": \"The base experience every shopper gets. These settings apply even when markets routing is off.\",\n\t\"admin.storefront.primaryBadge\": \"Base\",\n\t\"admin.storefront.marketsRoutingOffNote\": \"Routing is off — these markets aren't applied yet.\",\n\t\"admin.storefront.defaultMarket\": \"Default market\",\n\t\"admin.storefront.defaultMarketHelp\": \"Fallback for shoppers we can't match to a region. Usually your primary market.\",\n\t\"admin.storefront.marketActive\": \"Active\",\n\t\"admin.storefront.marketNameHelp\": \"A label for your reference — shoppers don't see it.\",\n\t\"admin.storefront.marketRegionGroup\": \"Region & language\",\n\t\"admin.storefront.marketSellingGroup\": \"Products & checkout\",\n\t\"admin.storefront.marketAdvanced\": \"Advanced\",\n\t\"admin.storefront.countriesHelp\": \"Shoppers in these countries see this market.\",\n\t\"admin.storefront.countriesPlaceholder\": \"Add countries…\",\n\t\"admin.storefront.currencyHelp\": \"Prices and checkout use this currency.\",\n\t\"admin.storefront.currencyPlaceholder\": \"Select a currency\",\n\t\"admin.storefront.languagesHelp\": \"Match shoppers browsing in these languages.\",\n\t\"admin.storefront.languagesPlaceholder\": \"Add languages…\",\n\t\"admin.storefront.marketAvailabilityHelp\": \"Choose which products this market can buy.\",\n\t\"admin.storefront.marketProductIdsHelp\": \"Comma-separated product IDs.\",\n\t\"admin.storefront.marketHostHelp\": \"Optional. Serve this market from its own domain.\",\n\t\"admin.storefront.marketHostPlaceholder\": \"example.fr\",\n\t\"admin.storefront.pathPrefixHelp\": \"Optional. Serve this market under a path on your main domain.\",\n\t\"admin.storefront.pathPrefixPlaceholder\": \"/eu\",\n\t\"admin.storefront.removeSelection\": \"Remove {item}\",\n\t\"admin.storefront.selectedCount\": \"{count, plural, one {# selected} other {# selected}}\",\n\t\"admin.storefront.searchSelection\": \"Search {field}\",\n\t\"admin.storefront.noMatches\": \"No matches — try a different term.\",\n\t\"admin.storefront.moreMatches\": \"Showing the first {shown} of {total}. Keep typing to narrow.\",\n\t\"admin.storefront.addMarket\": \"Add market\",\n\t\"admin.storefront.newMarket\": \"New market\",\n\t\"admin.storefront.untitledMarket\": \"Untitled market\",\n\t\"admin.storefront.marketName\": \"Market name\",\n\t\"admin.storefront.marketId\": \"Market ID\",\n\t\"admin.storefront.countries\": \"Countries\",\n\t\"admin.storefront.countriesHint\": \"Comma-separated ISO country codes (e.g. US, CA).\",\n\t\"admin.storefront.currency\": \"Currency\",\n\t\"admin.storefront.currencyHint\": \"3-letter ISO 4217 code (e.g. USD). Defaults to USD if left blank.\",\n\t\"admin.storefront.languages\": \"Languages\",\n\t\"admin.storefront.languagesHint\": \"Comma-separated locale codes (e.g. en, fr-FR).\",\n\t\"admin.storefront.defaultLocale\": \"Default locale\",\n\t\"admin.storefront.channels\": \"Channels\",\n\t\"admin.storefront.customerSegments\": \"Customer segments\",\n\t\"admin.storefront.marketHost\": \"Dedicated domain\",\n\t\"admin.storefront.pathPrefix\": \"URL path\",\n\t\"admin.storefront.pricing\": \"Pricing\",\n\t\"admin.storefront.pricingStrategy\": \"Pricing strategy\",\n\t\"admin.storefront.priceListId\": \"Price list ID\",\n\t\"admin.storefront.adjustmentPercent\": \"Adjustment percent\",\n\t\"admin.storefront.marketAvailability\": \"Product availability\",\n\t\"admin.storefront.availabilityMode\": \"Availability mode\",\n\t\"admin.storefront.marketProductIds\": \"Product IDs\",\n\t\"admin.storefront.giftCardPolicy\": \"Gift cards\",\n\t\"admin.storefront.marketContent\": \"Content and SEO\",\n\t\"admin.storefront.contentStrategy\": \"Content strategy\",\n\t\"admin.storefront.themeContentKey\": \"Theme content key\",\n\t\"admin.storefront.seoTitleSuffix\": \"SEO title suffix\",\n\t\"admin.storefront.seoDescription\": \"SEO description\",\n\t\"admin.storefront.marketEnabled\": \"Market enabled\",\n\t\"admin.storefront.pricing.base\": \"Use base catalog pricing\",\n\t\"admin.storefront.pricing.fixed\": \"Use fixed price list\",\n\t\"admin.storefront.pricing.adjustment\": \"Apply percentage adjustment\",\n\t\"admin.storefront.availability.all\": \"All products\",\n\t\"admin.storefront.availability.include\": \"Only specific products\",\n\t\"admin.storefront.availability.exclude\": \"All except specific products\",\n\t\"admin.storefront.giftCards.giftcards_extension\": \"Use Gift Cards extension\",\n\t\"admin.storefront.giftCards.hidden\": \"Hide gift-card surfaces\",\n\t\"admin.storefront.content.default\": \"Default storefront content\",\n\t\"admin.storefront.content.localized\": \"Localized market content\",\n\t\"admin.storefront.related.mostRecent\": \"Most recent\",\n\t\"admin.storefront.related.byCategory\": \"By category\",\n\t\"admin.storefront.related.aiCurated\": \"AI curated\",\n\t\"admin.storefront.related.manual\": \"Manual selection\",\n\t\"admin.storefront.layout.large\": \"Large\",\n\t\"admin.storefront.layout.square\": \"Square\",\n\t\"admin.storefront.layout.compact\": \"Compact\",\n\t\"admin.storefront.crop.center\": \"Center\",\n\t\"admin.storefront.crop.top\": \"Top\",\n\t\"admin.storefront.crop.bottom\": \"Bottom\",\n\t\"admin.storefront.crop.left\": \"Left\",\n\t\"admin.storefront.crop.right\": \"Right\",\n\t\"admin.storefront.card.visibility\": \"Visibility\",\n\t\"admin.storefront.card.shopPage\": \"Shop landing page\",\n\t\"admin.storefront.card.shopPageHelp\": \"The title and intro shown at the top of your public shop.\",\n\t\"admin.storefront.card.catalogFilters\": \"Catalog filters\",\n\t\"admin.storefront.card.catalogFiltersHelp\": \"Choose which filters shoppers can use to narrow the catalog.\",\n\t\"admin.storefront.card.sortOptions\": \"Sort options\",\n\t\"admin.storefront.card.sortOptionsHelp\": \"Choose which sort orders shoppers can pick. Featured is always available as a fallback.\",\n\t\"admin.storefront.card.paySetup\": \"Cedros Pay setup\",\n\t\"admin.storefront.card.paySetupHelp\": \"Manage merchant-owned promotion, tax, and shipping setup in Cedros Pay. Shop only collects buyer input and displays Pay-derived checkout results.\",\n\t\"admin.storefront.openPayPromotions\": \"Manage promotions in Cedros Pay\",\n\t\"admin.storefront.openPayTaxShipping\": \"Manage tax and shipping in Cedros Pay\",\n\t\"admin.storefront.card.productGrids\": \"Product grids\",\n\t\"admin.storefront.card.productGridsHelp\": \"Card size and image cropping for the shop and category grids.\",\n\t\"admin.storefront.card.productDetails\": \"Product detail page\",\n\t\"admin.storefront.card.productDetailsHelp\": \"Choose which sections appear on every product page.\",\n\t\"admin.storefront.card.relatedProducts\": \"Related products\",\n\t\"admin.storefront.card.relatedProductsHelp\": \"Suggest more products at the bottom of each product page.\",\n\t\"admin.storefront.card.inventory\": \"Inventory\",\n\t\"admin.storefront.card.inventoryHelp\": \"How stock is verified and reserved while shoppers check out.\",\n\t\"admin.storefront.card.accounts\": \"Accounts\",\n\t\"admin.storefront.card.accountsHelp\": \"Decide whether shoppers need an account to place an order.\",\n\t\"admin.storefront.guestCheckout\": \"Guest checkout\",\n\t\"admin.storefront.guestCheckoutHelp\": \"Let shoppers check out without an account. When off, they must sign in to place an order.\",\n\t\"admin.storefront.relatedSelection\": \"Selection mode\",\n\t\"admin.storefront.marketIdentity\": \"Identity\",\n\t\"admin.storefront.marketLocalization\": \"Localization\",\n\t\"admin.storefront.marketRouting\": \"Domain & routing\",\n\t\"admin.storefront.errors.ruleValueRequired\": \"Enter a value for this rule, or switch the rule to manual.\",\n\t\"admin.storefront.errors.productsRequired\": \"Add at least one product to this bundle.\"\n}, Ye = {\n\tes: {\n\t\t\"storefront.cart.pricingNote\": \"Los impuestos y el envío se calculan al finalizar la compra.\",\n\t\t\"storefront.checkout.billingTitle\": \"Facturación\",\n\t\t\"storefront.checkout.selectCountry\": \"Selecciona un país\",\n\t\t\"storefront.checkout.selectRegion\": \"Selecciona un estado o región\",\n\t\t\"storefront.checkout.addTip\": \"Agregar propina\",\n\t\t\"storefront.checkout.hideTip\": \"Ocultar propina\",\n\t\t\"storefront.checkout.editCart\": \"Editar carrito\",\n\t\t\"storefront.checkout.lineQuantity\": \"Cant. {count} · {price} c/u\",\n\t\t\"storefront.checkout.showOrderSummary\": \"Mostrar resumen del pedido · {total}\",\n\t\t\"storefront.checkout.hideOrderSummary\": \"Ocultar resumen del pedido · {total}\",\n\t\t\"storefront.checkout.confirmedTitle\": \"Gracias — tu pedido está confirmado\",\n\t\t\"storefront.checkout.confirmedOrder\": \"Pedido {orderId}\",\n\t\t\"storefront.checkout.confirmedDescription\": \"Tu pago se procesó correctamente y tu pedido está en preparación.\",\n\t\t\"storefront.checkout.viewPurchaseHistory\": \"Ver historial de compras\",\n\t\t\"storefront.history.purchaseConfirmed\": \"Pago recibido — tu pedido está confirmado.\"\n\t},\n\tfr: {\n\t\t\"storefront.cart.pricingNote\": \"Les taxes et les frais de livraison sont calculés au moment du paiement.\",\n\t\t\"storefront.checkout.billingTitle\": \"Facturation\",\n\t\t\"storefront.checkout.selectCountry\": \"Sélectionnez un pays\",\n\t\t\"storefront.checkout.selectRegion\": \"Sélectionnez un état ou une région\",\n\t\t\"storefront.checkout.addTip\": \"Ajouter un pourboire\",\n\t\t\"storefront.checkout.hideTip\": \"Masquer le pourboire\",\n\t\t\"storefront.checkout.editCart\": \"Modifier le panier\",\n\t\t\"storefront.checkout.lineQuantity\": \"Qté {count} · {price} chacun\",\n\t\t\"storefront.checkout.showOrderSummary\": \"Afficher le récapitulatif de commande · {total}\",\n\t\t\"storefront.checkout.hideOrderSummary\": \"Masquer le récapitulatif de commande · {total}\",\n\t\t\"storefront.checkout.confirmedTitle\": \"Merci — votre commande est confirmée\",\n\t\t\"storefront.checkout.confirmedOrder\": \"Commande {orderId}\",\n\t\t\"storefront.checkout.confirmedDescription\": \"Votre paiement a été accepté et votre commande est en cours de préparation.\",\n\t\t\"storefront.checkout.viewPurchaseHistory\": \"Voir l’historique des achats\",\n\t\t\"storefront.history.purchaseConfirmed\": \"Paiement reçu — votre commande est confirmée.\"\n\t},\n\tde: {\n\t\t\"storefront.cart.pricingNote\": \"Steuern und Versand werden an der Kasse berechnet.\",\n\t\t\"storefront.checkout.billingTitle\": \"Rechnung\",\n\t\t\"storefront.checkout.selectCountry\": \"Land auswählen\",\n\t\t\"storefront.checkout.selectRegion\": \"Bundesland oder Region auswählen\",\n\t\t\"storefront.checkout.addTip\": \"Trinkgeld hinzufügen\",\n\t\t\"storefront.checkout.hideTip\": \"Trinkgeld ausblenden\",\n\t\t\"storefront.checkout.editCart\": \"Warenkorb bearbeiten\",\n\t\t\"storefront.checkout.lineQuantity\": \"Menge {count} · je {price}\",\n\t\t\"storefront.checkout.showOrderSummary\": \"Bestellübersicht anzeigen · {total}\",\n\t\t\"storefront.checkout.hideOrderSummary\": \"Bestellübersicht ausblenden · {total}\",\n\t\t\"storefront.checkout.confirmedTitle\": \"Vielen Dank — Ihre Bestellung ist bestätigt\",\n\t\t\"storefront.checkout.confirmedOrder\": \"Bestellung {orderId}\",\n\t\t\"storefront.checkout.confirmedDescription\": \"Ihre Zahlung war erfolgreich und Ihre Bestellung wird vorbereitet.\",\n\t\t\"storefront.checkout.viewPurchaseHistory\": \"Kaufverlauf ansehen\",\n\t\t\"storefront.history.purchaseConfirmed\": \"Zahlung eingegangen — Ihre Bestellung ist bestätigt.\"\n\t},\n\tit: {\n\t\t\"storefront.cart.pricingNote\": \"Tasse e spedizione vengono calcolate al momento del pagamento.\",\n\t\t\"storefront.checkout.billingTitle\": \"Fatturazione\",\n\t\t\"storefront.checkout.selectCountry\": \"Seleziona un paese\",\n\t\t\"storefront.checkout.selectRegion\": \"Seleziona uno stato o una regione\",\n\t\t\"storefront.checkout.addTip\": \"Aggiungi una mancia\",\n\t\t\"storefront.checkout.hideTip\": \"Nascondi mancia\",\n\t\t\"storefront.checkout.editCart\": \"Modifica carrello\",\n\t\t\"storefront.checkout.lineQuantity\": \"Qtà {count} · {price} cad.\",\n\t\t\"storefront.checkout.showOrderSummary\": \"Mostra riepilogo ordine · {total}\",\n\t\t\"storefront.checkout.hideOrderSummary\": \"Nascondi riepilogo ordine · {total}\",\n\t\t\"storefront.checkout.confirmedTitle\": \"Grazie — il tuo ordine è confermato\",\n\t\t\"storefront.checkout.confirmedOrder\": \"Ordine {orderId}\",\n\t\t\"storefront.checkout.confirmedDescription\": \"Il pagamento è andato a buon fine e il tuo ordine è in preparazione.\",\n\t\t\"storefront.checkout.viewPurchaseHistory\": \"Vedi cronologia acquisti\",\n\t\t\"storefront.history.purchaseConfirmed\": \"Pagamento ricevuto — il tuo ordine è confermato.\"\n\t},\n\tpt: {\n\t\t\"storefront.cart.pricingNote\": \"Impostos e frete são calculados na finalização da compra.\",\n\t\t\"storefront.checkout.billingTitle\": \"Faturamento\",\n\t\t\"storefront.checkout.selectCountry\": \"Selecione um país\",\n\t\t\"storefront.checkout.selectRegion\": \"Selecione um estado ou região\",\n\t\t\"storefront.checkout.addTip\": \"Adicionar gorjeta\",\n\t\t\"storefront.checkout.hideTip\": \"Ocultar gorjeta\",\n\t\t\"storefront.checkout.editCart\": \"Editar carrinho\",\n\t\t\"storefront.checkout.lineQuantity\": \"Qtd. {count} · {price} cada\",\n\t\t\"storefront.checkout.showOrderSummary\": \"Mostrar resumo do pedido · {total}\",\n\t\t\"storefront.checkout.hideOrderSummary\": \"Ocultar resumo do pedido · {total}\",\n\t\t\"storefront.checkout.confirmedTitle\": \"Obrigado — seu pedido está confirmado\",\n\t\t\"storefront.checkout.confirmedOrder\": \"Pedido {orderId}\",\n\t\t\"storefront.checkout.confirmedDescription\": \"Seu pagamento foi aprovado e seu pedido está sendo preparado.\",\n\t\t\"storefront.checkout.viewPurchaseHistory\": \"Ver histórico de compras\",\n\t\t\"storefront.history.purchaseConfirmed\": \"Pagamento recebido — seu pedido está confirmado.\"\n\t},\n\tja: {\n\t\t\"storefront.cart.pricingNote\": \"税金と送料はチェックアウト時に計算されます。\",\n\t\t\"storefront.checkout.billingTitle\": \"請求先\",\n\t\t\"storefront.checkout.selectCountry\": \"国を選択\",\n\t\t\"storefront.checkout.selectRegion\": \"都道府県・地域を選択\",\n\t\t\"storefront.checkout.addTip\": \"チップを追加\",\n\t\t\"storefront.checkout.hideTip\": \"チップを非表示\",\n\t\t\"storefront.checkout.editCart\": \"カートを編集\",\n\t\t\"storefront.checkout.lineQuantity\": \"数量 {count} · 各{price}\",\n\t\t\"storefront.checkout.showOrderSummary\": \"注文内容を表示 · {total}\",\n\t\t\"storefront.checkout.hideOrderSummary\": \"注文内容を非表示 · {total}\",\n\t\t\"storefront.checkout.confirmedTitle\": \"ありがとうございます — ご注文が確定しました\",\n\t\t\"storefront.checkout.confirmedOrder\": \"注文番号 {orderId}\",\n\t\t\"storefront.checkout.confirmedDescription\": \"お支払いが完了し、ご注文の準備を進めています。\",\n\t\t\"storefront.checkout.viewPurchaseHistory\": \"購入履歴を見る\",\n\t\t\"storefront.history.purchaseConfirmed\": \"お支払いを確認しました — ご注文が確定しました。\"\n\t}\n};\nfunction Xe(e) {\n\tlet t = e.toLowerCase();\n\treturn Ye[t] || (Ye[t.split(/[-_]/)[0] ?? \"\"] ?? {});\n}\n//#endregion\n//#region src/i18n/messages.storefront.ts\nvar Ze = {\n\t\"common.active\": \"Active\",\n\t\"common.inactive\": \"Inactive\",\n\t\"common.enabled\": \"Enabled\",\n\t\"common.disabled\": \"Disabled\",\n\t\"common.loading\": \"Loading...\",\n\t\"common.retry\": \"Retry\",\n\t\"common.cancel\": \"Cancel\",\n\t\"common.confirm\": \"Confirm\",\n\t\"common.delete\": \"Delete\",\n\t\"common.edit\": \"Edit\",\n\t\"common.remove\": \"Remove\",\n\t\"common.increase\": \"Increase\",\n\t\"common.decrease\": \"Decrease\",\n\t\"common.moveUp\": \"Move up\",\n\t\"common.moveDown\": \"Move down\",\n\t\"common.reorder\": \"Reorder\",\n\t\"common.save\": \"Save\",\n\t\"common.saving\": \"Saving…\",\n\t\"common.saved\": \"Saved\",\n\t\"common.update\": \"Update\",\n\t\"common.create\": \"Create\",\n\t\"common.previous\": \"Previous\",\n\t\"common.next\": \"Next\",\n\t\"common.page\": \"Page {page}\",\n\t\"common.search\": \"Search\",\n\t\"common.sort\": \"Sort\",\n\t\"common.filters\": \"Filters\",\n\t\"common.clear\": \"Clear\",\n\t\"common.all\": \"All\",\n\t\"common.none\": \"None\",\n\t\"common.back\": \"Back\",\n\t\"common.opensInNewTab\": \"(opens in a new tab)\",\n\t\"common.view\": \"View\",\n\t\"common.checkout\": \"Checkout\",\n\t\"common.shop\": \"Shop\",\n\t\"common.cart\": \"Cart\",\n\t\"common.close\": \"Close\",\n\t\"storefront.sort.featured\": \"Featured\",\n\t\"storefront.sort.priceAsc\": \"Price: Low to High\",\n\t\"storefront.sort.priceDesc\": \"Price: High to Low\",\n\t\"storefront.stock.out\": \"Out of stock\",\n\t\"storefront.stock.in\": \"In stock\",\n\t\"storefront.stock.low\": \"Only {count, plural, one {# left} other {# left}}\",\n\t\"storefront.stock.quantityExceeded\": \"Only {available} available. You have {quantity} in cart.\",\n\t\"storefront.stock.lowGeneric\": \"Low stock\",\n\t\"storefront.stock.lowCart\": \"Low stock: {available} available.\",\n\t\"storefront.toast.addedToCart\": \"Added to cart\",\n\t\"storefront.toast.viewCart\": \"View cart\",\n\t\"storefront.toast.cartCurrencyReset\": \"Started a new cart\",\n\t\"storefront.toast.cartCurrencyResetDescription\": \"{productTitle} is priced in {currency} and cannot be combined with your {previousCurrency} items.\",\n\t\"storefront.shop.titleFallback\": \"Shop\",\n\t\"storefront.shop.browse\": \"Browse\",\n\t\"storefront.shop.categories\": \"Categories\",\n\t\"storefront.shop.brandFallback\": \"Shop\",\n\t\"storefront.shop.exitShop\": \"Exit shop\",\n\t\"storefront.shop.signIn\": \"Sign in\",\n\t\"storefront.shop.account\": \"Account\",\n\t\"storefront.shop.bundlesLabel\": \"Bundles\",\n\t\"storefront.shop.unavailableTitle\": \"This shop is currently unavailable\",\n\t\"storefront.shop.unavailableDescription\": \"Check back soon.\",\n\t\"storefront.category.titleFallback\": \"Category\",\n\t\"storefront.category.label\": \"Category\",\n\t\"storefront.category.all\": \"All categories\",\n\t\"storefront.category.descriptionFallback\": \"Browse products in this category.\",\n\t\"storefront.category.notFound\": \"This category may have been removed, or the link may be out of date.\",\n\t\"storefront.product.notFound\": \"This product may have been removed, or the link may be out of date.\",\n\t\"storefront.product.addToCart\": \"Add to cart\",\n\t\"storefront.product.chooseOptions\": \"Choose options\",\n\t\"storefront.product.buyNow\": \"Buy now\",\n\t\"storefront.product.description\": \"Description\",\n\t\"storefront.product.specs\": \"Specs\",\n\t\"storefront.product.noSpecs\": \"No specs provided.\",\n\t\"storefront.product.shippingReturns\": \"Shipping & returns\",\n\t\"storefront.product.related\": \"Related products\",\n\t\"storefront.product.viewDetails\": \"View details\",\n\t\"storefront.product.quickView\": \"Quick view\",\n\t\"storefront.product.select\": \"Select\",\n\t\"storefront.product.variantOut\": \"(Out of stock)\",\n\t\"storefront.product.titleWithVariant\": \"{productTitle} - {variantTitle}\",\n\t\"storefront.asset.title\": \"Tokenized Asset\",\n\t\"storefront.asset.backingValue\": \"Backing value\",\n\t\"storefront.asset.assetId\": \"Asset ID\",\n\t\"storefront.asset.tokensPerUnit\": \"Tokens per unit\",\n\t\"storefront.asset.custodyProof\": \"Custody proof\",\n\t\"storefront.asset.viewDocument\": \"View document\",\n\t\"storefront.asset.onChainToken\": \"On-chain token\",\n\t\"storefront.cart.title\": \"Cart\",\n\t\"storefront.cart.triggerCount\": \"Cart ({count})\",\n\t\"storefront.cart.emptyTitle\": \"Your cart is empty\",\n\t\"storefront.cart.emptyDescription\": \"Browse the shop to add products.\",\n\t\"storefront.cart.continueShopping\": \"Continue shopping\",\n\t\"storefront.cart.subtotal\": \"Subtotal\",\n\t\"storefront.cart.summary\": \"Summary\",\n\t\"storefront.cart.item\": \"Item\",\n\t\"storefront.cart.total\": \"Total\",\n\t\"storefront.cart.itemsCount\": \"{count, plural, one {# item} other {# items}}\",\n\t\"storefront.cart.checkoutBlocked\": \"Some items are out of stock or exceed the available quantity.\",\n\t\"storefront.cart.removeUnavailable\": \"Remove unavailable items\",\n\t\"storefront.cart.promoLabel\": \"Promotion code\",\n\t\"storefront.cart.promoPlaceholder\": \"Add a code\",\n\t\"storefront.cart.applyPromo\": \"Apply\",\n\t\"storefront.cart.promoApplied\": \"{code} will be applied at checkout.\",\n\t\"storefront.cart.promoRemove\": \"Remove code\",\n\t\"storefront.cart.promoAppliedList\": \"Applied promotion code\",\n\t\"storefront.cart.promoRemoveCode\": \"Remove {code}\",\n\t\"storefront.cart.removeItem\": \"Remove item\",\n\t\"storefront.cart.removeConfirmTitle\": \"Remove item?\",\n\t\"storefront.cart.removeConfirm\": \"Remove\",\n\t\"storefront.cart.each\": \"each\",\n\t\"storefront.cart.unitEach\": \"{price} each\",\n\t\"storefront.cart.decreaseQuantity\": \"Decrease quantity\",\n\t\"storefront.cart.increaseQuantity\": \"Increase quantity\",\n\t\"storefront.cart.quantity\": \"Quantity\",\n\t\"storefront.cart.sidebarDescription\": \"Review cart items before checkout.\",\n\t\"storefront.cart.pricingNote\": \"Taxes and shipping are calculated at checkout.\",\n\t\"storefront.checkout.title\": \"Checkout\",\n\t\"storefront.checkout.signInTitle\": \"Sign in to check out\",\n\t\"storefront.checkout.signInDescription\": \"This store requires an account to place an order. Sign in or create one to continue — your cart will be waiting.\",\n\t\"storefront.checkout.unavailable\": \"Checkout isn't available right now. Please check back soon.\",\n\t\"storefront.checkout.continueToPayment\": \"Continue to payment\",\n\t\"storefront.checkout.preparing\": \"Preparing checkout...\",\n\t\"storefront.checkout.opening\": \"Opening secure checkout...\",\n\t\"storefront.checkout.created\": \"Checkout session created.\",\n\t\"storefront.checkout.error\": \"Checkout could not start. Your cart is unchanged - try again.\",\n\t\"storefront.checkout.contactTitle\": \"Contact\",\n\t\"storefront.checkout.email\": \"Email\",\n\t\"storefront.checkout.name\": \"Full name\",\n\t\"storefront.checkout.phone\": \"Phone\",\n\t\"storefront.checkout.orderNotes\": \"Order notes\",\n\t\"storefront.checkout.addOrderNote\": \"Add an order note\",\n\t\"storefront.checkout.hideOrderNote\": \"Hide order note\",\n\t\"storefront.checkout.addPromoCode\": \"Add a promo code\",\n\t\"storefront.checkout.hidePromoCode\": \"Hide promo code\",\n\t\"storefront.checkout.required\": \"Required\",\n\t\"storefront.checkout.deliveryTitle\": \"Delivery\",\n\t\"storefront.checkout.billingTitle\": \"Billing\",\n\t\"storefront.checkout.loadingShipping\": \"Loading delivery options...\",\n\t\"storefront.checkout.shippingError\": \"Delivery options could not be verified. Check the address and try again.\",\n\t\"storefront.checkout.shippingDeferred\": \"Shipping will be finalized in secure checkout.\",\n\t\"storefront.checkout.shippingMethod\": \"Shipping method\",\n\t\"storefront.checkout.billingSameAsShipping\": \"Billing address is the same as shipping\",\n\t\"storefront.checkout.addressLine1\": \"Address line 1\",\n\t\"storefront.checkout.addressLine2\": \"Address line 2\",\n\t\"storefront.checkout.city\": \"City\",\n\t\"storefront.checkout.region\": \"State or region\",\n\t\"storefront.checkout.postalCode\": \"Postal code\",\n\t\"storefront.checkout.country\": \"Country\",\n\t\"storefront.checkout.selectCountry\": \"Select a country\",\n\t\"storefront.checkout.selectRegion\": \"Select a state or region\",\n\t\"storefront.checkout.paymentTitle\": \"Payment\",\n\t\"storefront.checkout.paymentMethod\": \"Payment method\",\n\t\"storefront.checkout.paymentUnavailable\": \"No payment methods are available for this checkout.\",\n\t\"storefront.checkout.loadingPaymentMethods\": \"Loading payment methods...\",\n\t\"storefront.checkout.paymentCard\": \"Card\",\n\t\"storefront.checkout.paymentCardDescription\": \"Pay with a saved or new card.\",\n\t\"storefront.checkout.paymentCrypto\": \"Crypto\",\n\t\"storefront.checkout.paymentCryptoDescription\": \"Pay with a supported on-chain payment method.\",\n\t\"storefront.checkout.paymentCredits\": \"Credits\",\n\t\"storefront.checkout.paymentCreditsDescription\": \"Use available account credits.\",\n\t\"storefront.checkout.tipAmount\": \"Tip\",\n\t\"storefront.checkout.addTip\": \"Add a tip\",\n\t\"storefront.checkout.hideTip\": \"Hide tip\",\n\t\"storefront.checkout.reviewTitle\": \"Order review\",\n\t\"storefront.checkout.showOrderSummary\": \"Show order summary · {total}\",\n\t\"storefront.checkout.hideOrderSummary\": \"Hide order summary · {total}\",\n\t\"storefront.checkout.editCart\": \"Edit cart\",\n\t\"storefront.checkout.lineQuantity\": \"Qty {count} · {price} each\",\n\t\"storefront.checkout.shipping\": \"Shipping\",\n\t\"storefront.checkout.discount\": \"Discount\",\n\t\"storefront.checkout.appliedDiscounts\": \"Applied discounts\",\n\t\"storefront.checkout.discountApplied\": \"Applied\",\n\t\"storefront.checkout.discountAutomatic\": \"Automatic discount\",\n\t\"storefront.checkout.discountBxgy\": \"Buy X get Y\",\n\t\"storefront.checkout.discountFreeShipping\": \"Free shipping\",\n\t\"storefront.checkout.discountGiftCard\": \"Gift card\",\n\t\"storefront.checkout.discountStoreCredit\": \"Store credit\",\n\t\"storefront.checkout.discountRecovery\": \"Recovery discount\",\n\t\"storefront.checkout.tax\": \"Tax\",\n\t\"storefront.checkout.calculatedByPay\": \"Calculated by Cedros Pay\",\n\t\"storefront.checkout.refreshingQuote\": \"Refreshing quote...\",\n\t\"storefront.checkout.quoteError\": \"This cart quote could not be verified. Check the details and try again.\",\n\t\"storefront.checkout.confirmedTitle\": \"Thank you — your order is confirmed\",\n\t\"storefront.checkout.confirmedOrder\": \"Order {orderId}\",\n\t\"storefront.checkout.confirmedDescription\": \"Your payment went through and your order is being prepared.\",\n\t\"storefront.checkout.viewPurchaseHistory\": \"View purchase history\",\n\t\"storefront.checkout.cancelled\": \"Checkout was cancelled. Your cart is unchanged.\",\n\t\"storefront.checkout.returnError\": \"Checkout returned with an error. Your cart is unchanged.\",\n\t\"storefront.checkout.selectPaymentMethod\": \"Select a payment method to continue.\",\n\t\"storefront.checkout.selectShippingMethod\": \"Select a shipping method to continue.\",\n\t\"storefront.checkout.completeRequiredFields\": \"Complete the required checkout details to continue.\",\n\t\"storefront.account.title\": \"Account\",\n\t\"storefront.account.subtitle\": \"Manage your profile, addresses, saved checkout details, and support links.\",\n\t\"storefront.account.poweredByLogin\": \"Account data by Cedros Login\",\n\t\"storefront.account.signInTitle\": \"Sign in to manage your account\",\n\t\"storefront.account.signInDescription\": \"Use your account to update profile details, addresses, checkout defaults, and support options.\",\n\t\"storefront.account.loading\": \"Loading account...\",\n\t\"storefront.account.unavailableTitle\": \"We couldn't load your account\",\n\t\"storefront.account.unavailableDescription\": \"Account management is unavailable until the host account contract is connected.\",\n\t\"storefront.account.emptyTitle\": \"Account details are unavailable\",\n\t\"storefront.account.emptyDescription\": \"No customer account record was returned.\",\n\t\"storefront.account.profileTitle\": \"Profile\",\n\t\"storefront.account.profileDescription\": \"Profile changes are saved to Cedros Login or the host CRM.\",\n\t\"storefront.account.marketingOptIn\": \"Receive store updates\",\n\t\"storefront.account.profileSaved\": \"Profile saved.\",\n\t\"storefront.account.addressesTitle\": \"Addresses\",\n\t\"storefront.account.addressesDescription\": \"Manage shipping and billing addresses used for checkout.\",\n\t\"storefront.account.noAddresses\": \"No saved addresses yet.\",\n\t\"storefront.account.address\": \"Address\",\n\t\"storefront.account.addressLabel\": \"Address label\",\n\t\"storefront.account.defaultShipping\": \"Default shipping\",\n\t\"storefront.account.defaultBilling\": \"Default billing\",\n\t\"storefront.account.addressSaved\": \"Address saved.\",\n\t\"storefront.account.addressDeleted\": \"Address deleted.\",\n\t\"storefront.account.deletingAddress\": \"Deleting…\",\n\t\"storefront.account.deleteAddressTitle\": \"Delete {name}?\",\n\t\"storefront.account.deleteAddressDescription\": \"This removes {name} from your saved checkout addresses.\",\n\t\"storefront.account.deleteAddressError\": \"The address could not be deleted. Try again.\",\n\t\"storefront.account.savedCheckoutTitle\": \"Saved checkout\",\n\t\"storefront.account.savedCheckoutDescription\": \"Choose defaults that autofill checkout for signed-in customers.\",\n\t\"storefront.account.savedCheckoutSaved\": \"Saved checkout details updated.\",\n\t\"storefront.account.defaultShippingAddress\": \"Default shipping address\",\n\t\"storefront.account.defaultBillingAddress\": \"Default billing address\",\n\t\"storefront.account.supportTitle\": \"Support\",\n\t\"storefront.account.supportDescription\": \"Contact and help links from the host CRM.\",\n\t\"storefront.account.saveError\": \"Changes could not be saved. Try again.\",\n\t\"storefront.history.title\": \"Purchase history\",\n\t\"storefront.history.subtitle\": \"Review your completed orders and receipts.\",\n\t\"storefront.history.poweredByPay\": \"Order operations by Cedros Pay\",\n\t\"storefront.history.signInTitle\": \"Sign in to view your orders\",\n\t\"storefront.history.signInDescription\": \"Use your account to see your past orders and receipts.\",\n\t\"storefront.history.loading\": \"Loading purchases...\",\n\t\"storefront.history.unavailable\": \"We couldn't load your purchases\",\n\t\"storefront.history.emptyTitle\": \"No orders yet\",\n\t\"storefront.history.emptyDescription\": \"Once you place an order, you'll find it here.\",\n\t\"storefront.history.orderTitle\": \"Order {id}\",\n\t\"storefront.history.orderMeta\": \"{date} · {status}\",\n\t\"storefront.history.purchaseConfirmed\": \"Payment received — your order is confirmed.\",\n\t\"storefront.history.orderLine\": \"{quantity} x {title}\",\n\t\"storefront.history.item\": \"Item\",\n\t\"storefront.history.viewReceipt\": \"View receipt\",\n\t\"storefront.history.viewInvoice\": \"View invoice\",\n\t\"storefront.history.subtotal\": \"Subtotal\",\n\t\"storefront.history.duties\": \"Duties\",\n\t\"storefront.history.refunded\": \"Refunded\",\n\t\"storefront.history.fulfillment\": \"Fulfillment\",\n\t\"storefront.history.noShipments\": \"Fulfillment details will appear here once Cedros Pay creates a shipment.\",\n\t\"storefront.history.ddp\": \"DDP label\",\n\t\"storefront.history.trackingNumber\": \"Tracking {value}\",\n\t\"storefront.history.shippedAt\": \"Shipped {date}\",\n\t\"storefront.history.estimatedDelivery\": \"Estimated delivery {date}\",\n\t\"storefront.history.deliveredAt\": \"Delivered {date}\",\n\t\"storefront.history.timeline\": \"Order timeline\",\n\t\"storefront.history.timelineMeta\": \"{date} {detail}\",\n\t\"storefront.history.trackShipment\": \"Track shipment\",\n\t\"storefront.history.printShippingLabel\": \"Print shipping label\",\n\t\"storefront.history.printReturnLabel\": \"Print return label\",\n\t\"storefront.history.contactSupport\": \"Contact support\",\n\t\"storefront.history.returns\": \"Returns\",\n\t\"storefront.history.returnableUntil\": \"Returnable until {date}\",\n\t\"storefront.history.returnWindow.not_returnable\": \"This order is not eligible for returns. {reason}\",\n\t\"storefront.history.returnWindow.expired\": \"The return window has closed. {reason}\",\n\t\"storefront.history.returnWindow.pending\": \"A return request is already pending. {reason}\",\n\t\"storefront.history.returnWindow.completed\": \"The return workflow is complete. {reason}\",\n\t\"storefront.history.returnPolicy\": \"Return policy\",\n\t\"storefront.history.orderActions\": \"Order actions\",\n\t\"storefront.history.requestReturn\": \"Request return\",\n\t\"storefront.history.requestRefund\": \"Request refund\",\n\t\"storefront.history.requestExchange\": \"Request exchange\",\n\t\"storefront.history.requestCancel\": \"Cancel order\",\n\t\"storefront.history.reorder\": \"Reorder\",\n\t\"storefront.history.payNow\": \"Pay now\",\n\t\"storefront.history.reorderReady\": \"Your reorder cart is ready.\",\n\t\"storefront.history.payNowOpening\": \"Opening payment...\",\n\t\"storefront.history.returnTitle\": \"Return request\",\n\t\"storefront.history.returnDescription\": \"Choose the items and send the request to Cedros Pay for eligibility checks, return label creation, and refund handling.\",\n\t\"storefront.history.refundTitle\": \"Refund request\",\n\t\"storefront.history.refundDescription\": \"Send a refund review request to Cedros Pay. Refund approval and payment reversal stay Pay-owned.\",\n\t\"storefront.history.exchangeTitle\": \"Exchange request\",\n\t\"storefront.history.exchangeDescription\": \"Send an exchange request so Cedros Pay can validate replacement inventory, settlement, and fulfillment.\",\n\t\"storefront.history.cancelTitle\": \"Cancel order\",\n\t\"storefront.history.cancelDescription\": \"Send a cancellation request. Cedros Pay will validate payment, fulfillment, and inventory rollback eligibility.\",\n\t\"storefront.history.itemsToInclude\": \"Items to include\",\n\t\"storefront.history.reason\": \"Reason\",\n\t\"storefront.history.reasonPlaceholder\": \"Tell us what happened\",\n\t\"storefront.history.note\": \"Additional details\",\n\t\"storefront.history.notePlaceholder\": \"Add details for the merchant\",\n\t\"storefront.history.submitRequest\": \"Submit request\",\n\t\"storefront.history.requestSubmitted\": \"Request submitted.\",\n\t\"storefront.history.reasonRequired\": \"Add a reason before submitting.\",\n\t\"storefront.history.selectItemsRequired\": \"Select at least one item before submitting.\",\n\t\"storefront.history.operationUnavailable\": \"This order operation is unavailable.\",\n\t\"storefront.history.operationError\": \"This order request could not be submitted. Try again.\",\n\t\"storefront.order.status.created\": \"Created\",\n\t\"storefront.order.status.paid\": \"Paid\",\n\t\"storefront.order.status.processing\": \"Processing\",\n\t\"storefront.order.status.fulfilled\": \"Fulfilled\",\n\t\"storefront.order.status.shipped\": \"Shipped\",\n\t\"storefront.order.status.delivered\": \"Delivered\",\n\t\"storefront.order.status.cancelled\": \"Cancelled\",\n\t\"storefront.order.status.refunded\": \"Refunded\",\n\t\"storefront.fulfillment.status.unfulfilled\": \"Unfulfilled\",\n\t\"storefront.fulfillment.status.partial\": \"Partially fulfilled\",\n\t\"storefront.fulfillment.status.fulfilled\": \"Fulfilled\",\n\t\"storefront.fulfillment.status.shipped\": \"Shipped\",\n\t\"storefront.fulfillment.status.delivered\": \"Delivered\",\n\t\"storefront.fulfillment.status.exception\": \"Needs attention\",\n\t\"storefront.fulfillment.status.returned\": \"Returned\",\n\t\"storefront.fulfillment.status.cancelled\": \"Cancelled\",\n\t\"storefront.subscription.title\": \"Subscriptions\",\n\t\"storefront.subscription.subtitle\": \"Choose a plan and start a secure subscription checkout.\",\n\t\"storefront.subscription.billingInterval\": \"Billing interval\",\n\t\"storefront.subscription.monthly\": \"Monthly\",\n\t\"storefront.subscription.annual\": \"Annual\",\n\t\"storefront.subscription.popular\": \"Most popular\",\n\t\"storefront.subscription.month\": \"month\",\n\t\"storefront.subscription.year\": \"year\",\n\t\"storefront.subscription.interval\": \"/{interval}\",\n\t\"storefront.subscription.unavailable\": \"Subscriptions are unavailable.\",\n\t\"storefront.subscription.loading\": \"Loading plans...\",\n\t\"storefront.subscription.emptyTitle\": \"No plans available yet\",\n\t\"storefront.subscription.emptyDescription\": \"No subscription plans are available for this storefront.\",\n\t\"storefront.subscription.subscribe\": \"Subscribe\",\n\t\"storefront.subscription.opening\": \"Opening checkout...\",\n\t\"storefront.subscription.checkoutError\": \"Subscription checkout could not start. Try again.\",\n\t\"storefront.subscription.manageTitle\": \"Your subscriptions\",\n\t\"storefront.subscription.manageDescription\": \"Review renewal details and manage eligible subscription actions.\",\n\t\"storefront.subscription.signInManage\": \"Sign in to pause, skip, cancel, or update billing for your subscriptions.\",\n\t\"storefront.subscription.managementUnavailable\": \"Subscription management is unavailable until Cedros Pay is bound.\",\n\t\"storefront.subscription.loadingStatus\": \"Loading subscriptions...\",\n\t\"storefront.subscription.statusUnavailable\": \"We couldn't load your subscriptions\",\n\t\"storefront.subscription.noActiveTitle\": \"No active subscriptions\",\n\t\"storefront.subscription.noActiveDescription\": \"Active subscriptions and billing actions will appear here.\",\n\t\"storefront.subscription.subscriptionMeta\": \"{interval} · {status}\",\n\t\"storefront.subscription.renewsAt\": \"Renews\",\n\t\"storefront.subscription.nextBillingAt\": \"Next billing\",\n\t\"storefront.subscription.currentPeriodEnd\": \"Current period ends\",\n\t\"storefront.subscription.pausedUntil\": \"Paused until\",\n\t\"storefront.subscription.cancelAt\": \"Ends\",\n\t\"storefront.subscription.pause\": \"Pause\",\n\t\"storefront.subscription.resume\": \"Resume\",\n\t\"storefront.subscription.skipNext\": \"Skip next renewal\",\n\t\"storefront.subscription.updatePayment\": \"Update payment\",\n\t\"storefront.subscription.cancelSubscription\": \"Cancel subscription\",\n\t\"storefront.subscription.cancelReason\": \"Cancellation reason\",\n\t\"storefront.subscription.confirmCancel\": \"Confirm cancellation\",\n\t\"storefront.subscription.actionWorking\": \"Submitting subscription request...\",\n\t\"storefront.subscription.actionSubmitted\": \"Subscription request submitted.\",\n\t\"storefront.subscription.actionError\": \"Subscription request could not be submitted. Try again.\",\n\t\"storefront.subscription.status.trialing\": \"Trialing\",\n\t\"storefront.subscription.status.active\": \"Active\",\n\t\"storefront.subscription.status.paused\": \"Paused\",\n\t\"storefront.subscription.status.past_due\": \"Past due\",\n\t\"storefront.subscription.status.cancelled\": \"Cancelled\",\n\t\"storefront.subscription.status.expired\": \"Expired\",\n\t\"storefront.error.title\": \"We couldn't load this content\",\n\t\"storefront.error.load\": \"Check your connection, then try again.\",\n\t\"storefront.builder.missingParam\": \"This block needs a {field} before it can render.\",\n\t\"storefront.builder.field.category\": \"category\",\n\t\"storefront.builder.field.product\": \"product\",\n\t\"storefront.catalog.breadcrumb\": \"Breadcrumb\",\n\t\"storefront.catalog.categoryNav\": \"Categories\",\n\t\"storefront.catalog.searchPlaceholder\": \"Search products...\",\n\t\"storefront.catalog.emptyTitle\": \"No products found\",\n\t\"storefront.catalog.emptyDescription\": \"New products are on the way - check back soon.\",\n\t\"storefront.catalog.emptyFilteredDescription\": \"Nothing matches your search and filters.\",\n\t\"storefront.catalog.clearSearchAndFilters\": \"Clear search and filters\",\n\t\"storefront.catalog.tags\": \"Tags\",\n\t\"storefront.catalog.price\": \"Price\",\n\t\"storefront.catalog.min\": \"Min\",\n\t\"storefront.catalog.max\": \"Max\",\n\t\"storefront.catalog.availability\": \"Availability\",\n\t\"storefront.catalog.inStockOnly\": \"In stock\",\n\t\"storefront.a11y.viewImage\": \"View image {index}\",\n\t\"storefront.a11y.viewProduct\": \"View {title}\",\n\t\"storefront.a11y.closeCart\": \"Close cart\"\n}, p = \"en\";\nfunction m(e, t, n = p) {\n\treturn e.indexOf(\"{\") === -1 ? e : h(e, t, n, null);\n}\nfunction h(e, t, n, r) {\n\tlet i = \"\", a = 0;\n\tfor (; a < e.length;) {\n\t\tlet o = e[a];\n\t\tif (o === \"{\") {\n\t\t\tlet r = Qe(e, a, t, n);\n\t\t\ti += r.text, a = r.next;\n\t\t} else o === \"#\" && r !== null ? (i += Number.isFinite(r) ? ot(n, r) : \"\", a += 1) : (i += o, a += 1);\n\t}\n\treturn i;\n}\nfunction Qe(e, t, n, r) {\n\tlet i = v(e, t + 1), a = _(e, i), o = a.value;\n\tif (i = v(e, a.next), e[i] !== \",\") return {\n\t\ttext: y(n[o]),\n\t\tnext: i + 1\n\t};\n\ti = v(e, i + 1);\n\tlet s = _(e, i);\n\tif (i = v(e, s.next), s.value === \"number\") return $e(e, i, Number(n[o]), r);\n\tif (e[i] === \",\" && (i = v(e, i + 1)), s.value === \"plural\" || s.value === \"selectordinal\") return et(e, i, Number(n[o]), s.value === \"selectordinal\", n, r);\n\tif (s.value === \"select\") return tt(e, i, y(n[o]), n, r);\n\tlet c = g(e, i);\n\treturn {\n\t\ttext: y(n[o]),\n\t\tnext: c.next\n\t};\n}\nfunction $e(e, t, n, r) {\n\tlet i;\n\tif (e[t] === \",\") {\n\t\tlet n = _(e, v(e, t + 1));\n\t\ti = n.value, t = v(e, n.next);\n\t}\n\treturn {\n\t\ttext: ot(r, n, at(i)),\n\t\tnext: t + 1\n\t};\n}\nfunction et(e, t, n, r, i, a) {\n\tlet o = g(e, t);\n\treturn {\n\t\ttext: h(o.map[`=${n}`] ?? o.map[it(a, n, r)] ?? o.map.other ?? \"\", i, a, n),\n\t\tnext: o.next\n\t};\n}\nfunction tt(e, t, n, r, i) {\n\tlet a = g(e, t);\n\treturn {\n\t\ttext: h(a.map[n] ?? a.map.other ?? \"\", r, i, null),\n\t\tnext: a.next\n\t};\n}\nfunction g(e, t) {\n\tlet n = {}, r = v(e, t);\n\tfor (; r < e.length && e[r] !== \"}\";) {\n\t\tlet t = _(e, r);\n\t\tif (r = v(e, t.next), e[r] !== \"{\") break;\n\t\tlet i = nt(e, r);\n\t\tn[t.value] = i.inner, r = v(e, i.next);\n\t}\n\treturn {\n\t\tmap: n,\n\t\tnext: r + 1\n\t};\n}\nfunction nt(e, t) {\n\tlet n = 0, r = t;\n\tfor (; r < e.length; r += 1) if (e[r] === \"{\") n += 1;\n\telse if (e[r] === \"}\" && (--n, n === 0)) break;\n\treturn {\n\t\tinner: e.slice(t + 1, r),\n\t\tnext: r + 1\n\t};\n}\nfunction _(e, t) {\n\tlet n = t;\n\tfor (; n < e.length && !rt(e[n]);) n += 1;\n\treturn {\n\t\tvalue: e.slice(t, n),\n\t\tnext: n\n\t};\n}\nfunction rt(e) {\n\treturn e === \" \" || e === \"\t\" || e === \"\\n\" || e === \"\\r\" || e === \",\" || e === \"{\" || e === \"}\";\n}\nfunction v(e, t) {\n\tlet n = t;\n\tfor (; n < e.length && (e[n] === \" \" || e[n] === \"\t\" || e[n] === \"\\n\" || e[n] === \"\\r\");) n += 1;\n\treturn n;\n}\nfunction it(e, t, n) {\n\tif (!Number.isFinite(t)) return \"other\";\n\tlet r = n ? \"ordinal\" : \"cardinal\";\n\ttry {\n\t\treturn new Intl.PluralRules(e, { type: r }).select(t);\n\t} catch {\n\t\treturn new Intl.PluralRules(p, { type: r }).select(t);\n\t}\n}\nfunction at(e) {\n\tif (e === \"percent\") return { style: \"percent\" };\n\tif (e === \"integer\") return { maximumFractionDigits: 0 };\n}\nfunction ot(e, t, n) {\n\tif (!Number.isFinite(t)) return \"\";\n\ttry {\n\t\treturn new Intl.NumberFormat(e, n).format(t);\n\t} catch {\n\t\treturn new Intl.NumberFormat(p, n).format(t);\n\t}\n}\nfunction y(e) {\n\treturn e == null ? \"\" : e instanceof Date ? e.toISOString() : String(e);\n}\n//#endregion\n//#region src/seoSlug.ts\nvar st = /^[A-Za-z0-9._~-]{1,160}$/;\nfunction ct(e) {\n\treturn typeof e == \"string\" && e !== \".\" && e !== \"..\" && st.test(e);\n}\n//#endregion\n//#region src/i18n/index.ts\nvar b = {\n\t...Ze,\n\t...Je\n}, x = \"en\", S = \"USD\", lt = /* @__PURE__ */ new Set([\n\t\"ar\",\n\t\"he\",\n\t\"fa\",\n\t\"ur\",\n\t\"ps\",\n\t\"sd\",\n\t\"ug\",\n\t\"yi\",\n\t\"dv\",\n\t\"ckb\",\n\t\"ku\",\n\t\"nqo\",\n\t\"rhg\",\n\t\"syr\"\n]);\nfunction C(e) {\n\tlet t = e.toLowerCase().split(/[-_]/)[0] ?? \"\";\n\treturn lt.has(t) ? \"rtl\" : \"ltr\";\n}\nvar ut = {\n\tshop: \"/shop\",\n\tcategory: ({ slug: e }) => `/shop/${e ?? \"\"}`,\n\tproduct: ({ slug: e }) => `/product/${e ?? \"\"}`,\n\tcart: \"/cart\",\n\tcheckout: \"/checkout\",\n\taccount: \"/account\",\n\torders: \"/account/orders\",\n\tsubscribe: \"/subscribe\"\n};\nfunction w(e = {}) {\n\tlet t = yt(e.locale ?? e.defaultLocale ?? x), n = yt(e.defaultLocale ?? x), r = pt(e.messages, t, n);\n\treturn {\n\t\tlocale: t,\n\t\tdefaultLocale: n,\n\t\tdirection: C(t),\n\t\tt: (n, i) => {\n\t\t\tlet a = r[n] ?? b[n];\n\t\t\treturn a ? m(a, i ?? {}, t) : (e.onMissingMessage?.(n, t), n);\n\t\t},\n\t\tformatMoney: (e, n = S) => E(t, e, n),\n\t\tformatMoneyAtomic: (e, n = S) => E(t, e / 100, n),\n\t\tformatDate: (n, r) => O(t, n, {\n\t\t\tdateStyle: \"medium\",\n\t\t\t...r\n\t\t}, e.timeZone),\n\t\tformatDateTime: (n, r) => O(t, n, {\n\t\t\tdateStyle: \"medium\",\n\t\t\ttimeStyle: \"short\",\n\t\t\t...r\n\t\t}, e.timeZone),\n\t\tformatNumber: (e, n) => D(t, e, n),\n\t\tformatPercentFromBps: (e) => D(t, e / 1e4, {\n\t\t\tstyle: \"percent\",\n\t\t\tmaximumFractionDigits: 2\n\t\t}),\n\t\tformatList: (e) => vt(t, e),\n\t\troute: (r, i, a) => mt(r, i, a, e, t, n)\n\t};\n}\nvar dt = w();\nfunction ft(e) {\n\treturn {\n\t\tdefaultLocale: x,\n\t\t...e\n\t};\n}\nfunction pt(e, t, n) {\n\tlet r = {\n\t\t...b,\n\t\t...Xe(t)\n\t};\n\treturn e ? bt(e) ? T(r, e[n], e[t]) : T(r, e) : r;\n}\nfunction T(e, ...t) {\n\tlet n = { ...e };\n\tfor (let e of t) for (let [t, r] of Object.entries(e ?? {})) typeof r == \"string\" && (n[t] = r);\n\treturn n;\n}\nfunction mt(e, t = {}, n, r, i, a) {\n\tlet o = {\n\t\t...r.routing?.routes,\n\t\t...n\n\t}[e] ?? ut[e], s = typeof o == \"function\" ? o({\n\t\t...t,\n\t\tlocale: i,\n\t\tdefaultLocale: a\n\t}) : o;\n\treturn ht(e, s, t.slug), gt(s, r, i, a);\n}\nfunction ht(e, t, n) {\n\tif (e !== \"category\" && e !== \"product\") return;\n\tif (!ct(n)) throw Error(`Cedros Shop ${e} routes require a non-empty SEO-safe catalog slug.`);\n\tif (t.startsWith(\"//\") || /[%\\\\?#\\u0000-\\u0020\\u007f]/.test(t)) throw Error(`Cedros Shop ${e} route is not a safe HTTPS path.`);\n\tlet r;\n\ttry {\n\t\tlet e = new URL(t, \"https://cedros.invalid\");\n\t\tif (e.protocol !== \"https:\" || e.search || e.hash || e.username || e.password) throw Error(\"unsafe route\");\n\t\tr = e.pathname;\n\t} catch {\n\t\tthrow Error(`Cedros Shop ${e} route is not a safe HTTPS path.`);\n\t}\n\tif (r.includes(\"//\") || r.split(\"/\").some((e) => e === \".\" || e === \"..\")) throw Error(`Cedros Shop ${e} route is not a normalized path.`);\n\tlet i = e === \"category\" ? `/shop/${n}` : `/product/${n}`;\n\tif (r !== i && !r.endsWith(i)) throw Error(`Cedros Shop ${e} route must preserve the manifest SEO pattern ${i}.`);\n}\nfunction gt(e, t, n, r) {\n\tif (!e.startsWith(\"/\") || e.startsWith(\"//\")) return e;\n\tlet i = t.routing?.strategy ?? \"prefix-except-default\";\n\tif (i === \"none\" || i === \"prefix-except-default\" && n === r) return e;\n\tlet a = _t(t, n);\n\treturn e === \"/\" ? a || \"/\" : `${a}${e}`;\n}\nfunction _t(e, t) {\n\tlet n = e.routing?.localePrefix, r = typeof n == \"function\" ? n(t) : n ?? `/${t}`;\n\treturn r.startsWith(\"/\") ? r.replace(/\\/$/, \"\") : `/${r.replace(/\\/$/, \"\")}`;\n}\nfunction E(e, t, n) {\n\treturn D(e, t, {\n\t\tstyle: \"currency\",\n\t\tcurrency: n\n\t});\n}\nfunction D(e, t, n) {\n\ttry {\n\t\treturn new Intl.NumberFormat(e, n).format(t);\n\t} catch {\n\t\treturn new Intl.NumberFormat(x, n).format(t);\n\t}\n}\nfunction O(e, t, n, r) {\n\tlet i = t instanceof Date ? t : new Date(t);\n\tif (Number.isNaN(i.getTime())) return n.fallback ?? String(t);\n\tlet { fallback: a, ...o } = n;\n\treturn new Intl.DateTimeFormat(e, {\n\t\ttimeZone: r,\n\t\t...o\n\t}).format(i);\n}\nfunction vt(e, t) {\n\tif (t.length === 0) return \"\";\n\ttry {\n\t\tlet n = Intl.ListFormat;\n\t\tif (n) return new n(e, {\n\t\t\tstyle: \"short\",\n\t\t\ttype: \"conjunction\"\n\t\t}).format(t);\n\t} catch {}\n\treturn t.join(\", \");\n}\nfunction yt(e) {\n\treturn e.trim() || x;\n}\nfunction bt(e) {\n\treturn Object.values(e).some((e) => typeof e == \"object\" && !!e);\n}\n//#endregion\n//#region src/storefront/subscriptionContinuation.ts\nvar xt = \"/extensions/cedros-portal/app/create-site\", k = \"https://cedros.invalid\", St = 2048;\nfunction A(e) {\n\tif (!(typeof e != \"string\" || !e || e.length > St) && !(e.trim() !== e || !e.startsWith(\"/\") || e.startsWith(\"//\")) && !(/[\\\\\\u0000-\\u0020\\u007f]/.test(e) || Et(e))) try {\n\t\tlet t = new URL(e, k);\n\t\treturn t.origin === k ? `${t.pathname}${t.search}${t.hash}` : void 0;\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction Ct(e, t) {\n\tlet n = new URLSearchParams(e).getAll(\"returnTo\");\n\tif (n.length > 1) return { ok: !1 };\n\tlet r = A(n.length === 1 ? n[0] : t);\n\treturn r ? {\n\t\tok: !0,\n\t\tpath: r\n\t} : { ok: !1 };\n}\nfunction wt(e, t) {\n\tlet n = A(e);\n\tif (!n) return;\n\tlet r = new URL(n, k);\n\treturn r.searchParams.set(\"checkout\", t), `${r.pathname}${r.search}${r.hash}`;\n}\nfunction Tt(e, t, n) {\n\tlet r = wt(t, n);\n\tif (!(!e || !r)) try {\n\t\tlet t = new URL(e);\n\t\treturn t.protocol !== \"https:\" || t.username || t.password ? void 0 : new URL(r, t.origin).href;\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction Et(e) {\n\tlet t = e;\n\tfor (let e = 0; e < 3; e += 1) {\n\t\tif (/%(?:00|0a|0d|2f|5c)/i.test(t)) return !0;\n\t\tlet e = t.replace(/%25/gi, \"%\");\n\t\tif (e === t) break;\n\t\tt = e;\n\t}\n\treturn !1;\n}\n//#endregion\n//#region src/storefront/markets.ts\nvar j = \"primary\", M = {\n\tid: j,\n\tname: \"Primary market\",\n\tenabled: !0,\n\tcountries: [],\n\tcustomerSegments: [],\n\tchannels: [],\n\tcurrency: \"USD\",\n\tlanguages: [\"en\"],\n\tdefaultLocale: \"en\",\n\tpricing: {\n\t\tstrategy: \"base\",\n\t\tpriceListId: \"\",\n\t\tadjustmentPercent: 0\n\t},\n\tdomain: {\n\t\thost: \"\",\n\t\tpathPrefix: \"\"\n\t},\n\tcontent: {\n\t\tstrategy: \"default\",\n\t\tthemeContentKey: \"\"\n\t},\n\tproductAvailability: {\n\t\tmode: \"all\",\n\t\tproductIds: []\n\t},\n\tgiftCards: { policy: \"giftcards_extension\" },\n\tseo: {\n\t\ttitleSuffix: \"\",\n\t\tdescription: \"\"\n\t}\n}, N = {\n\tenabled: !1,\n\tdefaultMarketId: j,\n\tmarkets: [M]\n};\nfunction Dt(e) {\n\tlet t = P(e), n = Vt(Ht(t?.markets).map(Mt).filter(zt)), r = Bt(n.length ? n : N.markets), i = qt(t?.defaultMarketId), a = i && r.some((e) => e.id === i) ? i : r[0]?.id ?? j;\n\treturn {\n\t\tenabled: Ut(t?.enabled) ?? N.enabled,\n\t\tdefaultMarketId: a,\n\t\tmarkets: r\n\t};\n}\nfunction Ot(e, t = {}) {\n\tif (!e.enabled) return null;\n\tlet n = e.markets.filter((e) => e.enabled);\n\treturn n.length ? n.map((e) => ({\n\t\tmarket: e,\n\t\tscore: Rt(e, t)\n\t})).filter((e) => e.score > -Infinity).sort((e, t) => t.score - e.score)[0]?.market ?? n.find((t) => t.id === e.defaultMarketId) ?? n[0] ?? null : null;\n}\nfunction kt(e, t, n = {}) {\n\treturn {\n\t\t...n,\n\t\t...e ?? {},\n\t\tlocale: e?.locale ?? n.locale ?? t\n\t};\n}\nfunction At(e, t) {\n\tif (!t) return !0;\n\tlet { mode: n, productIds: r } = t.productAvailability;\n\tif (n === \"all\") return !0;\n\tlet i = r.includes(e.id);\n\treturn n === \"include\" ? i : !i;\n}\nfunction jt(e, t) {\n\treturn e.filter((e) => At(e, t));\n}\nfunction Mt(e) {\n\tlet t = P(e), n = qt(t?.id);\n\treturn n ? {\n\t\tid: n,\n\t\tname: I(t, [\"name\", \"label\"]) ?? n,\n\t\tenabled: Ut(t?.enabled) ?? !0,\n\t\tcountries: Gt(t?.countries),\n\t\tcustomerSegments: L(t?.customerSegments),\n\t\tchannels: L(t?.channels),\n\t\tcurrency: Jt(t?.currency) ?? M.currency,\n\t\tlanguages: Kt(t?.languages),\n\t\tdefaultLocale: z(t?.defaultLocale) ?? Kt(t?.languages)[0] ?? M.defaultLocale,\n\t\tpricing: Nt(t?.pricing),\n\t\tdomain: Pt(t?.domain),\n\t\tcontent: Ft(t?.content),\n\t\tproductAvailability: It(t?.productAvailability),\n\t\tgiftCards: { policy: F(P(t?.giftCards)?.policy, [\"giftcards_extension\", \"hidden\"]) ?? \"giftcards_extension\" },\n\t\tseo: Lt(t?.seo)\n\t} : null;\n}\nfunction Nt(e) {\n\tlet t = P(e);\n\treturn {\n\t\tstrategy: F(t?.strategy, [\n\t\t\t\"base\",\n\t\t\t\"fixed\",\n\t\t\t\"adjustment\"\n\t\t]) ?? \"base\",\n\t\tpriceListId: I(t, [\"priceListId\"]) ?? \"\",\n\t\tadjustmentPercent: Wt(t?.adjustmentPercent) ?? 0\n\t};\n}\nfunction Pt(e) {\n\tlet t = P(e);\n\treturn {\n\t\thost: Yt(t?.host),\n\t\tpathPrefix: Xt(t?.pathPrefix)\n\t};\n}\nfunction Ft(e) {\n\tlet t = P(e);\n\treturn {\n\t\tstrategy: F(t?.strategy, [\"default\", \"localized\"]) ?? \"default\",\n\t\tthemeContentKey: I(t, [\"themeContentKey\"]) ?? \"\"\n\t};\n}\nfunction It(e) {\n\tlet t = P(e);\n\treturn {\n\t\tmode: F(t?.mode, [\n\t\t\t\"all\",\n\t\t\t\"include\",\n\t\t\t\"exclude\"\n\t\t]) ?? \"all\",\n\t\tproductIds: L(t?.productIds)\n\t};\n}\nfunction Lt(e) {\n\tlet t = P(e);\n\treturn {\n\t\ttitleSuffix: I(t, [\"titleSuffix\"]) ?? \"\",\n\t\tdescription: I(t, [\"description\"]) ?? \"\"\n\t};\n}\nfunction Rt(e, t) {\n\tlet n = +(e.id === j), r = R(t.country);\n\tif (r && e.countries.length) {\n\t\tif (!e.countries.includes(r)) return -Infinity;\n\t\tn += 10;\n\t}\n\tlet i = z(t.locale);\n\ti && e.languages.length && (e.languages.includes(i) ? n += 6 : e.languages.some((e) => e.split(\"-\")[0] === i.split(\"-\")[0]) && (n += 4));\n\tlet a = Yt(t.host);\n\ta && e.domain.host && a === e.domain.host && (n += 8);\n\tlet o = Xt(t.path);\n\tif (o && e.domain.pathPrefix && o.startsWith(e.domain.pathPrefix) && (n += 5), t.channel && e.channels.length) {\n\t\tif (!e.channels.includes(t.channel)) return -Infinity;\n\t\tn += 2;\n\t}\n\tif (t.customerSegments?.length && e.customerSegments.length) {\n\t\tlet r = new Set(t.customerSegments);\n\t\tif (!e.customerSegments.some((e) => r.has(e))) return -Infinity;\n\t\tn += 2;\n\t}\n\treturn n;\n}\nfunction zt(e) {\n\treturn !!e;\n}\nfunction Bt(e) {\n\tlet t = e.findIndex((e) => e.id === j), n = t >= 0 ? t : 0, r = e[n];\n\treturn !r || n === 0 && r.enabled ? e : [r.enabled ? r : {\n\t\t...r,\n\t\tenabled: !0\n\t}, ...e.filter((e, t) => t !== n)];\n}\nfunction Vt(e) {\n\tlet t = /* @__PURE__ */ new Set();\n\treturn e.filter((e) => t.has(e.id) ? !1 : (t.add(e.id), !0));\n}\nfunction P(e) {\n\treturn e && typeof e == \"object\" && !Array.isArray(e) ? e : null;\n}\nfunction Ht(e) {\n\treturn Array.isArray(e) ? e : [];\n}\nfunction F(e, t) {\n\treturn typeof e == \"string\" && t.includes(e) ? e : void 0;\n}\nfunction Ut(e) {\n\treturn typeof e == \"boolean\" ? e : void 0;\n}\nfunction Wt(e) {\n\treturn typeof e == \"number\" && Number.isFinite(e) ? e : void 0;\n}\nfunction I(e, t) {\n\tlet n = P(e);\n\tif (n) for (let e of t) {\n\t\tlet t = n[e];\n\t\tif (typeof t == \"string\" && t.trim()) return t.trim();\n\t}\n}\nfunction L(e) {\n\treturn (Array.isArray(e) ? e : typeof e == \"string\" ? e.split(\",\") : []).map((e) => typeof e == \"string\" ? e.trim() : \"\").filter(Boolean).slice(0, 100);\n}\nfunction Gt(e) {\n\treturn L(e).map(R).filter(Boolean);\n}\nfunction Kt(e) {\n\treturn L(e).map(z).filter(Boolean);\n}\nfunction qt(e) {\n\treturn typeof e == \"string\" && /^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$/.test(e) ? e : void 0;\n}\nfunction R(e) {\n\treturn typeof e == \"string\" ? e.trim().toUpperCase().replace(/[^A-Z0-9-]/g, \"\").slice(0, 8) : \"\";\n}\nfunction z(e) {\n\treturn typeof e == \"string\" ? e.trim().replace(/_/g, \"-\").slice(0, 35) : \"\";\n}\nfunction Jt(e) {\n\tlet t = R(e);\n\treturn /^[A-Z]{3}$/.test(t) ? t : void 0;\n}\nfunction Yt(e) {\n\treturn typeof e == \"string\" ? e.trim().toLowerCase().replace(/^https?:\\/\\//, \"\").replace(/\\/.*$/, \"\").slice(0, 253) : \"\";\n}\nfunction Xt(e) {\n\tlet t = typeof e == \"string\" ? e.trim() : \"\";\n\treturn t ? `/${t.replace(/^\\/+|\\/+$/g, \"\")}` : \"\";\n}\n//#endregion\n//#region src/storefront/paymentMethods.ts\nvar Zt = {\n\tcard: !1,\n\tcrypto: !1,\n\tcredits: !1,\n\tlocalMethods: []\n};\nfunction Qt(e) {\n\tlet t = $t(e);\n\treturn {\n\t\tcard: B(t, [\"card\", \"stripe\"]),\n\t\tcrypto: B(t, [\"crypto\", \"x402\"]),\n\t\tcredits: B(t, [\"credits\"]),\n\t\tlocalMethods: tn(e, t)\n\t};\n}\nfunction $t(e) {\n\tlet t = G(e);\n\tif (!t) return {};\n\tfor (let e of [\"paymentMethods\", \"methods\"]) {\n\t\tlet n = G(t[e]);\n\t\tif (n) return n;\n\t}\n\treturn t;\n}\nfunction B(e, t) {\n\tfor (let n of t) {\n\t\tlet t = V(e[n]);\n\t\tif (t !== void 0) return t;\n\t}\n\treturn !1;\n}\nfunction V(e) {\n\tif (typeof e == \"boolean\") return e;\n\tif (typeof e == \"string\") return en(e);\n\tlet t = G(e);\n\tif (t) {\n\t\tfor (let e of [\n\t\t\t\"enabled\",\n\t\t\t\"available\",\n\t\t\t\"configured\",\n\t\t\t\"eligible\"\n\t\t]) {\n\t\t\tlet n = V(t[e]);\n\t\t\tif (n !== void 0) return n;\n\t\t}\n\t\treturn V(t.status);\n\t}\n}\nfunction en(e) {\n\tlet t = e.trim().toLowerCase();\n\tif ([\n\t\t\"true\",\n\t\t\"enabled\",\n\t\t\"available\",\n\t\t\"active\",\n\t\t\"eligible\"\n\t].includes(t)) return !0;\n\tif ([\n\t\t\"false\",\n\t\t\"disabled\",\n\t\t\"unavailable\",\n\t\t\"inactive\",\n\t\t\"ineligible\"\n\t].includes(t)) return !1;\n}\nfunction tn(e, t) {\n\tlet n = [], r = /* @__PURE__ */ new Set(), i = G(e)?.paymentMethods;\n\treturn H(n, r, Array.isArray(i) ? i : void 0), H(n, r, t.localMethods), H(n, r, t.local), H(n, r, t.methods), n;\n}\nfunction H(e, t, n, r) {\n\tif (Array.isArray(n)) {\n\t\tn.forEach((n) => U(e, t, n));\n\t\treturn;\n\t}\n\tlet i = G(n);\n\ti && r ? U(e, t, i, r) : i ? Object.entries(i).forEach(([n, r]) => U(e, t, r, n)) : n !== void 0 && U(e, t, n, r);\n}\nfunction U(e, t, n, r) {\n\tlet i = nn(n, r);\n\t!i || t.has(i.id) || (t.add(i.id), e.push(i));\n}\nfunction nn(e, t) {\n\tlet n = rn(e, t);\n\treturn !n || sn(n) || !cn(n) || !an(e) ? null : {\n\t\tid: n,\n\t\tlabel: W(e, [\n\t\t\t\"label\",\n\t\t\t\"name\",\n\t\t\t\"displayName\"\n\t\t]) ?? on(n),\n\t\tdescription: W(e, [\"description\"]),\n\t\tctaLabel: W(e, [\"ctaLabel\", \"cta_label\"])\n\t};\n}\nfunction rn(e, t) {\n\tif (typeof e == \"string\") return e.trim();\n\tlet n = G(e);\n\treturn (typeof n?.id == \"string\" ? n.id : t)?.trim() || null;\n}\nfunction an(e) {\n\treturn typeof e == \"boolean\" ? e : V(e) ?? !0;\n}\nfunction W(e, t) {\n\tlet n = G(e);\n\tif (n) for (let e of t) {\n\t\tlet t = n[e];\n\t\tif (typeof t == \"string\" && t.trim()) return t.trim();\n\t}\n}\nfunction on(e) {\n\treturn e.split(/[-_.]/).filter(Boolean).map((e) => `${e[0]?.toUpperCase() ?? \"\"}${e.slice(1)}`).join(\" \");\n}\nfunction sn(e) {\n\treturn [\n\t\t\"card\",\n\t\t\"stripe\",\n\t\t\"crypto\",\n\t\t\"x402\",\n\t\t\"credits\"\n\t].includes(e);\n}\nfunction cn(e) {\n\treturn /^[A-Za-z0-9][A-Za-z0-9_.:-]{0,63}$/.test(e);\n}\nfunction G(e) {\n\treturn e && typeof e == \"object\" && !Array.isArray(e) ? e : null;\n}\n//#endregion\n//#region src/storefront/settings.ts\nvar ln = {\n\tmin: 0,\n\tmax: 12\n}, un = {\n\tmin: 5,\n\tmax: 60\n}, dn = [\n\t\"most_recent\",\n\t\"by_category\",\n\t\"manual\",\n\t\"ai_curated\"\n], fn = [\n\t\"large\",\n\t\"square\",\n\t\"compact\"\n], pn = [\n\t\"center\",\n\t\"top\",\n\t\"bottom\",\n\t\"left\",\n\t\"right\"\n], K = {\n\tenabled: !0,\n\trelatedProducts: {\n\t\tmode: \"most_recent\",\n\t\tmaxItems: 4,\n\t\tlayout: {\n\t\t\tlayout: \"large\",\n\t\t\timageCrop: \"center\"\n\t\t}\n\t},\n\tcatalog: {\n\t\tfilters: {\n\t\t\ttags: !0,\n\t\t\tpriceRange: !0,\n\t\t\tinStock: !0\n\t\t},\n\t\tsort: {\n\t\t\tfeatured: !0,\n\t\t\tpriceAsc: !0,\n\t\t\tpriceDesc: !0\n\t\t}\n\t},\n\tcheckout: { guestCheckout: !0 },\n\tsubscriptions: { successPath: xt },\n\tshopLayout: {\n\t\tlayout: \"large\",\n\t\timageCrop: \"center\"\n\t},\n\tcategoryLayout: {\n\t\tlayout: \"large\",\n\t\timageCrop: \"center\"\n\t},\n\tsections: {\n\t\tshowDescription: !0,\n\t\tshowSpecs: !0,\n\t\tshowRelatedProducts: !0\n\t},\n\tinventory: {\n\t\tpreCheckoutVerification: !0,\n\t\tholdsEnabled: !1,\n\t\tholdDurationMinutes: 15\n\t},\n\tshopPage: {\n\t\ttitle: \"\",\n\t\tdescription: \"\"\n\t},\n\tmerchandising: {\n\t\tcollections: [],\n\t\tbundles: []\n\t},\n\tmarkets: N\n};\nfunction mn(e) {\n\tlet t = Q(e), n = Q(t?.relatedProducts), r = Q(t?.catalog), i = Q(r?.filters), a = Q(r?.sort), o = Q(t?.checkout), s = Q(t?.sections), c = Q(t?.inventory), l = Q(t?.shopPage), u = X(c?.holdsEnabled, K.inventory.holdsEnabled);\n\treturn {\n\t\tenabled: X(t?.enabled, K.enabled),\n\t\trelatedProducts: {\n\t\t\tmode: Y(n?.mode, dn, K.relatedProducts.mode),\n\t\t\tmaxItems: gn(n?.maxItems, ln, K.relatedProducts.maxItems),\n\t\t\tlayout: q(n?.layout, K.relatedProducts.layout)\n\t\t},\n\t\tcatalog: {\n\t\t\tfilters: {\n\t\t\t\ttags: X(i?.tags, K.catalog.filters.tags),\n\t\t\t\tpriceRange: X(i?.priceRange, K.catalog.filters.priceRange),\n\t\t\t\tinStock: X(i?.inStock, K.catalog.filters.inStock)\n\t\t\t},\n\t\t\tsort: {\n\t\t\t\tfeatured: X(a?.featured, K.catalog.sort.featured),\n\t\t\t\tpriceAsc: X(a?.priceAsc, K.catalog.sort.priceAsc),\n\t\t\t\tpriceDesc: X(a?.priceDesc, K.catalog.sort.priceDesc)\n\t\t\t}\n\t\t},\n\t\tcheckout: { guestCheckout: X(o?.guestCheckout, K.checkout.guestCheckout) },\n\t\tsubscriptions: { successPath: A(Q(t?.subscriptions)?.successPath) ?? K.subscriptions.successPath },\n\t\tshopLayout: q(t?.shopLayout, K.shopLayout),\n\t\tcategoryLayout: q(t?.categoryLayout, K.categoryLayout),\n\t\tsections: {\n\t\t\tshowDescription: X(s?.showDescription, K.sections.showDescription),\n\t\t\tshowSpecs: X(s?.showSpecs, K.sections.showSpecs),\n\t\t\tshowRelatedProducts: X(s?.showRelatedProducts, K.sections.showRelatedProducts)\n\t\t},\n\t\tinventory: {\n\t\t\tpreCheckoutVerification: X(c?.preCheckoutVerification, K.inventory.preCheckoutVerification),\n\t\t\tholdsEnabled: u,\n\t\t\tholdDurationMinutes: hn(c?.holdDurationMinutes, u)\n\t\t},\n\t\tshopPage: {\n\t\t\ttitle: Dn(l?.title, K.shopPage.title),\n\t\t\tdescription: Dn(l?.description, K.shopPage.description)\n\t\t},\n\t\tmerchandising: _n(t?.merchandising),\n\t\tmarkets: Dt(t?.markets)\n\t};\n}\nfunction q(e, t) {\n\tlet n = Q(e);\n\treturn {\n\t\tlayout: Y(n?.layout, fn, t.layout),\n\t\timageCrop: Y(n?.imageCrop, pn, t.imageCrop)\n\t};\n}\nfunction hn(e, t) {\n\treturn e === 0 && !t ? 0 : gn(e, un, K.inventory.holdDurationMinutes);\n}\nfunction gn(e, t, n) {\n\treturn typeof e == \"number\" && Number.isInteger(e) && e >= t.min && e <= t.max ? e : n;\n}\nfunction _n(e) {\n\tlet t = Q(e);\n\treturn {\n\t\tcollections: vn(Array.isArray(t?.collections) ? t.collections.map(Sn).filter(yn) : []),\n\t\tbundles: vn(Array.isArray(t?.bundles) ? t.bundles.map(Tn).filter(bn) : [])\n\t};\n}\nfunction vn(e) {\n\tlet t = /* @__PURE__ */ new Set();\n\treturn e.map((e) => {\n\t\tif (!t.has(e.handle)) return t.add(e.handle), e;\n\t\tlet n = e.handle;\n\t\tfor (let r = 2; r < 1e4 && t.has(n); r += 1) n = `${e.handle}-${r}`;\n\t\treturn t.add(n), {\n\t\t\t...e,\n\t\t\thandle: n\n\t\t};\n\t});\n}\nfunction yn(e) {\n\treturn !!e;\n}\nfunction bn(e) {\n\treturn !!e;\n}\nvar xn = [\n\t\"category\",\n\t\"tag\",\n\t\"search\",\n\t\"manual\"\n];\nfunction Sn(e) {\n\tlet t = Q(e), n = Z(t, [\"id\"]);\n\tif (!n) return null;\n\tlet r = Z(t, [\n\t\t\"title\",\n\t\t\"label\",\n\t\t\"name\"\n\t]) ?? n;\n\treturn {\n\t\tid: n,\n\t\ttitle: r,\n\t\thandle: Z(t, [\"handle\", \"slug\"]) ?? On(r),\n\t\tdescription: Z(t, [\"description\"]) ?? \"\",\n\t\trules: Cn(t),\n\t\tsort: J(t?.sort, [\n\t\t\t\"featured\",\n\t\t\t\"priceAsc\",\n\t\t\t\"priceDesc\"\n\t\t]) ?? \"featured\",\n\t\tvisible: X(t?.visible, !0),\n\t\tfeatured: X(t?.featured, !1)\n\t};\n}\nfunction Cn(e) {\n\tif (Array.isArray(e?.rules)) return e.rules.map(wn).filter((e) => e !== null);\n\tlet t = J(e?.ruleType, xn) ?? \"tag\";\n\treturn [{\n\t\ttype: t,\n\t\tvalue: t === \"manual\" ? \"\" : Z(e, [\n\t\t\t\"ruleValue\",\n\t\t\t\"query\",\n\t\t\t\"categorySlug\",\n\t\t\t\"tag\"\n\t\t]) ?? \"\"\n\t}];\n}\nfunction wn(e) {\n\tlet t = Q(e), n = J(t?.type ?? t?.ruleType, xn);\n\treturn n ? {\n\t\ttype: n,\n\t\tvalue: n === \"manual\" ? \"\" : Z(t, [\n\t\t\t\"value\",\n\t\t\t\"ruleValue\",\n\t\t\t\"query\"\n\t\t]) ?? \"\"\n\t} : null;\n}\nfunction Tn(e) {\n\tlet t = Q(e), n = Z(t, [\"id\"]);\n\tif (!n) return null;\n\tlet r = Z(t, [\n\t\t\"title\",\n\t\t\"label\",\n\t\t\"name\"\n\t]) ?? n;\n\treturn {\n\t\tid: n,\n\t\ttitle: r,\n\t\thandle: Z(t, [\"handle\", \"slug\"]) ?? On(r),\n\t\tdescription: Z(t, [\"description\"]) ?? \"\",\n\t\tproductIds: En(t?.productIds),\n\t\tvisible: X(t?.visible, !0),\n\t\tfeatured: X(t?.featured, !1)\n\t};\n}\nfunction En(e) {\n\treturn (Array.isArray(e) ? e : typeof e == \"string\" ? e.split(\",\") : []).map((e) => typeof e == \"string\" ? e.trim() : \"\").filter(Boolean);\n}\nfunction J(e, t) {\n\treturn typeof e == \"string\" && t.includes(e) ? e : void 0;\n}\nfunction Y(e, t, n) {\n\treturn J(e, t) ?? n;\n}\nfunction X(e, t) {\n\treturn typeof e == \"boolean\" ? e : t;\n}\nfunction Dn(e, t) {\n\treturn typeof e == \"string\" ? e : t;\n}\nfunction On(e) {\n\treturn e.trim().toLowerCase().replace(/[^a-z0-9-]+/g, \"-\").replace(/^-+|-+$/g, \"\") || \"untitled\";\n}\nfunction Z(e, t) {\n\tlet n = Q(e);\n\tif (n) for (let e of t) {\n\t\tlet t = n[e];\n\t\tif (typeof t == \"string\" && t.trim()) return t.trim();\n\t}\n}\nfunction Q(e) {\n\treturn e && typeof e == \"object\" && !Array.isArray(e) ? e : null;\n}\n//#endregion\n//#region src/extension/styleInjection.ts\nvar $ = /* @__PURE__ */ new Set();\nfunction kn(e, t) {\n\tif (!t || typeof document > \"u\" || $.has(e) || document.getElementById(e)) return;\n\tlet n = document.createElement(\"style\");\n\tn.id = e, n.dataset.cebbwf5ExtensionId = \"cedros-shop\", n.textContent = t, document.head.appendChild(n), $.add(e);\n}\n//#endregion\nexport { o as $, Ue as A, ne as B, m as C, _e as Ct, qe as D, u as Dt, Ve as E, ge as Et, de as F, c as G, fe as H, ae as I, Ee as J, ke as K, pe as L, ze as M, ce as N, d as O, ue as P, Ce as Q, le as R, ct as S, r as St, We as T, me as Tt, oe as U, ie as V, se as W, Te as X, we as Y, Se as Z, dt as _, Oe as _t, Zt as a, i as at, C as b, ye as bt, Dt as c, e as ct, At as d, te as dt, ee as et, Ot as f, l as ft, wt as g, je as gt, Ct as h, Ne as ht, mn as i, be as it, He as j, Be as k, kt as l, t as lt, A as m, Fe as mt, K as n, Ae as nt, Qt as o, Le as ot, Tt as p, Pe as pt, n as q, _n as r, s as rt, N as s, Ie as st, kn as t, Me as tt, jt as u, xe as ut, b as v, De as vt, f as w, he as wt, ft as x, ve as xt, w as y, a as yt, re as z };\n","imports":[],"hasUnsupportedDynamicImports":false},{"path":"workspace/react/dist/web/register.js","kind":"module","text":"import { $ as e, Ct as t, Dt as n, G as r, M as i, Q as a, X as o, Y as ee, Z as s, bt as c, ft as l, gt as u, ht as d, it as te, mt as ne, ot as re, pt as f, q as p, rt as m, st as h, t as g, tt as _, ut as v, yt as y } from \"../styleInjection-BL155Khs.js\";\nimport { At as b, Ft as x, Lt as S, Mt as C, Rt as w, a as T, c as E, i as D, l as O, n as k, o as A, s as j, t as M, zt as N } from \"../SubscriptionTemplate-YH27IgYR.js\";\nimport { Fragment as P, jsx as F } from \"react/jsx-runtime\";\nvar I = { en: {\n\tfields: {\n\t\tdisplayName: h,\n\t\tdescription: re\n\t},\n\tdependencies: {\n\t\t\"extension:cedros-login\": { reason: \"Admin identity and session context must come from the official Cedros Login extension or host service.\" },\n\t\t\"extension:cedros-pay\": { reason: \"Shop catalog reads, checkout, shipping, tax, subscriptions, order-settlement handoffs, and pay-now recovery depend on Cedros Pay or its host-provided equivalent.\" },\n\t\t\"capability:cedros-pay:product-read\": { reason: \"Storefront category and product pages read active public catalog records from Cedros Pay via GET /extensions/cedros-pay/products/v1/catalog.\" },\n\t\t\"capability:cedros-pay:checkout\": { reason: \"Checkout requires the canonical Cedros Pay 3 durable quote, checkout, recovery, and verified-return contract.\" },\n\t\t\"capability:cedros-pay:versioned-cart-write-v1\": { reason: \"Web and native carts require Pay-owned opaque generations, conditional versions, and durable mutation replay.\" },\n\t\t\"capability:cedros-data:extension-storage-cas-v1\": { reason: \"Storefront settings require host-atomic revision comparison, canonical and mirror writes, and durable idempotency replay.\" }\n\t},\n\tadminModules: { [p]: { displayName: \"Cedros Shop admin\" } },\n\tcontentBlocks: {\n\t\t\"cedros-shop:shop-surface\": {\n\t\t\tdisplayName: \"Shop Surface\",\n\t\t\tdescription: \"Renders the storefront shop catalog surface.\"\n\t\t},\n\t\t\"cedros-shop:category-surface\": {\n\t\t\tdisplayName: \"Category Surface\",\n\t\t\tdescription: \"Renders a storefront category listing by category slug.\"\n\t\t},\n\t\t\"cedros-shop:product-surface\": {\n\t\t\tdisplayName: \"Product Surface\",\n\t\t\tdescription: \"Renders a storefront product detail page by product slug.\"\n\t\t},\n\t\t\"cedros-shop:cart-surface\": {\n\t\t\tdisplayName: \"Cart Surface\",\n\t\t\tdescription: \"Renders the storefront cart page.\"\n\t\t},\n\t\t\"cedros-shop:checkout-surface\": {\n\t\t\tdisplayName: \"Checkout Surface\",\n\t\t\tdescription: \"Renders the host-coordinated checkout entry page.\"\n\t\t},\n\t\t\"cedros-shop:account-surface\": {\n\t\t\tdisplayName: \"Account Surface\",\n\t\t\tdescription: \"Renders authenticated customer profile, addresses, saved checkout details, and support links.\"\n\t\t},\n\t\t\"cedros-shop:purchase-history-surface\": {\n\t\t\tdisplayName: \"Purchase History Surface\",\n\t\t\tdescription: \"Renders authenticated customer purchase history.\"\n\t\t},\n\t\t\"cedros-shop:subscription-surface\": {\n\t\t\tdisplayName: \"Subscription Surface\",\n\t\t\tdescription: \"Renders subscription tiers, Pay checkout, and signed-in lifecycle management.\"\n\t\t}\n\t},\n\tcontentTemplates: {\n\t\t\"cedros-shop:shop-page-template\": {\n\t\t\tdisplayName: \"Shop Page\",\n\t\t\tdescription: \"Owner-editable shop landing page template.\"\n\t\t},\n\t\t\"cedros-shop:category-page-template\": {\n\t\t\tdisplayName: \"Category Page\",\n\t\t\tdescription: \"Owner-editable category listing page template.\"\n\t\t},\n\t\t\"cedros-shop:product-page-template\": {\n\t\t\tdisplayName: \"Product Page\",\n\t\t\tdescription: \"Owner-editable product detail page template.\"\n\t\t},\n\t\t\"cedros-shop:cart-page-template\": {\n\t\t\tdisplayName: \"Cart Page\",\n\t\t\tdescription: \"Owner-editable cart page template.\"\n\t\t},\n\t\t\"cedros-shop:checkout-page-template\": {\n\t\t\tdisplayName: \"Checkout Page\",\n\t\t\tdescription: \"Owner-editable checkout entry page template.\"\n\t\t},\n\t\t\"cedros-shop:account-page-template\": {\n\t\t\tdisplayName: \"Account Page\",\n\t\t\tdescription: \"Owner-editable customer account page template.\"\n\t\t},\n\t\t\"cedros-shop:purchase-history-page-template\": {\n\t\t\tdisplayName: \"Purchase History Page\",\n\t\t\tdescription: \"Owner-editable purchase history page template.\"\n\t\t},\n\t\t\"cedros-shop:subscription-page-template\": {\n\t\t\tdisplayName: \"Subscription Page\",\n\t\t\tdescription: \"Owner-editable subscription page template.\"\n\t\t}\n\t},\n\tpageSeeds: {\n\t\t[y]: {\n\t\t\tdisplayName: \"Shop Page\",\n\t\t\ttitle: \"Shop\",\n\t\t\tdescription: \"Products are coming soon.\"\n\t\t},\n\t\t[e]: {\n\t\t\tdisplayName: \"Cart Page\",\n\t\t\ttitle: \"Cart\",\n\t\t\tdescription: \"Review the items in your cart before checkout.\"\n\t\t},\n\t\t[m]: {\n\t\t\tdisplayName: \"Checkout Page\",\n\t\t\ttitle: \"Checkout\",\n\t\t\tdescription: \"Securely complete your purchase.\"\n\t\t},\n\t\t[r]: {\n\t\t\tdisplayName: \"Account Page\",\n\t\t\ttitle: \"Account\",\n\t\t\tdescription: \"Manage your profile, addresses, saved checkout details, and support links.\"\n\t\t},\n\t\t[l]: {\n\t\t\tdisplayName: \"Purchase History Page\",\n\t\t\ttitle: \"Purchase history\",\n\t\t\tdescription: \"View your past orders and receipts.\"\n\t\t},\n\t\t[n]: {\n\t\t\tdisplayName: \"Subscription Page\",\n\t\t\ttitle: \"Subscriptions\",\n\t\t\tdescription: \"Choose a plan and manage eligible subscription actions.\"\n\t\t}\n\t},\n\tauthoredSurfaces: { \"cedros-shop:storefront-pages\": {\n\t\tdisplayName: \"Storefront Pages\",\n\t\tdescription: \"Owner-editable storefront page templates for shop, cart, checkout, account, history, and subscriptions.\",\n\t\teyebrow: \"Shop\"\n\t} },\n\tauthoredTemplateUtilities: { \"cedros-shop:storefront-starter-set\": {\n\t\tdisplayName: \"Storefront Starter Set\",\n\t\tdescription: \"Adds the standard Cedros Shop page templates.\"\n\t} },\n\tonboardingPages: { \"cedros-shop:onboarding-storefront\": {\n\t\tdisplayName: \"Review storefront settings\",\n\t\tdescription: \"Configure storefront display, Cedros Pay catalog reads, checkout handoff, inventory display, Markets controls, and public page expectations before launch.\"\n\t} },\n\tsetupSeeds: {\n\t\t[u]: {\n\t\t\tdisplayName: \"Setup Blocked Notification\",\n\t\t\ttitle: \"Cedros Shop setup blocked\",\n\t\t\tdescription: \"Team notification route for missing dependencies or launch-blocking setup issues.\",\n\t\t\tsubjectTemplate: \"Cedros Shop setup is blocked\",\n\t\t\tbodyTemplate: \"Cedros Shop setup is blocked by missing dependencies or invalid configuration. Review the Shop storefront settings before making the shop public.\"\n\t\t},\n\t\t[_]: {\n\t\t\tdisplayName: \"Checkout Handoff Failed Notification\",\n\t\t\ttitle: \"Cedros Shop checkout handoff failed\",\n\t\t\tdescription: \"Team notification route for checkout handoff failures before Cedros Pay takes over.\",\n\t\t\tsubjectTemplate: \"Cedros Shop checkout handoff failed\",\n\t\t\tbodyTemplate: \"Cedros Shop could not complete a checkout handoff. Review Cedros Pay availability and shop checkout configuration.\"\n\t\t}\n\t},\n\tpwaShortcuts: {\n\t\t[d]: {\n\t\t\tname: \"Shop\",\n\t\t\tshortName: \"Shop\",\n\t\t\tdescription: \"Open the shop catalog.\"\n\t\t},\n\t\t[f]: {\n\t\t\tname: \"Cart\",\n\t\t\tshortName: \"Cart\",\n\t\t\tdescription: \"Open the cart review page.\"\n\t\t},\n\t\t[ne]: {\n\t\t\tname: \"Purchase history\",\n\t\t\tshortName: \"Purchases\",\n\t\t\tdescription: \"See your past orders and receipts. Sign-in required.\"\n\t\t}\n\t},\n\tanalyticsEvents: {\n\t\t\"cedros-shop:product-viewed\": {\n\t\t\tdisplayName: \"Product Viewed\",\n\t\t\tdescription: \"Counts product detail views so owners can compare product interest.\"\n\t\t},\n\t\t\"cedros-shop:add-to-cart\": {\n\t\t\tdisplayName: \"Add To Cart\",\n\t\t\tdescription: \"Counts storefront cart additions so owners can identify product conversion interest.\"\n\t\t},\n\t\t\"cedros-shop:checkout-started\": {\n\t\t\tdisplayName: \"Checkout Started\",\n\t\t\tdescription: \"Counts checkout attempts before Cedros Pay handoff so owners can monitor checkout intent.\"\n\t\t},\n\t\t\"cedros-shop:subscription-checkout-started\": {\n\t\t\tdisplayName: \"Subscription Checkout Started\",\n\t\t\tdescription: \"Counts subscription checkout attempts so owners can monitor subscription interest.\"\n\t\t},\n\t\t\"cedros-shop:cart-opened\": {\n\t\t\tdisplayName: \"Cart Opened\",\n\t\t\tdescription: \"Counts cart drawer opens so owners can monitor shopping cart interest.\"\n\t\t},\n\t\t\"cedros-shop:admin-section-saved\": {\n\t\t\tdisplayName: \"Admin Section Saved\",\n\t\t\tdescription: \"Counts successful owner configuration saves by admin section.\"\n\t\t},\n\t\t\"cedros-shop:collection-viewed\": {\n\t\t\tdisplayName: \"Collection Viewed\",\n\t\t\tdescription: \"Counts shop and category listing views so owners can see which collections draw traffic.\"\n\t\t},\n\t\t\"cedros-shop:catalog-searched\": {\n\t\t\tdisplayName: \"Catalog Searched\",\n\t\t\tdescription: \"Counts catalog search, sort, and filter refinements so owners can see how visitors browse.\"\n\t\t},\n\t\t\"cedros-shop:quick-view-opened\": {\n\t\t\tdisplayName: \"Quick View Opened\",\n\t\t\tdescription: \"Counts product quick-view opens from listing grids so owners can gauge product interest.\"\n\t\t},\n\t\t\"cedros-shop:cart-viewed\": {\n\t\t\tdisplayName: \"Cart Viewed\",\n\t\t\tdescription: \"Counts cart page views so owners can monitor cart engagement before checkout.\"\n\t\t},\n\t\t\"cedros-shop:remove-from-cart\": {\n\t\t\tdisplayName: \"Remove From Cart\",\n\t\t\tdescription: \"Counts cart line removals so owners can monitor cart drop-off.\"\n\t\t}\n\t},\n\tcapabilities: {\n\t\t[c]: {\n\t\t\tdisplayName: \"Storefront Management\",\n\t\t\tdescription: \"Manage storefront settings, Markets controls, and layouts.\"\n\t\t},\n\t\t[te]: {\n\t\t\tdisplayName: \"Commerce analytics\",\n\t\t\tdescription: \"Read aggregate storefront reports, abandoned-checkout recovery queues, and payment-event health from host analytics and Cedros Pay.\"\n\t\t},\n\t\t[v]: {\n\t\t\tdisplayName: \"Shop Observability\",\n\t\t\tdescription: \"Records storefront analytics, configuration changes, and checkout handoff issues. No customer personal data is included.\"\n\t\t}\n\t},\n\tproviderAccess: { [s]: {\n\t\tdisplayName: \"Agentic Commerce Provider\",\n\t\tdescription: \"Legacy compatibility grant retained without a guest provider call. Agentic commerce execution uses the declared AI routes and host-validated bearer capabilities.\"\n\t} },\n\taiSkills: { [a]: {\n\t\tname: \"Agentic Commerce\",\n\t\tdescription: \"Expose structured product cards and checkout handoff intent for AI shopping channels.\",\n\t\tdocsMarkdown: \"Use this skill when an authenticated host AI channel needs machine-readable product data or a buyer-safe checkout intent. Cedros Shop normalizes storefront-safe payloads only; Cedros Pay remains source of truth for catalog reads, quote, checkout, orders, discounts, shipping, tax, subscriptions, and payment execution.\"\n\t} },\n\taiCapabilities: {\n\t\t[ee]: {\n\t\t\tname: \"Export Agentic Catalog Cards\",\n\t\t\tdescription: \"Normalize storefront-safe product snapshots into structured product cards and schema.org Product data for AI channel discovery.\"\n\t\t},\n\t\t[o]: {\n\t\t\tname: \"Prepare Agentic Checkout Intent\",\n\t\t\tdescription: \"Prepare a buyer-safe cart handoff intent for chat checkout without creating payment state or duplicating Cedros Pay quote/checkout policy.\"\n\t\t}\n\t},\n\tdatabaseAccess: { [t]: {\n\t\tdisplayName: \"Storefront Settings Database\",\n\t\tdescription: \"Reads and writes extension-owned storefront display, catalog, checkout, inventory, merchandising, and Markets settings.\"\n\t} }\n} }.en, L = \"cedros-shop:storefront-pages\", R = {\n\tid: \"main\",\n\tlabel: \"Main\",\n\torder: 0\n}, z = [\n\t{\n\t\tid: \"cedros-shop:shop-page-template\",\n\t\tblockType: \"cedros-shop:shop-surface\",\n\t\torder: 10\n\t},\n\t{\n\t\tid: \"cedros-shop:category-page-template\",\n\t\tblockType: \"cedros-shop:category-surface\",\n\t\torder: 20\n\t},\n\t{\n\t\tid: \"cedros-shop:product-page-template\",\n\t\tblockType: \"cedros-shop:product-surface\",\n\t\torder: 30\n\t},\n\t{\n\t\tid: \"cedros-shop:cart-page-template\",\n\t\tblockType: \"cedros-shop:cart-surface\",\n\t\torder: 40\n\t},\n\t{\n\t\tid: \"cedros-shop:checkout-page-template\",\n\t\tblockType: \"cedros-shop:checkout-surface\",\n\t\torder: 50\n\t},\n\t{\n\t\tid: \"cedros-shop:account-page-template\",\n\t\tblockType: \"cedros-shop:account-surface\",\n\t\torder: 60\n\t},\n\t{\n\t\tid: \"cedros-shop:purchase-history-page-template\",\n\t\tblockType: \"cedros-shop:purchase-history-surface\",\n\t\torder: 70,\n\t\tprops: { requireSignedIn: !0 }\n\t},\n\t{\n\t\tid: \"cedros-shop:subscription-page-template\",\n\t\tblockType: \"cedros-shop:subscription-surface\",\n\t\torder: 80\n\t}\n];\nfunction B({ id: e, blockType: t, order: n, props: r = {} }) {\n\tlet i = I.contentTemplates[e];\n\treturn {\n\t\tid: e,\n\t\tdisplayName: i.displayName,\n\t\tdescription: i.description,\n\t\torder: n,\n\t\tcontentTypes: [\"page\"],\n\t\tsurfaceId: L,\n\t\tzones: [R],\n\t\tblocks: [{\n\t\t\ttype: t,\n\t\t\tzoneId: R.id,\n\t\t\tprops: r\n\t\t}]\n\t};\n}\nvar V = z.map((e) => ({\n\tmanifest: B(e),\n\tblock: {\n\t\ttype: e.blockType,\n\t\tzoneId: R.id,\n\t\tprops: e.props ?? {}\n\t}\n}));\nV.map(({ manifest: e }) => e);\n//#endregion\n//#region src/content/visual-builder.tsx\nvar H = I, U = (e) => H.contentBlocks[e].displayName, W = {\n\tadapter: {\n\t\tlistProducts: async (e) => ({\n\t\t\titems: [],\n\t\t\tpage: e.page ?? 1,\n\t\t\tpageSize: e.pageSize ?? 24,\n\t\t\ttotal: 0,\n\t\t\thasNextPage: !1\n\t\t}),\n\t\tgetProductBySlug: async () => null,\n\t\tgetProductsByIds: async () => /* @__PURE__ */ new Map(),\n\t\tlistCategories: async () => [],\n\t\tgetOrderHistory: async () => [],\n\t\tcreateCheckoutSession: async () => ({\n\t\t\tkind: \"custom\",\n\t\t\tdata: { status: \"unavailable\" }\n\t\t}),\n\t\tlistSubscriptionTiers: async () => [],\n\t\tgetPaymentMethodsConfig: async () => null\n\t},\n\tbrand: { name: \"Shop\" },\n\tcurrency: \"USD\",\n\tcheckout: {\n\t\tmode: \"minimal\",\n\t\tallowPromoCodes: !0,\n\t\tallowShipping: !1,\n\t\tallowTaxDisplay: !1\n\t}\n};\nfunction G(e) {\n\treturn e.props ?? e;\n}\nfunction K({ children: e }) {\n\tlet t = w(), n = C();\n\treturn t && n ? /* @__PURE__ */ F(P, { children: e }) : t ? /* @__PURE__ */ F(b, { children: e }) : /* @__PURE__ */ F(x, {\n\t\tconfig: W,\n\t\tchildren: /* @__PURE__ */ F(b, { children: e })\n\t});\n}\nfunction q({ fieldKey: e }) {\n\tlet { t } = S();\n\treturn /* @__PURE__ */ F(\"div\", {\n\t\tclassName: \"cedros-shop-public cedros-shop-public__state\",\n\t\trole: \"status\",\n\t\tchildren: t(\"storefront.builder.missingParam\", { field: t(e) })\n\t});\n}\nfunction J() {\n\treturn /* @__PURE__ */ F(K, { children: /* @__PURE__ */ F(E, {}) });\n}\nfunction Y(e) {\n\tlet t = G(e);\n\treturn t.categorySlug ? /* @__PURE__ */ F(K, { children: /* @__PURE__ */ F(j, { categorySlug: t.categorySlug }) }) : /* @__PURE__ */ F(q, { fieldKey: \"storefront.builder.field.category\" });\n}\nfunction X(e) {\n\tlet t = G(e);\n\treturn t.productSlug ? /* @__PURE__ */ F(K, { children: /* @__PURE__ */ F(A, { slug: t.productSlug }) }) : /* @__PURE__ */ F(q, { fieldKey: \"storefront.builder.field.product\" });\n}\nfunction ie() {\n\treturn /* @__PURE__ */ F(K, { children: /* @__PURE__ */ F(O, {}) });\n}\nfunction ae() {\n\treturn /* @__PURE__ */ F(K, { children: /* @__PURE__ */ F(T, {}) });\n}\nfunction oe() {\n\treturn /* @__PURE__ */ F(K, { children: /* @__PURE__ */ F(D, {}) });\n}\nfunction se(e) {\n\treturn /* @__PURE__ */ F(K, { children: /* @__PURE__ */ F(k, { requireSignedIn: G(e).requireSignedIn ?? !0 }) });\n}\nfunction ce() {\n\treturn /* @__PURE__ */ F(K, { children: /* @__PURE__ */ F(M, {}) });\n}\nvar Z = \"commerce\", Q = R;\nfunction $(e, t) {\n\treturn {\n\t\ttype: e,\n\t\tdisplayName: U(e),\n\t\tcategory: Z,\n\t\tComponent: t\n\t};\n}\nfunction le({ manifest: e, block: t }) {\n\treturn {\n\t\t...e,\n\t\tlabel: e.displayName,\n\t\tzones: [Q],\n\t\tblocks: [{\n\t\t\t...t,\n\t\t\tzoneId: Q.id,\n\t\t\tprops: t.props ?? {}\n\t\t}]\n\t};\n}\nvar ue = [\n\t$(\"cedros-shop:shop-surface\", J),\n\t$(\"cedros-shop:category-surface\", Y),\n\t$(\"cedros-shop:product-surface\", X),\n\t$(\"cedros-shop:cart-surface\", ie),\n\t$(\"cedros-shop:checkout-surface\", ae),\n\t$(\"cedros-shop:account-surface\", oe),\n\t$(\"cedros-shop:purchase-history-surface\", se),\n\t$(\"cedros-shop:subscription-surface\", ce)\n], de = [...V.map(le)];\n//#endregion\n//#region src/web/register.ts\ng(\"cedros-shop-public-styles\", N);\nvar fe = {\n\tmanifest: i,\n\tcontentBlocks: ue,\n\tcontentTemplates: de\n};\nfunction pe() {\n\treturn fe;\n}\n//#endregion\nexport { pe as registerCedrosWebSurface };\n","imports":[{"dynamic":false,"end":256,"specifier":"../styleInjection-BL155Khs.js","start":227},{"dynamic":false,"end":428,"specifier":"../SubscriptionTemplate-YH27IgYR.js","start":393},{"dynamic":false,"end":489,"specifier":"react/jsx-runtime","start":472}],"hasUnsupportedDynamicImports":false}]}