@pure-ds/core 0.6.4 → 0.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pds-manager.d.ts","sourceRoot":"","sources":["../../../../../public/assets/js/pds-manager.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pds-manager.d.ts","sourceRoot":"","sources":["../../../../../public/assets/js/pds-manager.js"],"names":[],"mappings":"AAo8TA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA3hME;;;WAGG;;;QAgCH;;;;;;WAMG;;;;;QA8EH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAugHH;;;WAGG;;;;;;QAwrBH;;WAEG;;;;;;;;QAoFH;;;;;;WAMG;;;;;;QAsKH;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoqDJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pds-generator.d.ts","sourceRoot":"","sources":["../../../../../src/js/pds-core/pds-generator.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pds-generator.d.ts","sourceRoot":"","sources":["../../../../../src/js/pds-core/pds-generator.js"],"names":[],"mappings":"AAwoKA;;;;;;;;;GASG;AACH,8CALW,MAAM,YAEd;IAAyB,WAAW,GAA5B,MAAM;CACd,GAAU;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC;QAAC,IAAI,EAAC,MAAM,CAAC;QAAC,OAAO,EAAC,MAAM,CAAC;QAAC,KAAK,EAAC,MAAM,CAAC;QAAC,GAAG,EAAC,MAAM,CAAC;QAAC,OAAO,CAAC,EAAC,MAAM,CAAA;KAAC,CAAC,CAAA;CAAE,CAyIpH;AAED;;;;;;;GAOG;AACH,0CAJW,KAAK,CAAC,MAAM,CAAC,YACb,MAAM,GACJ;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,KAAK,CAAC;YAAC,IAAI,EAAC,MAAM,CAAC;YAAC,OAAO,EAAC,MAAM,CAAC;YAAC,KAAK,EAAC,MAAM,CAAC;YAAC,GAAG,EAAC,MAAM,CAAC;YAAC,OAAO,CAAC,EAAC,MAAM,CAAA;SAAC,CAAC,CAAA;KAAE,CAAC,CAAA;CAAE,CAkGpK;AAj4KD;;;GAGG;AACH;IAEE,mCAAiB;IAEjB,2BAEC;IAOD,0BA6CC;IA5CC;;MAIC;IAaD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAmC;IA6BrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAiCC;IA8eD;;;;OAIG;IACH,kDAyBC;IA+ED;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA6DC;IAm3GD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEC;IAGD,oBAEC;IA8wBD,qBAEC;IACD,yBAEC;IACD,yBAEC;IACD,wBAEC;IACD,yBAMC;IAED;;;;;;OAMG;IACH,oBA6JC;IAGD,4BAEC;IACD,gCAEC;IACD,gCAEC;IACD,+BAEC;IAmBD;;;OAGG;IACH;;;;;;MAoBC;;CAkBF"}
|
package/package.json
CHANGED
package/public/assets/js/app.js
CHANGED
|
@@ -29,7 +29,7 @@ var Ke=Object.defineProperty;var Ze=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ee=(e,t)=>{
|
|
|
29
29
|
</footer>
|
|
30
30
|
</form>
|
|
31
31
|
`;let u=i.querySelector("#msg-container");re(u,e)}i.addEventListener("click",u=>{u.target.closest('button[value="cancel"]')&&(i.close(),n(!1))});let o=()=>{let u=i.querySelector("form");u?u.addEventListener("submit",p=>{p.preventDefault();let d;t.useForm&&p.submitter.value==="ok"?(console.log("Found form:",u),console.log("Form elements:",u?Array.from(u.elements):"no form"),d=new FormData(u),console.log("FormData entries:",Array.from(d.entries()))):d=p.submitter.value==="ok",i.close(),n(d)}):requestAnimationFrame(o)};o(),i.addEventListener("close",()=>{setTimeout(()=>i.remove(),200)}),document.body.appendChild(i),typeof t.rendered=="function"&&t.rendered(i),i.showModal()})}async function Je(){let e=document.querySelector("pds-toaster");return e||(e=document.createElement("pds-toaster"),document.body.appendChild(e),await customElements.whenDefined("pds-toaster")),e}async function M(e,t={}){return(await Je()).toast(e,t)}M.success=async function(e,t={}){return M(e,{...t,type:"success"})};M.error=async function(e,t={}){return M(e,{...t,type:"error"})};M.warning=async function(e,t={}){return M(e,{...t,type:"warning"})};M.info=async function(e,t={}){return M(e,{...t,type:"information"})};var Ye=[{selector:".accordion"},{selector:"nav[data-dropdown]"},{selector:"label[data-toggle]"},{selector:'input[type="range"]'},{selector:"form[data-required]"},{selector:"fieldset[role=group][data-open]"},{selector:"[data-clip]"},{selector:"button, a[class*='btn-']"}];function Xe(e){e.dataset.enhancedAccordion||(e.dataset.enhancedAccordion="true",e.addEventListener("toggle",t=>{t.target.open&&t.target.parentElement===e&&e.querySelectorAll(":scope > details[open]").forEach(s=>{s!==t.target&&(s.open=!1)})},!0))}function et(e){if(e.dataset.enhancedDropdown)return;e.dataset.enhancedDropdown="true";let t=e.lastElementChild;if(!t)return;let s=e.querySelector("[data-dropdown-toggle]")||e.querySelector("button");s&&!s.hasAttribute("type")&&s.setAttribute("type","button"),t.id||(t.id=`dropdown-${Math.random().toString(36).slice(2,9)}`),t.tagName?.toLowerCase()==="menu"&&!t.hasAttribute("role")&&t.setAttribute("role","menu"),t.hasAttribute("aria-hidden")||t.setAttribute("aria-hidden","true"),s&&(s.setAttribute("aria-haspopup","true"),s.setAttribute("aria-controls",t.id),s.setAttribute("aria-expanded","false"));let i=()=>{let a=(e.getAttribute("data-direction")||e.getAttribute("data-dropdown-direction")||e.getAttribute("data-mode")||"auto").toLowerCase();if(a==="up"||a==="down")return a;let c=e.getBoundingClientRect(),f=t?.getBoundingClientRect?.()||{height:0},h=Math.max(t?.offsetHeight||0,t?.scrollHeight||0,f.height||0,200),k=Math.max(0,window.innerHeight-c.bottom),S=Math.max(0,c.top);return k>=h?"down":S>=h||S>k?"up":"down"},r=()=>{let a=(e.getAttribute("data-align")||e.getAttribute("data-dropdown-align")||"auto").toLowerCase();if(a==="left"||a==="right"||a==="start"||a==="end")return a==="start"?"left":a==="end"?"right":a;let c=e.getBoundingClientRect(),f=t?.getBoundingClientRect?.()||{width:0},h=Math.max(t?.offsetWidth||0,t?.scrollWidth||0,f.width||0,240),k=Math.max(0,window.innerWidth-c.left),S=Math.max(0,c.right);return k>=h?"left":S>=h||S>k?"right":"left"},o=null,u=()=>{e.dataset.dropdownDirection=i(),e.dataset.dropdownAlign=r(),t.setAttribute("aria-hidden","false"),s?.setAttribute("aria-expanded","true"),o||(o=a=>{(a.composedPath?a.composedPath():[a.target]).some(h=>h===e)||p()},setTimeout(()=>{document.addEventListener("click",o)},0))},p=()=>{t.setAttribute("aria-hidden","true"),s?.setAttribute("aria-expanded","false"),o&&(document.removeEventListener("click",o),o=null)},d=()=>{t.getAttribute("aria-hidden")==="false"?p():u()};s?.addEventListener("click",a=>{a.preventDefault(),a.stopPropagation(),d()}),e.addEventListener("keydown",a=>{a.key==="Escape"&&(p(),s?.focus())}),e.addEventListener("focusout",a=>{a.relatedTarget&&((a.composedPath?a.composedPath():[a.relatedTarget]).some(h=>h===e)||p())})}function tt(e){if(e.dataset.enhancedToggle)return;e.dataset.enhancedToggle="true";let t=e.querySelector('input[type="checkbox"]');if(!t)return;e.hasAttribute("tabindex")||e.setAttribute("tabindex","0"),e.setAttribute("role","switch"),e.setAttribute("aria-checked",t.checked?"true":"false");let s=document.createElement("span");s.className="toggle-switch",s.setAttribute("role","presentation"),s.setAttribute("aria-hidden","true");let n=document.createElement("span");n.className="toggle-knob",s.appendChild(n),e.insertBefore(s,t.nextSibling);let i=()=>{e.setAttribute("aria-checked",t.checked?"true":"false")},r=()=>{t.disabled||(t.checked=!t.checked,i(),t.dispatchEvent(new Event("change",{bubbles:!0})))};e.addEventListener("click",o=>{o.preventDefault(),r()}),e.addEventListener("keydown",o=>{(o.key===" "||o.key==="Enter")&&(o.preventDefault(),r())}),t.addEventListener("change",i)}function st(e){if(e.dataset.enhancedRange)return;let t=e.closest("label"),s=t?.classList.contains("range-output"),n=e.id||`range-${Math.random().toString(36).substring(2,11)}`,i=`${n}-output`;if(e.id=n,s){let r=t.querySelector("span");if(r&&!r.classList.contains("range-output-wrapper")){let o=document.createElement("span");o.className="range-output-wrapper",o.style.display="flex",o.style.justifyContent="space-between",o.style.alignItems="center";let u=document.createElement("span");u.textContent=r.textContent,o.appendChild(u);let p=document.createElement("output");p.id=i,p.setAttribute("for",n),p.style.color="var(--surface-text-secondary, var(--color-text-secondary))",p.style.fontSize="0.875rem",p.textContent=e.value,o.appendChild(p),r.textContent="",r.appendChild(o);let d=()=>{p.textContent=e.value};e.addEventListener("input",d)}}else{let r=e.closest(".range-container");r||(r=document.createElement("div"),r.className="range-container",e.parentNode?.insertBefore(r,e),r.appendChild(e)),r.style.position="relative";let o=document.createElement("output");o.id=i,o.setAttribute("for",n),o.className="range-bubble",o.setAttribute("aria-live","polite"),r.appendChild(o);let u=()=>{let a=parseFloat(e.min)||0,c=parseFloat(e.max)||100,f=parseFloat(e.value),h=(f-a)/(c-a);o.style.left=`calc(${h*100}% )`,o.textContent=String(f)},p=()=>o.classList.add("visible"),d=()=>o.classList.remove("visible");e.addEventListener("input",u),e.addEventListener("pointerdown",p),e.addEventListener("pointerup",d),e.addEventListener("pointerleave",d),e.addEventListener("focus",p),e.addEventListener("blur",d),u()}e.dataset.enhancedRange="1"}function nt(e){if(e.dataset.enhancedRequired)return;e.dataset.enhancedRequired="true";let t=s=>{let n;if(s.closest("[role$=group]")?n=s.closest("[role$=group]").querySelector("legend"):n=s.closest("label"),!n||n.querySelector(".required-asterisk"))return;let i=document.createElement("span");i.classList.add("required-asterisk"),i.textContent="*",i.style.marginLeft="4px";let r=n.querySelector("span, [data-label]");if(r)r.appendChild(i);else{let u=n.querySelector("input, select, textarea");u?n.insertBefore(i,u):n.appendChild(i)}let o=s.closest("form");if(o&&!o.querySelector(".required-legend")){let u=document.createElement("small");u.classList.add("required-legend"),u.textContent="* Required fields",o.insertBefore(u,o.querySelector(".form-actions")||o.lastElementChild)}};e.querySelectorAll("[required]").forEach(s=>{t(s)})}function rt(e){if(e.dataset.enhancedOpenGroup)return;e.dataset.enhancedOpenGroup="true",e.classList.add("flex","flex-wrap","buttons");let t=document.createElement("input");t.type="text",t.placeholder="Add item...",t.classList.add("input-text","input-sm"),t.style.width="auto";let s=e.querySelector('input[type="radio"], input[type="checkbox"]');e.appendChild(t),t.addEventListener("keydown",n=>{if(n.key==="Enter"||n.key==="Tab"){let i=t.value.trim();if(i){n.preventDefault();let r=s.type==="radio"?"radio":"checkbox",o=`open-group-${Math.random().toString(36).substring(2,11)}`,u=document.createElement("label"),p=document.createElement("span");p.setAttribute("data-label",""),p.textContent=i;let d=document.createElement("input");d.type=r,d.name=s.name||e.getAttribute("data-name")||"open-group",d.value=i,d.id=o,u.appendChild(p),u.appendChild(d),e.insertBefore(u,t),t.value=""}}else if(n.key==="Backspace"&&t.value===""){n.preventDefault();let i=e.querySelectorAll("label");i.length>0&&i[i.length-1].remove()}})}function it(e){if(e.dataset.enhancedClip)return;e.dataset.enhancedClip="true",e.hasAttribute("tabindex")||e.setAttribute("tabindex","0"),e.hasAttribute("role")||e.setAttribute("role","button");let t=()=>{let n=e.getAttribute("data-clip-open")==="true";e.setAttribute("aria-expanded",n?"true":"false")},s=()=>{let n=e.getAttribute("data-clip-open")==="true";e.setAttribute("data-clip-open",n?"false":"true"),t()};e.addEventListener("click",n=>{n.defaultPrevented||s()}),e.addEventListener("keydown",n=>{(n.key===" "||n.key==="Enter")&&(n.preventDefault(),s())}),t()}function ot(e){if(e.dataset.enhancedBtnWorking)return;e.dataset.enhancedBtnWorking="true";let t=null,s=!1;new MutationObserver(i=>{i.forEach(r=>{if(r.attributeName==="class"){let o=e.classList.contains("btn-working"),u=e.querySelector("pds-icon");if(o)if(u)t||(t=u.getAttribute("icon")),u.setAttribute("icon","circle-notch");else{let p=document.createElement("pds-icon");p.setAttribute("icon","circle-notch"),p.setAttribute("size","sm"),e.insertBefore(p,e.firstChild),s=!0}else r.oldValue?.includes("btn-working")&&u&&(s?(u.remove(),s=!1):t&&(u.setAttribute("icon",t),t=null))}})}).observe(e,{attributes:!0,attributeFilter:["class"],attributeOldValue:!0})}var at=new Map([[".accordion",Xe],["nav[data-dropdown]",et],["label[data-toggle]",tt],['input[type="range"]',st],["form[data-required]",nt],["fieldset[role=group][data-open]",rt],["[data-clip]",it],["button, a[class*='btn-']",ot]]),ie=Ye.map(e=>({...e,run:at.get(e.selector)||(()=>{})}));var ze="pds",ct=/^([a-z][a-z0-9+\-.]*:)?\/\//i,Pe=/^[a-z]:/i;function H(e=""){return e.endsWith("/")?e:`${e}/`}function lt(e="",t=ze){let s=e.replace(/\/+$/,"");return new RegExp(`(?:^|/)${t}$`,"i").test(s)?s:`${s}/${t}`}function dt(e){return e.replace(/^\.\/+/,"")}function ut(e){return Pe.test(e)?e.replace(Pe,"").replace(/^\/+/,""):e}function pt(e){return e.startsWith("public/")?e.substring(7):e}function oe(e,t={}){let s=t.segment||ze,n=t.defaultRoot||`/assets/${s}/`,i=e?.public&&e.public?.root||e?.static&&e.static?.root||null;if(!i||typeof i!="string")return H(n);let r=i.trim();return r?(r=r.replace(/\\/g,"/"),r=lt(r,s),r=H(r),ct.test(r)?r:(r=dt(r),r=ut(r),r.startsWith("/")||(r=pt(r),r.startsWith("/")||(r=`/${r}`),r=r.replace(/\/+/g,(o,u)=>u===0?o:"/")),H(r))):H(n)}var j="any",le={type:"object",allowUnknown:!1,properties:{id:{type:"string"},name:{type:"string"},tags:{type:"array",items:{type:"string"}},description:{type:"string"},options:{type:"object",allowUnknown:!0},form:{type:"object",allowUnknown:!0},colors:{type:"object",allowUnknown:!1,properties:{primary:{type:"string",relations:{tokens:["--color-primary-*","--color-primary-fill","--color-primary-text","--background-mesh-*"]}},secondary:{type:"string",relations:{tokens:["--color-secondary-*","--color-gray-*","--background-mesh-*"]}},accent:{type:"string",relations:{tokens:["--color-accent-*","--background-mesh-*"]}},background:{type:"string",relations:{tokens:["--color-surface-*","--color-surface-translucent-*","--surface-*-bg","--surface-*-text","--surface-*-text-secondary","--surface-*-text-muted","--surface-*-icon","--surface-*-icon-subtle","--surface-*-shadow","--surface-*-border"]}},success:{type:["string","null"],relations:{tokens:["--color-success-*"]}},warning:{type:["string","null"],relations:{tokens:["--color-warning-*"]}},danger:{type:["string","null"],relations:{tokens:["--color-danger-*"]}},info:{type:["string","null"],relations:{tokens:["--color-info-*"]}},gradientStops:{type:"number"},elevationOpacity:{type:"number",relations:{tokens:["--surface-*-shadow"]}},darkMode:{type:"object",allowUnknown:!0,properties:{background:{type:"string",relations:{theme:"dark",tokens:["--color-surface-*","--color-surface-translucent-*","--surface-*-bg","--surface-*-text","--surface-*-text-secondary","--surface-*-text-muted","--surface-*-icon","--surface-*-icon-subtle","--surface-*-shadow","--surface-*-border"]}},primary:{type:"string",relations:{theme:"dark",tokens:["--color-primary-*","--color-primary-fill","--color-primary-text"]}},secondary:{type:"string",relations:{theme:"dark",tokens:["--color-secondary-*","--color-gray-*"]}},accent:{type:"string",relations:{theme:"dark",tokens:["--color-accent-*"]}}}}}},typography:{type:"object",allowUnknown:!1,properties:{fontFamilyHeadings:{type:"string",relations:{tokens:["--font-family-headings"]}},fontFamilyBody:{type:"string",relations:{tokens:["--font-family-body"]}},fontFamilyMono:{type:"string",relations:{tokens:["--font-family-mono"]}},baseFontSize:{type:"number",relations:{tokens:["--font-size-*"]}},fontScale:{type:"number",relations:{tokens:["--font-size-*"]}},fontWeightLight:{type:["string","number"],relations:{tokens:["--font-weight-light"]}},fontWeightNormal:{type:["string","number"],relations:{tokens:["--font-weight-normal"]}},fontWeightMedium:{type:["string","number"],relations:{tokens:["--font-weight-medium"]}},fontWeightSemibold:{type:["string","number"],relations:{tokens:["--font-weight-semibold"]}},fontWeightBold:{type:["string","number"],relations:{tokens:["--font-weight-bold"]}},lineHeightTight:{type:["string","number"],relations:{tokens:["--font-line-height-tight"]}},lineHeightNormal:{type:["string","number"],relations:{tokens:["--font-line-height-normal"]}},lineHeightRelaxed:{type:["string","number"],relations:{tokens:["--font-line-height-relaxed"]}},letterSpacingTight:{type:"number"},letterSpacingNormal:{type:"number"},letterSpacingWide:{type:"number"}}},spatialRhythm:{type:"object",allowUnknown:!1,properties:{baseUnit:{type:"number",relations:{tokens:["--spacing-*"]}},scaleRatio:{type:"number"},maxSpacingSteps:{type:"number",relations:{tokens:["--spacing-*"]}},containerMaxWidth:{type:["number","string"]},containerPadding:{type:"number"},inputPadding:{type:"number",relations:{rules:[{selectors:["input","textarea","select"],properties:["padding"]}]}},buttonPadding:{type:"number",relations:{rules:[{selectors:["button",".btn"],properties:["padding"]}]}},sectionSpacing:{type:"number",relations:{rules:[{selectors:["section"],properties:["margin","padding"]}]}}}},shape:{type:"object",allowUnknown:!1,properties:{radiusSize:{type:["string","number"],relations:{tokens:["--radius-*"]}},customRadius:{type:["string","number","null"]},borderWidth:{type:["string","number"],relations:{tokens:["--border-width-*"]}}}},behavior:{type:"object",allowUnknown:!1,properties:{transitionSpeed:{type:["string","number"],relations:{tokens:["--transition-*"]}},animationEasing:{type:"string"},customTransitionSpeed:{type:["number","null"]},customEasing:{type:["string","null"]},focusRingWidth:{type:"number",relations:{rules:[{selectors:[":focus-visible"],properties:["outline-width","box-shadow"]}]}},focusRingOpacity:{type:"number",relations:{rules:[{selectors:[":focus-visible"],properties:["box-shadow","outline-color"]}]}},hoverOpacity:{type:"number"}}},layout:{type:"object",allowUnknown:!1,properties:{maxWidth:{type:["number","string"],relations:{tokens:["--layout-max-width","--layout-max-width-*"]}},maxWidths:{type:"object",allowUnknown:!1,properties:{sm:{type:["number","string"],relations:{tokens:["--layout-max-width-sm"]}},md:{type:["number","string"],relations:{tokens:["--layout-max-width-md"]}},lg:{type:["number","string"],relations:{tokens:["--layout-max-width-lg"]}},xl:{type:["number","string"],relations:{tokens:["--layout-max-width-xl"]}}}},containerPadding:{type:["number","string"],relations:{tokens:["--layout-container-padding"]}},breakpoints:{type:"object",allowUnknown:!1,properties:{sm:{type:"number"},md:{type:"number"},lg:{type:"number"},xl:{type:"number"}}},gridColumns:{type:"number"},gridGutter:{type:"number"},densityCompact:{type:"number"},densityNormal:{type:"number"},densityComfortable:{type:"number"},buttonMinHeight:{type:"number"},inputMinHeight:{type:"number"},baseShadowOpacity:{type:"number",relations:{tokens:["--shadow-*"]}},darkMode:{type:"object",allowUnknown:!0,properties:{baseShadowOpacity:{type:"number",relations:{theme:"dark",tokens:["--shadow-*"]}}}},utilities:{type:"object",allowUnknown:!0},gridSystem:{type:"object",allowUnknown:!0},containerMaxWidth:{type:["number","string"]}}},layers:{type:"object",allowUnknown:!1,properties:{baseShadowOpacity:{type:"number",relations:{tokens:["--shadow-*"]}},shadowBlurMultiplier:{type:"number",relations:{tokens:["--shadow-*"]}},shadowOffsetMultiplier:{type:"number",relations:{tokens:["--shadow-*"]}},shadowDepth:{type:"string"},blurLight:{type:"number"},blurMedium:{type:"number"},blurHeavy:{type:"number"},baseZIndex:{type:"number",relations:{tokens:["--z-*"]}},zIndexStep:{type:"number",relations:{tokens:["--z-*"]}},zIndexBase:{type:"number"},zIndexDropdown:{type:"number"},zIndexSticky:{type:"number"},zIndexFixed:{type:"number"},zIndexModal:{type:"number"},zIndexPopover:{type:"number"},zIndexTooltip:{type:"number"},zIndexNotification:{type:"number"},darkMode:{type:"object",allowUnknown:!0,properties:{baseShadowOpacity:{type:"number",relations:{theme:"dark",tokens:["--shadow-*"]}}}}}},advanced:{type:"object",allowUnknown:!0},a11y:{type:"object",allowUnknown:!0},icons:{type:"object",allowUnknown:!1,properties:{set:{type:"string"},weight:{type:"string"},defaultSize:{type:"number",relations:{tokens:["--icon-size"]}},sizes:{type:"object",allowUnknown:!0},spritePath:{type:"string"},externalPath:{type:"string"},include:{type:"object",allowUnknown:!0}}},components:{type:"object",allowUnknown:!0},gap:{type:"number"},debug:{type:"boolean"}}},ht={type:"object",allowUnknown:!0,properties:{mode:{type:"string"},preset:{type:"string"},design:le,enhancers:{type:["object","array"]},applyGlobalStyles:{type:"boolean"},manageTheme:{type:"boolean"},themeStorageKey:{type:"string"},preloadStyles:{type:"boolean"},criticalLayers:{type:"array",items:{type:"string"}},autoDefine:{type:"object",allowUnknown:!1,properties:{predefine:{type:"array",items:{type:"string"}},mapper:{type:j},enhancers:{type:["object","array"]},scanExisting:{type:"boolean"},observeShadows:{type:"boolean"},patchAttachShadow:{type:"boolean"},debounceMs:{type:"number"},onError:{type:j},baseURL:{type:"string"}}},managerURL:{type:"string"},manager:{type:j},liveEdit:{type:"boolean"},log:{type:j}}};function ae(e){return e===null?"null":Array.isArray(e)?"array":typeof e}function ft(e,t){if(t===j)return!0;let s=ae(e);return Array.isArray(t)?t.includes(s):s===t}function Z(e,t,s,n){if(!t)return;let i=t.type||j;if(!ft(e,i)){n.push({path:s,expected:i,actual:ae(e),message:`Expected ${i} but got ${ae(e)}`});return}if(i==="array"&&t.items&&Array.isArray(e)&&e.forEach((r,o)=>{Z(r,t.items,`${s}[${o}]`,n)}),i==="object"&&e&&typeof e=="object"){let r=t.properties||{};for(let[o,u]of Object.entries(e)){if(!Object.prototype.hasOwnProperty.call(r,o)){t.allowUnknown||n.push({path:`${s}.${o}`,expected:"known property",actual:"unknown",message:`Unknown property "${o}"`});continue}Z(u,r[o],`${s}.${o}`,n)}}}function ce(e,t="",s={}){if(!e||typeof e!="object")return s;if(e.relations&&t&&(s[t]=e.relations),e.type==="object"&&e.properties&&Object.entries(e.properties).forEach(([n,i])=>{let r=t?`${t}.${n}`:n;ce(i,r,s)}),e.type==="array"&&e.items){let n=`${t}[]`;ce(e.items,n,s)}return s}var Nt=ce(le,"");function de(e,{log:t,context:s="PDS config"}={}){if(!e||typeof e!="object")return[];let n=[];return Z(e,le,"design",n),n.length&&typeof t=="function"&&n.forEach(i=>{t("warn",`[${s}] ${i.message} at ${i.path}`)}),n}function Ue(e,{log:t,context:s="PDS config"}={}){if(!e||typeof e!="object")return[];let n=[];return Z(e,ht,"config",n),n.length&&typeof t=="function"&&n.forEach(i=>{t("warn",`[${s}] ${i.message} at ${i.path}`)}),n}var mt={"ocean-breeze":{id:"ocean-breeze",name:"Ocean Breeze",tags:["playful"],description:"Fresh and calming ocean-inspired palette with professional undertones",options:{liquidGlassEffects:!0,backgroundMesh:3},colors:{primary:"#0891b2",secondary:"#64748b",accent:"#06b6d4",background:"#f0f9ff",darkMode:{background:"#0c1821",secondary:"#94a3b8",primary:"#0891b2"}},typography:{baseFontSize:17,fontScale:1.5,fontFamilyHeadings:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif',fontFamilyBody:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif'},spatialRhythm:{baseUnit:6,scaleRatio:1.2},shape:{radiusSize:l.RadiusSizes.xxlarge}},"midnight-steel":{id:"midnight-steel",name:"Midnight Steel",description:"Bold industrial aesthetic with sharp contrasts and urban edge",colors:{primary:"#3b82f6",secondary:"#52525b",accent:"#f59e0b",background:"#fafaf9",darkMode:{background:"#18181b",secondary:"#71717a",primary:"#3b82f6"}},typography:{baseFontSize:16,fontScale:1.333,fontFamilyHeadings:"'IBM Plex Sans', system-ui, -apple-system, sans-serif",fontFamilyBody:"'Inter', system-ui, -apple-system, sans-serif",fontWeightSemibold:600},spatialRhythm:{baseUnit:4,scaleRatio:1.25},shape:{radiusSize:l.RadiusSizes.small,borderWidth:l.BorderWidths.thin}},"neural-glow":{id:"neural-glow",name:"Neural Glow",description:"AI-inspired with vibrant purple-blue gradients and futuristic vibes",colors:{primary:"#8b5cf6",secondary:"#6366f1",accent:"#ec4899",background:"#faf5ff",darkMode:{background:"#0f0a1a",secondary:"#818cf8",primary:"#8b5cf6"}},typography:{baseFontSize:16,fontScale:1.618,fontFamilyHeadings:"'Space Grotesk', system-ui, sans-serif",fontFamilyBody:"'Space Grotesk', system-ui, sans-serif"},spatialRhythm:{baseUnit:4,scaleRatio:1.5},shape:{radiusSize:l.RadiusSizes.xlarge,borderWidth:l.BorderWidths.medium},behavior:{transitionSpeed:l.TransitionSpeeds.fast}},"paper-and-ink":{id:"paper-and-ink",name:"Paper & Ink",tags:["app","featured"],themes:["light"],description:"Ultra-minimal design with focus on typography and whitespace",colors:{primary:"#171717",secondary:"#737373",accent:"#525252",background:"#ffffff",darkMode:{background:"#0a0a0a",secondary:"#a3a3a3",primary:"#737373"}},typography:{baseFontSize:18,fontScale:1.333,fontFamilyHeadings:"'Helvetica Neue', 'Arial', sans-serif",fontFamilyBody:"'Georgia', 'Times New Roman', serif",fontWeightNormal:400,fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.2},shape:{radiusSize:l.RadiusSizes.none,borderWidth:l.BorderWidths.thin}},"sunset-paradise":{id:"sunset-paradise",name:"Sunset Paradise",description:"Warm tropical colors evoking golden hour by the beach",options:{liquidGlassEffects:!0,backgroundMesh:2},colors:{primary:"#ea580c",secondary:"#d4a373",accent:"#fb923c",background:"#fffbeb",darkMode:{background:"#1a0f0a",secondary:"#c9a482",primary:"#f97316"}},typography:{baseFontSize:16,fontScale:1.5,fontFamilyHeadings:"'Quicksand', 'Comfortaa', sans-serif",fontFamilyBody:"'Quicksand', 'Comfortaa', sans-serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.5},shape:{radiusSize:l.RadiusSizes.xxlarge,borderWidth:l.BorderWidths.medium}},"retro-wave":{id:"retro-wave",name:"Retro Wave",description:"Nostalgic 80s-inspired palette with neon undertones",colors:{primary:"#c026d3",secondary:"#a78bfa",accent:"#22d3ee",background:"#fef3ff",darkMode:{background:"#1a0a1f",secondary:"#c4b5fd",primary:"#d946ef"}},typography:{baseFontSize:15,fontScale:1.5,fontFamilyHeadings:"'Orbitron', 'Impact', monospace",fontFamilyBody:"'Courier New', 'Courier', monospace",fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.25},shape:{radiusSize:l.RadiusSizes.none,borderWidth:l.BorderWidths.thick},behavior:{transitionSpeed:l.TransitionSpeeds.instant}},"forest-canopy":{id:"forest-canopy",name:"Forest Canopy",description:"Natural earth tones with organic, calming green hues",colors:{primary:"#059669",secondary:"#78716c",accent:"#84cc16",background:"#f0fdf4",darkMode:{background:"#0a1410",secondary:"#a8a29e",primary:"#10b981"}},typography:{baseFontSize:16,fontScale:1.414,fontFamilyHeadings:"'Merriweather Sans', 'Arial', sans-serif",fontFamilyBody:"'Merriweather', 'Georgia', serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.3},shape:{radiusSize:l.RadiusSizes.medium,borderWidth:l.BorderWidths.thin}},"ruby-elegance":{id:"ruby-elegance",name:"Ruby Elegance",description:"Sophisticated palette with rich ruby reds and warm accents",colors:{primary:"#dc2626",secondary:"#9ca3af",accent:"#be123c",background:"#fef2f2",darkMode:{background:"#1b0808",secondary:"#d1d5db",primary:"#ef4444"}},typography:{baseFontSize:17,fontScale:1.5,fontFamilyHeadings:"'Playfair Display', 'Georgia', serif",fontFamilyBody:"'Crimson Text', 'Garamond', serif",fontWeightNormal:400,fontWeightSemibold:600},spatialRhythm:{baseUnit:4,scaleRatio:1.333},shape:{radiusSize:l.RadiusSizes.small,borderWidth:l.BorderWidths.thin}},"desert-dawn":{id:"desert-dawn",name:"Desert Dawn",description:"Sun-baked neutrals with grounded terracotta and cool oasis accents",colors:{primary:"#b45309",secondary:"#a8a29e",accent:"#0ea5a8",background:"#fcf6ef",darkMode:{background:"#12100e",secondary:"#d1d5db",primary:"#f59e0b"}},typography:{baseFontSize:16,fontScale:1.414,fontFamilyHeadings:"'Source Sans Pro', system-ui, -apple-system, sans-serif",fontFamilyBody:"'Source Serif Pro', Georgia, serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.3},shape:{radiusSize:l.RadiusSizes.medium,borderWidth:l.BorderWidths.medium}},"contrast-pro":{id:"contrast-pro",name:"Contrast Pro",description:"Accessibility-first, high-contrast UI with assertive clarity",colors:{primary:"#1f2937",secondary:"#111827",accent:"#eab308",background:"#ffffff",darkMode:{background:"#0b0f14",secondary:"#9ca3af",primary:"#9ca3af"}},typography:{baseFontSize:17,fontScale:1.2,fontFamilyHeadings:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontFamilyBody:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontWeightBold:700},spatialRhythm:{baseUnit:3,scaleRatio:1.2},shape:{radiusSize:l.RadiusSizes.small,borderWidth:l.BorderWidths.thick},behavior:{transitionSpeed:l.TransitionSpeeds.fast,focusRingWidth:4}},"pastel-play":{id:"pastel-play",name:"Pastel Play",themes:["light"],description:"Playful pastels with soft surfaces and friendly rounded shapes",colors:{primary:"#db2777",secondary:"#a78bfa",accent:"#34d399",background:"#fff7fa",darkMode:{background:"#1a1016",secondary:"#c4b5fd",primary:"#ec4899"}},typography:{baseFontSize:16,fontScale:1.333,fontFamilyHeadings:"'Nunito', system-ui, -apple-system, sans-serif",fontFamilyBody:"'Nunito', system-ui, -apple-system, sans-serif",lineHeightRelaxed:l.LineHeights.relaxed},spatialRhythm:{baseUnit:6,scaleRatio:1.4},shape:{radiusSize:l.RadiusSizes.xxlarge,borderWidth:l.BorderWidths.thin},behavior:{transitionSpeed:l.TransitionSpeeds.slow,animationEasing:l.AnimationEasings["ease-out"]}},"brutalist-tech":{id:"brutalist-tech",name:"Brutalist Tech",description:"Stark grayscale with engineered accents and unapologetically bold structure",colors:{primary:"#111111",secondary:"#4b5563",accent:"#06b6d4",background:"#f8fafc",darkMode:{background:"#0c0c0c",secondary:"#9ca3af",primary:"#06b6d4"}},typography:{baseFontSize:15,fontScale:1.25,fontFamilyHeadings:"'JetBrains Mono', ui-monospace, Menlo, Consolas, monospace",fontFamilyBody:"'Inter', system-ui, -apple-system, sans-serif",letterSpacingTight:-.02},spatialRhythm:{baseUnit:4,scaleRatio:1.25},shape:{radiusSize:l.RadiusSizes.none,borderWidth:l.BorderWidths.thick},behavior:{transitionSpeed:l.TransitionSpeeds.instant}},"zen-garden":{id:"zen-garden",name:"Zen Garden",description:"Soft botanicals with contemplative spacing and balanced motion",colors:{primary:"#3f6212",secondary:"#6b7280",accent:"#7c3aed",background:"#f7fbef",darkMode:{background:"#0d130a",secondary:"#a3a3a3",primary:"#84cc16"}},typography:{baseFontSize:17,fontScale:1.414,fontFamilyHeadings:"'Merriweather', Georgia, serif",fontFamilyBody:"'Noto Sans', system-ui, -apple-system, sans-serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.35},shape:{radiusSize:l.RadiusSizes.large,borderWidth:l.BorderWidths.medium},behavior:{transitionSpeed:l.TransitionSpeeds.normal,animationEasing:l.AnimationEasings.ease}},"fitness-pro":{id:"fitness-pro",name:"Fitness Pro",tags:["app","featured"],description:"Health and fitness tracking aesthetic with data-driven dark surfaces and vibrant accent rings",options:{liquidGlassEffects:!0,backgroundMesh:2},colors:{primary:"#e91e63",secondary:"#78909c",accent:"#ab47bc",background:"#fafafa",darkMode:{background:"#1a1d21",secondary:"#78909c",primary:"#0a4ca4"}},typography:{baseFontSize:15,fontScale:1.25,fontFamilyHeadings:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightNormal:l.LineHeights.tight},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerPadding:1.25,sectionSpacing:2.5},shape:{radiusSize:l.RadiusSizes.large,borderWidth:l.BorderWidths.thin},layers:{shadowDepth:"medium",blurMedium:12},behavior:{transitionSpeed:l.TransitionSpeeds.fast,animationEasing:l.AnimationEasings["ease-out"],focusRingWidth:2}},"travel-market":{id:"travel-market",name:"Travel Market",description:"Hospitality marketplace design with clean cards, subtle shadows, and trust-building neutrals",options:{liquidGlassEffects:!0,backgroundMesh:3},colors:{primary:"#d93251",secondary:"#717171",accent:"#144990",background:"#ffffff",darkMode:{background:"#222222",secondary:"#b0b0b0",primary:"#ff5a7a"}},typography:{baseFontSize:16,fontScale:1.2,fontFamilyHeadings:"'Circular', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Circular', system-ui, -apple-system, 'Segoe UI', sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightRelaxed:l.LineHeights.relaxed},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerMaxWidth:1440,containerPadding:1.5,sectionSpacing:3},shape:{radiusSize:l.RadiusSizes.medium,borderWidth:l.BorderWidths.thin},layers:{shadowDepth:"light",blurLight:8},behavior:{transitionSpeed:l.TransitionSpeeds.normal,animationEasing:l.AnimationEasings["ease-in-out"],hoverOpacity:.9}},"mobility-app":{id:"mobility-app",name:"Mobility App",tags:["app","featured"],description:"On-demand service platform with bold typography, map-ready colors, and action-driven UI",options:{liquidGlassEffects:!0,backgroundMesh:0},colors:{primary:"#000000",secondary:"#545454",accent:"#06c167",background:"#f6f6f6",darkMode:{background:"#0f0f0f",secondary:"#8a8a8a",primary:"#06c167"}},typography:{baseFontSize:16,fontScale:1.3,fontFamilyHeadings:"'UberMove', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'UberMove', system-ui, -apple-system, 'Segoe UI', sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.25,buttonPadding:1.25,inputPadding:1},shape:{radiusSize:l.RadiusSizes.small,borderWidth:l.BorderWidths.medium},behavior:{transitionSpeed:l.TransitionSpeeds.fast,animationEasing:l.AnimationEasings["ease-out"],focusRingWidth:3},a11y:{minTouchTarget:l.TouchTargetSizes.comfortable,focusStyle:l.FocusStyles.ring}},"fintech-secure":{id:"fintech-secure",name:"Fintech Secure",description:"Financial services app UI with trust-building blues, precise spacing, and security-first design",options:{liquidGlassEffects:!1,backgroundMesh:0},colors:{primary:"#0a2540",secondary:"#425466",accent:"#00d4ff",background:"#f7fafc",darkMode:{background:"#0a1929",secondary:"#8796a5",primary:"#00d4ff"}},typography:{baseFontSize:16,fontScale:1.25,fontFamilyHeadings:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyMono:"'JetBrains Mono', ui-monospace, 'Cascadia Code', monospace",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerMaxWidth:1280,sectionSpacing:2.5},shape:{radiusSize:l.RadiusSizes.medium,borderWidth:l.BorderWidths.thin},layers:{shadowDepth:"light",blurLight:6},behavior:{transitionSpeed:l.TransitionSpeeds.fast,animationEasing:l.AnimationEasings["ease-in-out"],focusRingWidth:3,focusRingOpacity:.4},a11y:{minTouchTarget:l.TouchTargetSizes.standard,focusStyle:l.FocusStyles.ring}},"social-feed":{id:"social-feed",name:"Social Feed",tags:["app","featured"],description:"Content-first social platform with minimal chrome, bold actions, and vibrant media presentation",options:{liquidGlassEffects:!0,backgroundMesh:4},colors:{primary:"#1877f2",secondary:"#65676b",accent:"#fe2c55",background:"#ffffff",darkMode:{background:"#18191a",secondary:"#b0b3b8",primary:"#2d88ff"}},typography:{baseFontSize:15,fontScale:1.2,fontFamilyHeadings:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontFamilyBody:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightNormal:l.LineHeights.relaxed},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerMaxWidth:680,sectionSpacing:1.5},shape:{radiusSize:l.RadiusSizes.medium,borderWidth:l.BorderWidths.thin},behavior:{transitionSpeed:l.TransitionSpeeds.fast,animationEasing:l.AnimationEasings["ease-out"],hoverOpacity:.85}},"enterprise-dash":{id:"enterprise-dash",tags:["app","featured"],name:"Enterprise Dashboard",description:"Data-dense business intelligence app interface with organized hierarchy and professional polish",options:{liquidGlassEffects:!1},colors:{primary:"#0066cc",secondary:"#5f6368",accent:"#1a73e8",background:"#ffffff",success:"#34a853",warning:"#fbbc04",danger:"#ea4335",darkMode:{background:"#202124",secondary:"#9aa0a6",primary:"#8ab4f8"}},typography:{baseFontSize:14,fontScale:1.2,fontFamilyHeadings:"'Roboto', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Roboto', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyMono:"'Roboto Mono', ui-monospace, Consolas, monospace",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightNormal:l.LineHeights.tight},spatialRhythm:{baseUnit:4,scaleRatio:1.2,containerMaxWidth:1600,containerPadding:1.5,sectionSpacing:2},shape:{radiusSize:l.RadiusSizes.small,borderWidth:l.BorderWidths.thin},layers:{shadowDepth:"light",blurLight:4},behavior:{transitionSpeed:l.TransitionSpeeds.fast,animationEasing:l.AnimationEasings["ease-in-out"],focusRingWidth:2},layout:{densityCompact:.85,gridColumns:12}}};mt.default={id:"default",name:"Default",tags:["app","featured"],description:"Fresh and modern design system with balanced aesthetics and usability",options:{liquidGlassEffects:!0,backgroundMesh:4},form:{options:{widgets:{booleans:"toggle",numbers:"input",selects:"standard"},layouts:{fieldsets:"default",arrays:"default"},enhancements:{icons:!0,datalists:!0,rangeOutput:!0},validation:{showErrors:!0,validateOnChange:!1}}},colors:{primary:"#0e7490",secondary:"#a99b95",accent:"#e54271",background:"#e7e6de",darkMode:{background:"#16171a",secondary:"#8b9199",primary:"#06b6d4"},success:null,warning:"#B38600",danger:null,info:null,gradientStops:3,elevationOpacity:.05},typography:{baseFontSize:16,fontScale:1.2,fontFamilyHeadings:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif',fontFamilyBody:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif',fontFamilyMono:'ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace',fontWeightLight:l.FontWeights.light,fontWeightNormal:l.FontWeights.normal,fontWeightMedium:l.FontWeights.medium,fontWeightSemibold:l.FontWeights.semibold,fontWeightBold:l.FontWeights.bold,lineHeightTight:l.LineHeights.tight,lineHeightNormal:l.LineHeights.normal,lineHeightRelaxed:l.LineHeights.relaxed,letterSpacingTight:-.025,letterSpacingNormal:0,letterSpacingWide:.025},spatialRhythm:{baseUnit:4,scaleRatio:1.25,maxSpacingSteps:32,containerMaxWidth:1200,containerPadding:1,inputPadding:.75,buttonPadding:1,sectionSpacing:2},layers:{shadowDepth:"medium",blurLight:4,blurMedium:8,blurHeavy:16,zIndexBase:0,zIndexDropdown:1e3,zIndexSticky:1020,zIndexFixed:1030,zIndexModal:1040,zIndexPopover:1050,zIndexTooltip:1060,zIndexNotification:1070},shape:{radiusSize:l.RadiusSizes.large,borderWidth:l.BorderWidths.medium,customRadius:null},behavior:{transitionSpeed:l.TransitionSpeeds.normal,animationEasing:l.AnimationEasings["ease-out"],customTransitionSpeed:null,customEasing:null,focusRingWidth:3,focusRingOpacity:.3,hoverOpacity:.8},layout:{gridColumns:12,gridGutter:1,baseShadowOpacity:.1,darkMode:{baseShadowOpacity:.25},breakpoints:{sm:640,md:768,lg:1024,xl:1280},densityCompact:.8,densityNormal:1,densityComfortable:1.2,buttonMinHeight:l.TouchTargetSizes.standard,inputMinHeight:40,utilities:{grid:!0,flex:!0,spacing:!0,container:!0},gridSystem:{columns:[1,2,3,4,6],autoFitBreakpoints:{sm:"150px",md:"250px",lg:"350px",xl:"450px"},enableGapUtilities:!0},containerMaxWidth:"1400px",containerPadding:"var(--spacing-6)"},advanced:{linkStyle:l.LinkStyles.inline,colorDerivation:"hsl"},a11y:{minTouchTarget:l.TouchTargetSizes.standard,prefersReducedMotion:!0,focusStyle:l.FocusStyles.ring},icons:{set:"phosphor",weight:"regular",defaultSize:24,externalPath:"/assets/img/icons/",sizes:l.IconSizes,include:{navigation:["arrow-left","arrow-right","arrow-up","arrow-down","arrow-counter-clockwise","caret-left","caret-right","caret-down","caret-up","x","list","list-dashes","dots-three-vertical","dots-three","house","gear","magnifying-glass","funnel","tabs","sidebar"],actions:["plus","minus","check","trash","pencil","floppy-disk","copy","download","upload","share","link","eye","eye-slash","heart","star","bookmark","note-pencil","cursor-click","clipboard","magic-wand","sparkle"],communication:["envelope","bell","bell-ringing","bell-simple","chat-circle","phone","paper-plane-tilt","user","users","user-gear","at"],content:["image","file","file-text","file-css","file-js","folder","folder-open","book-open","camera","video-camera","play","pause","microphone","brackets-curly","code","folder-simple","grid-four","briefcase","chart-line","chart-bar","database","map-pin"],status:["info","warning","check-circle","x-circle","question","shield","shield-check","shield-warning","lock","lock-open","fingerprint","circle-notch"],time:["calendar","clock","timer","hourglass"],commerce:["shopping-cart","credit-card","currency-dollar","tag","receipt","storefront"],formatting:["text-align-left","text-align-center","text-align-right","text-b","text-italic","text-underline","list-bullets","list-numbers","text-aa"],system:["cloud","cloud-arrow-up","cloud-arrow-down","desktop","device-mobile","globe","wifi-high","battery-charging","sun","moon","moon-stars","palette","rocket","feather","square","circle","squares-four","lightning","wrench"]},spritePath:"public/assets/pds/icons/pds-icons.svg"},gap:4,debug:!1};var gt=/^[a-z][a-z0-9+\-.]*:\/\//i,N=(()=>{try{return import.meta.url}catch{return}})(),J=e=>typeof e=="string"&&e.length&&!e.endsWith("/")?`${e}/`:e;function Y(e,t={}){if(!e||gt.test(e))return e;let{preferModule:s=!0}=t,n=()=>{if(!N)return null;try{return new URL(e,N).href}catch{return null}},i=()=>{if(typeof window>"u"||!window.location?.origin)return null;try{return new URL(e,window.location.origin).href}catch{return null}};return(s?n()||i():i()||n())||e}var je=(()=>{if(N)try{let e=new URL(N);if(/\/public\/assets\/js\//.test(e.pathname))return new URL("../pds/",N).href}catch{return}})(),_e=!1;function Be(e){_e||typeof document>"u"||(_e=!0,e.addEventListener("pds:ready",t=>{let s=t.detail?.mode;s&&document.documentElement.classList.add(`pds-${s}`,"pds-ready")}))}function he(e={},t={}){if(!t||typeof t!="object")return e;let s=Array.isArray(e)?[...e]:{...e};for(let[n,i]of Object.entries(t))i&&typeof i=="object"&&!Array.isArray(i)?s[n]=he(s[n]&&typeof s[n]=="object"?s[n]:{},i):s[n]=i;return s}function pe(e=""){return String(e).toLowerCase().replace(/&/g," and ").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}function I(e){if(e==null)return e;if(typeof e=="function")return;if(typeof e!="object")return e;if(Array.isArray(e))return e.map(s=>I(s)).filter(s=>s!==void 0);let t={};for(let s in e)if(e.hasOwnProperty(s)){let n=e[s];if(typeof n!="function"){let i=I(n);i!==void 0&&(t[s]=i)}}return t}function He(e={},t={},{presets:s,defaultLog:n}){let i=e&&typeof e.log=="function"?e.log:n,r=typeof e=="object"&&("colors"in e||"typography"in e||"spatialRhythm"in e||"shape"in e||"behavior"in e||"layout"in e||"advanced"in e||"a11y"in e||"components"in e||"icons"in e),o=e&&e.enhancers;o&&!Array.isArray(o)&&(o=Object.values(o));let u=o??t.enhancers??[],p=e&&e.preset,d=e&&e.design,a=e&&e.icons&&typeof e.icons=="object"?e.icons:null,c="preset"in(e||{})||"design"in(e||{})||"enhancers"in(e||{});e&&typeof e=="object"&&Ue(e,{log:i,context:"PDS.start"});let f,h=null;if(c){d&&typeof d=="object"&&de(d,{log:i,context:"PDS.start"});let k=String(p||"default").toLowerCase(),S=s?.[k]||Object.values(s||{}).find(y=>pe(y.name)===k||String(y.name||"").toLowerCase()===k);if(!S)throw new Error(`PDS preset not found: "${p||"default"}"`);h={id:S.id||pe(S.name),name:S.name||S.id||String(k)};let b=structuredClone(S);if(d&&typeof d=="object"||a){let y=d?I(d):{},g=a?I(a):null,A=g?he(y,{icons:g}):y;b=he(b,structuredClone(A))}let{mode:x,autoDefine:P,applyGlobalStyles:L,manageTheme:T,themeStorageKey:C,preloadStyles:_,criticalLayers:z,managerURL:q,manager:R,preset:D,design:B,enhancers:v,log:U,...m}=e;f={...m,design:b,preset:h.name,log:U||n}}else if(r){de(e,{log:i,context:"PDS.start"});let{log:k,...S}=e;f={design:structuredClone(S),log:k||n}}else{let k=s?.default||Object.values(s||{}).find(S=>pe(S.name)==="default");if(!k)throw new Error("PDS default preset not available");h={id:k.id||"default",name:k.name||"Default"},f={design:structuredClone(k),preset:h.name,log:n}}return{generatorConfig:f,enhancers:u,presetInfo:h}}function Ne({manageTheme:e,themeStorageKey:t,applyResolvedTheme:s,setupSystemListenerIfNeeded:n}){let i="light",r=null;if(e&&typeof window<"u"){try{r=localStorage.getItem(t)||null}catch{r=null}try{s?.(r),n?.(r)}catch{}r?r==="system"?i=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":i=r:i=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}return{resolvedTheme:i,storedTheme:r}}function fe(e,{resolvePublicAssetURL:t}){let s=!!(e?.public?.root||e?.static?.root),n=t(e);return!s&&je&&(n=je),J(Y(n))}async function Oe(e,{baseEnhancers:t=[]}={}){let{autoDefineBaseURL:s="/auto-define/",autoDefinePreload:n=[],autoDefineMapper:i=null,enhancers:r=[],autoDefineOverrides:o=null,autoDefinePreferModule:u=!0}=e,p=(()=>{let a=new Map;return(t||[]).forEach(c=>a.set(c.selector,c)),(r||[]).forEach(c=>a.set(c.selector,c)),Array.from(a.values())})(),d=null;if(typeof window<"u"&&typeof document<"u"){let a=null;try{let b=await Promise.resolve().then(()=>(Fe(),$e));a=b?.AutoDefiner||b?.default?.AutoDefiner||b?.default||null}catch(b){console.warn("AutoDefiner not available:",b?.message||b)}let c=b=>{switch(b){case"pds-tabpanel":return"pds-tabstrip.js";default:return`${b}.js`}},{mapper:f,...h}=o&&typeof o=="object"?o:{},S={baseURL:s&&J(Y(s,{preferModule:u})),predefine:n,scanExisting:!0,observeShadows:!0,patchAttachShadow:!0,debounceMs:16,enhancers:p,onError:(b,x)=>{if(typeof b=="string"&&b.startsWith("pds-")){let L=["pds-form","pds-drawer"].includes(b),T=x?.message?.includes("#pds/lit")||x?.message?.includes("Failed to resolve module specifier");L&&T?console.error(`\u274C PDS component <${b}> requires Lit but #pds/lit is not in import map.
|
|
32
|
-
See: https://github.com/Pure-Web-Foundation/pure-ds/blob/main/readme.md#lit-components-not-working`):console.warn(`\u26A0\uFE0F PDS component <${b}> not found. Assets may not be installed.`)}else console.error(`\u274C Auto-define error for <${b}>:`,x)},...h,mapper:b=>{if(customElements.get(b))return null;if(typeof i=="function")try{let x=i(b);return x===void 0?c(b):x}catch(x){return console.warn("Custom autoDefine.mapper error; falling back to default:",x?.message||x),c(b)}return c(b)}};a&&(d=new a(S),n.length>0&&typeof a.define=="function"&&await a.define(...n,{baseURL:s,mapper:S.mapper,onError:S.onError}))}return{autoDefiner:d,mergedEnhancers:p}}var me=["light","dark"],ye=new Set(me);function bt(e){let s=(Array.isArray(e?.themes)?e.themes.map(n=>String(n).toLowerCase()):me).filter(n=>ye.has(n));return s.length?s:me}function ge(e,{preferDocument:t=!0}={}){let s=String(e||"").toLowerCase();if(ye.has(s))return s;if(t&&typeof document<"u"){let n=document.documentElement?.getAttribute("data-theme");if(ye.has(n))return n}return typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function qe(e,t){let s=ge(t);return bt(e).includes(s)}var Se=class extends EventTarget{},w=new Se;w.initializing=!1;w.currentPreset=null;w.debug=!1;var Ge=(e="")=>String(e).toLowerCase().replace(/&/g," and ").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,""),be=function(e="log",t,...s){let n=!!(w.registry&&!w.registry.isLive),i=(this?.debug||this?.design?.debug||w.debug||!1)===!0;if(n){if(!w.debug)return}else if(!i&&e!=="error"&&e!=="warn")return;let r=console[e]||console.log;s.length>0?r(t,...s):r(t)};async function wt(e,t={}){if(t?.runtimeConfig===!1||typeof fetch!="function")return null;let s=t?.runtimeConfigURL||`${e}pds-runtime-config.json`;try{let n=await fetch(s,{cache:"no-store"});return n.ok?await n.json():null}catch{return null}}w.registry=F;w.enums=l;w.adoptLayers=Te;w.adoptPrimitives=Me;w.parse=se;w.createStylesheet=De;w.isLiveMode=()=>F.isLive;w.ask=We;w.toast=M;w.common=ne;w.AutoComplete=V;function Ve(e){let t=typeof CustomEvent=="function";try{let s=t?new CustomEvent("pds:ready",{detail:e}):new Event("pds:ready");w.dispatchEvent(s)}catch{}if(typeof document<"u")if(t){let s={detail:e,bubbles:!0,composed:!0};try{document.dispatchEvent(new CustomEvent("pds:ready",s))}catch{}try{document.dispatchEvent(new CustomEvent("pds-ready",s))}catch{}}else{try{document.dispatchEvent(new Event("pds:ready"))}catch{}try{document.dispatchEvent(new Event("pds-ready"))}catch{}}}typeof window<"u"&&(window.PDS=w);var we="pure-ds-theme",W=null,O=null;function ke(e){try{if(typeof document>"u")return;let t="light";e?e==="system"?t=typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":t=e:t=typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",document.documentElement.setAttribute("data-theme",t)}catch{}}function xe(e){try{if(W&&O){try{typeof W.removeEventListener=="function"?W.removeEventListener("change",O):typeof W.removeListener=="function"&&W.removeListener(O)}catch{}W=null,O=null}if(e==="system"&&typeof window<"u"&&window.matchMedia){let t=window.matchMedia("(prefers-color-scheme: dark)"),s=n=>{let i=n?.matches===void 0?t.matches:n.matches;try{let r=i?"dark":"light";document.documentElement.setAttribute("data-theme",r),w.dispatchEvent(new CustomEvent("pds:theme:changed",{detail:{theme:r,source:"system"}}))}catch{}};W=t,O=s,typeof t.addEventListener=="function"?t.addEventListener("change",s):typeof t.addListener=="function"&&t.addListener(s)}}catch{}}Object.defineProperty(w,"theme",{get(){try{return typeof window>"u"?null:localStorage.getItem(we)||null}catch{return null}},set(e){try{if(typeof window>"u")return;let t=w.currentConfig?.design||null,s=ge(e);if(t&&!qe(t,s)){let n=t?.name||w.currentPreset?.name||w.currentConfig?.preset||"current preset";console.warn(`PDS theme "${s}" not supported by preset "${n}".`),w.dispatchEvent(new CustomEvent("pds:theme:blocked",{detail:{theme:e,resolvedTheme:s,preset:n}}));return}e==null?localStorage.removeItem(we):localStorage.setItem(we,e),ke(e),xe(e),w.dispatchEvent(new CustomEvent("pds:theme:changed",{detail:{theme:e,source:"api"}}))}catch{}}});w.defaultEnhancers=ie;async function St(e){let t=e&&e.mode||"live",{mode:s,...n}=e||{};if(t==="static")return kt(n);let i=fe(n,{resolvePublicAssetURL:oe}),r=n?.managerURL||n?.public?.managerURL||n?.manager?.url||new URL("core/pds-manager.js",i).href||new URL("./pds-manager.js",import.meta.url).href,{startLive:o}=await import(r);return o(w,n,{emitReady:Ve,applyResolvedTheme:ke,setupSystemListenerIfNeeded:xe})}w.start=St;async function kt(e){if(!e||typeof e!="object")throw new Error("PDS.start({ mode: 'static', ... }) requires a valid configuration object");let t=e.applyGlobalStyles??!0,s=e.manageTheme??!0,n=e.themeStorageKey??"pure-ds-theme",i=e.staticPaths??{},r=fe(e,{resolvePublicAssetURL:oe}),o=e&&e.autoDefine||null,u;o&&o.baseURL?u=J(Y(o.baseURL,{preferModule:!1})):u=`${r}components/`;let p=o&&Array.isArray(o.predefine)&&o.predefine||[],d=o&&typeof o.mapper=="function"&&o.mapper||null;try{Be(w);let{resolvedTheme:a}=Ne({manageTheme:s,themeStorageKey:n,applyResolvedTheme:ke,setupSystemListenerIfNeeded:xe}),c=await wt(r,e),f=c?.config?.design||c?.design||null,h=c?.config?.preset||c?.preset||"default",k=c?.presetId||Ge(h)||"default",S=f?{[String(k).toLowerCase()]:f,...String(k).toLowerCase()!=="default"?{default:f}:{}}:null,b=e?.design&&typeof e.design=="object"?I(e.design):null,x=Ge(e?.preset||"default")||"default",P=b?{[String(x).toLowerCase()]:b,...String(x).toLowerCase()!=="default"?{default:b}:{}}:null,L=S||e?.presets||P||{};if(!Object.keys(L||{}).length)throw new Error("PDS static mode requires preset data. Run pds:build or provide config.presets/config.design.");let T=c?.config?{...c.config,...e,preset:e?.preset||k,design:b||f||c?.config?.design}:e,C=He(T,{},{presets:L,defaultLog:be}),_=C.enhancers,z={tokens:`${r}styles/pds-tokens.css.js`,primitives:`${r}styles/pds-primitives.css.js`,components:`${r}styles/pds-components.css.js`,utilities:`${r}styles/pds-utilities.css.js`,styles:`${r}styles/pds-styles.css.js`},q=c?.paths||{};if(i={...z,...q,...i},w.registry.setStaticMode(i),t&&typeof document<"u")try{let v=await w.registry.getStylesheet("styles");if(v){v._pds=!0;let U=(document.adoptedStyleSheets||[]).filter(m=>m._pds!==!0);document.adoptedStyleSheets=[...U,v]}}catch(v){be.call(w,"warn","Failed to apply static styles:",v)}let R=null,D=[];try{let v=await Oe({autoDefineBaseURL:u,autoDefinePreload:p,autoDefineMapper:d,enhancers:_,autoDefineOverrides:o||null,autoDefinePreferModule:!(o&&o.baseURL)},{baseEnhancers:ie});R=v.autoDefiner,D=v.mergedEnhancers||[]}catch(v){be.call(w,"error","\u274C Failed to initialize AutoDefiner/Enhancers (static):",v)}let B=I(e);return w.currentConfig=Object.freeze({mode:"static",...structuredClone(B),design:structuredClone(C.generatorConfig.design),preset:C.generatorConfig.preset,theme:a,enhancers:D}),Ve({mode:"static",config:C.generatorConfig,theme:a,autoDefiner:R}),{config:C.generatorConfig,theme:a,autoDefiner:R}}catch(a){throw w.dispatchEvent(new CustomEvent("pds:error",{detail:{error:a}})),a}}var E={name:"@pure-ds/core",shortname:"pds",version:"0.6.4",description:"Pure Design System - Why develop a Design System when you can generate one?",repository:{type:"git",url:"git+https://github.com/Pure-Web-Foundation/pure-ds.git"},bugs:{url:"https://github.com/Pure-Web-Foundation/pure-ds/issues"},homepage:"https://puredesignsystem.z6.web.core.windows.net/",keywords:["design-system","css","web-components","lit","constructable-stylesheets","tokens","utilities","a11y"],type:"module",main:"./public/assets/js/pds.js",module:"./public/assets/js/pds.js",types:"./dist/types/pds.d.ts",bin:{"pds-build":"packages/pds-cli/bin/pds-static.js","pds-sync-assets":"packages/pds-cli/bin/sync-assets.js","pds-build-icons":"packages/pds-cli/bin/pds-build-icons.js","pds-setup-copilot":"packages/pds-cli/bin/pds-setup-copilot.js","pds-init-config":"packages/pds-cli/bin/pds-init-config.js","pds-bootstrap":"packages/pds-cli/bin/pds-bootstrap.js"},exports:{".":{types:"./src/js/pds.d.ts",import:"./public/assets/js/pds.js"},"./pds-core":"./src/js/pds.js","./auto-define/*":"./public/auto-define/*"},files:[".github/copilot-instructions.md",".cursorrules","dist/types/","public/assets/js/","public/assets/pds/components/","public/assets/pds/external/","public/assets/pds/vscode-custom-data.json","public/assets/pds/pds.css-data.json","public/assets/pds/pds-css-complete.json","public/auto-define/","public/pds/components/","public/assets/pds/icons/pds-icons.svg","packages/pds-cli/bin/","packages/pds-cli/lib/","src/js/pds.d.ts","src/js/pds.js","src/js/pds-core/","custom-elements.json","custom-elements-manifest.config.js","pds.html-data.json","pds.css-data.json","readme.md","INTELLISENSE.md","CSS-INTELLISENSE-LIMITATION.md","CSS-INTELLISENSE-QUICK-REF.md"],scripts:{test:'echo "Error: no test specified" && exit 1',dev:"node esbuild-dev.js",prebuild:"npm run types",build:"node esbuild-build.js",types:"tsc -p tsconfig.json && node scripts/sync-types.mjs",postinstall:"node packages/pds-cli/bin/postinstall.mjs","prepds:build":"npm run types","pds:build":"node packages/pds-cli/bin/pds-static.js","pds:build-icons":"node packages/pds-cli/bin/pds-build-icons.js","pds:bootstrap":"node packages/pds-cli/bin/pds-bootstrap.js","pds:manifest":"node packages/pds-cli/bin/generate-manifest.js","pds:css-data":"node packages/pds-cli/bin/generate-css-data.js","pds:dx":"node packages/pds-cli/bin/pds-dx.js","storybook:generate":"cd packages/pds-storybook && npm run generate-stories","storybook:dev":"cd packages/pds-storybook && npm run storybook:dev","storybook:build":"cd packages/pds-storybook && npm run storybook:build"},author:"Marc van Neerven",license:"ISC",engines:{node:">=18"},publishConfig:{access:"public"},devDependencies:{"@custom-elements-manifest/analyzer":"^0.9.9",esbuild:"^0.19.0","fs-extra":"^11.1.1",typescript:"^5.6.3","@types/node":"^22.10.2"},dependencies:{lit:"^3.3.1","pure-web":"1.1.30"},customElements:"custom-elements.json"};await w.start(Q);var vt=new Date,Et=vt.toLocaleDateString(void 0,{year:"numeric",month:"long",day:"numeric"}),Qe=typeof E.repository=="string"?E.repository:E.repository?.url,ve=Qe?Qe.replace(/^git\+/,"").replace(/\.git$/,""):"",Lt=E.homepage||ve,At=E.bugs?.url||"";document.body.innerHTML=`
|
|
32
|
+
See: https://github.com/Pure-Web-Foundation/pure-ds/blob/main/readme.md#lit-components-not-working`):console.warn(`\u26A0\uFE0F PDS component <${b}> not found. Assets may not be installed.`)}else console.error(`\u274C Auto-define error for <${b}>:`,x)},...h,mapper:b=>{if(customElements.get(b))return null;if(typeof i=="function")try{let x=i(b);return x===void 0?c(b):x}catch(x){return console.warn("Custom autoDefine.mapper error; falling back to default:",x?.message||x),c(b)}return c(b)}};a&&(d=new a(S),n.length>0&&typeof a.define=="function"&&await a.define(...n,{baseURL:s,mapper:S.mapper,onError:S.onError}))}return{autoDefiner:d,mergedEnhancers:p}}var me=["light","dark"],ye=new Set(me);function bt(e){let s=(Array.isArray(e?.themes)?e.themes.map(n=>String(n).toLowerCase()):me).filter(n=>ye.has(n));return s.length?s:me}function ge(e,{preferDocument:t=!0}={}){let s=String(e||"").toLowerCase();if(ye.has(s))return s;if(t&&typeof document<"u"){let n=document.documentElement?.getAttribute("data-theme");if(ye.has(n))return n}return typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function qe(e,t){let s=ge(t);return bt(e).includes(s)}var Se=class extends EventTarget{},w=new Se;w.initializing=!1;w.currentPreset=null;w.debug=!1;var Ge=(e="")=>String(e).toLowerCase().replace(/&/g," and ").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,""),be=function(e="log",t,...s){let n=!!(w.registry&&!w.registry.isLive),i=(this?.debug||this?.design?.debug||w.debug||!1)===!0;if(n){if(!w.debug)return}else if(!i&&e!=="error"&&e!=="warn")return;let r=console[e]||console.log;s.length>0?r(t,...s):r(t)};async function wt(e,t={}){if(t?.runtimeConfig===!1||typeof fetch!="function")return null;let s=t?.runtimeConfigURL||`${e}pds-runtime-config.json`;try{let n=await fetch(s,{cache:"no-store"});return n.ok?await n.json():null}catch{return null}}w.registry=F;w.enums=l;w.adoptLayers=Te;w.adoptPrimitives=Me;w.parse=se;w.createStylesheet=De;w.isLiveMode=()=>F.isLive;w.ask=We;w.toast=M;w.common=ne;w.AutoComplete=V;function Ve(e){let t=typeof CustomEvent=="function";try{let s=t?new CustomEvent("pds:ready",{detail:e}):new Event("pds:ready");w.dispatchEvent(s)}catch{}if(typeof document<"u")if(t){let s={detail:e,bubbles:!0,composed:!0};try{document.dispatchEvent(new CustomEvent("pds:ready",s))}catch{}try{document.dispatchEvent(new CustomEvent("pds-ready",s))}catch{}}else{try{document.dispatchEvent(new Event("pds:ready"))}catch{}try{document.dispatchEvent(new Event("pds-ready"))}catch{}}}typeof window<"u"&&(window.PDS=w);var we="pure-ds-theme",W=null,O=null;function ke(e){try{if(typeof document>"u")return;let t="light";e?e==="system"?t=typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":t=e:t=typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",document.documentElement.setAttribute("data-theme",t)}catch{}}function xe(e){try{if(W&&O){try{typeof W.removeEventListener=="function"?W.removeEventListener("change",O):typeof W.removeListener=="function"&&W.removeListener(O)}catch{}W=null,O=null}if(e==="system"&&typeof window<"u"&&window.matchMedia){let t=window.matchMedia("(prefers-color-scheme: dark)"),s=n=>{let i=n?.matches===void 0?t.matches:n.matches;try{let r=i?"dark":"light";document.documentElement.setAttribute("data-theme",r),w.dispatchEvent(new CustomEvent("pds:theme:changed",{detail:{theme:r,source:"system"}}))}catch{}};W=t,O=s,typeof t.addEventListener=="function"?t.addEventListener("change",s):typeof t.addListener=="function"&&t.addListener(s)}}catch{}}Object.defineProperty(w,"theme",{get(){try{return typeof window>"u"?null:localStorage.getItem(we)||null}catch{return null}},set(e){try{if(typeof window>"u")return;let t=w.currentConfig?.design||null,s=ge(e);if(t&&!qe(t,s)){let n=t?.name||w.currentPreset?.name||w.currentConfig?.preset||"current preset";console.warn(`PDS theme "${s}" not supported by preset "${n}".`),w.dispatchEvent(new CustomEvent("pds:theme:blocked",{detail:{theme:e,resolvedTheme:s,preset:n}}));return}e==null?localStorage.removeItem(we):localStorage.setItem(we,e),ke(e),xe(e),w.dispatchEvent(new CustomEvent("pds:theme:changed",{detail:{theme:e,source:"api"}}))}catch{}}});w.defaultEnhancers=ie;async function St(e){let t=e&&e.mode||"live",{mode:s,...n}=e||{};if(t==="static")return kt(n);let i=fe(n,{resolvePublicAssetURL:oe}),r=n?.managerURL||n?.public?.managerURL||n?.manager?.url||new URL("core/pds-manager.js",i).href||new URL("./pds-manager.js",import.meta.url).href,{startLive:o}=await import(r);return o(w,n,{emitReady:Ve,applyResolvedTheme:ke,setupSystemListenerIfNeeded:xe})}w.start=St;async function kt(e){if(!e||typeof e!="object")throw new Error("PDS.start({ mode: 'static', ... }) requires a valid configuration object");let t=e.applyGlobalStyles??!0,s=e.manageTheme??!0,n=e.themeStorageKey??"pure-ds-theme",i=e.staticPaths??{},r=fe(e,{resolvePublicAssetURL:oe}),o=e&&e.autoDefine||null,u;o&&o.baseURL?u=J(Y(o.baseURL,{preferModule:!1})):u=`${r}components/`;let p=o&&Array.isArray(o.predefine)&&o.predefine||[],d=o&&typeof o.mapper=="function"&&o.mapper||null;try{Be(w);let{resolvedTheme:a}=Ne({manageTheme:s,themeStorageKey:n,applyResolvedTheme:ke,setupSystemListenerIfNeeded:xe}),c=await wt(r,e),f=c?.config?.design||c?.design||null,h=c?.config?.preset||c?.preset||"default",k=c?.presetId||Ge(h)||"default",S=f?{[String(k).toLowerCase()]:f,...String(k).toLowerCase()!=="default"?{default:f}:{}}:null,b=e?.design&&typeof e.design=="object"?I(e.design):null,x=Ge(e?.preset||"default")||"default",P=b?{[String(x).toLowerCase()]:b,...String(x).toLowerCase()!=="default"?{default:b}:{}}:null,L=S||e?.presets||P||{};if(!Object.keys(L||{}).length)throw new Error("PDS static mode requires preset data. Run pds:build or provide config.presets/config.design.");let T=c?.config?{...c.config,...e,preset:e?.preset||k,design:b||f||c?.config?.design}:e,C=He(T,{},{presets:L,defaultLog:be}),_=C.enhancers,z={tokens:`${r}styles/pds-tokens.css.js`,primitives:`${r}styles/pds-primitives.css.js`,components:`${r}styles/pds-components.css.js`,utilities:`${r}styles/pds-utilities.css.js`,styles:`${r}styles/pds-styles.css.js`},q=c?.paths||{};if(i={...z,...q,...i},w.registry.setStaticMode(i),t&&typeof document<"u")try{let v=await w.registry.getStylesheet("styles");if(v){v._pds=!0;let U=(document.adoptedStyleSheets||[]).filter(m=>m._pds!==!0);document.adoptedStyleSheets=[...U,v]}}catch(v){be.call(w,"warn","Failed to apply static styles:",v)}let R=null,D=[];try{let v=await Oe({autoDefineBaseURL:u,autoDefinePreload:p,autoDefineMapper:d,enhancers:_,autoDefineOverrides:o||null,autoDefinePreferModule:!(o&&o.baseURL)},{baseEnhancers:ie});R=v.autoDefiner,D=v.mergedEnhancers||[]}catch(v){be.call(w,"error","\u274C Failed to initialize AutoDefiner/Enhancers (static):",v)}let B=I(e);return w.currentConfig=Object.freeze({mode:"static",...structuredClone(B),design:structuredClone(C.generatorConfig.design),preset:C.generatorConfig.preset,theme:a,enhancers:D}),Ve({mode:"static",config:C.generatorConfig,theme:a,autoDefiner:R}),{config:C.generatorConfig,theme:a,autoDefiner:R}}catch(a){throw w.dispatchEvent(new CustomEvent("pds:error",{detail:{error:a}})),a}}var E={name:"@pure-ds/core",shortname:"pds",version:"0.6.5",description:"Pure Design System - Why develop a Design System when you can generate one?",repository:{type:"git",url:"git+https://github.com/Pure-Web-Foundation/pure-ds.git"},bugs:{url:"https://github.com/Pure-Web-Foundation/pure-ds/issues"},homepage:"https://puredesignsystem.z6.web.core.windows.net/",keywords:["design-system","css","web-components","lit","constructable-stylesheets","tokens","utilities","a11y"],type:"module",main:"./public/assets/js/pds.js",module:"./public/assets/js/pds.js",types:"./dist/types/pds.d.ts",bin:{"pds-build":"packages/pds-cli/bin/pds-static.js","pds-sync-assets":"packages/pds-cli/bin/sync-assets.js","pds-build-icons":"packages/pds-cli/bin/pds-build-icons.js","pds-setup-copilot":"packages/pds-cli/bin/pds-setup-copilot.js","pds-init-config":"packages/pds-cli/bin/pds-init-config.js","pds-bootstrap":"packages/pds-cli/bin/pds-bootstrap.js"},exports:{".":{types:"./src/js/pds.d.ts",import:"./public/assets/js/pds.js"},"./pds-core":"./src/js/pds.js","./auto-define/*":"./public/auto-define/*"},files:[".github/copilot-instructions.md",".cursorrules","dist/types/","public/assets/js/","public/assets/pds/components/","public/assets/pds/external/","public/assets/pds/vscode-custom-data.json","public/assets/pds/pds.css-data.json","public/assets/pds/pds-css-complete.json","public/auto-define/","public/pds/components/","public/assets/pds/icons/pds-icons.svg","packages/pds-cli/bin/","packages/pds-cli/lib/","src/js/pds.d.ts","src/js/pds.js","src/js/pds-core/","custom-elements.json","custom-elements-manifest.config.js","pds.html-data.json","pds.css-data.json","readme.md","INTELLISENSE.md","CSS-INTELLISENSE-LIMITATION.md","CSS-INTELLISENSE-QUICK-REF.md"],scripts:{test:'echo "Error: no test specified" && exit 1',dev:"node esbuild-dev.js",prebuild:"npm run types",build:"node esbuild-build.js",types:"tsc -p tsconfig.json && node scripts/sync-types.mjs",postinstall:"node packages/pds-cli/bin/postinstall.mjs","prepds:build":"npm run types","pds:build":"node packages/pds-cli/bin/pds-static.js","pds:build-icons":"node packages/pds-cli/bin/pds-build-icons.js","pds:bootstrap":"node packages/pds-cli/bin/pds-bootstrap.js","pds:manifest":"node packages/pds-cli/bin/generate-manifest.js","pds:css-data":"node packages/pds-cli/bin/generate-css-data.js","pds:dx":"node packages/pds-cli/bin/pds-dx.js","storybook:generate":"cd packages/pds-storybook && npm run generate-stories","storybook:dev":"cd packages/pds-storybook && npm run storybook:dev","storybook:build":"cd packages/pds-storybook && npm run storybook:build"},author:"Marc van Neerven",license:"ISC",engines:{node:">=18"},publishConfig:{access:"public"},devDependencies:{"@custom-elements-manifest/analyzer":"^0.9.9",esbuild:"^0.19.0","fs-extra":"^11.1.1",typescript:"^5.6.3","@types/node":"^22.10.2"},dependencies:{lit:"^3.3.1","pure-web":"1.1.30"},customElements:"custom-elements.json"};await w.start(Q);var vt=new Date,Et=vt.toLocaleDateString(void 0,{year:"numeric",month:"long",day:"numeric"}),Qe=typeof E.repository=="string"?E.repository:E.repository?.url,ve=Qe?Qe.replace(/^git\+/,"").replace(/\.git$/,""):"",Lt=E.homepage||ve,At=E.bugs?.url||"";document.body.innerHTML=`
|
|
33
33
|
<header class="container section">
|
|
34
34
|
<div class="stack-sm">
|
|
35
35
|
<pds-toaster id="global-toaster"></pds-toaster>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var qe=Object.defineProperty;var D=(a,t)=>()=>(a&&(t=a(a=0)),t);var U=(a,t)=>{for(var e in t)qe(a,e,{get:t[e],enumerable:!0})};var xe={};U(xe,{enums:()=>g});var g,G=D(()=>{g={FontWeights:{light:300,normal:400,medium:500,semibold:600,bold:700},LineHeights:{tight:1.25,normal:1.5,relaxed:1.75},BorderWidths:{hairline:.5,thin:1,medium:2,thick:3},RadiusSizes:{none:0,small:4,medium:8,large:16,xlarge:24,xxlarge:32},ShadowDepths:{none:"none",light:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",medium:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",deep:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",extreme:"0 25px 50px -12px rgba(0, 0, 0, 0.25)"},TransitionSpeeds:{fast:150,normal:250,slow:350},AnimationEasings:{linear:"linear",ease:"ease","ease-in":"ease-in","ease-out":"ease-out","ease-in-out":"ease-in-out",bounce:"cubic-bezier(0.68, -0.55, 0.265, 1.55)"},TouchTargetSizes:{compact:36,standard:44,comfortable:48,spacious:56},LinkStyles:{inline:"inline",block:"block",button:"button"},FocusStyles:{ring:"ring",outline:"outline",border:"border",glow:"glow"},TabSizes:{compact:2,standard:4,wide:8},SelectIcons:{chevron:"chevron",arrow:"arrow",caret:"caret",none:"none"},IconSizes:{xs:16,sm:20,md:24,lg:32,xl:48,"2xl":64,"3xl":96}}});var $e={};U($e,{default:()=>Xe,findComponentForElement:()=>Je,getAllSelectors:()=>Ye,getAllTags:()=>Ke,getByCategory:()=>Ze,ontology:()=>M,searchOntology:()=>Qe});function j(a,t){if(!a||!t)return!1;try{return a.matches(t)}catch{return!1}}function Se(a,t){if(!a||!t||!a.closest)return null;try{return a.closest(t)}catch{return null}}function Je(a,{maxDepth:t=5}={}){if(!a||a.closest&&a.closest(".showcase-toc"))return null;let e=a,r=0;for(;e&&r<t;){if(r++,e.tagName==="DS-SHOWCASE")return null;if(e.classList&&e.classList.contains("showcase-section")){e=e.parentElement;continue}for(let n of PDS.ontology.enhancements){let i=n.selector||n;if(j(e,i))return{element:e,componentType:"enhanced-component",displayName:n.description||i,id:n.id}}if(e.tagName==="FIELDSET"){let n=e.getAttribute("role");if(n==="group"||n==="radiogroup")return{element:e,componentType:"form-group",displayName:n==="radiogroup"?"radio group":"form group"}}if(e.tagName==="LABEL"&&e.querySelector&&e.querySelector("input,select,textarea"))return{element:e,componentType:"form-control",displayName:"label with input"};let o=e.closest?e.closest("label"):null;if(o&&o.querySelector&&o.querySelector("input,select,textarea"))return{element:o,componentType:"form-control",displayName:"label with input"};for(let n of PDS.ontology.primitives){for(let i of n.selectors||[]){let s=String(i||"").trim();if(s.includes("*")){if(s.startsWith(".")){let u=s.slice(1).replace(/\*/g,"");if(e.classList&&Array.from(e.classList).some(p=>p.startsWith(u)))return{element:e,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags};let c=e.parentElement,d=0;for(;c&&d<t;){if(c.classList&&Array.from(c.classList).some(p=>p.startsWith(u))&&c.tagName!=="DS-SHOWCASE")return{element:c,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags};c=c.parentElement,d++}continue}continue}if(j(e,s))return{element:e,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags};let l=Se(e,s);if(l&&l.tagName!=="DS-SHOWCASE")return{element:l,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags}}if(e.classList){let i=Array.from(e.classList);for(let s of n.selectors||[])if(typeof s=="string"&&s.includes("*")&&s.startsWith(".")){let l=s.slice(1).replace(/\*/g,"");if(i.some(u=>u.startsWith(l)))return{element:e,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags}}}}for(let n of PDS.ontology.layoutPatterns||[])for(let i of n.selectors||[]){let s=String(i||"").trim();if(s.includes("*")){if(s.startsWith(".")){let u=s.slice(1).replace(/\*/g,"");if(e.classList&&Array.from(e.classList).some(c=>c.startsWith(u)))return{element:e,componentType:"layout-pattern",displayName:n.name||n.id,id:n.id,tags:n.tags}}continue}if(j(e,s))return{element:e,componentType:"layout-pattern",displayName:n.name||n.id,id:n.id,tags:n.tags};let l=Se(e,s);if(l&&l.tagName!=="DS-SHOWCASE")return{element:l,componentType:"layout-pattern",displayName:n.name||n.id,id:n.id,tags:n.tags}}if(e.tagName&&e.tagName.includes("-")){let n=e.tagName.toLowerCase(),i=PDS.ontology.components.find(s=>s.selectors.includes(n));return{element:e,componentType:"web-component",displayName:i?.name||n,id:i?.id||n,tags:i?.tags}}if(e.tagName==="BUTTON"){let n=e.querySelector&&e.querySelector("pds-icon");return{element:e,componentType:"button",displayName:n?"button with icon":"button",id:"button"}}if(j(e,"pds-icon")||e.closest&&e.closest("pds-icon")){let n=j(e,"pds-icon")?e:e.closest("pds-icon");return{element:n,componentType:"icon",displayName:`pds-icon (${n.getAttribute&&n.getAttribute("icon")||"unknown"})`,id:"pds-icon"}}if(j(e,"nav[data-dropdown]")||e.closest&&e.closest("nav[data-dropdown]"))return{element:j(e,"nav[data-dropdown]")?e:e.closest("nav[data-dropdown]"),componentType:"navigation",displayName:"dropdown menu",id:"dropdown"};e=e.parentElement}return null}function Ye(){let a=[];for(let t of PDS.ontology.primitives)a.push(...t.selectors||[]);for(let t of PDS.ontology.components)a.push(...t.selectors||[]);for(let t of PDS.ontology.layoutPatterns||[])a.push(...t.selectors||[]);return Array.from(new Set(a))}function Qe(a,t={}){let e=a.toLowerCase(),r=[],o=(n,i)=>{for(let s of n)(s.id?.toLowerCase().includes(e)||s.name?.toLowerCase().includes(e)||s.description?.toLowerCase().includes(e)||s.tags?.some(u=>u.toLowerCase().includes(e))||s.category?.toLowerCase().includes(e)||s.selectors?.some(u=>u.toLowerCase().includes(e)))&&r.push({...s,type:i})};return(!t.type||t.type==="primitive")&&o(M.primitives,"primitive"),(!t.type||t.type==="component")&&o(M.components,"component"),(!t.type||t.type==="layout")&&o(M.layoutPatterns,"layout"),(!t.type||t.type==="enhancement")&&o(M.enhancements,"enhancement"),r}function Ze(a){let t=a.toLowerCase();return{primitives:M.primitives.filter(e=>e.category===t),components:M.components.filter(e=>e.category===t),layouts:M.layoutPatterns.filter(e=>e.category===t)}}function Ke(){let a=new Set;return M.primitives.forEach(t=>t.tags?.forEach(e=>a.add(e))),M.components.forEach(t=>t.tags?.forEach(e=>a.add(e))),M.layoutPatterns.forEach(t=>t.tags?.forEach(e=>a.add(e))),M.enhancements.forEach(t=>t.tags?.forEach(e=>a.add(e))),Array.from(a).sort()}var M,Xe,ae=D(()=>{M={meta:{name:"Pure Design System Ontology",version:"1.0.0",description:"Complete metadata registry for PDS primitives, components, utilities, and tokens"},tokens:{colors:{semantic:["primary","secondary","accent","success","warning","danger","info"],neutral:["gray"],shades:[50,100,200,300,400,500,600,700,800,900,950],surface:["base","subtle","elevated","sunken","overlay","inverse","translucent"],text:["default","muted","subtle","inverse","primary","success","warning","danger","info"]},spacing:{scale:["1","2","3","4","5","6","8","10","12","16","20","24"],semantic:["xs","sm","md","lg","xl"]},typography:{families:["heading","body","mono"],sizes:["xs","sm","base","lg","xl","2xl","3xl","4xl","5xl"],weights:["light","normal","medium","semibold","bold"]},radius:{scale:["none","sm","base","md","lg","xl","2xl","full"]},shadows:{scale:["none","sm","base","md","lg","xl","inner"]},themes:["light","dark"],breakpoints:{sm:640,md:768,lg:1024,xl:1280}},primitives:[{id:"badge",name:"Badge / Pill",description:"Inline status indicators and labels",selectors:[".badge",".badge-primary",".badge-secondary",".badge-success",".badge-info",".badge-warning",".badge-danger",".badge-outline",".badge-sm",".badge-lg",".pill",".tag",".chip"],tags:["status","label","indicator","inline"],category:"feedback"},{id:"card",name:"Card",description:"Content container with padding, border-radius, and optional shadow",selectors:[".card",".card-basic",".card-elevated",".card-outlined",".card-interactive"],tags:["container","content","grouping"],category:"container"},{id:"surface",name:"Surface",description:"Smart surface classes with automatic text/background color handling",selectors:[".surface-base",".surface-subtle",".surface-elevated",".surface-sunken",".surface-overlay",".surface-inverse",".surface-translucent",".surface-translucent-25",".surface-translucent-50",".surface-translucent-75",".surface-primary",".surface-secondary",".surface-success",".surface-warning",".surface-danger",".surface-info"],tags:["background","theming","color","container"],category:"theming"},{id:"callout",name:"Callout",description:"Contextual information and notification messages",selectors:[".callout",".callout-info",".callout-success",".callout-warning",".callout-danger",".callout-error",".callout-dismissible"],tags:["feedback","message","notification","status","information"],category:"feedback"},{id:"empty-state",name:"Empty State",description:"Empty state layout for missing data or onboarding",selectors:[".empty-state"],tags:["empty","no-data","zero","placeholder","onboarding","state"],category:"feedback"},{id:"dialog",name:"Dialog",description:"Modal dialog element",selectors:["dialog",".dialog"],tags:["modal","overlay","popup","modal"],category:"overlay"},{id:"divider",name:"Divider",description:"Horizontal rule with optional label",selectors:["hr","hr[data-content]"],tags:["separator","line","content-divider"],category:"layout"},{id:"table",name:"Table",description:"Data tables with responsive and styling variants",selectors:["table",".table-responsive",".table-striped",".table-bordered",".table-compact",".data-table"],tags:["data","grid","tabular","responsive"],category:"data"},{id:"button",name:"Button",description:"Interactive button element with variants",selectors:["button",".btn-primary",".btn-secondary",".btn-outline",".btn-sm",".btn-xs",".btn-lg",".btn-working",".icon-only"],tags:["interactive","action","cta","form"],category:"action"},{id:"fieldset",name:"Fieldset Group",description:"Form field grouping for radio/checkbox groups",selectors:["fieldset[role='group']","fieldset[role='radiogroup']","fieldset.buttons"],tags:["form","grouping","radio","checkbox"],category:"form"},{id:"label-field",name:"Label+Input",description:"Semantic label wrapping form input",selectors:["label","label:has(input)","label:has(select)","label:has(textarea)"],tags:["form","input","accessibility"],category:"form"},{id:"accordion",name:"Accordion",description:"Collapsible content sections",selectors:[".accordion",".accordion-item","details","details > summary"],tags:["expandable","collapsible","disclosure"],category:"disclosure"},{id:"icon",name:"Icon",description:"SVG icon element with size and color variants",selectors:["pds-icon",".icon-xs",".icon-sm",".icon-md",".icon-lg",".icon-xl",".icon-primary",".icon-secondary",".icon-accent",".icon-success",".icon-warning",".icon-danger",".icon-info",".icon-muted",".icon-subtle",".icon-text",".icon-text-start",".icon-text-end"],tags:["graphic","symbol","visual"],category:"media"},{id:"figure",name:"Figure/Media",description:"Figure element for images with captions",selectors:["figure","figure.media","figcaption"],tags:["image","media","caption"],category:"media"},{id:"gallery",name:"Gallery",description:"Image gallery grid",selectors:[".gallery",".gallery-grid",".img-gallery"],tags:["images","grid","collection"],category:"media"},{id:"form",name:"Form Container",description:"Form styling and layout",selectors:["form",".form-container",".form-actions",".field-description"],tags:["form","input","submission"],category:"form"},{id:"navigation",name:"Navigation",description:"Navigation elements and menus",selectors:["nav","nav[data-dropdown]","menu","nav menu li"],tags:["menu","links","routing"],category:"navigation"}],components:[{id:"pds-tabstrip",name:"Tab Strip",description:"Tabbed interface component",selectors:["pds-tabstrip"],tags:["tabs","navigation","panels"],category:"navigation"},{id:"pds-drawer",name:"Drawer",description:"Slide-out panel overlay",selectors:["pds-drawer"],tags:["panel","overlay","sidebar"],category:"overlay"},{id:"pds-fab",name:"FAB",description:"Floating Action Button with expandable satellite actions",selectors:["pds-fab"],tags:["button","action","floating","interactive"],category:"action"},{id:"pds-upload",name:"Upload",description:"File upload component with drag-and-drop",selectors:["pds-upload"],tags:["file","upload","drag-drop","form"],category:"form"},{id:"pds-icon",name:"Icon",description:"SVG icon web component",selectors:["pds-icon"],tags:["icon","graphic","svg"],category:"media"},{id:"pds-toaster",name:"Toaster",description:"Toast notification container",selectors:["pds-toaster"],tags:["notification","toast","feedback"],category:"feedback"},{id:"pds-form",name:"JSON Form",description:"Auto-generated form from JSON Schema",selectors:["pds-form"],tags:["form","schema","auto-generate"],category:"form"},{id:"pds-live-edit",name:"Live Edit",description:"Contextual live editing for PDS design settings",selectors:["pds-live-edit"],tags:["editor","live","config","tooling"],category:"tooling"},{id:"pds-splitpanel",name:"Split Panel",description:"Resizable split pane layout",selectors:["pds-splitpanel"],tags:["layout","resize","panels"],category:"layout"},{id:"pds-scrollrow",name:"Scroll Row",description:"Horizontal scrolling row with snap points",selectors:["pds-scrollrow"],tags:["scroll","horizontal","carousel"],category:"layout"},{id:"pds-richtext",name:"Rich Text",description:"Rich text editor component",selectors:["pds-richtext"],tags:["editor","wysiwyg","text"],category:"form"},{id:"pds-calendar",name:"Calendar",description:"Date picker calendar component",selectors:["pds-calendar"],tags:["date","picker","calendar"],category:"form"}],layoutPatterns:[{id:"container",name:"Container",description:"Centered max-width wrapper with padding",selectors:[".container"],tags:["wrapper","centered","max-width","page"],category:"structure"},{id:"grid",name:"Grid",description:"CSS Grid layout container",selectors:[".grid"],tags:["layout","columns","css-grid"],category:"layout"},{id:"grid-cols",name:"Grid Columns",description:"Fixed column count grids",selectors:[".grid-cols-1",".grid-cols-2",".grid-cols-3",".grid-cols-4",".grid-cols-6"],tags:["columns","fixed","grid"],category:"layout"},{id:"grid-auto",name:"Auto-fit Grid",description:"Responsive auto-fit grid with minimum widths",selectors:[".grid-auto-sm",".grid-auto-md",".grid-auto-lg",".grid-auto-xl"],tags:["responsive","auto-fit","fluid"],category:"layout"},{id:"flex",name:"Flex Container",description:"Flexbox layout with direction and wrap modifiers",selectors:[".flex",".flex-wrap",".flex-col",".flex-row"],tags:["flexbox","layout","alignment"],category:"layout"},{id:"grow",name:"Flex Grow",description:"Fill remaining flex space",selectors:[".grow"],tags:["flex","expand","fill"],category:"layout"},{id:"stack",name:"Stack",description:"Vertical flex layout with predefined gaps",selectors:[".stack-sm",".stack-md",".stack-lg",".stack-xl"],tags:["vertical","spacing","column"],category:"layout"},{id:"gap",name:"Gap",description:"Spacing between flex/grid children",selectors:[".gap-0",".gap-xs",".gap-sm",".gap-md",".gap-lg",".gap-xl"],tags:["spacing","margin","gutters"],category:"spacing"},{id:"items",name:"Items Alignment",description:"Cross-axis alignment for flex/grid",selectors:[".items-start",".items-center",".items-end",".items-stretch",".items-baseline"],tags:["alignment","vertical","cross-axis"],category:"alignment"},{id:"justify",name:"Justify Content",description:"Main-axis alignment for flex/grid",selectors:[".justify-start",".justify-center",".justify-end",".justify-between",".justify-around",".justify-evenly"],tags:["alignment","horizontal","main-axis"],category:"alignment"},{id:"max-width",name:"Max-Width",description:"Content width constraints",selectors:[".max-w-sm",".max-w-md",".max-w-lg",".max-w-xl"],tags:["width","constraint","readable"],category:"sizing"},{id:"section",name:"Section Spacing",description:"Vertical padding for content sections",selectors:[".section",".section-lg"],tags:["spacing","vertical","padding"],category:"spacing"},{id:"mobile-stack",name:"Mobile Stack",description:"Stack on mobile, row on desktop",selectors:[".mobile-stack"],tags:["responsive","mobile","breakpoint"],category:"responsive"}],utilities:{text:{alignment:[".text-left",".text-center",".text-right"],color:[".text-muted"],overflow:[".truncate"]},backdrop:{base:[".backdrop"],variants:[".backdrop-light",".backdrop-dark"],blur:[".backdrop-blur-sm",".backdrop-blur-md",".backdrop-blur-lg"]},shadow:{scale:[".shadow-sm",".shadow-base",".shadow-md",".shadow-lg",".shadow-xl",".shadow-inner",".shadow-none"]},border:{gradient:[".border-gradient",".border-gradient-primary",".border-gradient-accent",".border-gradient-secondary",".border-gradient-soft",".border-gradient-medium",".border-gradient-strong"],glow:[".border-glow",".border-glow-sm",".border-glow-lg",".border-glow-primary",".border-glow-accent",".border-glow-success",".border-glow-warning",".border-glow-danger"],combined:[".border-gradient-glow"]},media:{image:[".img-gallery",".img-rounded-sm",".img-rounded-md",".img-rounded-lg",".img-rounded-xl",".img-rounded-full",".img-inline"],video:[".video-responsive"],figure:[".figure-responsive"]},effects:{glass:[".liquid-glass"]}},responsive:{prefixes:["sm","md","lg"],utilities:{grid:[":grid-cols-2",":grid-cols-3",":grid-cols-4"],flex:[":flex-row"],text:[":text-sm",":text-lg",":text-xl"],spacing:[":p-6",":p-8",":p-12",":gap-6",":gap-8",":gap-12"],width:[":w-1/2",":w-1/3",":w-1/4"],display:[":hidden",":block"]}},enhancements:[{id:"dropdown",selector:"nav[data-dropdown]",description:"Dropdown menu from nav element",tags:["menu","interactive","navigation"]},{id:"toggle",selector:"label[data-toggle]",description:"Toggle switch from checkbox",tags:["switch","boolean","form"]},{id:"range",selector:'input[type="range"]',description:"Enhanced range slider with output",tags:["slider","input","form"]},{id:"required",selector:"form [required]",description:"Required field asterisk indicator",tags:["validation","form","accessibility"]},{id:"open-group",selector:"fieldset[role=group][data-open]",description:"Editable checkbox/radio group",tags:["form","dynamic","editable"]},{id:"working-button",selector:"button.btn-working, a.btn-working",description:"Button with loading spinner",tags:["loading","async","feedback"]},{id:"labeled-divider",selector:"hr[data-content]",description:"Horizontal rule with centered label",tags:["divider","separator","text"]}],categories:{feedback:{description:"User feedback and status indicators",primitives:["callout","badge","empty-state"],components:["pds-toaster"]},form:{description:"Form inputs and controls",primitives:["button","fieldset","label-field","form"],components:["pds-upload","pds-form","pds-richtext","pds-calendar"]},layout:{description:"Page structure and content arrangement",patterns:["container","grid","flex","stack","section"],components:["pds-splitpanel","pds-scrollrow"]},navigation:{description:"Navigation and routing",primitives:["navigation"],components:["pds-tabstrip","pds-drawer"]},media:{description:"Images, icons, and visual content",primitives:["icon","figure","gallery"],components:["pds-icon"]},overlay:{description:"Modal and overlay content",primitives:["dialog"],components:["pds-drawer"]},data:{description:"Data display and tables",primitives:["table"]},theming:{description:"Colors, surfaces, and visual theming",primitives:["surface"]},action:{description:"Interactive actions and buttons",primitives:["button"],components:["pds-fab"]}},styles:{typography:["headings","body","code","links"],icons:{source:"svg",sets:["core","brand"]},interactive:["focus","hover","active","disabled"],states:["success","warning","danger","info","muted"]},searchRelations:{text:["typography","truncate","text-muted","text-primary","text-left","text-center","text-right","pds-richtext","heading","font","label","paragraph","content","ellipsis","overflow","input"],font:["typography","text","heading","font-size","font-weight","font-family"],type:["typography","text","font"],typography:["text","font","heading","truncate","text-muted"],heading:["typography","text","font-size","h1","h2","h3"],truncate:["text","overflow","ellipsis","clamp","nowrap","typography"],ellipsis:["truncate","text","overflow","clamp"],overflow:["truncate","scroll","hidden","text"],paragraph:["text","typography","content","body"],content:["text","typography","body","article"],empty:["empty-state","placeholder","zero","no-data","onboarding","callout","card","icon","button"],"empty state":["empty-state","empty","no-data","zero","onboarding"],"no data":["empty-state","empty","zero","placeholder"],form:["input","field","label","button","fieldset","pds-form","pds-upload","pds-richtext","pds-calendar","required","validation","submit"],input:["form","field","text","label","required","validation"],field:["form","input","label","required"],button:["btn","interactive","action","submit","form","btn-primary","btn-secondary","btn-working","pds-fab","floating"],btn:["button","interactive","action","pds-fab"],fab:["pds-fab","floating","button","action","menu"],floating:["fab","pds-fab","button","action"],toggle:["switch","checkbox","boolean","form","interactive"],switch:["toggle","checkbox","boolean"],slider:["range","input","form"],range:["slider","input","form"],checkbox:["toggle","form","fieldset","boolean"],radio:["fieldset","form","group"],select:["dropdown","form","input","menu"],upload:["file","pds-upload","form","drag-drop"],file:["upload","pds-upload","form"],modal:["dialog","pds-ask","overlay","popup","backdrop","pds-drawer","alert","confirm","prompt","lightbox"],dialog:["modal","pds-ask","overlay","popup","backdrop","alert","confirm","prompt"],popup:["modal","dialog","dropdown","popover","overlay","tooltip"],popover:["popup","tooltip","overlay"],overlay:["modal","dialog","backdrop","drawer","popup"],drawer:["pds-drawer","sidebar","panel","overlay","modal"],backdrop:["overlay","modal","dialog","blur"],confirm:["pds-ask","dialog","modal"],prompt:["pds-ask","dialog","modal","input"],ask:["pds-ask","dialog","confirm","prompt","modal"],dropdown:["menu","nav-dropdown","select","popover"],menu:["dropdown","navigation","nav","list"],nav:["navigation","menu","dropdown","tabs","links"],navigation:["nav","menu","tabs","pds-tabstrip","links","routing"],tabs:["pds-tabstrip","navigation","panels"],tab:["tabs","pds-tabstrip","panel"],link:["navigation","anchor","href","routing"],callout:["notification","feedback","message","status","toast","information","alert","warning","error","info","success","danger"],alert:["callout","notification","feedback","message","status","toast","modal","dialog","pds-ask","confirm","warning","error","info","success","danger"],notification:["callout","toast","pds-toaster","feedback","message","popup","alert"],toast:["pds-toaster","notification","callout","feedback","popup","snackbar","alert"],feedback:["callout","notification","toast","status","badge","validation","error","success","alert"],message:["callout","notification","feedback","dialog","toast","alert"],status:["badge","callout","indicator","feedback","state","alert"],error:["callout","danger","validation","feedback","warning","alert"],success:["callout","feedback","badge","status","check","alert"],warning:["callout","caution","feedback","status","alert"],info:["callout","information","feedback","status","alert"],danger:["callout","error","feedback","destructive","delete","alert"],badge:["status","pill","tag","chip","indicator","label"],pill:["badge","tag","chip"],tag:["badge","pill","chip","label"],chip:["badge","pill","tag"],layout:["grid","flex","stack","container","gap","spacing","pds-splitpanel","section"],grid:["layout","columns","css-grid","table","gallery"],flex:["layout","flexbox","alignment","row","column"],stack:["layout","vertical","spacing","column","gap"],container:["wrapper","layout","max-width","centered"],gap:["spacing","margin","padding","layout"],spacing:["gap","margin","padding","section"],section:["spacing","layout","container","page"],split:["pds-splitpanel","resizable","panels","layout"],panel:["pds-splitpanel","drawer","sidebar","section"],card:["surface","container","elevated","content"],surface:["card","background","elevated","theming","color"],box:["card","container","surface"],elevated:["surface","shadow","card"],color:["palette","theme","surface","primary","secondary","accent"],colours:["color","palette","theme"],palette:["color","theme","tokens"],theme:["color","palette","dark","light","surface"],primary:["color","button","badge","surface"],secondary:["color","button","badge","surface"],accent:["color","highlight","surface"],border:["border-gradient","border-glow","outline","radius"],effect:["border-gradient","border-glow","shadow","glass","animation"],gradient:["border-gradient","color","background"],glow:["border-glow","effect","shadow"],shadow:["elevated","effect","depth","card"],radius:["rounded","border","corner"],rounded:["radius","border","corner"],glass:["liquid-glass","backdrop","blur","effect"],icon:["pds-icon","graphic","symbol","svg","phosphor"],image:["img","figure","gallery","media","picture"],img:["image","figure","gallery","media"],figure:["image","media","caption"],gallery:["images","grid","collection","media"],media:["image","icon","figure","gallery","video"],table:["data","grid","tabular","rows","columns"],data:["table","json","form","display"],editor:["pds-richtext","wysiwyg","text","content"],wysiwyg:["editor","pds-richtext","richtext"],richtext:["pds-richtext","editor","wysiwyg","text"],calendar:["pds-calendar","date","picker","datepicker"],date:["calendar","pds-calendar","picker","input"],datepicker:["calendar","date","pds-calendar"],scroll:["pds-scrollrow","carousel","horizontal","overflow"],carousel:["scroll","pds-scrollrow","slider","gallery"],accordion:["details","collapsible","expandable","disclosure"],collapsible:["accordion","details","expandable"],expandable:["accordion","collapsible","disclosure"],details:["accordion","summary","disclosure"],divider:["hr","separator","line","rule"],separator:["divider","hr","line"],hr:["divider","separator","horizontal-rule"],interactive:["hover","focus","active","disabled","button","link"],hover:["interactive","effect","state"],focus:["interactive","accessibility","state","outline"],disabled:["interactive","state","muted"],loading:["btn-working","spinner","async","progress"],spinner:["loading","btn-working","progress"],accessibility:["a11y","aria","focus","label","required"],a11y:["accessibility","aria","semantic"],aria:["accessibility","a11y","role"],required:["form","validation","asterisk","input"],validation:["form","required","error","feedback"],start:["getting-started","intro","overview","whatispds"],intro:["getting-started","overview","start","docs"],getting:["getting-started","start","intro"],overview:["intro","start","summary","layout-overview"],docs:["documentation","reference","guide"],primitive:["primitives"],component:["components"],enhancement:["enhancements"],foundation:["foundations","color","icon","typography","spacing","tokens"],utility:["utilities","text","backdrop","shadow","border","helper"],pattern:["patterns","layout","responsive","mobile-stack"]}};Xe=M});var Re={};U(Re,{AutoDefiner:()=>ce});async function yt(...a){let t={};a.length&&typeof a[a.length-1]=="object"&&(t=a.pop()||{});let e=a,{baseURL:r,mapper:o=u=>`${u}.js`,onError:n=(u,c)=>console.error(`[defineWebComponents] ${u}:`,c)}=t,i=r?new URL(r,typeof location<"u"?location.href:import.meta.url):new URL("./",import.meta.url),s=u=>u.toLowerCase().replace(/(^|-)([a-z])/g,(c,d,p)=>p.toUpperCase()),l=async u=>{try{if(customElements.get(u))return{tag:u,status:"already-defined"};let c=o(u),p=await import(c instanceof URL?c.href:new URL(c,i).href),h=p?.default??p?.[s(u)];if(!h){if(customElements.get(u))return{tag:u,status:"self-defined"};throw new Error(`No export found for ${u}. Expected default export or named export "${s(u)}".`)}return customElements.get(u)?{tag:u,status:"race-already-defined"}:(customElements.define(u,h),{tag:u,status:"defined"})}catch(c){throw n(u,c),c}};return Promise.all(e.map(l))}var ce,We=D(()=>{ce=class{constructor(t={}){let{baseURL:e,mapper:r,onError:o,predicate:n=()=>!0,attributeModule:i="data-module",root:s=document,scanExisting:l=!0,debounceMs:u=16,observeShadows:c=!0,enhancers:d=[],patchAttachShadow:p=!0}=t,h=new Set,m=new Set,b=new Set,f=new Map,w=new WeakMap,S=new WeakMap,$=0,L=!1,R=null,F=y=>{if(!y||!d.length)return;let v=S.get(y);v||(v=new Set,S.set(y,v));for(let x of d)if(!(!x.selector||!x.run)&&!v.has(x.selector))try{y.matches&&y.matches(x.selector)&&(x.run(y),v.add(x.selector))}catch(C){console.warn(`[AutoDefiner] Error applying enhancer for selector "${x.selector}":`,C)}},A=(y,v)=>{if(!L&&!(!y||!y.includes("-"))&&!customElements.get(y)&&!m.has(y)&&!b.has(y)){if(v&&v.getAttribute){let x=v.getAttribute(i);x&&!f.has(y)&&f.set(y,x)}h.add(y),k()}},k=()=>{$||($=setTimeout(W,u))},z=y=>{if(y){if(y.nodeType===1){let v=y,x=v.tagName?.toLowerCase();x&&x.includes("-")&&!customElements.get(x)&&n(x,v)&&A(x,v),F(v),c&&v.shadowRoot&&E(v.shadowRoot)}y.querySelectorAll&&y.querySelectorAll("*").forEach(v=>{let x=v.tagName?.toLowerCase();x&&x.includes("-")&&!customElements.get(x)&&n(x,v)&&A(x,v),F(v),c&&v.shadowRoot&&E(v.shadowRoot)})}},E=y=>{if(!y||w.has(y))return;z(y);let v=new MutationObserver(x=>{for(let C of x)C.addedNodes?.forEach(N=>{z(N)}),C.type==="attributes"&&C.target&&z(C.target)});v.observe(y,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[i,...d.map(x=>x.selector).filter(x=>x.startsWith("data-"))]}),w.set(y,v)};async function W(){if(clearTimeout($),$=0,!h.size)return;let y=Array.from(h);h.clear(),y.forEach(v=>m.add(v));try{let v=x=>f.get(x)??(r?r(x):`${x}.js`);await yt(...y,{baseURL:e,mapper:v,onError:(x,C)=>{b.add(x),o?.(x,C)}})}catch{}finally{y.forEach(v=>m.delete(v))}}let K=s===document?document.documentElement:s,q=new MutationObserver(y=>{for(let v of y)v.addedNodes?.forEach(x=>{z(x)}),v.type==="attributes"&&v.target&&z(v.target)});if(q.observe(K,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[i,...d.map(y=>y.selector).filter(y=>y.startsWith("data-"))]}),c&&p&&Element.prototype.attachShadow){let y=Element.prototype.attachShadow;Element.prototype.attachShadow=function(x){let C=y.call(this,x);if(x&&x.mode==="open"){E(C);let N=this.tagName?.toLowerCase();N&&N.includes("-")&&!customElements.get(N)&&A(N,this)}return C},R=()=>Element.prototype.attachShadow=y}return l&&z(K),{stop(){L=!0,q.disconnect(),R&&R(),$&&(clearTimeout($),$=0),w.forEach(y=>y.disconnect())},flush:W}}static async define(...t){let e={};t.length&&typeof t[t.length-1]=="object"&&(e=t.pop()||{});let r=t,{baseURL:o,mapper:n=c=>`${c}.js`,onError:i=(c,d)=>console.error(`[defineWebComponents] ${c}:`,d)}=e,s=o?new URL(o,typeof location<"u"?location.href:import.meta.url):new URL("./",import.meta.url),l=c=>c.toLowerCase().replace(/(^|-)([a-z])/g,(d,p,h)=>h.toUpperCase()),u=async c=>{try{if(customElements.get(c))return{tag:c,status:"already-defined"};let d=n(c),h=await import(d instanceof URL?d.href:new URL(d,s).href),m=h?.default??h?.[l(c)];if(!m){if(customElements.get(c))return{tag:c,status:"self-defined"};throw new Error(`No export found for ${c}. Expected default export or named export "${l(c)}".`)}return customElements.get(c)?{tag:c,status:"race-already-defined"}:(customElements.define(c,m),{tag:c,status:"defined"})}catch(d){throw i(c,d),d}};return Promise.all(r.map(u))}}});var be={};U(be,{PDSQuery:()=>fe});var fe,ye=D(()=>{fe=class{constructor(t){this.pds=t,this.intents={color:["color","colours","shade","tint","hue","foreground","background","text","fill","bg","fg"],spacing:["spacing","space","gap","padding","margin","distance","rhythm"],typography:["font","text","type","typography","heading","body","size","weight","family"],border:["border","outline","stroke","edge","frame"],radius:["radius","rounded","corner","curve","round"],shadow:["shadow","elevation","depth","glow","drop-shadow"],component:["component","element","widget"],utility:["utility","class","helper","css"],layout:["layout","container","grid","flex","group","arrange","organize"],pattern:["pattern","example","template","structure"],interaction:["hover","focus","active","disabled","pressed","selected","checked"]},this.entities={button:["button","btn","cta"],input:["input","field","textbox","text-field","form-control"],card:["card","panel"],badge:["badge","pill","tag","chip"],surface:["surface","background","layer","container"],icon:["icon","svg","glyph","symbol"],link:["link","anchor","hyperlink"],nav:["nav","navigation","menu"],modal:["modal","dialog","popup","overlay"],drawer:["drawer","sidebar","panel"],tab:["tab","tabstrip"],toast:["toast","notification","callout","message","alert"]},this.questionWords=["what","which","how","where","when","show","find","get","give","tell"]}async search(t){if(!t||t.length<2)return[];let e=t.toLowerCase().trim(),r=this.tokenize(e),o=this.analyzeQuery(r,e),n=[];o.intents.has("color")&&n.push(...this.queryColors(o,e)),(o.intents.has("utility")||o.intents.has("border")||o.intents.has("layout")||e.includes("class"))&&n.push(...this.queryUtilities(o,e)),(o.intents.has("component")||o.entities.size>0)&&n.push(...this.queryComponents(o,e)),(o.intents.has("layout")||o.intents.has("pattern"))&&n.push(...this.queryPatterns(o,e)),o.intents.has("typography")&&n.push(...this.queryTypography(o,e)),o.intents.has("spacing")&&n.push(...this.querySpacing(o,e));let i=new Map;for(let s of n){let l=s.value;(!i.has(l)||i.get(l).score<s.score)&&i.set(l,s)}return Array.from(i.values()).sort((s,l)=>l.score-s.score).slice(0,10)}tokenize(t){return t.toLowerCase().replace(/[?!.]/g,"").split(/\s+/).filter(e=>e.length>0)}analyzeQuery(t,e){let r={intents:new Set,entities:new Set,modifiers:new Set,isQuestion:!1,tokens:t,fullText:e};r.isQuestion=this.questionWords.some(o=>t.includes(o));for(let[o,n]of Object.entries(this.intents))n.some(i=>t.includes(i)||e.includes(i))&&r.intents.add(o);for(let[o,n]of Object.entries(this.entities))n.some(i=>t.includes(i)||e.includes(i))&&r.entities.add(o);return(t.includes("hover")||e.includes("hover"))&&r.modifiers.add("hover"),(t.includes("focus")||e.includes("focus"))&&r.modifiers.add("focus"),(t.includes("active")||e.includes("active"))&&r.modifiers.add("active"),(t.includes("disabled")||e.includes("disabled"))&&r.modifiers.add("disabled"),r}queryColors(t,e){let r=[],o=this.pds.compiled;if(!o?.tokens?.colors)return r;let n=o.tokens.colors,i=Array.from(t.entities),s=Array.from(t.modifiers);if(s.includes("focus")&&t.intents.has("border")&&i.includes("input")&&r.push({text:"Focus border color: var(--color-primary-500)",value:"--color-primary-500",icon:"palette",category:"Color Token",score:100,cssVar:"var(--color-primary-500)",description:"Primary color used for focus states on form inputs"}),(e.includes("foreground")||e.includes("text"))&&(e.includes("surface")||t.entities.has("surface"))&&(r.push({text:"Text on surface: var(--surface-text)",value:"--surface-text",icon:"palette",category:"Surface Token",score:95,cssVar:"var(--surface-text)",description:"Default text color for current surface"}),r.push({text:"Secondary text: var(--surface-text-secondary)",value:"--surface-text-secondary",icon:"palette",category:"Surface Token",score:90,cssVar:"var(--surface-text-secondary)",description:"Secondary/muted text on surface"})),e.includes("primary")||e.includes("accent")||e.includes("secondary")){let l=e.includes("primary")?"primary":e.includes("accent")?"accent":"secondary";for(let u of[500,600,700]){let c=`--color-${l}-${u}`;r.push({text:`${l.charAt(0).toUpperCase()+l.slice(1)} ${u}: var(${c})`,value:c,icon:"palette",category:"Color Scale",score:80-(u-500)/100,cssVar:`var(${c})`,description:`${l} color scale shade ${u}`})}}if(i.includes("button")&&t.intents.has("color")){let l=s[0];l?r.push({text:`Button ${l} fill: var(--primary-fill-${l})`,value:`--primary-fill-${l}`,icon:"palette",category:"Interactive Token",score:92,description:`Button background color in ${l} state`}):r.push({text:"Button fill: var(--primary-fill)",value:"--primary-fill",icon:"palette",category:"Interactive Token",score:88,description:"Default button background color"})}return r}queryUtilities(t,e){let r=[],o=this.pds.ontology;if(!o?.utilities)return r;let n=o.utilities,i=[];for(let s of Object.values(n))if(typeof s=="object")for(let l of Object.values(s))Array.isArray(l)&&i.push(...l);return t.intents.has("border")&&i.filter(l=>l.includes("border")||l.includes("outline")).forEach(l=>{let u=80;e.includes("gradient")&&l.includes("gradient")&&(u=95),e.includes("glow")&&l.includes("glow")&&(u=95),r.push({text:`${l} - Border utility class`,value:l,icon:"code",category:"Utility Class",score:u,code:`<div class="${l}">...</div>`,description:this.describeUtility(l)})}),t.intents.has("layout")&&i.filter(l=>l.includes("flex")||l.includes("grid")||l.includes("items-")||l.includes("justify-")||l.includes("gap-")).forEach(l=>{r.push({text:`${l} - Layout utility`,value:l,icon:"layout",category:"Utility Class",score:85,code:`<div class="${l}">...</div>`,description:this.describeUtility(l)})}),e.includes("group")&&t.entities.has("button")&&r.push({text:".btn-group - Group buttons together",value:".btn-group",icon:"code",category:"Utility Class",score:90,code:`<div class="btn-group">
|
|
1
|
+
var qe=Object.defineProperty;var D=(a,t)=>()=>(a&&(t=a(a=0)),t);var U=(a,t)=>{for(var e in t)qe(a,e,{get:t[e],enumerable:!0})};var xe={};U(xe,{enums:()=>g});var g,G=D(()=>{g={FontWeights:{light:300,normal:400,medium:500,semibold:600,bold:700},LineHeights:{tight:1.25,normal:1.5,relaxed:1.75},BorderWidths:{hairline:.5,thin:1,medium:2,thick:3},RadiusSizes:{none:0,small:4,medium:8,large:16,xlarge:24,xxlarge:32},ShadowDepths:{none:"none",light:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",medium:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",deep:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",extreme:"0 25px 50px -12px rgba(0, 0, 0, 0.25)"},TransitionSpeeds:{fast:150,normal:250,slow:350},AnimationEasings:{linear:"linear",ease:"ease","ease-in":"ease-in","ease-out":"ease-out","ease-in-out":"ease-in-out",bounce:"cubic-bezier(0.68, -0.55, 0.265, 1.55)"},TouchTargetSizes:{compact:36,standard:44,comfortable:48,spacious:56},LinkStyles:{inline:"inline",block:"block",button:"button"},FocusStyles:{ring:"ring",outline:"outline",border:"border",glow:"glow"},TabSizes:{compact:2,standard:4,wide:8},SelectIcons:{chevron:"chevron",arrow:"arrow",caret:"caret",none:"none"},IconSizes:{xs:16,sm:20,md:24,lg:32,xl:48,"2xl":64,"3xl":96}}});var $e={};U($e,{default:()=>Xe,findComponentForElement:()=>Je,getAllSelectors:()=>Ye,getAllTags:()=>Ke,getByCategory:()=>Ze,ontology:()=>M,searchOntology:()=>Qe});function j(a,t){if(!a||!t)return!1;try{return a.matches(t)}catch{return!1}}function Se(a,t){if(!a||!t||!a.closest)return null;try{return a.closest(t)}catch{return null}}function Je(a,{maxDepth:t=5}={}){if(!a||a.closest&&a.closest(".showcase-toc"))return null;let e=a,r=0;for(;e&&r<t;){if(r++,e.tagName==="DS-SHOWCASE")return null;if(e.classList&&e.classList.contains("showcase-section")){e=e.parentElement;continue}for(let n of PDS.ontology.enhancements){let i=n.selector||n;if(j(e,i))return{element:e,componentType:"enhanced-component",displayName:n.description||i,id:n.id}}if(e.tagName==="FIELDSET"){let n=e.getAttribute("role");if(n==="group"||n==="radiogroup")return{element:e,componentType:"form-group",displayName:n==="radiogroup"?"radio group":"form group"}}if(e.tagName==="LABEL"&&e.querySelector&&e.querySelector("input,select,textarea"))return{element:e,componentType:"form-control",displayName:"label with input"};let o=e.closest?e.closest("label"):null;if(o&&o.querySelector&&o.querySelector("input,select,textarea"))return{element:o,componentType:"form-control",displayName:"label with input"};for(let n of PDS.ontology.primitives){for(let i of n.selectors||[]){let s=String(i||"").trim();if(s.includes("*")){if(s.startsWith(".")){let u=s.slice(1).replace(/\*/g,"");if(e.classList&&Array.from(e.classList).some(p=>p.startsWith(u)))return{element:e,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags};let c=e.parentElement,d=0;for(;c&&d<t;){if(c.classList&&Array.from(c.classList).some(p=>p.startsWith(u))&&c.tagName!=="DS-SHOWCASE")return{element:c,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags};c=c.parentElement,d++}continue}continue}if(j(e,s))return{element:e,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags};let l=Se(e,s);if(l&&l.tagName!=="DS-SHOWCASE")return{element:l,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags}}if(e.classList){let i=Array.from(e.classList);for(let s of n.selectors||[])if(typeof s=="string"&&s.includes("*")&&s.startsWith(".")){let l=s.slice(1).replace(/\*/g,"");if(i.some(u=>u.startsWith(l)))return{element:e,componentType:"pds-primitive",displayName:n.name||n.id,id:n.id,tags:n.tags}}}}for(let n of PDS.ontology.layoutPatterns||[])for(let i of n.selectors||[]){let s=String(i||"").trim();if(s.includes("*")){if(s.startsWith(".")){let u=s.slice(1).replace(/\*/g,"");if(e.classList&&Array.from(e.classList).some(c=>c.startsWith(u)))return{element:e,componentType:"layout-pattern",displayName:n.name||n.id,id:n.id,tags:n.tags}}continue}if(j(e,s))return{element:e,componentType:"layout-pattern",displayName:n.name||n.id,id:n.id,tags:n.tags};let l=Se(e,s);if(l&&l.tagName!=="DS-SHOWCASE")return{element:l,componentType:"layout-pattern",displayName:n.name||n.id,id:n.id,tags:n.tags}}if(e.tagName&&e.tagName.includes("-")){let n=e.tagName.toLowerCase(),i=PDS.ontology.components.find(s=>s.selectors.includes(n));return{element:e,componentType:"web-component",displayName:i?.name||n,id:i?.id||n,tags:i?.tags}}if(e.tagName==="BUTTON"){let n=e.querySelector&&e.querySelector("pds-icon");return{element:e,componentType:"button",displayName:n?"button with icon":"button",id:"button"}}if(j(e,"pds-icon")||e.closest&&e.closest("pds-icon")){let n=j(e,"pds-icon")?e:e.closest("pds-icon");return{element:n,componentType:"icon",displayName:`pds-icon (${n.getAttribute&&n.getAttribute("icon")||"unknown"})`,id:"pds-icon"}}if(j(e,"nav[data-dropdown]")||e.closest&&e.closest("nav[data-dropdown]"))return{element:j(e,"nav[data-dropdown]")?e:e.closest("nav[data-dropdown]"),componentType:"navigation",displayName:"dropdown menu",id:"dropdown"};e=e.parentElement}return null}function Ye(){let a=[];for(let t of PDS.ontology.primitives)a.push(...t.selectors||[]);for(let t of PDS.ontology.components)a.push(...t.selectors||[]);for(let t of PDS.ontology.layoutPatterns||[])a.push(...t.selectors||[]);return Array.from(new Set(a))}function Qe(a,t={}){let e=a.toLowerCase(),r=[],o=(n,i)=>{for(let s of n)(s.id?.toLowerCase().includes(e)||s.name?.toLowerCase().includes(e)||s.description?.toLowerCase().includes(e)||s.tags?.some(u=>u.toLowerCase().includes(e))||s.category?.toLowerCase().includes(e)||s.selectors?.some(u=>u.toLowerCase().includes(e)))&&r.push({...s,type:i})};return(!t.type||t.type==="primitive")&&o(M.primitives,"primitive"),(!t.type||t.type==="component")&&o(M.components,"component"),(!t.type||t.type==="layout")&&o(M.layoutPatterns,"layout"),(!t.type||t.type==="enhancement")&&o(M.enhancements,"enhancement"),r}function Ze(a){let t=a.toLowerCase();return{primitives:M.primitives.filter(e=>e.category===t),components:M.components.filter(e=>e.category===t),layouts:M.layoutPatterns.filter(e=>e.category===t)}}function Ke(){let a=new Set;return M.primitives.forEach(t=>t.tags?.forEach(e=>a.add(e))),M.components.forEach(t=>t.tags?.forEach(e=>a.add(e))),M.layoutPatterns.forEach(t=>t.tags?.forEach(e=>a.add(e))),M.enhancements.forEach(t=>t.tags?.forEach(e=>a.add(e))),Array.from(a).sort()}var M,Xe,ae=D(()=>{M={meta:{name:"Pure Design System Ontology",version:"1.0.0",description:"Complete metadata registry for PDS primitives, components, utilities, and tokens"},tokens:{colors:{semantic:["primary","secondary","accent","success","warning","danger","info"],neutral:["gray"],shades:[50,100,200,300,400,500,600,700,800,900,950],surface:["base","subtle","elevated","sunken","overlay","inverse","translucent"],text:["default","muted","subtle","inverse","primary","success","warning","danger","info"]},spacing:{scale:["1","2","3","4","5","6","8","10","12","16","20","24"],semantic:["xs","sm","md","lg","xl"]},typography:{families:["heading","body","mono"],sizes:["xs","sm","base","lg","xl","2xl","3xl","4xl","5xl"],weights:["light","normal","medium","semibold","bold"]},radius:{scale:["none","sm","base","md","lg","xl","2xl","full"]},shadows:{scale:["none","sm","base","md","lg","xl","inner"]},themes:["light","dark"],breakpoints:{sm:640,md:768,lg:1024,xl:1280}},primitives:[{id:"badge",name:"Badge / Pill",description:"Inline status indicators and labels",selectors:[".badge",".badge-primary",".badge-secondary",".badge-success",".badge-info",".badge-warning",".badge-danger",".badge-outline",".badge-sm",".badge-lg",".pill",".tag",".chip"],tags:["status","label","indicator","inline"],category:"feedback"},{id:"card",name:"Card",description:"Content container with padding, border-radius, and optional shadow",selectors:[".card",".card-basic",".card-elevated",".card-outlined",".card-interactive"],tags:["container","content","grouping"],category:"container"},{id:"surface",name:"Surface",description:"Smart surface classes with automatic text/background color handling",selectors:[".surface-base",".surface-subtle",".surface-elevated",".surface-sunken",".surface-overlay",".surface-inverse",".surface-translucent",".surface-translucent-25",".surface-translucent-50",".surface-translucent-75",".surface-primary",".surface-secondary",".surface-success",".surface-warning",".surface-danger",".surface-info"],tags:["background","theming","color","container"],category:"theming"},{id:"callout",name:"Callout",description:"Contextual information and notification messages",selectors:[".callout",".callout-info",".callout-success",".callout-warning",".callout-danger",".callout-error",".callout-dismissible"],tags:["feedback","message","notification","status","information"],category:"feedback"},{id:"empty-state",name:"Empty State",description:"Empty state layout for missing data or onboarding",selectors:[".empty-state"],tags:["empty","no-data","zero","placeholder","onboarding","state"],category:"feedback"},{id:"dialog",name:"Dialog",description:"Modal dialog element",selectors:["dialog",".dialog"],tags:["modal","overlay","popup","modal"],category:"overlay"},{id:"divider",name:"Divider",description:"Horizontal rule with optional label",selectors:["hr","hr[data-content]"],tags:["separator","line","content-divider"],category:"layout"},{id:"table",name:"Table",description:"Data tables with responsive and styling variants",selectors:["table",".table-responsive",".table-striped",".table-bordered",".table-compact",".data-table"],tags:["data","grid","tabular","responsive"],category:"data"},{id:"button",name:"Button",description:"Interactive button element with variants",selectors:["button",".btn-primary",".btn-secondary",".btn-outline",".btn-sm",".btn-xs",".btn-lg",".btn-working",".icon-only"],tags:["interactive","action","cta","form"],category:"action"},{id:"fieldset",name:"Fieldset Group",description:"Form field grouping for radio/checkbox groups",selectors:["fieldset[role='group']","fieldset[role='radiogroup']","fieldset.buttons"],tags:["form","grouping","radio","checkbox"],category:"form"},{id:"label-field",name:"Label+Input",description:"Semantic label wrapping form input",selectors:["label","label:has(input)","label:has(select)","label:has(textarea)"],tags:["form","input","accessibility"],category:"form"},{id:"accordion",name:"Accordion",description:"Collapsible content sections",selectors:[".accordion",".accordion-item","details","details > summary"],tags:["expandable","collapsible","disclosure"],category:"disclosure"},{id:"icon",name:"Icon",description:"SVG icon element with size and color variants",selectors:["pds-icon",".icon-xs",".icon-sm",".icon-md",".icon-lg",".icon-xl",".icon-primary",".icon-secondary",".icon-accent",".icon-success",".icon-warning",".icon-danger",".icon-info",".icon-muted",".icon-subtle",".icon-text",".icon-text-start",".icon-text-end"],tags:["graphic","symbol","visual"],category:"media"},{id:"figure",name:"Figure/Media",description:"Figure element for images with captions",selectors:["figure","figure.media","figcaption"],tags:["image","media","caption"],category:"media"},{id:"gallery",name:"Gallery",description:"Image gallery grid",selectors:[".gallery",".gallery-grid",".img-gallery"],tags:["images","grid","collection"],category:"media"},{id:"form",name:"Form Container",description:"Form styling and layout",selectors:["form",".form-container",".form-actions",".field-description"],tags:["form","input","submission"],category:"form"},{id:"navigation",name:"Navigation",description:"Navigation elements and menus",selectors:["nav","nav[data-dropdown]","menu","nav menu li"],tags:["menu","links","routing"],category:"navigation"}],components:[{id:"pds-tabstrip",name:"Tab Strip",description:"Tabbed interface component",selectors:["pds-tabstrip"],tags:["tabs","navigation","panels"],category:"navigation"},{id:"pds-drawer",name:"Drawer",description:"Slide-out panel overlay",selectors:["pds-drawer"],tags:["panel","overlay","sidebar"],category:"overlay"},{id:"pds-fab",name:"FAB",description:"Floating Action Button with expandable satellite actions",selectors:["pds-fab"],tags:["button","action","floating","interactive"],category:"action"},{id:"pds-upload",name:"Upload",description:"File upload component with drag-and-drop",selectors:["pds-upload"],tags:["file","upload","drag-drop","form"],category:"form"},{id:"pds-icon",name:"Icon",description:"SVG icon web component",selectors:["pds-icon"],tags:["icon","graphic","svg"],category:"media"},{id:"pds-toaster",name:"Toaster",description:"Toast notification container",selectors:["pds-toaster"],tags:["notification","toast","feedback"],category:"feedback"},{id:"pds-form",name:"JSON Form",description:"Auto-generated form from JSON Schema",selectors:["pds-form"],tags:["form","schema","auto-generate"],category:"form"},{id:"pds-live-edit",name:"Live Edit",description:"Contextual live editing for PDS design settings",selectors:["pds-live-edit"],tags:["editor","live","config","tooling"],category:"tooling"},{id:"pds-splitpanel",name:"Split Panel",description:"Resizable split pane layout",selectors:["pds-splitpanel"],tags:["layout","resize","panels"],category:"layout"},{id:"pds-scrollrow",name:"Scroll Row",description:"Horizontal scrolling row with snap points",selectors:["pds-scrollrow"],tags:["scroll","horizontal","carousel"],category:"layout"},{id:"pds-richtext",name:"Rich Text",description:"Rich text editor component",selectors:["pds-richtext"],tags:["editor","wysiwyg","text"],category:"form"},{id:"pds-calendar",name:"Calendar",description:"Date picker calendar component",selectors:["pds-calendar"],tags:["date","picker","calendar"],category:"form"}],layoutPatterns:[{id:"container",name:"Container",description:"Centered max-width wrapper with padding",selectors:[".container"],tags:["wrapper","centered","max-width","page"],category:"structure"},{id:"grid",name:"Grid",description:"CSS Grid layout container",selectors:[".grid"],tags:["layout","columns","css-grid"],category:"layout"},{id:"grid-cols",name:"Grid Columns",description:"Fixed column count grids",selectors:[".grid-cols-1",".grid-cols-2",".grid-cols-3",".grid-cols-4",".grid-cols-6"],tags:["columns","fixed","grid"],category:"layout"},{id:"grid-auto",name:"Auto-fit Grid",description:"Responsive auto-fit grid with minimum widths",selectors:[".grid-auto-sm",".grid-auto-md",".grid-auto-lg",".grid-auto-xl"],tags:["responsive","auto-fit","fluid"],category:"layout"},{id:"flex",name:"Flex Container",description:"Flexbox layout with direction and wrap modifiers",selectors:[".flex",".flex-wrap",".flex-col",".flex-row"],tags:["flexbox","layout","alignment"],category:"layout"},{id:"grow",name:"Flex Grow",description:"Fill remaining flex space",selectors:[".grow"],tags:["flex","expand","fill"],category:"layout"},{id:"stack",name:"Stack",description:"Vertical flex layout with predefined gaps",selectors:[".stack-sm",".stack-md",".stack-lg",".stack-xl"],tags:["vertical","spacing","column"],category:"layout"},{id:"gap",name:"Gap",description:"Spacing between flex/grid children",selectors:[".gap-0",".gap-xs",".gap-sm",".gap-md",".gap-lg",".gap-xl"],tags:["spacing","margin","gutters"],category:"spacing"},{id:"items",name:"Items Alignment",description:"Cross-axis alignment for flex/grid",selectors:[".items-start",".items-center",".items-end",".items-stretch",".items-baseline"],tags:["alignment","vertical","cross-axis"],category:"alignment"},{id:"justify",name:"Justify Content",description:"Main-axis alignment for flex/grid",selectors:[".justify-start",".justify-center",".justify-end",".justify-between",".justify-around",".justify-evenly"],tags:["alignment","horizontal","main-axis"],category:"alignment"},{id:"max-width",name:"Max-Width",description:"Content width constraints",selectors:[".max-w-sm",".max-w-md",".max-w-lg",".max-w-xl"],tags:["width","constraint","readable"],category:"sizing"},{id:"section",name:"Section Spacing",description:"Vertical padding for content sections",selectors:[".section",".section-lg"],tags:["spacing","vertical","padding"],category:"spacing"},{id:"mobile-stack",name:"Mobile Stack",description:"Stack on mobile, row on desktop",selectors:[".mobile-stack"],tags:["responsive","mobile","breakpoint"],category:"responsive"}],utilities:{text:{alignment:[".text-left",".text-center",".text-right"],color:[".text-muted"],overflow:[".truncate"]},backdrop:{base:[".backdrop"],variants:[".backdrop-light",".backdrop-dark"],blur:[".backdrop-blur-sm",".backdrop-blur-md",".backdrop-blur-lg"]},shadow:{scale:[".shadow-sm",".shadow-base",".shadow-md",".shadow-lg",".shadow-xl",".shadow-inner",".shadow-none"]},border:{gradient:[".border-gradient",".border-gradient-primary",".border-gradient-accent",".border-gradient-secondary",".border-gradient-soft",".border-gradient-medium",".border-gradient-strong"],glow:[".border-glow",".border-glow-sm",".border-glow-lg",".border-glow-primary",".border-glow-accent",".border-glow-success",".border-glow-warning",".border-glow-danger"],combined:[".border-gradient-glow"]},media:{image:[".img-gallery",".img-rounded-sm",".img-rounded-md",".img-rounded-lg",".img-rounded-xl",".img-rounded-full",".img-inline"],video:[".video-responsive"],figure:[".figure-responsive"]},effects:{glass:[".liquid-glass"]}},responsive:{prefixes:["sm","md","lg"],utilities:{grid:[":grid-cols-2",":grid-cols-3",":grid-cols-4"],flex:[":flex-row"],text:[":text-sm",":text-lg",":text-xl"],spacing:[":p-6",":p-8",":p-12",":gap-6",":gap-8",":gap-12"],width:[":w-1/2",":w-1/3",":w-1/4"],display:[":hidden",":block"]}},enhancements:[{id:"dropdown",selector:"nav[data-dropdown]",description:"Dropdown menu from nav element",tags:["menu","interactive","navigation"]},{id:"toggle",selector:"label[data-toggle]",description:"Toggle switch from checkbox",tags:["switch","boolean","form"]},{id:"range",selector:'input[type="range"]',description:"Enhanced range slider with output",tags:["slider","input","form"]},{id:"required",selector:"form [required]",description:"Required field asterisk indicator",tags:["validation","form","accessibility"]},{id:"open-group",selector:"fieldset[role=group][data-open]",description:"Editable checkbox/radio group",tags:["form","dynamic","editable"]},{id:"working-button",selector:"button.btn-working, a.btn-working",description:"Button with loading spinner",tags:["loading","async","feedback"]},{id:"labeled-divider",selector:"hr[data-content]",description:"Horizontal rule with centered label",tags:["divider","separator","text"]}],categories:{feedback:{description:"User feedback and status indicators",primitives:["callout","badge","empty-state"],components:["pds-toaster"]},form:{description:"Form inputs and controls",primitives:["button","fieldset","label-field","form"],components:["pds-upload","pds-form","pds-richtext","pds-calendar"]},layout:{description:"Page structure and content arrangement",patterns:["container","grid","flex","stack","section"],components:["pds-splitpanel","pds-scrollrow"]},navigation:{description:"Navigation and routing",primitives:["navigation"],components:["pds-tabstrip","pds-drawer"]},media:{description:"Images, icons, and visual content",primitives:["icon","figure","gallery"],components:["pds-icon"]},overlay:{description:"Modal and overlay content",primitives:["dialog"],components:["pds-drawer"]},data:{description:"Data display and tables",primitives:["table"]},theming:{description:"Colors, surfaces, and visual theming",primitives:["surface"]},action:{description:"Interactive actions and buttons",primitives:["button"],components:["pds-fab"]}},styles:{typography:["headings","body","code","links"],icons:{source:"svg",sets:["core","brand"]},interactive:["focus","hover","active","disabled"],states:["success","warning","danger","info","muted"]},searchRelations:{text:["typography","truncate","text-muted","text-primary","text-left","text-center","text-right","pds-richtext","heading","font","label","paragraph","content","ellipsis","overflow","input"],font:["typography","text","heading","font-size","font-weight","font-family"],type:["typography","text","font"],typography:["text","font","heading","truncate","text-muted"],heading:["typography","text","font-size","h1","h2","h3"],truncate:["text","overflow","ellipsis","clamp","nowrap","typography"],ellipsis:["truncate","text","overflow","clamp"],overflow:["truncate","scroll","hidden","text"],paragraph:["text","typography","content","body"],content:["text","typography","body","article"],empty:["empty-state","placeholder","zero","no-data","onboarding","callout","card","icon","button"],"empty state":["empty-state","empty","no-data","zero","onboarding"],"no data":["empty-state","empty","zero","placeholder"],form:["input","field","label","button","fieldset","pds-form","pds-upload","pds-richtext","pds-calendar","required","validation","submit"],input:["form","field","text","label","required","validation"],field:["form","input","label","required"],button:["btn","interactive","action","submit","form","btn-primary","btn-secondary","btn-working","pds-fab","floating"],btn:["button","interactive","action","pds-fab"],fab:["pds-fab","floating","button","action","menu"],floating:["fab","pds-fab","button","action"],toggle:["switch","checkbox","boolean","form","interactive"],switch:["toggle","checkbox","boolean"],slider:["range","input","form"],range:["slider","input","form"],checkbox:["toggle","form","fieldset","boolean"],radio:["fieldset","form","group"],select:["dropdown","form","input","menu"],upload:["file","pds-upload","form","drag-drop"],file:["upload","pds-upload","form"],modal:["dialog","pds-ask","overlay","popup","backdrop","pds-drawer","alert","confirm","prompt","lightbox"],dialog:["modal","pds-ask","overlay","popup","backdrop","alert","confirm","prompt"],popup:["modal","dialog","dropdown","popover","overlay","tooltip"],popover:["popup","tooltip","overlay"],overlay:["modal","dialog","backdrop","drawer","popup"],drawer:["pds-drawer","sidebar","panel","overlay","modal"],backdrop:["overlay","modal","dialog","blur"],confirm:["pds-ask","dialog","modal"],prompt:["pds-ask","dialog","modal","input"],ask:["pds-ask","dialog","confirm","prompt","modal"],dropdown:["menu","nav-dropdown","select","popover"],menu:["dropdown","navigation","nav","list"],nav:["navigation","menu","dropdown","tabs","links"],navigation:["nav","menu","tabs","pds-tabstrip","links","routing"],tabs:["pds-tabstrip","navigation","panels"],tab:["tabs","pds-tabstrip","panel"],link:["navigation","anchor","href","routing"],callout:["notification","feedback","message","status","toast","information","alert","warning","error","info","success","danger"],alert:["callout","notification","feedback","message","status","toast","modal","dialog","pds-ask","confirm","warning","error","info","success","danger"],notification:["callout","toast","pds-toaster","feedback","message","popup","alert"],toast:["pds-toaster","notification","callout","feedback","popup","snackbar","alert"],feedback:["callout","notification","toast","status","badge","validation","error","success","alert"],message:["callout","notification","feedback","dialog","toast","alert"],status:["badge","callout","indicator","feedback","state","alert"],error:["callout","danger","validation","feedback","warning","alert"],success:["callout","feedback","badge","status","check","alert"],warning:["callout","caution","feedback","status","alert"],info:["callout","information","feedback","status","alert"],danger:["callout","error","feedback","destructive","delete","alert"],badge:["status","pill","tag","chip","indicator","label"],pill:["badge","tag","chip"],tag:["badge","pill","chip","label"],chip:["badge","pill","tag"],layout:["grid","flex","stack","container","gap","spacing","pds-splitpanel","section"],grid:["layout","columns","css-grid","table","gallery"],flex:["layout","flexbox","alignment","row","column"],stack:["layout","vertical","spacing","column","gap"],container:["wrapper","layout","max-width","centered"],gap:["spacing","margin","padding","layout"],spacing:["gap","margin","padding","section"],section:["spacing","layout","container","page"],split:["pds-splitpanel","resizable","panels","layout"],panel:["pds-splitpanel","drawer","sidebar","section"],card:["surface","container","elevated","content"],surface:["card","background","elevated","theming","color"],box:["card","container","surface"],elevated:["surface","shadow","card"],color:["palette","theme","surface","primary","secondary","accent"],colours:["color","palette","theme"],palette:["color","theme","tokens"],theme:["color","palette","dark","light","surface"],primary:["color","button","badge","surface"],secondary:["color","button","badge","surface"],accent:["color","highlight","surface"],border:["border-gradient","border-glow","outline","radius"],effect:["border-gradient","border-glow","shadow","glass","animation"],gradient:["border-gradient","color","background"],glow:["border-glow","effect","shadow"],shadow:["elevated","effect","depth","card"],radius:["rounded","border","corner"],rounded:["radius","border","corner"],glass:["liquid-glass","backdrop","blur","effect"],icon:["pds-icon","graphic","symbol","svg","phosphor"],image:["img","figure","gallery","media","picture"],img:["image","figure","gallery","media"],figure:["image","media","caption"],gallery:["images","grid","collection","media"],media:["image","icon","figure","gallery","video"],table:["data","grid","tabular","rows","columns"],data:["table","json","form","display"],editor:["pds-richtext","wysiwyg","text","content"],wysiwyg:["editor","pds-richtext","richtext"],richtext:["pds-richtext","editor","wysiwyg","text"],calendar:["pds-calendar","date","picker","datepicker"],date:["calendar","pds-calendar","picker","input"],datepicker:["calendar","date","pds-calendar"],scroll:["pds-scrollrow","carousel","horizontal","overflow"],carousel:["scroll","pds-scrollrow","slider","gallery"],accordion:["details","collapsible","expandable","disclosure"],collapsible:["accordion","details","expandable"],expandable:["accordion","collapsible","disclosure"],details:["accordion","summary","disclosure"],divider:["hr","separator","line","rule"],separator:["divider","hr","line"],hr:["divider","separator","horizontal-rule"],interactive:["hover","focus","active","disabled","button","link"],hover:["interactive","effect","state"],focus:["interactive","accessibility","state","outline"],disabled:["interactive","state","muted"],loading:["btn-working","spinner","async","progress"],spinner:["loading","btn-working","progress"],accessibility:["a11y","aria","focus","label","required"],a11y:["accessibility","aria","semantic"],aria:["accessibility","a11y","role"],required:["form","validation","asterisk","input"],validation:["form","required","error","feedback"],start:["getting-started","intro","overview","whatispds"],intro:["getting-started","overview","start","docs"],getting:["getting-started","start","intro"],overview:["intro","start","summary","layout-overview"],docs:["documentation","reference","guide"],primitive:["primitives"],component:["components"],enhancement:["enhancements"],foundation:["foundations","color","icon","typography","spacing","tokens"],utility:["utilities","text","backdrop","shadow","border","helper"],pattern:["patterns","layout","responsive","mobile-stack"]}};Xe=M});var Re={};U(Re,{AutoDefiner:()=>ce});async function yt(...a){let t={};a.length&&typeof a[a.length-1]=="object"&&(t=a.pop()||{});let e=a,{baseURL:r,mapper:o=u=>`${u}.js`,onError:n=(u,c)=>console.error(`[defineWebComponents] ${u}:`,c)}=t,i=r?new URL(r,typeof location<"u"?location.href:import.meta.url):new URL("./",import.meta.url),s=u=>u.toLowerCase().replace(/(^|-)([a-z])/g,(c,d,p)=>p.toUpperCase()),l=async u=>{try{if(customElements.get(u))return{tag:u,status:"already-defined"};let c=o(u),p=await import(c instanceof URL?c.href:new URL(c,i).href),m=p?.default??p?.[s(u)];if(!m){if(customElements.get(u))return{tag:u,status:"self-defined"};throw new Error(`No export found for ${u}. Expected default export or named export "${s(u)}".`)}return customElements.get(u)?{tag:u,status:"race-already-defined"}:(customElements.define(u,m),{tag:u,status:"defined"})}catch(c){throw n(u,c),c}};return Promise.all(e.map(l))}var ce,We=D(()=>{ce=class{constructor(t={}){let{baseURL:e,mapper:r,onError:o,predicate:n=()=>!0,attributeModule:i="data-module",root:s=document,scanExisting:l=!0,debounceMs:u=16,observeShadows:c=!0,enhancers:d=[],patchAttachShadow:p=!0}=t,m=new Set,h=new Set,b=new Set,f=new Map,w=new WeakMap,S=new WeakMap,$=0,L=!1,R=null,F=y=>{if(!y||!d.length)return;let v=S.get(y);v||(v=new Set,S.set(y,v));for(let x of d)if(!(!x.selector||!x.run)&&!v.has(x.selector))try{y.matches&&y.matches(x.selector)&&(x.run(y),v.add(x.selector))}catch(C){console.warn(`[AutoDefiner] Error applying enhancer for selector "${x.selector}":`,C)}},A=(y,v)=>{if(!L&&!(!y||!y.includes("-"))&&!customElements.get(y)&&!h.has(y)&&!b.has(y)){if(v&&v.getAttribute){let x=v.getAttribute(i);x&&!f.has(y)&&f.set(y,x)}m.add(y),k()}},k=()=>{$||($=setTimeout(W,u))},z=y=>{if(y){if(y.nodeType===1){let v=y,x=v.tagName?.toLowerCase();x&&x.includes("-")&&!customElements.get(x)&&n(x,v)&&A(x,v),F(v),c&&v.shadowRoot&&E(v.shadowRoot)}y.querySelectorAll&&y.querySelectorAll("*").forEach(v=>{let x=v.tagName?.toLowerCase();x&&x.includes("-")&&!customElements.get(x)&&n(x,v)&&A(x,v),F(v),c&&v.shadowRoot&&E(v.shadowRoot)})}},E=y=>{if(!y||w.has(y))return;z(y);let v=new MutationObserver(x=>{for(let C of x)C.addedNodes?.forEach(N=>{z(N)}),C.type==="attributes"&&C.target&&z(C.target)});v.observe(y,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[i,...d.map(x=>x.selector).filter(x=>x.startsWith("data-"))]}),w.set(y,v)};async function W(){if(clearTimeout($),$=0,!m.size)return;let y=Array.from(m);m.clear(),y.forEach(v=>h.add(v));try{let v=x=>f.get(x)??(r?r(x):`${x}.js`);await yt(...y,{baseURL:e,mapper:v,onError:(x,C)=>{b.add(x),o?.(x,C)}})}catch{}finally{y.forEach(v=>h.delete(v))}}let K=s===document?document.documentElement:s,q=new MutationObserver(y=>{for(let v of y)v.addedNodes?.forEach(x=>{z(x)}),v.type==="attributes"&&v.target&&z(v.target)});if(q.observe(K,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[i,...d.map(y=>y.selector).filter(y=>y.startsWith("data-"))]}),c&&p&&Element.prototype.attachShadow){let y=Element.prototype.attachShadow;Element.prototype.attachShadow=function(x){let C=y.call(this,x);if(x&&x.mode==="open"){E(C);let N=this.tagName?.toLowerCase();N&&N.includes("-")&&!customElements.get(N)&&A(N,this)}return C},R=()=>Element.prototype.attachShadow=y}return l&&z(K),{stop(){L=!0,q.disconnect(),R&&R(),$&&(clearTimeout($),$=0),w.forEach(y=>y.disconnect())},flush:W}}static async define(...t){let e={};t.length&&typeof t[t.length-1]=="object"&&(e=t.pop()||{});let r=t,{baseURL:o,mapper:n=c=>`${c}.js`,onError:i=(c,d)=>console.error(`[defineWebComponents] ${c}:`,d)}=e,s=o?new URL(o,typeof location<"u"?location.href:import.meta.url):new URL("./",import.meta.url),l=c=>c.toLowerCase().replace(/(^|-)([a-z])/g,(d,p,m)=>m.toUpperCase()),u=async c=>{try{if(customElements.get(c))return{tag:c,status:"already-defined"};let d=n(c),m=await import(d instanceof URL?d.href:new URL(d,s).href),h=m?.default??m?.[l(c)];if(!h){if(customElements.get(c))return{tag:c,status:"self-defined"};throw new Error(`No export found for ${c}. Expected default export or named export "${l(c)}".`)}return customElements.get(c)?{tag:c,status:"race-already-defined"}:(customElements.define(c,h),{tag:c,status:"defined"})}catch(d){throw i(c,d),d}};return Promise.all(r.map(u))}}});var be={};U(be,{PDSQuery:()=>fe});var fe,ye=D(()=>{fe=class{constructor(t){this.pds=t,this.intents={color:["color","colours","shade","tint","hue","foreground","background","text","fill","bg","fg"],spacing:["spacing","space","gap","padding","margin","distance","rhythm"],typography:["font","text","type","typography","heading","body","size","weight","family"],border:["border","outline","stroke","edge","frame"],radius:["radius","rounded","corner","curve","round"],shadow:["shadow","elevation","depth","glow","drop-shadow"],component:["component","element","widget"],utility:["utility","class","helper","css"],layout:["layout","container","grid","flex","group","arrange","organize"],pattern:["pattern","example","template","structure"],interaction:["hover","focus","active","disabled","pressed","selected","checked"]},this.entities={button:["button","btn","cta"],input:["input","field","textbox","text-field","form-control"],card:["card","panel"],badge:["badge","pill","tag","chip"],surface:["surface","background","layer","container"],icon:["icon","svg","glyph","symbol"],link:["link","anchor","hyperlink"],nav:["nav","navigation","menu"],modal:["modal","dialog","popup","overlay"],drawer:["drawer","sidebar","panel"],tab:["tab","tabstrip"],toast:["toast","notification","callout","message","alert"]},this.questionWords=["what","which","how","where","when","show","find","get","give","tell"]}async search(t){if(!t||t.length<2)return[];let e=t.toLowerCase().trim(),r=this.tokenize(e),o=this.analyzeQuery(r,e),n=[];o.intents.has("color")&&n.push(...this.queryColors(o,e)),(o.intents.has("utility")||o.intents.has("border")||o.intents.has("layout")||e.includes("class"))&&n.push(...this.queryUtilities(o,e)),(o.intents.has("component")||o.entities.size>0)&&n.push(...this.queryComponents(o,e)),(o.intents.has("layout")||o.intents.has("pattern"))&&n.push(...this.queryPatterns(o,e)),o.intents.has("typography")&&n.push(...this.queryTypography(o,e)),o.intents.has("spacing")&&n.push(...this.querySpacing(o,e));let i=new Map;for(let s of n){let l=s.value;(!i.has(l)||i.get(l).score<s.score)&&i.set(l,s)}return Array.from(i.values()).sort((s,l)=>l.score-s.score).slice(0,10)}tokenize(t){return t.toLowerCase().replace(/[?!.]/g,"").split(/\s+/).filter(e=>e.length>0)}analyzeQuery(t,e){let r={intents:new Set,entities:new Set,modifiers:new Set,isQuestion:!1,tokens:t,fullText:e};r.isQuestion=this.questionWords.some(o=>t.includes(o));for(let[o,n]of Object.entries(this.intents))n.some(i=>t.includes(i)||e.includes(i))&&r.intents.add(o);for(let[o,n]of Object.entries(this.entities))n.some(i=>t.includes(i)||e.includes(i))&&r.entities.add(o);return(t.includes("hover")||e.includes("hover"))&&r.modifiers.add("hover"),(t.includes("focus")||e.includes("focus"))&&r.modifiers.add("focus"),(t.includes("active")||e.includes("active"))&&r.modifiers.add("active"),(t.includes("disabled")||e.includes("disabled"))&&r.modifiers.add("disabled"),r}queryColors(t,e){let r=[],o=this.pds.compiled;if(!o?.tokens?.colors)return r;let n=o.tokens.colors,i=Array.from(t.entities),s=Array.from(t.modifiers);if(s.includes("focus")&&t.intents.has("border")&&i.includes("input")&&r.push({text:"Focus border color: var(--color-primary-500)",value:"--color-primary-500",icon:"palette",category:"Color Token",score:100,cssVar:"var(--color-primary-500)",description:"Primary color used for focus states on form inputs"}),(e.includes("foreground")||e.includes("text"))&&(e.includes("surface")||t.entities.has("surface"))&&(r.push({text:"Text on surface: var(--surface-text)",value:"--surface-text",icon:"palette",category:"Surface Token",score:95,cssVar:"var(--surface-text)",description:"Default text color for current surface"}),r.push({text:"Secondary text: var(--surface-text-secondary)",value:"--surface-text-secondary",icon:"palette",category:"Surface Token",score:90,cssVar:"var(--surface-text-secondary)",description:"Secondary/muted text on surface"})),e.includes("primary")||e.includes("accent")||e.includes("secondary")){let l=e.includes("primary")?"primary":e.includes("accent")?"accent":"secondary";for(let u of[500,600,700]){let c=`--color-${l}-${u}`;r.push({text:`${l.charAt(0).toUpperCase()+l.slice(1)} ${u}: var(${c})`,value:c,icon:"palette",category:"Color Scale",score:80-(u-500)/100,cssVar:`var(${c})`,description:`${l} color scale shade ${u}`})}}if(i.includes("button")&&t.intents.has("color")){let l=s[0];l?r.push({text:`Button ${l} fill: var(--primary-fill-${l})`,value:`--primary-fill-${l}`,icon:"palette",category:"Interactive Token",score:92,description:`Button background color in ${l} state`}):r.push({text:"Button fill: var(--primary-fill)",value:"--primary-fill",icon:"palette",category:"Interactive Token",score:88,description:"Default button background color"})}return r}queryUtilities(t,e){let r=[],o=this.pds.ontology;if(!o?.utilities)return r;let n=o.utilities,i=[];for(let s of Object.values(n))if(typeof s=="object")for(let l of Object.values(s))Array.isArray(l)&&i.push(...l);return t.intents.has("border")&&i.filter(l=>l.includes("border")||l.includes("outline")).forEach(l=>{let u=80;e.includes("gradient")&&l.includes("gradient")&&(u=95),e.includes("glow")&&l.includes("glow")&&(u=95),r.push({text:`${l} - Border utility class`,value:l,icon:"code",category:"Utility Class",score:u,code:`<div class="${l}">...</div>`,description:this.describeUtility(l)})}),t.intents.has("layout")&&i.filter(l=>l.includes("flex")||l.includes("grid")||l.includes("items-")||l.includes("justify-")||l.includes("gap-")).forEach(l=>{r.push({text:`${l} - Layout utility`,value:l,icon:"layout",category:"Utility Class",score:85,code:`<div class="${l}">...</div>`,description:this.describeUtility(l)})}),e.includes("group")&&t.entities.has("button")&&r.push({text:".btn-group - Group buttons together",value:".btn-group",icon:"code",category:"Utility Class",score:90,code:`<div class="btn-group">
|
|
2
2
|
<button class="btn-primary">One</button>
|
|
3
3
|
<button class="btn-primary">Two</button>
|
|
4
4
|
</div>`,description:"Container for grouped buttons with connected styling"}),r}queryComponents(t,e){let r=[],o=this.pds.ontology;return!o?.components&&!o?.primitives||(o.components&&o.components.forEach(n=>{let i=this.scoreMatch(e,n.name+" "+n.id);i>50&&r.push({text:`<${n.id}> - ${n.name}`,value:n.id,icon:"brackets-curly",category:"Web Component",score:i,code:`<${n.id}></${n.id}>`,description:n.description||`${n.name} web component`})}),o.primitives&&o.primitives.forEach(n=>{let i=this.scoreMatch(e,n.name+" "+n.id);if(i>50){let s=n.selectors?.[0]||n.id;r.push({text:`${s} - ${n.name}`,value:n.id,icon:"tag",category:"Primitive",score:i-5,code:this.generatePrimitiveExample(n),description:n.description||`${n.name} primitive element`})}}),e.includes("icon")&&(e.includes("only")||e.includes("button"))&&r.push({text:'Icon-only button: <button class="btn-icon">',value:"btn-icon",icon:"star",category:"Pattern",score:95,code:`<button class="btn-icon btn-primary">
|
|
@@ -16,7 +16,7 @@ var qe=Object.defineProperty;var D=(a,t)=>()=>(a&&(t=a(a=0)),t);var U=(a,t)=>{fo
|
|
|
16
16
|
</section>`,description:"Semantic section element for content grouping"}))),r}queryTypography(t,e){let r=[],o=this.pds.compiled;if(!o?.tokens?.typography)return r;let n=o.tokens.typography;return(e.includes("heading")||e.includes("title"))&&r.push({text:"Heading font: var(--font-family-heading)",value:"--font-family-heading",icon:"text-aa",category:"Typography Token",score:85,cssVar:"var(--font-family-heading)",description:"Font family for headings"}),(e.includes("body")||e.includes("text"))&&r.push({text:"Body font: var(--font-family-body)",value:"--font-family-body",icon:"text-aa",category:"Typography Token",score:85,cssVar:"var(--font-family-body)",description:"Font family for body text"}),r}querySpacing(t,e){let r=[],o=this.pds.compiled;if(!o?.tokens?.spacing)return r;let n=o.tokens.spacing;for(let[i,s]of Object.entries(n))["2","4","6","8"].includes(i)&&r.push({text:`Spacing ${i}: var(--spacing-${i})`,value:`--spacing-${i}`,icon:"ruler",category:"Spacing Token",score:75,cssVar:`var(--spacing-${i})`,description:`Spacing value: ${s}`});return r}scoreMatch(t,e){let r=t.toLowerCase(),o=e.toLowerCase(),n=0;if(r===o)return 100;o.includes(r)&&(n+=80);let i=this.tokenize(r),s=this.tokenize(o),l=i.filter(u=>s.includes(u)).length;return n+=l/i.length*40,o.startsWith(r)&&(n+=20),Math.min(100,n)}generatePrimitiveExample(t){let e=t.selectors?.[0]||t.id;return e.includes("button")||t.id==="button"?'<button class="btn-primary">Click me</button>':e.includes("card")||t.id==="card"?`<article class="card">
|
|
17
17
|
<h3>Title</h3>
|
|
18
18
|
<p>Content</p>
|
|
19
|
-
</article>`:e.includes("badge")||t.id==="badge"?'<span class="badge">New</span>':`<${e}>Content</${e}>`}describeUtility(t){return t.includes("border-gradient")?"Apply animated gradient border effect":t.includes("border-glow")?"Apply glowing border effect":t.includes("flex")?"Flexbox container utility":t.includes("grid")?"Grid container utility":t.includes("gap-")?"Set gap between flex/grid children":t.includes("items-")?"Align items in flex container":t.includes("justify-")?"Justify content in flex container":t===".btn-group"?"Group buttons with connected styling":"Utility class for styling"}}});var Ie={};U(Ie,{deepMerge:()=>Ue,fragmentFromTemplateLike:()=>wt,isObject:()=>Z,parseHTML:()=>kt});function Z(a){return a&&typeof a=="object"&&!Array.isArray(a)}function Ue(a,t){let e={...a};return Z(a)&&Z(t)&&Object.keys(t).forEach(r=>{Z(t[r])?r in a?e[r]=Ue(a[r],t[r]):Object.assign(e,{[r]:t[r]}):Object.assign(e,{[r]:t[r]})}),e}function wt(a){let t=Array.isArray(a?.strings)?a.strings:[],e=Array.isArray(a?.values)?a.values:[],r=new Set,o=[],n=/(\s)(\.[\w-]+)=\s*$/;for(let d=0;d<t.length;d+=1){let p=t[d]??"",h=p.match(n);if(h&&d<e.length){let b=h[2].slice(1),f=`pds-val-${d}`;p=p.replace(n,`$1data-pds-prop="${b}:${f}"`),r.add(d)}o.push(p),d<e.length&&!r.has(d)&&o.push(`<!--pds-val-${d}-->`)}let i=document.createElement("template");i.innerHTML=o.join("");let s=(d,p)=>{let h=d.parentNode;if(!h)return;if(p==null){h.removeChild(d);return}let m=b=>{if(b!=null){if(b instanceof Node){h.insertBefore(b,d);return}if(Array.isArray(b)){b.forEach(f=>m(f));return}h.insertBefore(document.createTextNode(String(b)),d)}};m(p),h.removeChild(d)},l=document.createTreeWalker(i.content,NodeFilter.SHOW_COMMENT),u=[];for(;l.nextNode();){let d=l.currentNode;d?.nodeValue?.startsWith("pds-val-")&&u.push(d)}return u.forEach(d=>{let p=Number(d.nodeValue.replace("pds-val-",""));s(d,e[p])}),i.content.querySelectorAll("*").forEach(d=>{let p=d.getAttribute("data-pds-prop");if(!p)return;let[h,m]=p.split(":"),b=Number(String(m).replace("pds-val-",""));h&&Number.isInteger(b)&&(d[h]=e[b]),d.removeAttribute("data-pds-prop")}),i.content}function kt(a){return new DOMParser().parseFromString(a,"text/html").body.childNodes}var He=D(()=>{});G();var P="any",te={type:"object",allowUnknown:!1,properties:{id:{type:"string"},name:{type:"string"},tags:{type:"array",items:{type:"string"}},description:{type:"string"},options:{type:"object",allowUnknown:!0},form:{type:"object",allowUnknown:!0},colors:{type:"object",allowUnknown:!1,properties:{primary:{type:"string",relations:{tokens:["--color-primary-*","--color-primary-fill","--color-primary-text","--background-mesh-*"]}},secondary:{type:"string",relations:{tokens:["--color-secondary-*","--color-gray-*","--background-mesh-*"]}},accent:{type:"string",relations:{tokens:["--color-accent-*","--background-mesh-*"]}},background:{type:"string",relations:{tokens:["--color-surface-*","--color-surface-translucent-*","--surface-*-bg","--surface-*-text","--surface-*-text-secondary","--surface-*-text-muted","--surface-*-icon","--surface-*-icon-subtle","--surface-*-shadow","--surface-*-border"]}},success:{type:["string","null"],relations:{tokens:["--color-success-*"]}},warning:{type:["string","null"],relations:{tokens:["--color-warning-*"]}},danger:{type:["string","null"],relations:{tokens:["--color-danger-*"]}},info:{type:["string","null"],relations:{tokens:["--color-info-*"]}},gradientStops:{type:"number"},elevationOpacity:{type:"number",relations:{tokens:["--surface-*-shadow"]}},darkMode:{type:"object",allowUnknown:!0,properties:{background:{type:"string",relations:{theme:"dark",tokens:["--color-surface-*","--color-surface-translucent-*","--surface-*-bg","--surface-*-text","--surface-*-text-secondary","--surface-*-text-muted","--surface-*-icon","--surface-*-icon-subtle","--surface-*-shadow","--surface-*-border"]}},primary:{type:"string",relations:{theme:"dark",tokens:["--color-primary-*","--color-primary-fill","--color-primary-text"]}},secondary:{type:"string",relations:{theme:"dark",tokens:["--color-secondary-*","--color-gray-*"]}},accent:{type:"string",relations:{theme:"dark",tokens:["--color-accent-*"]}}}}}},typography:{type:"object",allowUnknown:!1,properties:{fontFamilyHeadings:{type:"string",relations:{tokens:["--font-family-headings"]}},fontFamilyBody:{type:"string",relations:{tokens:["--font-family-body"]}},fontFamilyMono:{type:"string",relations:{tokens:["--font-family-mono"]}},baseFontSize:{type:"number",relations:{tokens:["--font-size-*"]}},fontScale:{type:"number",relations:{tokens:["--font-size-*"]}},fontWeightLight:{type:["string","number"],relations:{tokens:["--font-weight-light"]}},fontWeightNormal:{type:["string","number"],relations:{tokens:["--font-weight-normal"]}},fontWeightMedium:{type:["string","number"],relations:{tokens:["--font-weight-medium"]}},fontWeightSemibold:{type:["string","number"],relations:{tokens:["--font-weight-semibold"]}},fontWeightBold:{type:["string","number"],relations:{tokens:["--font-weight-bold"]}},lineHeightTight:{type:["string","number"],relations:{tokens:["--font-line-height-tight"]}},lineHeightNormal:{type:["string","number"],relations:{tokens:["--font-line-height-normal"]}},lineHeightRelaxed:{type:["string","number"],relations:{tokens:["--font-line-height-relaxed"]}},letterSpacingTight:{type:"number"},letterSpacingNormal:{type:"number"},letterSpacingWide:{type:"number"}}},spatialRhythm:{type:"object",allowUnknown:!1,properties:{baseUnit:{type:"number",relations:{tokens:["--spacing-*"]}},scaleRatio:{type:"number"},maxSpacingSteps:{type:"number",relations:{tokens:["--spacing-*"]}},containerMaxWidth:{type:["number","string"]},containerPadding:{type:"number"},inputPadding:{type:"number",relations:{rules:[{selectors:["input","textarea","select"],properties:["padding"]}]}},buttonPadding:{type:"number",relations:{rules:[{selectors:["button",".btn"],properties:["padding"]}]}},sectionSpacing:{type:"number",relations:{rules:[{selectors:["section"],properties:["margin","padding"]}]}}}},shape:{type:"object",allowUnknown:!1,properties:{radiusSize:{type:["string","number"],relations:{tokens:["--radius-*"]}},customRadius:{type:["string","number","null"]},borderWidth:{type:["string","number"],relations:{tokens:["--border-width-*"]}}}},behavior:{type:"object",allowUnknown:!1,properties:{transitionSpeed:{type:["string","number"],relations:{tokens:["--transition-*"]}},animationEasing:{type:"string"},customTransitionSpeed:{type:["number","null"]},customEasing:{type:["string","null"]},focusRingWidth:{type:"number",relations:{rules:[{selectors:[":focus-visible"],properties:["outline-width","box-shadow"]}]}},focusRingOpacity:{type:"number",relations:{rules:[{selectors:[":focus-visible"],properties:["box-shadow","outline-color"]}]}},hoverOpacity:{type:"number"}}},layout:{type:"object",allowUnknown:!1,properties:{maxWidth:{type:["number","string"],relations:{tokens:["--layout-max-width","--layout-max-width-*"]}},maxWidths:{type:"object",allowUnknown:!1,properties:{sm:{type:["number","string"],relations:{tokens:["--layout-max-width-sm"]}},md:{type:["number","string"],relations:{tokens:["--layout-max-width-md"]}},lg:{type:["number","string"],relations:{tokens:["--layout-max-width-lg"]}},xl:{type:["number","string"],relations:{tokens:["--layout-max-width-xl"]}}}},containerPadding:{type:["number","string"],relations:{tokens:["--layout-container-padding"]}},breakpoints:{type:"object",allowUnknown:!1,properties:{sm:{type:"number"},md:{type:"number"},lg:{type:"number"},xl:{type:"number"}}},gridColumns:{type:"number"},gridGutter:{type:"number"},densityCompact:{type:"number"},densityNormal:{type:"number"},densityComfortable:{type:"number"},buttonMinHeight:{type:"number"},inputMinHeight:{type:"number"},baseShadowOpacity:{type:"number",relations:{tokens:["--shadow-*"]}},darkMode:{type:"object",allowUnknown:!0,properties:{baseShadowOpacity:{type:"number",relations:{theme:"dark",tokens:["--shadow-*"]}}}},utilities:{type:"object",allowUnknown:!0},gridSystem:{type:"object",allowUnknown:!0},containerMaxWidth:{type:["number","string"]}}},layers:{type:"object",allowUnknown:!1,properties:{baseShadowOpacity:{type:"number",relations:{tokens:["--shadow-*"]}},shadowBlurMultiplier:{type:"number",relations:{tokens:["--shadow-*"]}},shadowOffsetMultiplier:{type:"number",relations:{tokens:["--shadow-*"]}},shadowDepth:{type:"string"},blurLight:{type:"number"},blurMedium:{type:"number"},blurHeavy:{type:"number"},baseZIndex:{type:"number",relations:{tokens:["--z-*"]}},zIndexStep:{type:"number",relations:{tokens:["--z-*"]}},zIndexBase:{type:"number"},zIndexDropdown:{type:"number"},zIndexSticky:{type:"number"},zIndexFixed:{type:"number"},zIndexModal:{type:"number"},zIndexPopover:{type:"number"},zIndexTooltip:{type:"number"},zIndexNotification:{type:"number"},darkMode:{type:"object",allowUnknown:!0,properties:{baseShadowOpacity:{type:"number",relations:{theme:"dark",tokens:["--shadow-*"]}}}}}},advanced:{type:"object",allowUnknown:!0},a11y:{type:"object",allowUnknown:!0},icons:{type:"object",allowUnknown:!1,properties:{set:{type:"string"},weight:{type:"string"},defaultSize:{type:"number",relations:{tokens:["--icon-size"]}},sizes:{type:"object",allowUnknown:!0},spritePath:{type:"string"},externalPath:{type:"string"},include:{type:"object",allowUnknown:!0}}},components:{type:"object",allowUnknown:!0},gap:{type:"number"},debug:{type:"boolean"}}},Ge={type:"object",allowUnknown:!0,properties:{mode:{type:"string"},preset:{type:"string"},design:te,enhancers:{type:["object","array"]},applyGlobalStyles:{type:"boolean"},manageTheme:{type:"boolean"},themeStorageKey:{type:"string"},preloadStyles:{type:"boolean"},criticalLayers:{type:"array",items:{type:"string"}},autoDefine:{type:"object",allowUnknown:!1,properties:{predefine:{type:"array",items:{type:"string"}},mapper:{type:P},enhancers:{type:["object","array"]},scanExisting:{type:"boolean"},observeShadows:{type:"boolean"},patchAttachShadow:{type:"boolean"},debounceMs:{type:"number"},onError:{type:P},baseURL:{type:"string"}}},managerURL:{type:"string"},manager:{type:P},liveEdit:{type:"boolean"},log:{type:P}}};function X(a){return a===null?"null":Array.isArray(a)?"array":typeof a}function Ve(a,t){if(t===P)return!0;let e=X(a);return Array.isArray(t)?t.includes(e):e===t}function V(a,t,e,r){if(!t)return;let o=t.type||P;if(!Ve(a,o)){r.push({path:e,expected:o,actual:X(a),message:`Expected ${o} but got ${X(a)}`});return}if(o==="array"&&t.items&&Array.isArray(a)&&a.forEach((n,i)=>{V(n,t.items,`${e}[${i}]`,r)}),o==="object"&&a&&typeof a=="object"){let n=t.properties||{};for(let[i,s]of Object.entries(a)){if(!Object.prototype.hasOwnProperty.call(n,i)){t.allowUnknown||r.push({path:`${e}.${i}`,expected:"known property",actual:"unknown",message:`Unknown property "${i}"`});continue}V(s,n[i],`${e}.${i}`,r)}}}function ee(a,t="",e={}){if(!a||typeof a!="object")return e;if(a.relations&&t&&(e[t]=a.relations),a.type==="object"&&a.properties&&Object.entries(a.properties).forEach(([r,o])=>{let n=t?`${t}.${r}`:r;ee(o,n,e)}),a.type==="array"&&a.items){let r=`${t}[]`;ee(a.items,r,e)}return e}var we=ee(te,"");function re(a,{log:t,context:e="PDS config"}={}){if(!a||typeof a!="object")return[];let r=[];return V(a,te,"design",r),r.length&&typeof t=="function"&&r.forEach(o=>{t("warn",`[${e}] ${o.message} at ${o.path}`)}),r}function ke(a,{log:t,context:e="PDS config"}={}){if(!a||typeof a!="object")return[];let r=[];return V(a,Ge,"config",r),r.length&&typeof t=="function"&&r.forEach(o=>{t("warn",`[${e}] ${o.message} at ${o.path}`)}),r}var O={"ocean-breeze":{id:"ocean-breeze",name:"Ocean Breeze",tags:["playful"],description:"Fresh and calming ocean-inspired palette with professional undertones",options:{liquidGlassEffects:!0,backgroundMesh:3},colors:{primary:"#0891b2",secondary:"#64748b",accent:"#06b6d4",background:"#f0f9ff",darkMode:{background:"#0c1821",secondary:"#94a3b8",primary:"#0891b2"}},typography:{baseFontSize:17,fontScale:1.5,fontFamilyHeadings:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif',fontFamilyBody:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif'},spatialRhythm:{baseUnit:6,scaleRatio:1.2},shape:{radiusSize:g.RadiusSizes.xxlarge}},"midnight-steel":{id:"midnight-steel",name:"Midnight Steel",description:"Bold industrial aesthetic with sharp contrasts and urban edge",colors:{primary:"#3b82f6",secondary:"#52525b",accent:"#f59e0b",background:"#fafaf9",darkMode:{background:"#18181b",secondary:"#71717a",primary:"#3b82f6"}},typography:{baseFontSize:16,fontScale:1.333,fontFamilyHeadings:"'IBM Plex Sans', system-ui, -apple-system, sans-serif",fontFamilyBody:"'Inter', system-ui, -apple-system, sans-serif",fontWeightSemibold:600},spatialRhythm:{baseUnit:4,scaleRatio:1.25},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.thin}},"neural-glow":{id:"neural-glow",name:"Neural Glow",description:"AI-inspired with vibrant purple-blue gradients and futuristic vibes",colors:{primary:"#8b5cf6",secondary:"#6366f1",accent:"#ec4899",background:"#faf5ff",darkMode:{background:"#0f0a1a",secondary:"#818cf8",primary:"#8b5cf6"}},typography:{baseFontSize:16,fontScale:1.618,fontFamilyHeadings:"'Space Grotesk', system-ui, sans-serif",fontFamilyBody:"'Space Grotesk', system-ui, sans-serif"},spatialRhythm:{baseUnit:4,scaleRatio:1.5},shape:{radiusSize:g.RadiusSizes.xlarge,borderWidth:g.BorderWidths.medium},behavior:{transitionSpeed:g.TransitionSpeeds.fast}},"paper-and-ink":{id:"paper-and-ink",name:"Paper & Ink",tags:["app","featured"],themes:["light"],description:"Ultra-minimal design with focus on typography and whitespace",colors:{primary:"#171717",secondary:"#737373",accent:"#525252",background:"#ffffff",darkMode:{background:"#0a0a0a",secondary:"#a3a3a3",primary:"#737373"}},typography:{baseFontSize:18,fontScale:1.333,fontFamilyHeadings:"'Helvetica Neue', 'Arial', sans-serif",fontFamilyBody:"'Georgia', 'Times New Roman', serif",fontWeightNormal:400,fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.2},shape:{radiusSize:g.RadiusSizes.none,borderWidth:g.BorderWidths.thin}},"sunset-paradise":{id:"sunset-paradise",name:"Sunset Paradise",description:"Warm tropical colors evoking golden hour by the beach",options:{liquidGlassEffects:!0,backgroundMesh:2},colors:{primary:"#ea580c",secondary:"#d4a373",accent:"#fb923c",background:"#fffbeb",darkMode:{background:"#1a0f0a",secondary:"#c9a482",primary:"#f97316"}},typography:{baseFontSize:16,fontScale:1.5,fontFamilyHeadings:"'Quicksand', 'Comfortaa', sans-serif",fontFamilyBody:"'Quicksand', 'Comfortaa', sans-serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.5},shape:{radiusSize:g.RadiusSizes.xxlarge,borderWidth:g.BorderWidths.medium}},"retro-wave":{id:"retro-wave",name:"Retro Wave",description:"Nostalgic 80s-inspired palette with neon undertones",colors:{primary:"#c026d3",secondary:"#a78bfa",accent:"#22d3ee",background:"#fef3ff",darkMode:{background:"#1a0a1f",secondary:"#c4b5fd",primary:"#d946ef"}},typography:{baseFontSize:15,fontScale:1.5,fontFamilyHeadings:"'Orbitron', 'Impact', monospace",fontFamilyBody:"'Courier New', 'Courier', monospace",fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.25},shape:{radiusSize:g.RadiusSizes.none,borderWidth:g.BorderWidths.thick},behavior:{transitionSpeed:g.TransitionSpeeds.instant}},"forest-canopy":{id:"forest-canopy",name:"Forest Canopy",description:"Natural earth tones with organic, calming green hues",colors:{primary:"#059669",secondary:"#78716c",accent:"#84cc16",background:"#f0fdf4",darkMode:{background:"#0a1410",secondary:"#a8a29e",primary:"#10b981"}},typography:{baseFontSize:16,fontScale:1.414,fontFamilyHeadings:"'Merriweather Sans', 'Arial', sans-serif",fontFamilyBody:"'Merriweather', 'Georgia', serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.3},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.thin}},"ruby-elegance":{id:"ruby-elegance",name:"Ruby Elegance",description:"Sophisticated palette with rich ruby reds and warm accents",colors:{primary:"#dc2626",secondary:"#9ca3af",accent:"#be123c",background:"#fef2f2",darkMode:{background:"#1b0808",secondary:"#d1d5db",primary:"#ef4444"}},typography:{baseFontSize:17,fontScale:1.5,fontFamilyHeadings:"'Playfair Display', 'Georgia', serif",fontFamilyBody:"'Crimson Text', 'Garamond', serif",fontWeightNormal:400,fontWeightSemibold:600},spatialRhythm:{baseUnit:4,scaleRatio:1.333},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.thin}},"desert-dawn":{id:"desert-dawn",name:"Desert Dawn",description:"Sun-baked neutrals with grounded terracotta and cool oasis accents",colors:{primary:"#b45309",secondary:"#a8a29e",accent:"#0ea5a8",background:"#fcf6ef",darkMode:{background:"#12100e",secondary:"#d1d5db",primary:"#f59e0b"}},typography:{baseFontSize:16,fontScale:1.414,fontFamilyHeadings:"'Source Sans Pro', system-ui, -apple-system, sans-serif",fontFamilyBody:"'Source Serif Pro', Georgia, serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.3},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.medium}},"contrast-pro":{id:"contrast-pro",name:"Contrast Pro",description:"Accessibility-first, high-contrast UI with assertive clarity",colors:{primary:"#1f2937",secondary:"#111827",accent:"#eab308",background:"#ffffff",darkMode:{background:"#0b0f14",secondary:"#9ca3af",primary:"#9ca3af"}},typography:{baseFontSize:17,fontScale:1.2,fontFamilyHeadings:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontFamilyBody:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontWeightBold:700},spatialRhythm:{baseUnit:3,scaleRatio:1.2},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.thick},behavior:{transitionSpeed:g.TransitionSpeeds.fast,focusRingWidth:4}},"pastel-play":{id:"pastel-play",name:"Pastel Play",themes:["light"],description:"Playful pastels with soft surfaces and friendly rounded shapes",colors:{primary:"#db2777",secondary:"#a78bfa",accent:"#34d399",background:"#fff7fa",darkMode:{background:"#1a1016",secondary:"#c4b5fd",primary:"#ec4899"}},typography:{baseFontSize:16,fontScale:1.333,fontFamilyHeadings:"'Nunito', system-ui, -apple-system, sans-serif",fontFamilyBody:"'Nunito', system-ui, -apple-system, sans-serif",lineHeightRelaxed:g.LineHeights.relaxed},spatialRhythm:{baseUnit:6,scaleRatio:1.4},shape:{radiusSize:g.RadiusSizes.xxlarge,borderWidth:g.BorderWidths.thin},behavior:{transitionSpeed:g.TransitionSpeeds.slow,animationEasing:g.AnimationEasings["ease-out"]}},"brutalist-tech":{id:"brutalist-tech",name:"Brutalist Tech",description:"Stark grayscale with engineered accents and unapologetically bold structure",colors:{primary:"#111111",secondary:"#4b5563",accent:"#06b6d4",background:"#f8fafc",darkMode:{background:"#0c0c0c",secondary:"#9ca3af",primary:"#06b6d4"}},typography:{baseFontSize:15,fontScale:1.25,fontFamilyHeadings:"'JetBrains Mono', ui-monospace, Menlo, Consolas, monospace",fontFamilyBody:"'Inter', system-ui, -apple-system, sans-serif",letterSpacingTight:-.02},spatialRhythm:{baseUnit:4,scaleRatio:1.25},shape:{radiusSize:g.RadiusSizes.none,borderWidth:g.BorderWidths.thick},behavior:{transitionSpeed:g.TransitionSpeeds.instant}},"zen-garden":{id:"zen-garden",name:"Zen Garden",description:"Soft botanicals with contemplative spacing and balanced motion",colors:{primary:"#3f6212",secondary:"#6b7280",accent:"#7c3aed",background:"#f7fbef",darkMode:{background:"#0d130a",secondary:"#a3a3a3",primary:"#84cc16"}},typography:{baseFontSize:17,fontScale:1.414,fontFamilyHeadings:"'Merriweather', Georgia, serif",fontFamilyBody:"'Noto Sans', system-ui, -apple-system, sans-serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.35},shape:{radiusSize:g.RadiusSizes.large,borderWidth:g.BorderWidths.medium},behavior:{transitionSpeed:g.TransitionSpeeds.normal,animationEasing:g.AnimationEasings.ease}},"fitness-pro":{id:"fitness-pro",name:"Fitness Pro",tags:["app","featured"],description:"Health and fitness tracking aesthetic with data-driven dark surfaces and vibrant accent rings",options:{liquidGlassEffects:!0,backgroundMesh:2},colors:{primary:"#e91e63",secondary:"#78909c",accent:"#ab47bc",background:"#fafafa",darkMode:{background:"#1a1d21",secondary:"#78909c",primary:"#0a4ca4"}},typography:{baseFontSize:15,fontScale:1.25,fontFamilyHeadings:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightNormal:g.LineHeights.tight},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerPadding:1.25,sectionSpacing:2.5},shape:{radiusSize:g.RadiusSizes.large,borderWidth:g.BorderWidths.thin},layers:{shadowDepth:"medium",blurMedium:12},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-out"],focusRingWidth:2}},"travel-market":{id:"travel-market",name:"Travel Market",description:"Hospitality marketplace design with clean cards, subtle shadows, and trust-building neutrals",options:{liquidGlassEffects:!0,backgroundMesh:3},colors:{primary:"#d93251",secondary:"#717171",accent:"#144990",background:"#ffffff",darkMode:{background:"#222222",secondary:"#b0b0b0",primary:"#ff5a7a"}},typography:{baseFontSize:16,fontScale:1.2,fontFamilyHeadings:"'Circular', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Circular', system-ui, -apple-system, 'Segoe UI', sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightRelaxed:g.LineHeights.relaxed},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerMaxWidth:1440,containerPadding:1.5,sectionSpacing:3},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.thin},layers:{shadowDepth:"light",blurLight:8},behavior:{transitionSpeed:g.TransitionSpeeds.normal,animationEasing:g.AnimationEasings["ease-in-out"],hoverOpacity:.9}},"mobility-app":{id:"mobility-app",name:"Mobility App",tags:["app","featured"],description:"On-demand service platform with bold typography, map-ready colors, and action-driven UI",options:{liquidGlassEffects:!0,backgroundMesh:0},colors:{primary:"#000000",secondary:"#545454",accent:"#06c167",background:"#f6f6f6",darkMode:{background:"#0f0f0f",secondary:"#8a8a8a",primary:"#06c167"}},typography:{baseFontSize:16,fontScale:1.3,fontFamilyHeadings:"'UberMove', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'UberMove', system-ui, -apple-system, 'Segoe UI', sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.25,buttonPadding:1.25,inputPadding:1},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.medium},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-out"],focusRingWidth:3},a11y:{minTouchTarget:g.TouchTargetSizes.comfortable,focusStyle:g.FocusStyles.ring}},"fintech-secure":{id:"fintech-secure",name:"Fintech Secure",description:"Financial services app UI with trust-building blues, precise spacing, and security-first design",options:{liquidGlassEffects:!1,backgroundMesh:0},colors:{primary:"#0a2540",secondary:"#425466",accent:"#00d4ff",background:"#f7fafc",darkMode:{background:"#0a1929",secondary:"#8796a5",primary:"#00d4ff"}},typography:{baseFontSize:16,fontScale:1.25,fontFamilyHeadings:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyMono:"'JetBrains Mono', ui-monospace, 'Cascadia Code', monospace",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerMaxWidth:1280,sectionSpacing:2.5},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.thin},layers:{shadowDepth:"light",blurLight:6},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-in-out"],focusRingWidth:3,focusRingOpacity:.4},a11y:{minTouchTarget:g.TouchTargetSizes.standard,focusStyle:g.FocusStyles.ring}},"social-feed":{id:"social-feed",name:"Social Feed",tags:["app","featured"],description:"Content-first social platform with minimal chrome, bold actions, and vibrant media presentation",options:{liquidGlassEffects:!0,backgroundMesh:4},colors:{primary:"#1877f2",secondary:"#65676b",accent:"#fe2c55",background:"#ffffff",darkMode:{background:"#18191a",secondary:"#b0b3b8",primary:"#2d88ff"}},typography:{baseFontSize:15,fontScale:1.2,fontFamilyHeadings:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontFamilyBody:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightNormal:g.LineHeights.relaxed},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerMaxWidth:680,sectionSpacing:1.5},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.thin},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-out"],hoverOpacity:.85}},"enterprise-dash":{id:"enterprise-dash",tags:["app","featured"],name:"Enterprise Dashboard",description:"Data-dense business intelligence app interface with organized hierarchy and professional polish",options:{liquidGlassEffects:!1},colors:{primary:"#0066cc",secondary:"#5f6368",accent:"#1a73e8",background:"#ffffff",success:"#34a853",warning:"#fbbc04",danger:"#ea4335",darkMode:{background:"#202124",secondary:"#9aa0a6",primary:"#8ab4f8"}},typography:{baseFontSize:14,fontScale:1.2,fontFamilyHeadings:"'Roboto', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Roboto', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyMono:"'Roboto Mono', ui-monospace, Consolas, monospace",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightNormal:g.LineHeights.tight},spatialRhythm:{baseUnit:4,scaleRatio:1.2,containerMaxWidth:1600,containerPadding:1.5,sectionSpacing:2},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.thin},layers:{shadowDepth:"light",blurLight:4},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-in-out"],focusRingWidth:2},layout:{densityCompact:.85,gridColumns:12}}};O.default={id:"default",name:"Default",tags:["app","featured"],description:"Fresh and modern design system with balanced aesthetics and usability",options:{liquidGlassEffects:!0,backgroundMesh:4},form:{options:{widgets:{booleans:"toggle",numbers:"input",selects:"standard"},layouts:{fieldsets:"default",arrays:"default"},enhancements:{icons:!0,datalists:!0,rangeOutput:!0},validation:{showErrors:!0,validateOnChange:!1}}},colors:{primary:"#0e7490",secondary:"#a99b95",accent:"#e54271",background:"#e7e6de",darkMode:{background:"#16171a",secondary:"#8b9199",primary:"#06b6d4"},success:null,warning:"#B38600",danger:null,info:null,gradientStops:3,elevationOpacity:.05},typography:{baseFontSize:16,fontScale:1.2,fontFamilyHeadings:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif',fontFamilyBody:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif',fontFamilyMono:'ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace',fontWeightLight:g.FontWeights.light,fontWeightNormal:g.FontWeights.normal,fontWeightMedium:g.FontWeights.medium,fontWeightSemibold:g.FontWeights.semibold,fontWeightBold:g.FontWeights.bold,lineHeightTight:g.LineHeights.tight,lineHeightNormal:g.LineHeights.normal,lineHeightRelaxed:g.LineHeights.relaxed,letterSpacingTight:-.025,letterSpacingNormal:0,letterSpacingWide:.025},spatialRhythm:{baseUnit:4,scaleRatio:1.25,maxSpacingSteps:32,containerMaxWidth:1200,containerPadding:1,inputPadding:.75,buttonPadding:1,sectionSpacing:2},layers:{shadowDepth:"medium",blurLight:4,blurMedium:8,blurHeavy:16,zIndexBase:0,zIndexDropdown:1e3,zIndexSticky:1020,zIndexFixed:1030,zIndexModal:1040,zIndexPopover:1050,zIndexTooltip:1060,zIndexNotification:1070},shape:{radiusSize:g.RadiusSizes.large,borderWidth:g.BorderWidths.medium,customRadius:null},behavior:{transitionSpeed:g.TransitionSpeeds.normal,animationEasing:g.AnimationEasings["ease-out"],customTransitionSpeed:null,customEasing:null,focusRingWidth:3,focusRingOpacity:.3,hoverOpacity:.8},layout:{gridColumns:12,gridGutter:1,baseShadowOpacity:.1,darkMode:{baseShadowOpacity:.25},breakpoints:{sm:640,md:768,lg:1024,xl:1280},densityCompact:.8,densityNormal:1,densityComfortable:1.2,buttonMinHeight:g.TouchTargetSizes.standard,inputMinHeight:40,utilities:{grid:!0,flex:!0,spacing:!0,container:!0},gridSystem:{columns:[1,2,3,4,6],autoFitBreakpoints:{sm:"150px",md:"250px",lg:"350px",xl:"450px"},enableGapUtilities:!0},containerMaxWidth:"1400px",containerPadding:"var(--spacing-6)"},advanced:{linkStyle:g.LinkStyles.inline,colorDerivation:"hsl"},a11y:{minTouchTarget:g.TouchTargetSizes.standard,prefersReducedMotion:!0,focusStyle:g.FocusStyles.ring},icons:{set:"phosphor",weight:"regular",defaultSize:24,externalPath:"/assets/img/icons/",sizes:g.IconSizes,include:{navigation:["arrow-left","arrow-right","arrow-up","arrow-down","arrow-counter-clockwise","caret-left","caret-right","caret-down","caret-up","x","list","list-dashes","dots-three-vertical","dots-three","house","gear","magnifying-glass","funnel","tabs","sidebar"],actions:["plus","minus","check","trash","pencil","floppy-disk","copy","download","upload","share","link","eye","eye-slash","heart","star","bookmark","note-pencil","cursor-click","clipboard","magic-wand","sparkle"],communication:["envelope","bell","bell-ringing","bell-simple","chat-circle","phone","paper-plane-tilt","user","users","user-gear","at"],content:["image","file","file-text","file-css","file-js","folder","folder-open","book-open","camera","video-camera","play","pause","microphone","brackets-curly","code","folder-simple","grid-four","briefcase","chart-line","chart-bar","database","map-pin"],status:["info","warning","check-circle","x-circle","question","shield","shield-check","shield-warning","lock","lock-open","fingerprint","circle-notch"],time:["calendar","clock","timer","hourglass"],commerce:["shopping-cart","credit-card","currency-dollar","tag","receipt","storefront"],formatting:["text-align-left","text-align-center","text-align-right","text-b","text-italic","text-underline","list-bullets","list-numbers","text-aa"],system:["cloud","cloud-arrow-up","cloud-arrow-down","desktop","device-mobile","globe","wifi-high","battery-charging","sun","moon","moon-stars","palette","rocket","feather","square","circle","squares-four","lightning","wrench"]},spritePath:"public/assets/pds/icons/pds-icons.svg"},gap:4,debug:!1};function oe(a="log",t,...e){if(this?.debug||this?.design?.debug||!1||a==="error"||a==="warn"){let o=console[a]||console.log;e.length>0?o(t,...e):o(t)}}G();ae();var T=class a{static#g;static get instance(){return this.#g}#e;#a;constructor(t={}){this.options={debug:!1,...t},this.options.design||(this.options.design={}),this.options.debug&&this.options.log?.("debug","Generator options:",this.options),a.#g=this,this.tokens=this.generateTokens(),this.options.debug&&this.options.log?.("debug","Generated tokens:",this.tokens),this.#ke(),typeof CSSStyleSheet<"u"?this.#Ee():this.options.debug&&this.options.log?.("debug","[Generator] Skipping browser features (CSSStyleSheet not available)")}generateTokens(){let t=this.options.design||{},e=this.#M(t),r=t.layers||{},o=this.#m(r,e.light),n=this.#$(o),i=e.dark!=null?this.#$(this.#m(r,e.dark)):null;return{colors:this.#E(t.colors||{},e),spacing:this.generateSpacingTokens(t.spatialRhythm||{}),radius:this.#P(t.shape||{}),borderWidths:this.#O(t.shape||{}),typography:this.generateTypographyTokens(t.typography||{}),shadows:n,darkShadows:i,layout:this.#D(t.layout||{}),transitions:this.#U(t.behavior||{}),zIndex:this.#I(t.layers||{}),icons:this.#H(t.icons||{})}}#M(t={}){let e=t.layout||{},r=t.layers||{};return{light:this.#h(e.baseShadowOpacity??r.baseShadowOpacity),dark:this.#h(e.darkMode?.baseShadowOpacity??r.darkMode?.baseShadowOpacity)}}#h(t){let e=Number(t);if(Number.isFinite(e))return Math.min(Math.max(e,0),1)}#m(t={},e){let r={...t};return e!=null&&(r.baseShadowOpacity=e),r}#E(t,e={}){let{primary:r="#3b82f6",secondary:o="#64748b",accent:n="#ec4899",background:i="#ffffff",success:s=null,warning:l="#FFBF00",danger:u=null,info:c=null,darkMode:d={}}=t,p={primary:this.#r(r),secondary:this.#r(o),accent:this.#r(n),success:this.#r(s||this.#F(r)),warning:this.#r(l||n),danger:this.#r(u||this.#C(r)),info:this.#r(c||r),gray:this.#f(o),surface:this.#b(i)};return p.surface.fieldset=this.#T(p.surface),p.surfaceSmart=this.#k(p.surface,e),p.dark=this.#A(p,i,d),p.dark&&p.dark.surface&&(p.dark.surfaceSmart=this.#k(p.dark.surface,e)),p.interactive={light:{fill:this.#w(p.primary,4.5),text:p.primary[600]},dark:{fill:this.#w(p.dark.primary,4.5),text:this.#B(p.dark.primary,p.dark.surface.base,4.5)}},p}#r(t){let e=this.#n(t);return{50:this.#t(e.h,Math.max(e.s-10,10),Math.min(e.l+45,95)),100:this.#t(e.h,Math.max(e.s-5,15),Math.min(e.l+35,90)),200:this.#t(e.h,e.s,Math.min(e.l+25,85)),300:this.#t(e.h,e.s,Math.min(e.l+15,75)),400:this.#t(e.h,e.s,Math.min(e.l+5,65)),500:t,600:this.#t(e.h,e.s,Math.max(e.l-10,25)),700:this.#t(e.h,e.s,Math.max(e.l-20,20)),800:this.#t(e.h,e.s,Math.max(e.l-30,15)),900:this.#t(e.h,e.s,Math.max(e.l-40,10))}}#F(t){let e=this.#n(t);return this.#t(120,Math.max(e.s,60),45)}#C(t){let e=this.#n(t);return this.#t(0,Math.max(e.s,70),50)}#f(t){let e=this.#n(t),r=e.h,o=Math.min(e.s,10);return{50:this.#t(r,o,98),100:this.#t(r,o,95),200:this.#t(r,o,88),300:this.#t(r,o,78),400:this.#t(r,o,60),500:t,600:this.#t(r,Math.min(o+5,15),45),700:this.#t(r,Math.min(o+8,18),35),800:this.#t(r,Math.min(o+10,20),20),900:this.#t(r,Math.min(o+12,22),10)}}#b(t){let e=this.#n(t);return{base:t,subtle:this.#t(e.h,Math.max(e.s,2),Math.max(e.l-2,2)),elevated:this.#t(e.h,Math.max(e.s,3),Math.max(e.l-4,5)),sunken:this.#t(e.h,Math.max(e.s,4),Math.max(e.l-6,8)),overlay:this.#t(e.h,Math.max(e.s,2),Math.min(e.l+2,98)),inverse:this.#y(t),hover:"color-mix(in oklab, var(--color-surface-base) 92%, var(--color-text-primary) 8%);"}}#T(t){return{base:t.subtle,subtle:t.elevated,elevated:t.sunken,sunken:this.#L(t.sunken,.05),overlay:t.elevated}}#L(t,e=.05){let r=this.#n(t),o=Math.max(r.l-r.l*e,5);return this.#t(r.h,r.s,o)}#y(t){let e=this.#n(t);if(e.l>50){let r=Math.min(e.s+5,25),o=Math.max(12-(e.l-50)*.1,8);return this.#t(e.h,r,o)}else{let r=Math.max(e.s-10,5),o=Math.min(85+(50-e.l)*.3,95);return this.#t(e.h,r,o)}}#A(t,e="#ffffff",r={}){let o=r.background?r.background:this.#y(e),n=this.#b(o),i=r.primary?this.#r(r.primary):this.#i(t.primary);return{surface:{...n,fieldset:this.#j(n)},primary:i,secondary:r.secondary?this.#r(r.secondary):this.#i(t.secondary),accent:r.accent?this.#r(r.accent):this.#i(t.accent),gray:r.secondary?this.#f(r.secondary):t.gray,success:this.#i(t.success),info:this.#i(t.info),warning:this.#i(t.warning),danger:this.#i(t.danger)}}#l(t){let e=String(t||"").replace("#",""),r=e.length===3?e.split("").map(n=>n+n).join(""):e,o=parseInt(r,16);return{r:o>>16&255,g:o>>8&255,b:o&255}}#p(t){let{r:e,g:r,b:o}=this.#l(t),n=[e/255,r/255,o/255].map(i=>i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4));return .2126*n[0]+.7152*n[1]+.0722*n[2]}#d(t,e){let r=this.#p(t),o=this.#p(e),n=Math.max(r,o),i=Math.min(r,o);return(n+.05)/(i+.05)}#v(t,e=4.5){if(!t)return"#000000";let r="#ffffff",o="#000000",n=this.#d(t,r);if(n>=e)return r;let i=this.#d(t,o);return i>=e||i>n?o:r}#x(t,e=1){let{r,g:o,b:n}=this.#l(t);return`rgba(${r}, ${o}, ${n}, ${e})`}#R(t,e,r=.5){let o=this.#l(t),n=this.#l(e),i=Math.round(o.r+(n.r-o.r)*r),s=Math.round(o.g+(n.g-o.g)*r),l=Math.round(o.b+(n.b-o.b)*r);return this.#W(i,s,l)}#W(t,e,r){let o=n=>{let i=Math.max(0,Math.min(255,Math.round(n))).toString(16);return i.length===1?"0"+i:i};return`#${o(t)}${o(e)}${o(r)}`}#j(t){return{base:t.elevated,subtle:t.overlay,elevated:this.#S(t.elevated,.08),sunken:t.elevated,overlay:this.#S(t.overlay,.05)}}#B(t={},e="#000000",r=4.5){let o=["600","700","800","500","400","900","300","200"],n={shade:null,color:null,ratio:0};for(let i of o){let s=t?.[i];if(!s||typeof s!="string")continue;let l=this.#d(s,e);if(l>n.ratio&&(n={shade:i,color:s,ratio:l}),l>=r)return s}return n.color||t?.["600"]||t?.["500"]}#w(t={},e=4.5){let r=["600","700","800","500","400","900"],o={shade:null,color:null,ratio:0};for(let n of r){let i=t?.[n];if(!i||typeof i!="string")continue;let s=this.#d(i,"#ffffff");if(s>o.ratio&&(o={shade:n,color:i,ratio:s}),s>=e)return i}return o.color||t?.["600"]||t?.["500"]}#k(t,e={}){let r={},o=e.light??.1,n=e.dark??.25;return Object.entries(t).forEach(([i,s])=>{if(!s||typeof s!="string"||!s.startsWith("#"))return;let l=this.#p(s)<.5,u=this.#v(s,4.5),c=this.#v(s,3),d=this.#R(u,s,.4),p=u,h=d,m=l?"#ffffff":"#000000",b=l?n:o,f=this.#x(m,b),w=l?"#ffffff":"#000000",S=l?.15:.1,$=this.#x(w,S);r[i]={bg:s,text:u,textSecondary:c,textMuted:d,icon:p,iconSubtle:h,shadow:f,border:$,scheme:l?"dark":"light"}}),r}#S(t,e=.05){let r=this.#n(t),o=Math.min(r.l+(100-r.l)*e,95);return this.#t(r.h,r.s,o)}#i(t){let e={};return Object.entries({50:{source:"900",dimFactor:.8},100:{source:"800",dimFactor:.8},200:{source:"700",dimFactor:.8},300:{source:"600",dimFactor:.8},400:{source:"500",dimFactor:.85},500:{source:"400",dimFactor:.85},600:{source:"300",dimFactor:.85},700:{source:"200",dimFactor:.85},800:{source:"100",dimFactor:.95},900:{source:"50",dimFactor:.95}}).forEach(([o,n])=>{let i=t[n.source];e[o]=this.#N(i,n.dimFactor)}),e}#N(t,e=.8){let r=this.#n(t),o=Math.max(r.s*e,5),n=Math.max(r.l*e,5);return this.#t(r.h,o,n)}generateSpacingTokens(t){let{baseUnit:e=4,scaleRatio:r=1.25,maxSpacingSteps:o=12}=t,n=Number.isFinite(Number(e))?Number(e):4,i=Math.min(Number.isFinite(Number(o))?Number(o):12,12),s={0:"0"};for(let l=1;l<=i;l++)s[l]=`${n*l}px`;return s}#P(t){let{radiusSize:e="medium",customRadius:r=null}=t,o;r!=null?o=r:typeof e=="number"?o=e:typeof e=="string"?o=g.RadiusSizes[e]??g.RadiusSizes.medium:o=g.RadiusSizes.medium;let n=Number.isFinite(Number(o))?Number(o):g.RadiusSizes.medium;return{none:"0",xs:`${Number.isFinite(n*.25)?Math.round(n*.25):0}px`,sm:`${Number.isFinite(n*.5)?Math.round(n*.5):0}px`,md:`${n}px`,lg:`${Number.isFinite(n*1.5)?Math.round(n*1.5):0}px`,xl:`${Number.isFinite(n*2)?Math.round(n*2):0}px`,full:"9999px"}}#O(t){let{borderWidth:e="medium"}=t,r;typeof e=="number"?r=e:typeof e=="string"?r=g.BorderWidths[e]??g.BorderWidths.medium:r=g.BorderWidths.medium;let o=Number.isFinite(Number(r))?Number(r):g.BorderWidths.medium,n=i=>`${Math.max(0,Math.round(i*100)/100)}px`;return{hairline:n(o*.25),thin:n(o*.5),medium:n(o),thick:n(o*1.5)}}generateTypographyTokens(t){let{fontFamilyHeadings:e="system-ui, -apple-system, sans-serif",fontFamilyBody:r="system-ui, -apple-system, sans-serif",fontFamilyMono:o='ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace',baseFontSize:n=16,fontScale:i=1.25,fontWeightLight:s=g.FontWeights.light,fontWeightNormal:l=g.FontWeights.normal,fontWeightMedium:u=g.FontWeights.medium,fontWeightSemibold:c=g.FontWeights.semibold,fontWeightBold:d=g.FontWeights.bold,lineHeightTight:p=g.LineHeights.tight,lineHeightNormal:h=g.LineHeights.normal,lineHeightRelaxed:m=g.LineHeights.relaxed}=t,b=Number.isFinite(Number(n))?Number(n):16,f=Number.isFinite(Number(i))?Number(i):1.25;return{fontFamily:{headings:e,body:r,mono:o},fontSize:{xs:`${Math.round(b/Math.pow(f,2))}px`,sm:`${Math.round(b/f)}px`,base:`${b}px`,lg:`${Math.round(b*f)}px`,xl:`${Math.round(b*Math.pow(f,2))}px`,"2xl":`${Math.round(b*Math.pow(f,3))}px`,"3xl":`${Math.round(b*Math.pow(f,4))}px`,"4xl":`${Math.round(b*Math.pow(f,5))}px`},fontWeight:{light:s?.toString()||"300",normal:l?.toString()||"400",medium:u?.toString()||"500",semibold:c?.toString()||"600",bold:d?.toString()||"700"},lineHeight:{tight:p?.toString()||"1.25",normal:h?.toString()||"1.5",relaxed:m?.toString()||"1.75"}}}#$(t){let{baseShadowOpacity:e=.1,shadowBlurMultiplier:r=1,shadowOffsetMultiplier:o=1}=t,n=`rgba(0, 0, 0, ${e})`,i=`rgba(0, 0, 0, ${e*.5})`;return{sm:`0 ${1*o}px ${2*r}px 0 ${i}`,base:`0 ${1*o}px ${3*r}px 0 ${n}, 0 ${1*o}px ${2*r}px 0 ${i}`,md:`0 ${4*o}px ${6*r}px ${-1*o}px ${n}, 0 ${2*o}px ${4*r}px ${-1*o}px ${i}`,lg:`0 ${10*o}px ${15*r}px ${-3*o}px ${n}, 0 ${4*o}px ${6*r}px ${-2*o}px ${i}`,xl:`0 ${20*o}px ${25*r}px ${-5*o}px ${n}, 0 ${10*o}px ${10*r}px ${-5*o}px ${i}`,inner:`inset 0 ${2*o}px ${4*r}px 0 ${i}`}}#D(t){let{maxWidth:e=1200,containerPadding:r=16,breakpoints:o={sm:640,md:768,lg:1024,xl:1280}}=t,n=this.#z(t);return{maxWidth:this.#o(e,"1200px"),maxWidthSm:n.sm,maxWidthMd:n.md,maxWidthLg:n.lg,maxWidthXl:n.xl,minHeight:"100vh",containerPadding:this.#o(r,"16px"),breakpoints:{sm:this.#o(o.sm,"640px"),md:this.#o(o.md,"768px"),lg:this.#o(o.lg,"1024px"),xl:this.#o(o.xl,"1280px")},pageMargin:"120px",sectionGap:"160px",containerGap:"200px",heroSpacing:"240px",footerSpacing:"160px"}}#z(t={}){let e={sm:640,md:768,lg:1024,xl:1280},{maxWidths:r={},maxWidth:o=1200,containerPadding:n=16,breakpoints:i=e}=t||{},s=this.#s(n,16),l=this.#s(o,e.xl),u={sm:this.#s(i.sm,e.sm),md:this.#s(i.md,e.md),lg:this.#s(i.lg,e.lg),xl:this.#s(i.xl,e.xl)},c=p=>p?Math.max(320,p-s*2):l,d={sm:Math.min(l,c(u.sm)),md:Math.min(l,c(u.md)),lg:Math.min(l,c(u.lg)),xl:Math.max(320,l)};return{sm:this.#o(r.sm,`${d.sm}px`),md:this.#o(r.md,`${d.md}px`),lg:this.#o(r.lg,`${d.lg}px`),xl:this.#o(r.xl,`${d.xl}px`)}}#o(t,e){return typeof t=="number"&&Number.isFinite(t)?`${t}px`:typeof t=="string"&&t.trim().length>0?t:e}#s(t,e){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"){let r=parseFloat(t);if(Number.isFinite(r))return r}return e}#U(t){let{transitionSpeed:e=g.TransitionSpeeds.normal,animationEasing:r=g.AnimationEasings["ease-out"]}=t,o;return typeof e=="number"?o=e:typeof e=="string"&&g.TransitionSpeeds[e]?o=g.TransitionSpeeds[e]:o=g.TransitionSpeeds.normal,{fast:`${Math.round(o*.6)}ms`,normal:`${o}ms`,slow:`${Math.round(o*1.4)}ms`}}#I(t){let{baseZIndex:e=1e3,zIndexStep:r=10}=t;return{dropdown:e.toString(),sticky:(e+r*2).toString(),fixed:(e+r*3).toString(),modal:(e+r*4).toString(),drawer:(e+r*5).toString(),popover:(e+r*6).toString(),tooltip:(e+r*7).toString(),notification:(e+r*8).toString()}}#H(t){let{set:e="phosphor",weight:r="regular",defaultSize:o=24,sizes:n={xs:16,sm:20,md:24,lg:32,xl:48,"2xl":64},spritePath:i="/assets/pds/icons/pds-icons.svg",externalPath:s="/assets/img/icons/"}=t;return{set:e,weight:r,defaultSize:`${o}px`,sizes:Object.fromEntries(Object.entries(n).map(([l,u])=>[l,`${u}px`])),spritePath:i,externalPath:s}}#_(t){let e=[];e.push(` /* Colors */
|
|
19
|
+
</article>`:e.includes("badge")||t.id==="badge"?'<span class="badge">New</span>':`<${e}>Content</${e}>`}describeUtility(t){return t.includes("border-gradient")?"Apply animated gradient border effect":t.includes("border-glow")?"Apply glowing border effect":t.includes("flex")?"Flexbox container utility":t.includes("grid")?"Grid container utility":t.includes("gap-")?"Set gap between flex/grid children":t.includes("items-")?"Align items in flex container":t.includes("justify-")?"Justify content in flex container":t===".btn-group"?"Group buttons with connected styling":"Utility class for styling"}}});var Ie={};U(Ie,{deepMerge:()=>Ue,fragmentFromTemplateLike:()=>wt,isObject:()=>Z,parseHTML:()=>kt});function Z(a){return a&&typeof a=="object"&&!Array.isArray(a)}function Ue(a,t){let e={...a};return Z(a)&&Z(t)&&Object.keys(t).forEach(r=>{Z(t[r])?r in a?e[r]=Ue(a[r],t[r]):Object.assign(e,{[r]:t[r]}):Object.assign(e,{[r]:t[r]})}),e}function wt(a){let t=Array.isArray(a?.strings)?a.strings:[],e=Array.isArray(a?.values)?a.values:[],r=new Set,o=[],n=/(\s)(\.[\w-]+)=\s*$/;for(let d=0;d<t.length;d+=1){let p=t[d]??"",m=p.match(n);if(m&&d<e.length){let b=m[2].slice(1),f=`pds-val-${d}`;p=p.replace(n,`$1data-pds-prop="${b}:${f}"`),r.add(d)}o.push(p),d<e.length&&!r.has(d)&&o.push(`<!--pds-val-${d}-->`)}let i=document.createElement("template");i.innerHTML=o.join("");let s=(d,p)=>{let m=d.parentNode;if(!m)return;if(p==null){m.removeChild(d);return}let h=b=>{if(b!=null){if(b instanceof Node){m.insertBefore(b,d);return}if(Array.isArray(b)){b.forEach(f=>h(f));return}m.insertBefore(document.createTextNode(String(b)),d)}};h(p),m.removeChild(d)},l=document.createTreeWalker(i.content,NodeFilter.SHOW_COMMENT),u=[];for(;l.nextNode();){let d=l.currentNode;d?.nodeValue?.startsWith("pds-val-")&&u.push(d)}return u.forEach(d=>{let p=Number(d.nodeValue.replace("pds-val-",""));s(d,e[p])}),i.content.querySelectorAll("*").forEach(d=>{let p=d.getAttribute("data-pds-prop");if(!p)return;let[m,h]=p.split(":"),b=Number(String(h).replace("pds-val-",""));m&&Number.isInteger(b)&&(d[m]=e[b]),d.removeAttribute("data-pds-prop")}),i.content}function kt(a){return new DOMParser().parseFromString(a,"text/html").body.childNodes}var He=D(()=>{});G();var P="any",te={type:"object",allowUnknown:!1,properties:{id:{type:"string"},name:{type:"string"},tags:{type:"array",items:{type:"string"}},description:{type:"string"},options:{type:"object",allowUnknown:!0},form:{type:"object",allowUnknown:!0},colors:{type:"object",allowUnknown:!1,properties:{primary:{type:"string",relations:{tokens:["--color-primary-*","--color-primary-fill","--color-primary-text","--background-mesh-*"]}},secondary:{type:"string",relations:{tokens:["--color-secondary-*","--color-gray-*","--background-mesh-*"]}},accent:{type:"string",relations:{tokens:["--color-accent-*","--background-mesh-*"]}},background:{type:"string",relations:{tokens:["--color-surface-*","--color-surface-translucent-*","--surface-*-bg","--surface-*-text","--surface-*-text-secondary","--surface-*-text-muted","--surface-*-icon","--surface-*-icon-subtle","--surface-*-shadow","--surface-*-border"]}},success:{type:["string","null"],relations:{tokens:["--color-success-*"]}},warning:{type:["string","null"],relations:{tokens:["--color-warning-*"]}},danger:{type:["string","null"],relations:{tokens:["--color-danger-*"]}},info:{type:["string","null"],relations:{tokens:["--color-info-*"]}},gradientStops:{type:"number"},elevationOpacity:{type:"number",relations:{tokens:["--surface-*-shadow"]}},darkMode:{type:"object",allowUnknown:!0,properties:{background:{type:"string",relations:{theme:"dark",tokens:["--color-surface-*","--color-surface-translucent-*","--surface-*-bg","--surface-*-text","--surface-*-text-secondary","--surface-*-text-muted","--surface-*-icon","--surface-*-icon-subtle","--surface-*-shadow","--surface-*-border"]}},primary:{type:"string",relations:{theme:"dark",tokens:["--color-primary-*","--color-primary-fill","--color-primary-text"]}},secondary:{type:"string",relations:{theme:"dark",tokens:["--color-secondary-*","--color-gray-*"]}},accent:{type:"string",relations:{theme:"dark",tokens:["--color-accent-*"]}}}}}},typography:{type:"object",allowUnknown:!1,properties:{fontFamilyHeadings:{type:"string",relations:{tokens:["--font-family-headings"]}},fontFamilyBody:{type:"string",relations:{tokens:["--font-family-body"]}},fontFamilyMono:{type:"string",relations:{tokens:["--font-family-mono"]}},baseFontSize:{type:"number",relations:{tokens:["--font-size-*"]}},fontScale:{type:"number",relations:{tokens:["--font-size-*"]}},fontWeightLight:{type:["string","number"],relations:{tokens:["--font-weight-light"]}},fontWeightNormal:{type:["string","number"],relations:{tokens:["--font-weight-normal"]}},fontWeightMedium:{type:["string","number"],relations:{tokens:["--font-weight-medium"]}},fontWeightSemibold:{type:["string","number"],relations:{tokens:["--font-weight-semibold"]}},fontWeightBold:{type:["string","number"],relations:{tokens:["--font-weight-bold"]}},lineHeightTight:{type:["string","number"],relations:{tokens:["--font-line-height-tight"]}},lineHeightNormal:{type:["string","number"],relations:{tokens:["--font-line-height-normal"]}},lineHeightRelaxed:{type:["string","number"],relations:{tokens:["--font-line-height-relaxed"]}},letterSpacingTight:{type:"number"},letterSpacingNormal:{type:"number"},letterSpacingWide:{type:"number"}}},spatialRhythm:{type:"object",allowUnknown:!1,properties:{baseUnit:{type:"number",relations:{tokens:["--spacing-*"]}},scaleRatio:{type:"number"},maxSpacingSteps:{type:"number",relations:{tokens:["--spacing-*"]}},containerMaxWidth:{type:["number","string"]},containerPadding:{type:"number"},inputPadding:{type:"number",relations:{rules:[{selectors:["input","textarea","select"],properties:["padding"]}]}},buttonPadding:{type:"number",relations:{rules:[{selectors:["button",".btn"],properties:["padding"]}]}},sectionSpacing:{type:"number",relations:{rules:[{selectors:["section"],properties:["margin","padding"]}]}}}},shape:{type:"object",allowUnknown:!1,properties:{radiusSize:{type:["string","number"],relations:{tokens:["--radius-*"]}},customRadius:{type:["string","number","null"]},borderWidth:{type:["string","number"],relations:{tokens:["--border-width-*"]}}}},behavior:{type:"object",allowUnknown:!1,properties:{transitionSpeed:{type:["string","number"],relations:{tokens:["--transition-*"]}},animationEasing:{type:"string"},customTransitionSpeed:{type:["number","null"]},customEasing:{type:["string","null"]},focusRingWidth:{type:"number",relations:{rules:[{selectors:[":focus-visible"],properties:["outline-width","box-shadow"]}]}},focusRingOpacity:{type:"number",relations:{rules:[{selectors:[":focus-visible"],properties:["box-shadow","outline-color"]}]}},hoverOpacity:{type:"number"}}},layout:{type:"object",allowUnknown:!1,properties:{maxWidth:{type:["number","string"],relations:{tokens:["--layout-max-width","--layout-max-width-*"]}},maxWidths:{type:"object",allowUnknown:!1,properties:{sm:{type:["number","string"],relations:{tokens:["--layout-max-width-sm"]}},md:{type:["number","string"],relations:{tokens:["--layout-max-width-md"]}},lg:{type:["number","string"],relations:{tokens:["--layout-max-width-lg"]}},xl:{type:["number","string"],relations:{tokens:["--layout-max-width-xl"]}}}},containerPadding:{type:["number","string"],relations:{tokens:["--layout-container-padding"]}},breakpoints:{type:"object",allowUnknown:!1,properties:{sm:{type:"number"},md:{type:"number"},lg:{type:"number"},xl:{type:"number"}}},gridColumns:{type:"number"},gridGutter:{type:"number"},densityCompact:{type:"number"},densityNormal:{type:"number"},densityComfortable:{type:"number"},buttonMinHeight:{type:"number"},inputMinHeight:{type:"number"},baseShadowOpacity:{type:"number",relations:{tokens:["--shadow-*"]}},darkMode:{type:"object",allowUnknown:!0,properties:{baseShadowOpacity:{type:"number",relations:{theme:"dark",tokens:["--shadow-*"]}}}},utilities:{type:"object",allowUnknown:!0},gridSystem:{type:"object",allowUnknown:!0},containerMaxWidth:{type:["number","string"]}}},layers:{type:"object",allowUnknown:!1,properties:{baseShadowOpacity:{type:"number",relations:{tokens:["--shadow-*"]}},shadowBlurMultiplier:{type:"number",relations:{tokens:["--shadow-*"]}},shadowOffsetMultiplier:{type:"number",relations:{tokens:["--shadow-*"]}},shadowDepth:{type:"string"},blurLight:{type:"number"},blurMedium:{type:"number"},blurHeavy:{type:"number"},baseZIndex:{type:"number",relations:{tokens:["--z-*"]}},zIndexStep:{type:"number",relations:{tokens:["--z-*"]}},zIndexBase:{type:"number"},zIndexDropdown:{type:"number"},zIndexSticky:{type:"number"},zIndexFixed:{type:"number"},zIndexModal:{type:"number"},zIndexPopover:{type:"number"},zIndexTooltip:{type:"number"},zIndexNotification:{type:"number"},darkMode:{type:"object",allowUnknown:!0,properties:{baseShadowOpacity:{type:"number",relations:{theme:"dark",tokens:["--shadow-*"]}}}}}},advanced:{type:"object",allowUnknown:!0},a11y:{type:"object",allowUnknown:!0},icons:{type:"object",allowUnknown:!1,properties:{set:{type:"string"},weight:{type:"string"},defaultSize:{type:"number",relations:{tokens:["--icon-size"]}},sizes:{type:"object",allowUnknown:!0},spritePath:{type:"string"},externalPath:{type:"string"},include:{type:"object",allowUnknown:!0}}},components:{type:"object",allowUnknown:!0},gap:{type:"number"},debug:{type:"boolean"}}},Ge={type:"object",allowUnknown:!0,properties:{mode:{type:"string"},preset:{type:"string"},design:te,enhancers:{type:["object","array"]},applyGlobalStyles:{type:"boolean"},manageTheme:{type:"boolean"},themeStorageKey:{type:"string"},preloadStyles:{type:"boolean"},criticalLayers:{type:"array",items:{type:"string"}},autoDefine:{type:"object",allowUnknown:!1,properties:{predefine:{type:"array",items:{type:"string"}},mapper:{type:P},enhancers:{type:["object","array"]},scanExisting:{type:"boolean"},observeShadows:{type:"boolean"},patchAttachShadow:{type:"boolean"},debounceMs:{type:"number"},onError:{type:P},baseURL:{type:"string"}}},managerURL:{type:"string"},manager:{type:P},liveEdit:{type:"boolean"},log:{type:P}}};function X(a){return a===null?"null":Array.isArray(a)?"array":typeof a}function Ve(a,t){if(t===P)return!0;let e=X(a);return Array.isArray(t)?t.includes(e):e===t}function V(a,t,e,r){if(!t)return;let o=t.type||P;if(!Ve(a,o)){r.push({path:e,expected:o,actual:X(a),message:`Expected ${o} but got ${X(a)}`});return}if(o==="array"&&t.items&&Array.isArray(a)&&a.forEach((n,i)=>{V(n,t.items,`${e}[${i}]`,r)}),o==="object"&&a&&typeof a=="object"){let n=t.properties||{};for(let[i,s]of Object.entries(a)){if(!Object.prototype.hasOwnProperty.call(n,i)){t.allowUnknown||r.push({path:`${e}.${i}`,expected:"known property",actual:"unknown",message:`Unknown property "${i}"`});continue}V(s,n[i],`${e}.${i}`,r)}}}function ee(a,t="",e={}){if(!a||typeof a!="object")return e;if(a.relations&&t&&(e[t]=a.relations),a.type==="object"&&a.properties&&Object.entries(a.properties).forEach(([r,o])=>{let n=t?`${t}.${r}`:r;ee(o,n,e)}),a.type==="array"&&a.items){let r=`${t}[]`;ee(a.items,r,e)}return e}var we=ee(te,"");function re(a,{log:t,context:e="PDS config"}={}){if(!a||typeof a!="object")return[];let r=[];return V(a,te,"design",r),r.length&&typeof t=="function"&&r.forEach(o=>{t("warn",`[${e}] ${o.message} at ${o.path}`)}),r}function ke(a,{log:t,context:e="PDS config"}={}){if(!a||typeof a!="object")return[];let r=[];return V(a,Ge,"config",r),r.length&&typeof t=="function"&&r.forEach(o=>{t("warn",`[${e}] ${o.message} at ${o.path}`)}),r}var O={"ocean-breeze":{id:"ocean-breeze",name:"Ocean Breeze",tags:["playful"],description:"Fresh and calming ocean-inspired palette with professional undertones",options:{liquidGlassEffects:!0,backgroundMesh:3},colors:{primary:"#0891b2",secondary:"#64748b",accent:"#06b6d4",background:"#f0f9ff",darkMode:{background:"#0c1821",secondary:"#94a3b8",primary:"#0891b2"}},typography:{baseFontSize:17,fontScale:1.5,fontFamilyHeadings:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif',fontFamilyBody:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif'},spatialRhythm:{baseUnit:6,scaleRatio:1.2},shape:{radiusSize:g.RadiusSizes.xxlarge}},"midnight-steel":{id:"midnight-steel",name:"Midnight Steel",description:"Bold industrial aesthetic with sharp contrasts and urban edge",colors:{primary:"#3b82f6",secondary:"#52525b",accent:"#f59e0b",background:"#fafaf9",darkMode:{background:"#18181b",secondary:"#71717a",primary:"#3b82f6"}},typography:{baseFontSize:16,fontScale:1.333,fontFamilyHeadings:"'IBM Plex Sans', system-ui, -apple-system, sans-serif",fontFamilyBody:"'Inter', system-ui, -apple-system, sans-serif",fontWeightSemibold:600},spatialRhythm:{baseUnit:4,scaleRatio:1.25},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.thin}},"neural-glow":{id:"neural-glow",name:"Neural Glow",description:"AI-inspired with vibrant purple-blue gradients and futuristic vibes",colors:{primary:"#8b5cf6",secondary:"#6366f1",accent:"#ec4899",background:"#faf5ff",darkMode:{background:"#0f0a1a",secondary:"#818cf8",primary:"#8b5cf6"}},typography:{baseFontSize:16,fontScale:1.618,fontFamilyHeadings:"'Space Grotesk', system-ui, sans-serif",fontFamilyBody:"'Space Grotesk', system-ui, sans-serif"},spatialRhythm:{baseUnit:4,scaleRatio:1.5},shape:{radiusSize:g.RadiusSizes.xlarge,borderWidth:g.BorderWidths.medium},behavior:{transitionSpeed:g.TransitionSpeeds.fast}},"paper-and-ink":{id:"paper-and-ink",name:"Paper & Ink",tags:["app","featured"],themes:["light"],description:"Ultra-minimal design with focus on typography and whitespace",colors:{primary:"#171717",secondary:"#737373",accent:"#525252",background:"#ffffff",darkMode:{background:"#0a0a0a",secondary:"#a3a3a3",primary:"#737373"}},typography:{baseFontSize:18,fontScale:1.333,fontFamilyHeadings:"'Helvetica Neue', 'Arial', sans-serif",fontFamilyBody:"'Georgia', 'Times New Roman', serif",fontWeightNormal:400,fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.2},shape:{radiusSize:g.RadiusSizes.none,borderWidth:g.BorderWidths.thin}},"sunset-paradise":{id:"sunset-paradise",name:"Sunset Paradise",description:"Warm tropical colors evoking golden hour by the beach",options:{liquidGlassEffects:!0,backgroundMesh:2},colors:{primary:"#ea580c",secondary:"#d4a373",accent:"#fb923c",background:"#fffbeb",darkMode:{background:"#1a0f0a",secondary:"#c9a482",primary:"#f97316"}},typography:{baseFontSize:16,fontScale:1.5,fontFamilyHeadings:"'Quicksand', 'Comfortaa', sans-serif",fontFamilyBody:"'Quicksand', 'Comfortaa', sans-serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.5},shape:{radiusSize:g.RadiusSizes.xxlarge,borderWidth:g.BorderWidths.medium}},"retro-wave":{id:"retro-wave",name:"Retro Wave",description:"Nostalgic 80s-inspired palette with neon undertones",colors:{primary:"#c026d3",secondary:"#a78bfa",accent:"#22d3ee",background:"#fef3ff",darkMode:{background:"#1a0a1f",secondary:"#c4b5fd",primary:"#d946ef"}},typography:{baseFontSize:15,fontScale:1.5,fontFamilyHeadings:"'Orbitron', 'Impact', monospace",fontFamilyBody:"'Courier New', 'Courier', monospace",fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.25},shape:{radiusSize:g.RadiusSizes.none,borderWidth:g.BorderWidths.thick},behavior:{transitionSpeed:g.TransitionSpeeds.instant}},"forest-canopy":{id:"forest-canopy",name:"Forest Canopy",description:"Natural earth tones with organic, calming green hues",colors:{primary:"#059669",secondary:"#78716c",accent:"#84cc16",background:"#f0fdf4",darkMode:{background:"#0a1410",secondary:"#a8a29e",primary:"#10b981"}},typography:{baseFontSize:16,fontScale:1.414,fontFamilyHeadings:"'Merriweather Sans', 'Arial', sans-serif",fontFamilyBody:"'Merriweather', 'Georgia', serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.3},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.thin}},"ruby-elegance":{id:"ruby-elegance",name:"Ruby Elegance",description:"Sophisticated palette with rich ruby reds and warm accents",colors:{primary:"#dc2626",secondary:"#9ca3af",accent:"#be123c",background:"#fef2f2",darkMode:{background:"#1b0808",secondary:"#d1d5db",primary:"#ef4444"}},typography:{baseFontSize:17,fontScale:1.5,fontFamilyHeadings:"'Playfair Display', 'Georgia', serif",fontFamilyBody:"'Crimson Text', 'Garamond', serif",fontWeightNormal:400,fontWeightSemibold:600},spatialRhythm:{baseUnit:4,scaleRatio:1.333},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.thin}},"desert-dawn":{id:"desert-dawn",name:"Desert Dawn",description:"Sun-baked neutrals with grounded terracotta and cool oasis accents",colors:{primary:"#b45309",secondary:"#a8a29e",accent:"#0ea5a8",background:"#fcf6ef",darkMode:{background:"#12100e",secondary:"#d1d5db",primary:"#f59e0b"}},typography:{baseFontSize:16,fontScale:1.414,fontFamilyHeadings:"'Source Sans Pro', system-ui, -apple-system, sans-serif",fontFamilyBody:"'Source Serif Pro', Georgia, serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.3},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.medium}},"contrast-pro":{id:"contrast-pro",name:"Contrast Pro",description:"Accessibility-first, high-contrast UI with assertive clarity",colors:{primary:"#1f2937",secondary:"#111827",accent:"#eab308",background:"#ffffff",darkMode:{background:"#0b0f14",secondary:"#9ca3af",primary:"#9ca3af"}},typography:{baseFontSize:17,fontScale:1.2,fontFamilyHeadings:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontFamilyBody:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontWeightBold:700},spatialRhythm:{baseUnit:3,scaleRatio:1.2},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.thick},behavior:{transitionSpeed:g.TransitionSpeeds.fast,focusRingWidth:4}},"pastel-play":{id:"pastel-play",name:"Pastel Play",themes:["light"],description:"Playful pastels with soft surfaces and friendly rounded shapes",colors:{primary:"#db2777",secondary:"#a78bfa",accent:"#34d399",background:"#fff7fa",darkMode:{background:"#1a1016",secondary:"#c4b5fd",primary:"#ec4899"}},typography:{baseFontSize:16,fontScale:1.333,fontFamilyHeadings:"'Nunito', system-ui, -apple-system, sans-serif",fontFamilyBody:"'Nunito', system-ui, -apple-system, sans-serif",lineHeightRelaxed:g.LineHeights.relaxed},spatialRhythm:{baseUnit:6,scaleRatio:1.4},shape:{radiusSize:g.RadiusSizes.xxlarge,borderWidth:g.BorderWidths.thin},behavior:{transitionSpeed:g.TransitionSpeeds.slow,animationEasing:g.AnimationEasings["ease-out"]}},"brutalist-tech":{id:"brutalist-tech",name:"Brutalist Tech",description:"Stark grayscale with engineered accents and unapologetically bold structure",colors:{primary:"#111111",secondary:"#4b5563",accent:"#06b6d4",background:"#f8fafc",darkMode:{background:"#0c0c0c",secondary:"#9ca3af",primary:"#06b6d4"}},typography:{baseFontSize:15,fontScale:1.25,fontFamilyHeadings:"'JetBrains Mono', ui-monospace, Menlo, Consolas, monospace",fontFamilyBody:"'Inter', system-ui, -apple-system, sans-serif",letterSpacingTight:-.02},spatialRhythm:{baseUnit:4,scaleRatio:1.25},shape:{radiusSize:g.RadiusSizes.none,borderWidth:g.BorderWidths.thick},behavior:{transitionSpeed:g.TransitionSpeeds.instant}},"zen-garden":{id:"zen-garden",name:"Zen Garden",description:"Soft botanicals with contemplative spacing and balanced motion",colors:{primary:"#3f6212",secondary:"#6b7280",accent:"#7c3aed",background:"#f7fbef",darkMode:{background:"#0d130a",secondary:"#a3a3a3",primary:"#84cc16"}},typography:{baseFontSize:17,fontScale:1.414,fontFamilyHeadings:"'Merriweather', Georgia, serif",fontFamilyBody:"'Noto Sans', system-ui, -apple-system, sans-serif"},spatialRhythm:{baseUnit:6,scaleRatio:1.35},shape:{radiusSize:g.RadiusSizes.large,borderWidth:g.BorderWidths.medium},behavior:{transitionSpeed:g.TransitionSpeeds.normal,animationEasing:g.AnimationEasings.ease}},"fitness-pro":{id:"fitness-pro",name:"Fitness Pro",tags:["app","featured"],description:"Health and fitness tracking aesthetic with data-driven dark surfaces and vibrant accent rings",options:{liquidGlassEffects:!0,backgroundMesh:2},colors:{primary:"#e91e63",secondary:"#78909c",accent:"#ab47bc",background:"#fafafa",darkMode:{background:"#1a1d21",secondary:"#78909c",primary:"#0a4ca4"}},typography:{baseFontSize:15,fontScale:1.25,fontFamilyHeadings:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightNormal:g.LineHeights.tight},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerPadding:1.25,sectionSpacing:2.5},shape:{radiusSize:g.RadiusSizes.large,borderWidth:g.BorderWidths.thin},layers:{shadowDepth:"medium",blurMedium:12},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-out"],focusRingWidth:2}},"travel-market":{id:"travel-market",name:"Travel Market",description:"Hospitality marketplace design with clean cards, subtle shadows, and trust-building neutrals",options:{liquidGlassEffects:!0,backgroundMesh:3},colors:{primary:"#d93251",secondary:"#717171",accent:"#144990",background:"#ffffff",darkMode:{background:"#222222",secondary:"#b0b0b0",primary:"#ff5a7a"}},typography:{baseFontSize:16,fontScale:1.2,fontFamilyHeadings:"'Circular', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Circular', system-ui, -apple-system, 'Segoe UI', sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightRelaxed:g.LineHeights.relaxed},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerMaxWidth:1440,containerPadding:1.5,sectionSpacing:3},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.thin},layers:{shadowDepth:"light",blurLight:8},behavior:{transitionSpeed:g.TransitionSpeeds.normal,animationEasing:g.AnimationEasings["ease-in-out"],hoverOpacity:.9}},"mobility-app":{id:"mobility-app",name:"Mobility App",tags:["app","featured"],description:"On-demand service platform with bold typography, map-ready colors, and action-driven UI",options:{liquidGlassEffects:!0,backgroundMesh:0},colors:{primary:"#000000",secondary:"#545454",accent:"#06c167",background:"#f6f6f6",darkMode:{background:"#0f0f0f",secondary:"#8a8a8a",primary:"#06c167"}},typography:{baseFontSize:16,fontScale:1.3,fontFamilyHeadings:"'UberMove', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'UberMove', system-ui, -apple-system, 'Segoe UI', sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.25,buttonPadding:1.25,inputPadding:1},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.medium},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-out"],focusRingWidth:3},a11y:{minTouchTarget:g.TouchTargetSizes.comfortable,focusStyle:g.FocusStyles.ring}},"fintech-secure":{id:"fintech-secure",name:"Fintech Secure",description:"Financial services app UI with trust-building blues, precise spacing, and security-first design",options:{liquidGlassEffects:!1,backgroundMesh:0},colors:{primary:"#0a2540",secondary:"#425466",accent:"#00d4ff",background:"#f7fafc",darkMode:{background:"#0a1929",secondary:"#8796a5",primary:"#00d4ff"}},typography:{baseFontSize:16,fontScale:1.25,fontFamilyHeadings:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyMono:"'JetBrains Mono', ui-monospace, 'Cascadia Code', monospace",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerMaxWidth:1280,sectionSpacing:2.5},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.thin},layers:{shadowDepth:"light",blurLight:6},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-in-out"],focusRingWidth:3,focusRingOpacity:.4},a11y:{minTouchTarget:g.TouchTargetSizes.standard,focusStyle:g.FocusStyles.ring}},"social-feed":{id:"social-feed",name:"Social Feed",tags:["app","featured"],description:"Content-first social platform with minimal chrome, bold actions, and vibrant media presentation",options:{liquidGlassEffects:!0,backgroundMesh:4},colors:{primary:"#1877f2",secondary:"#65676b",accent:"#fe2c55",background:"#ffffff",darkMode:{background:"#18191a",secondary:"#b0b3b8",primary:"#2d88ff"}},typography:{baseFontSize:15,fontScale:1.2,fontFamilyHeadings:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontFamilyBody:"system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightNormal:g.LineHeights.relaxed},spatialRhythm:{baseUnit:4,scaleRatio:1.25,containerMaxWidth:680,sectionSpacing:1.5},shape:{radiusSize:g.RadiusSizes.medium,borderWidth:g.BorderWidths.thin},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-out"],hoverOpacity:.85}},"enterprise-dash":{id:"enterprise-dash",tags:["app","featured"],name:"Enterprise Dashboard",description:"Data-dense business intelligence app interface with organized hierarchy and professional polish",options:{liquidGlassEffects:!1},colors:{primary:"#0066cc",secondary:"#5f6368",accent:"#1a73e8",background:"#ffffff",success:"#34a853",warning:"#fbbc04",danger:"#ea4335",darkMode:{background:"#202124",secondary:"#9aa0a6",primary:"#8ab4f8"}},typography:{baseFontSize:14,fontScale:1.2,fontFamilyHeadings:"'Roboto', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyBody:"'Roboto', system-ui, -apple-system, 'Segoe UI', sans-serif",fontFamilyMono:"'Roboto Mono', ui-monospace, Consolas, monospace",fontWeightNormal:400,fontWeightMedium:500,fontWeightSemibold:600,fontWeightBold:700,lineHeightNormal:g.LineHeights.tight},spatialRhythm:{baseUnit:4,scaleRatio:1.2,containerMaxWidth:1600,containerPadding:1.5,sectionSpacing:2},shape:{radiusSize:g.RadiusSizes.small,borderWidth:g.BorderWidths.thin},layers:{shadowDepth:"light",blurLight:4},behavior:{transitionSpeed:g.TransitionSpeeds.fast,animationEasing:g.AnimationEasings["ease-in-out"],focusRingWidth:2},layout:{densityCompact:.85,gridColumns:12}}};O.default={id:"default",name:"Default",tags:["app","featured"],description:"Fresh and modern design system with balanced aesthetics and usability",options:{liquidGlassEffects:!0,backgroundMesh:4},form:{options:{widgets:{booleans:"toggle",numbers:"input",selects:"standard"},layouts:{fieldsets:"default",arrays:"default"},enhancements:{icons:!0,datalists:!0,rangeOutput:!0},validation:{showErrors:!0,validateOnChange:!1}}},colors:{primary:"#0e7490",secondary:"#a99b95",accent:"#e54271",background:"#e7e6de",darkMode:{background:"#16171a",secondary:"#8b9199",primary:"#06b6d4"},success:null,warning:"#B38600",danger:null,info:null,gradientStops:3,elevationOpacity:.05},typography:{baseFontSize:16,fontScale:1.2,fontFamilyHeadings:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif',fontFamilyBody:'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif',fontFamilyMono:'ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace',fontWeightLight:g.FontWeights.light,fontWeightNormal:g.FontWeights.normal,fontWeightMedium:g.FontWeights.medium,fontWeightSemibold:g.FontWeights.semibold,fontWeightBold:g.FontWeights.bold,lineHeightTight:g.LineHeights.tight,lineHeightNormal:g.LineHeights.normal,lineHeightRelaxed:g.LineHeights.relaxed,letterSpacingTight:-.025,letterSpacingNormal:0,letterSpacingWide:.025},spatialRhythm:{baseUnit:4,scaleRatio:1.25,maxSpacingSteps:32,containerMaxWidth:1200,containerPadding:1,inputPadding:.75,buttonPadding:1,sectionSpacing:2},layers:{shadowDepth:"medium",blurLight:4,blurMedium:8,blurHeavy:16,zIndexBase:0,zIndexDropdown:1e3,zIndexSticky:1020,zIndexFixed:1030,zIndexModal:1040,zIndexPopover:1050,zIndexTooltip:1060,zIndexNotification:1070},shape:{radiusSize:g.RadiusSizes.large,borderWidth:g.BorderWidths.medium,customRadius:null},behavior:{transitionSpeed:g.TransitionSpeeds.normal,animationEasing:g.AnimationEasings["ease-out"],customTransitionSpeed:null,customEasing:null,focusRingWidth:3,focusRingOpacity:.3,hoverOpacity:.8},layout:{gridColumns:12,gridGutter:1,baseShadowOpacity:.1,darkMode:{baseShadowOpacity:.25},breakpoints:{sm:640,md:768,lg:1024,xl:1280},densityCompact:.8,densityNormal:1,densityComfortable:1.2,buttonMinHeight:g.TouchTargetSizes.standard,inputMinHeight:40,utilities:{grid:!0,flex:!0,spacing:!0,container:!0},gridSystem:{columns:[1,2,3,4,6],autoFitBreakpoints:{sm:"150px",md:"250px",lg:"350px",xl:"450px"},enableGapUtilities:!0},containerMaxWidth:"1400px",containerPadding:"var(--spacing-6)"},advanced:{linkStyle:g.LinkStyles.inline,colorDerivation:"hsl"},a11y:{minTouchTarget:g.TouchTargetSizes.standard,prefersReducedMotion:!0,focusStyle:g.FocusStyles.ring},icons:{set:"phosphor",weight:"regular",defaultSize:24,externalPath:"/assets/img/icons/",sizes:g.IconSizes,include:{navigation:["arrow-left","arrow-right","arrow-up","arrow-down","arrow-counter-clockwise","caret-left","caret-right","caret-down","caret-up","x","list","list-dashes","dots-three-vertical","dots-three","house","gear","magnifying-glass","funnel","tabs","sidebar"],actions:["plus","minus","check","trash","pencil","floppy-disk","copy","download","upload","share","link","eye","eye-slash","heart","star","bookmark","note-pencil","cursor-click","clipboard","magic-wand","sparkle"],communication:["envelope","bell","bell-ringing","bell-simple","chat-circle","phone","paper-plane-tilt","user","users","user-gear","at"],content:["image","file","file-text","file-css","file-js","folder","folder-open","book-open","camera","video-camera","play","pause","microphone","brackets-curly","code","folder-simple","grid-four","briefcase","chart-line","chart-bar","database","map-pin"],status:["info","warning","check-circle","x-circle","question","shield","shield-check","shield-warning","lock","lock-open","fingerprint","circle-notch"],time:["calendar","clock","timer","hourglass"],commerce:["shopping-cart","credit-card","currency-dollar","tag","receipt","storefront"],formatting:["text-align-left","text-align-center","text-align-right","text-b","text-italic","text-underline","list-bullets","list-numbers","text-aa"],system:["cloud","cloud-arrow-up","cloud-arrow-down","desktop","device-mobile","globe","wifi-high","battery-charging","sun","moon","moon-stars","palette","rocket","feather","square","circle","squares-four","lightning","wrench"]},spritePath:"public/assets/pds/icons/pds-icons.svg"},gap:4,debug:!1};function oe(a="log",t,...e){if(this?.debug||this?.design?.debug||!1||a==="error"||a==="warn"){let o=console[a]||console.log;e.length>0?o(t,...e):o(t)}}G();ae();var T=class a{static#g;static get instance(){return this.#g}#e;#a;constructor(t={}){this.options={debug:!1,...t},this.options.design||(this.options.design={}),this.options.debug&&this.options.log?.("debug","Generator options:",this.options),a.#g=this,this.tokens=this.generateTokens(),this.options.debug&&this.options.log?.("debug","Generated tokens:",this.tokens),this.#ke(),typeof CSSStyleSheet<"u"?this.#Ee():this.options.debug&&this.options.log?.("debug","[Generator] Skipping browser features (CSSStyleSheet not available)")}generateTokens(){let t=this.options.design||{},e=this.#M(t),r=t.layers||{},o=this.#h(r,e.light),n=this.#$(o),i=e.dark!=null?this.#$(this.#h(r,e.dark)):null;return{colors:this.#E(t.colors||{},e),spacing:this.generateSpacingTokens(t.spatialRhythm||{}),radius:this.#P(t.shape||{}),borderWidths:this.#O(t.shape||{}),typography:this.generateTypographyTokens(t.typography||{}),shadows:n,darkShadows:i,layout:this.#D(t.layout||{}),transitions:this.#U(t.behavior||{}),zIndex:this.#I(t.layers||{}),icons:this.#H(t.icons||{})}}#M(t={}){let e=t.layout||{},r=t.layers||{};return{light:this.#m(e.baseShadowOpacity??r.baseShadowOpacity),dark:this.#m(e.darkMode?.baseShadowOpacity??r.darkMode?.baseShadowOpacity)}}#m(t){let e=Number(t);if(Number.isFinite(e))return Math.min(Math.max(e,0),1)}#h(t={},e){let r={...t};return e!=null&&(r.baseShadowOpacity=e),r}#E(t,e={}){let{primary:r="#3b82f6",secondary:o="#64748b",accent:n="#ec4899",background:i="#ffffff",success:s=null,warning:l="#FFBF00",danger:u=null,info:c=null,darkMode:d={}}=t,p={primary:this.#r(r),secondary:this.#r(o),accent:this.#r(n),success:this.#r(s||this.#F(r)),warning:this.#r(l||n),danger:this.#r(u||this.#C(r)),info:this.#r(c||r),gray:this.#f(o),surface:this.#b(i)};return p.surface.fieldset=this.#T(p.surface),p.surfaceSmart=this.#k(p.surface,e),p.dark=this.#A(p,i,d),p.dark&&p.dark.surface&&(p.dark.surfaceSmart=this.#k(p.dark.surface,e)),p.interactive={light:{fill:this.#w(p.primary,4.5),text:p.primary[600]},dark:{fill:this.#w(p.dark.primary,4.5),text:this.#B(p.dark.primary,p.dark.surface.base,4.5)}},p}#r(t){let e=this.#n(t);return{50:this.#t(e.h,Math.max(e.s-10,10),Math.min(e.l+45,95)),100:this.#t(e.h,Math.max(e.s-5,15),Math.min(e.l+35,90)),200:this.#t(e.h,e.s,Math.min(e.l+25,85)),300:this.#t(e.h,e.s,Math.min(e.l+15,75)),400:this.#t(e.h,e.s,Math.min(e.l+5,65)),500:t,600:this.#t(e.h,e.s,Math.max(e.l-10,25)),700:this.#t(e.h,e.s,Math.max(e.l-20,20)),800:this.#t(e.h,e.s,Math.max(e.l-30,15)),900:this.#t(e.h,e.s,Math.max(e.l-40,10))}}#F(t){let e=this.#n(t);return this.#t(120,Math.max(e.s,60),45)}#C(t){let e=this.#n(t);return this.#t(0,Math.max(e.s,70),50)}#f(t){let e=this.#n(t),r=e.h,o=Math.min(e.s,10);return{50:this.#t(r,o,98),100:this.#t(r,o,95),200:this.#t(r,o,88),300:this.#t(r,o,78),400:this.#t(r,o,60),500:t,600:this.#t(r,Math.min(o+5,15),45),700:this.#t(r,Math.min(o+8,18),35),800:this.#t(r,Math.min(o+10,20),20),900:this.#t(r,Math.min(o+12,22),10)}}#b(t){let e=this.#n(t);return{base:t,subtle:this.#t(e.h,Math.max(e.s,2),Math.max(e.l-2,2)),elevated:this.#t(e.h,Math.max(e.s,3),Math.max(e.l-4,5)),sunken:this.#t(e.h,Math.max(e.s,4),Math.max(e.l-6,8)),overlay:this.#t(e.h,Math.max(e.s,2),Math.min(e.l+2,98)),inverse:this.#y(t),hover:"color-mix(in oklab, var(--color-surface-base) 92%, var(--color-text-primary) 8%);"}}#T(t){return{base:t.subtle,subtle:t.elevated,elevated:t.sunken,sunken:this.#L(t.sunken,.05),overlay:t.elevated}}#L(t,e=.05){let r=this.#n(t),o=Math.max(r.l-r.l*e,5);return this.#t(r.h,r.s,o)}#y(t){let e=this.#n(t);if(e.l>50){let r=Math.min(e.s+5,25),o=Math.max(12-(e.l-50)*.1,8);return this.#t(e.h,r,o)}else{let r=Math.max(e.s-10,5),o=Math.min(85+(50-e.l)*.3,95);return this.#t(e.h,r,o)}}#A(t,e="#ffffff",r={}){let o=r.background?r.background:this.#y(e),n=this.#b(o),i=r.primary?this.#r(r.primary):this.#i(t.primary);return{surface:{...n,fieldset:this.#j(n)},primary:i,secondary:r.secondary?this.#r(r.secondary):this.#i(t.secondary),accent:r.accent?this.#r(r.accent):this.#i(t.accent),gray:r.secondary?this.#f(r.secondary):t.gray,success:this.#i(t.success),info:this.#i(t.info),warning:this.#i(t.warning),danger:this.#i(t.danger)}}#l(t){let e=String(t||"").replace("#",""),r=e.length===3?e.split("").map(n=>n+n).join(""):e,o=parseInt(r,16);return{r:o>>16&255,g:o>>8&255,b:o&255}}#p(t){let{r:e,g:r,b:o}=this.#l(t),n=[e/255,r/255,o/255].map(i=>i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4));return .2126*n[0]+.7152*n[1]+.0722*n[2]}#d(t,e){let r=this.#p(t),o=this.#p(e),n=Math.max(r,o),i=Math.min(r,o);return(n+.05)/(i+.05)}#v(t,e=4.5){if(!t)return"#000000";let r="#ffffff",o="#000000",n=this.#d(t,r);if(n>=e)return r;let i=this.#d(t,o);return i>=e||i>n?o:r}#x(t,e=1){let{r,g:o,b:n}=this.#l(t);return`rgba(${r}, ${o}, ${n}, ${e})`}#R(t,e,r=.5){let o=this.#l(t),n=this.#l(e),i=Math.round(o.r+(n.r-o.r)*r),s=Math.round(o.g+(n.g-o.g)*r),l=Math.round(o.b+(n.b-o.b)*r);return this.#W(i,s,l)}#W(t,e,r){let o=n=>{let i=Math.max(0,Math.min(255,Math.round(n))).toString(16);return i.length===1?"0"+i:i};return`#${o(t)}${o(e)}${o(r)}`}#j(t){return{base:t.elevated,subtle:t.overlay,elevated:this.#S(t.elevated,.08),sunken:t.elevated,overlay:this.#S(t.overlay,.05)}}#B(t={},e="#000000",r=4.5){let o=["600","700","800","500","400","900","300","200"],n={shade:null,color:null,ratio:0};for(let i of o){let s=t?.[i];if(!s||typeof s!="string")continue;let l=this.#d(s,e);if(l>n.ratio&&(n={shade:i,color:s,ratio:l}),l>=r)return s}return n.color||t?.["600"]||t?.["500"]}#w(t={},e=4.5){let r=["600","700","800","500","400","900"],o={shade:null,color:null,ratio:0};for(let n of r){let i=t?.[n];if(!i||typeof i!="string")continue;let s=this.#d(i,"#ffffff");if(s>o.ratio&&(o={shade:n,color:i,ratio:s}),s>=e)return i}return o.color||t?.["600"]||t?.["500"]}#k(t,e={}){let r={},o=e.light??.1,n=e.dark??.25;return Object.entries(t).forEach(([i,s])=>{if(!s||typeof s!="string"||!s.startsWith("#"))return;let l=this.#p(s)<.5,u=this.#v(s,4.5),c=this.#v(s,3),d=this.#R(u,s,.4),p=u,m=d,h=l?"#ffffff":"#000000",b=l?n:o,f=this.#x(h,b),w=l?"#ffffff":"#000000",S=l?.15:.1,$=this.#x(w,S);r[i]={bg:s,text:u,textSecondary:c,textMuted:d,icon:p,iconSubtle:m,shadow:f,border:$,scheme:l?"dark":"light"}}),r}#S(t,e=.05){let r=this.#n(t),o=Math.min(r.l+(100-r.l)*e,95);return this.#t(r.h,r.s,o)}#i(t){let e={};return Object.entries({50:{source:"900",dimFactor:.8},100:{source:"800",dimFactor:.8},200:{source:"700",dimFactor:.8},300:{source:"600",dimFactor:.8},400:{source:"500",dimFactor:.85},500:{source:"400",dimFactor:.85},600:{source:"300",dimFactor:.85},700:{source:"200",dimFactor:.85},800:{source:"100",dimFactor:.95},900:{source:"50",dimFactor:.95}}).forEach(([o,n])=>{let i=t[n.source];e[o]=this.#N(i,n.dimFactor)}),e}#N(t,e=.8){let r=this.#n(t),o=Math.max(r.s*e,5),n=Math.max(r.l*e,5);return this.#t(r.h,o,n)}generateSpacingTokens(t){let{baseUnit:e=4,scaleRatio:r=1.25,maxSpacingSteps:o=12}=t,n=Number.isFinite(Number(e))?Number(e):4,i=Math.min(Number.isFinite(Number(o))?Number(o):12,12),s={0:"0"};for(let l=1;l<=i;l++)s[l]=`${n*l}px`;return s}#P(t){let{radiusSize:e="medium",customRadius:r=null}=t,o;r!=null?o=r:typeof e=="number"?o=e:typeof e=="string"?o=g.RadiusSizes[e]??g.RadiusSizes.medium:o=g.RadiusSizes.medium;let n=Number.isFinite(Number(o))?Number(o):g.RadiusSizes.medium;return{none:"0",xs:`${Number.isFinite(n*.25)?Math.round(n*.25):0}px`,sm:`${Number.isFinite(n*.5)?Math.round(n*.5):0}px`,md:`${n}px`,lg:`${Number.isFinite(n*1.5)?Math.round(n*1.5):0}px`,xl:`${Number.isFinite(n*2)?Math.round(n*2):0}px`,full:"9999px"}}#O(t){let{borderWidth:e="medium"}=t,r;typeof e=="number"?r=e:typeof e=="string"?r=g.BorderWidths[e]??g.BorderWidths.medium:r=g.BorderWidths.medium;let o=Number.isFinite(Number(r))?Number(r):g.BorderWidths.medium,n=i=>`${Math.max(0,Math.round(i*100)/100)}px`;return{hairline:n(o*.25),thin:n(o*.5),medium:n(o),thick:n(o*1.5)}}generateTypographyTokens(t){let{fontFamilyHeadings:e="system-ui, -apple-system, sans-serif",fontFamilyBody:r="system-ui, -apple-system, sans-serif",fontFamilyMono:o='ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace',baseFontSize:n=16,fontScale:i=1.25,fontWeightLight:s=g.FontWeights.light,fontWeightNormal:l=g.FontWeights.normal,fontWeightMedium:u=g.FontWeights.medium,fontWeightSemibold:c=g.FontWeights.semibold,fontWeightBold:d=g.FontWeights.bold,lineHeightTight:p=g.LineHeights.tight,lineHeightNormal:m=g.LineHeights.normal,lineHeightRelaxed:h=g.LineHeights.relaxed}=t,b=Number.isFinite(Number(n))?Number(n):16,f=Number.isFinite(Number(i))?Number(i):1.25;return{fontFamily:{headings:e,body:r,mono:o},fontSize:{xs:`${Math.round(b/Math.pow(f,2))}px`,sm:`${Math.round(b/f)}px`,base:`${b}px`,lg:`${Math.round(b*f)}px`,xl:`${Math.round(b*Math.pow(f,2))}px`,"2xl":`${Math.round(b*Math.pow(f,3))}px`,"3xl":`${Math.round(b*Math.pow(f,4))}px`,"4xl":`${Math.round(b*Math.pow(f,5))}px`},fontWeight:{light:s?.toString()||"300",normal:l?.toString()||"400",medium:u?.toString()||"500",semibold:c?.toString()||"600",bold:d?.toString()||"700"},lineHeight:{tight:p?.toString()||"1.25",normal:m?.toString()||"1.5",relaxed:h?.toString()||"1.75"}}}#$(t){let{baseShadowOpacity:e=.1,shadowBlurMultiplier:r=1,shadowOffsetMultiplier:o=1}=t,n=`rgba(0, 0, 0, ${e})`,i=`rgba(0, 0, 0, ${e*.5})`;return{sm:`0 ${1*o}px ${2*r}px 0 ${i}`,base:`0 ${1*o}px ${3*r}px 0 ${n}, 0 ${1*o}px ${2*r}px 0 ${i}`,md:`0 ${4*o}px ${6*r}px ${-1*o}px ${n}, 0 ${2*o}px ${4*r}px ${-1*o}px ${i}`,lg:`0 ${10*o}px ${15*r}px ${-3*o}px ${n}, 0 ${4*o}px ${6*r}px ${-2*o}px ${i}`,xl:`0 ${20*o}px ${25*r}px ${-5*o}px ${n}, 0 ${10*o}px ${10*r}px ${-5*o}px ${i}`,inner:`inset 0 ${2*o}px ${4*r}px 0 ${i}`}}#D(t){let{maxWidth:e=1200,containerPadding:r=16,breakpoints:o={sm:640,md:768,lg:1024,xl:1280}}=t,n=this.#z(t);return{maxWidth:this.#o(e,"1200px"),maxWidthSm:n.sm,maxWidthMd:n.md,maxWidthLg:n.lg,maxWidthXl:n.xl,minHeight:"100vh",containerPadding:this.#o(r,"16px"),breakpoints:{sm:this.#o(o.sm,"640px"),md:this.#o(o.md,"768px"),lg:this.#o(o.lg,"1024px"),xl:this.#o(o.xl,"1280px")},pageMargin:"120px",sectionGap:"160px",containerGap:"200px",heroSpacing:"240px",footerSpacing:"160px"}}#z(t={}){let e={sm:640,md:768,lg:1024,xl:1280},{maxWidths:r={},maxWidth:o=1200,containerPadding:n=16,breakpoints:i=e}=t||{},s=this.#s(n,16),l=this.#s(o,e.xl),u={sm:this.#s(i.sm,e.sm),md:this.#s(i.md,e.md),lg:this.#s(i.lg,e.lg),xl:this.#s(i.xl,e.xl)},c=p=>p?Math.max(320,p-s*2):l,d={sm:Math.min(l,c(u.sm)),md:Math.min(l,c(u.md)),lg:Math.min(l,c(u.lg)),xl:Math.max(320,l)};return{sm:this.#o(r.sm,`${d.sm}px`),md:this.#o(r.md,`${d.md}px`),lg:this.#o(r.lg,`${d.lg}px`),xl:this.#o(r.xl,`${d.xl}px`)}}#o(t,e){return typeof t=="number"&&Number.isFinite(t)?`${t}px`:typeof t=="string"&&t.trim().length>0?t:e}#s(t,e){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"){let r=parseFloat(t);if(Number.isFinite(r))return r}return e}#U(t){let{transitionSpeed:e=g.TransitionSpeeds.normal,animationEasing:r=g.AnimationEasings["ease-out"]}=t,o;return typeof e=="number"?o=e:typeof e=="string"&&g.TransitionSpeeds[e]?o=g.TransitionSpeeds[e]:o=g.TransitionSpeeds.normal,{fast:`${Math.round(o*.6)}ms`,normal:`${o}ms`,slow:`${Math.round(o*1.4)}ms`}}#I(t){let{baseZIndex:e=1e3,zIndexStep:r=10}=t;return{dropdown:e.toString(),sticky:(e+r*2).toString(),fixed:(e+r*3).toString(),modal:(e+r*4).toString(),drawer:(e+r*5).toString(),popover:(e+r*6).toString(),tooltip:(e+r*7).toString(),notification:(e+r*8).toString()}}#H(t){let{set:e="phosphor",weight:r="regular",defaultSize:o=24,sizes:n={xs:16,sm:20,md:24,lg:32,xl:48,"2xl":64},spritePath:i="/assets/pds/icons/pds-icons.svg",externalPath:s="/assets/img/icons/"}=t;return{set:e,weight:r,defaultSize:`${o}px`,sizes:Object.fromEntries(Object.entries(n).map(([l,u])=>[l,`${u}px`])),spritePath:i,externalPath:s}}#_(t){let e=[];e.push(` /* Colors */
|
|
20
20
|
`);let r=(o,n="")=>{Object.entries(o).forEach(([i,s])=>{typeof s=="object"&&s!==null?r(s,`${n}${i}-`):typeof s=="string"&&e.push(` --color-${n}${i}: ${s};
|
|
21
21
|
`)})};return Object.entries(t).forEach(([o,n])=>{o!=="dark"&&o!=="surfaceSmart"&&o!=="interactive"&&typeof n=="object"&&n!==null&&r(n,`${o}-`)}),t.surfaceSmart&&(e.push(` /* Smart Surface Tokens (context-aware) */
|
|
22
22
|
`),Object.entries(t.surfaceSmart).forEach(([o,n])=>{e.push(` --surface-${o}-bg: ${n.bg};
|
|
@@ -116,7 +116,7 @@ var qe=Object.defineProperty;var D=(a,t)=>()=>(a&&(t=a(a=0)),t);var U=(a,t)=>{fo
|
|
|
116
116
|
`),e.push(` --icon-size: ${t.defaultSize};
|
|
117
117
|
`),Object.entries(t.sizes).forEach(([r,o])=>{e.push(` --icon-size-${r}: ${o};
|
|
118
118
|
`)}),`${e.join("")}
|
|
119
|
-
`}#ee(t,e){if(!t?.dark)return"";let r=[],o=(d,p="")=>{Object.entries(d).forEach(([h
|
|
119
|
+
`}#ee(t,e){if(!t?.dark)return"";let r=[],o=(d,p="")=>{Object.entries(d).forEach(([m,h])=>{typeof h=="object"&&h!==null?o(h,`${p}${m}-`):typeof h=="string"&&r.push(` --color-${p}${m}: ${h};
|
|
120
120
|
`)})};Object.entries(t.dark).forEach(([d,p])=>{d!=="surfaceSmart"&&typeof p=="object"&&p!==null&&o(p,`${d}-`)});let n=[];t.dark.surfaceSmart&&(n.push(` /* Smart Surface Tokens (dark mode, context-aware) */
|
|
121
121
|
`),Object.entries(t.dark.surfaceSmart).forEach(([d,p])=>{n.push(` --surface-${d}-bg: ${p.bg};
|
|
122
122
|
`),n.push(` --surface-${d}-text: ${p.text};
|
|
@@ -151,16 +151,16 @@ var qe=Object.defineProperty;var D=(a,t)=>()=>(a&&(t=a(a=0)),t);var U=(a,t)=>{fo
|
|
|
151
151
|
--backdrop-background: var(--backdrop-bg);
|
|
152
152
|
`,l=this.#oe(t),u=e?[this.#u(e)]:[];return`html[data-theme="dark"] {
|
|
153
153
|
${[...r,...n,...u,i,s,l].join("")}}
|
|
154
|
-
`}#te(t,e){if(!t?.dark)return"";let r=[],o=(p,
|
|
155
|
-
`)})};Object.entries(t.dark).forEach(([p,
|
|
156
|
-
`),Object.entries(t.dark.surfaceSmart).forEach(([p,
|
|
157
|
-
`),n.push(` --surface-${p}-text: ${
|
|
158
|
-
`),n.push(` --surface-${p}-text-secondary: ${
|
|
159
|
-
`),n.push(` --surface-${p}-text-muted: ${
|
|
160
|
-
`),n.push(` --surface-${p}-icon: ${
|
|
161
|
-
`),n.push(` --surface-${p}-icon-subtle: ${
|
|
162
|
-
`),n.push(` --surface-${p}-shadow: ${
|
|
163
|
-
`),n.push(` --surface-${p}-border: ${
|
|
154
|
+
`}#te(t,e){if(!t?.dark)return"";let r=[],o=(p,m="")=>{Object.entries(p).forEach(([h,b])=>{typeof b=="object"&&b!==null?o(b,`${m}${h}-`):typeof b=="string"&&r.push(` --color-${m}${h}: ${b};
|
|
155
|
+
`)})};Object.entries(t.dark).forEach(([p,m])=>{p!=="surfaceSmart"&&typeof m=="object"&&m!==null&&o(m,`${p}-`)});let n=[];t.dark.surfaceSmart&&(n.push(` /* Smart Surface Tokens (dark mode, context-aware) */
|
|
156
|
+
`),Object.entries(t.dark.surfaceSmart).forEach(([p,m])=>{n.push(` --surface-${p}-bg: ${m.bg};
|
|
157
|
+
`),n.push(` --surface-${p}-text: ${m.text};
|
|
158
|
+
`),n.push(` --surface-${p}-text-secondary: ${m.textSecondary};
|
|
159
|
+
`),n.push(` --surface-${p}-text-muted: ${m.textMuted};
|
|
160
|
+
`),n.push(` --surface-${p}-icon: ${m.icon};
|
|
161
|
+
`),n.push(` --surface-${p}-icon-subtle: ${m.iconSubtle};
|
|
162
|
+
`),n.push(` --surface-${p}-shadow: ${m.shadow};
|
|
163
|
+
`),n.push(` --surface-${p}-border: ${m.border};
|
|
164
164
|
`)}),n.push(`
|
|
165
165
|
`));let i=[];t.interactive&&t.interactive.dark&&(i.push(` /* Interactive Colors - optimized for specific use cases (dark mode) */
|
|
166
166
|
`),i.push(` --color-primary-fill: ${t.interactive.dark.fill}; /* For button backgrounds with white text */
|
|
@@ -626,7 +626,7 @@ html[data-theme="dark"] .liquid-glass {
|
|
|
626
626
|
|
|
627
627
|
/* Dialog styles moved to #generateDialogStyles() */
|
|
628
628
|
|
|
629
|
-
`}#le(){let{shape:t={},gap:e,inputPadding:r,buttonPadding:o,focusRingWidth:n,focusRingOpacity:i,borderWidthThin:s,sectionSpacing:l,buttonMinHeight:u,inputMinHeight:c}=this.options.design,d=typeof t.borderWidth=="number"?t.borderWidth:typeof t.borderWidth=="string"?g.BorderWidths[t.borderWidth]??null:null,p=r||.75,
|
|
629
|
+
`}#le(){let{shape:t={},gap:e,inputPadding:r,buttonPadding:o,focusRingWidth:n,focusRingOpacity:i,borderWidthThin:s,sectionSpacing:l,buttonMinHeight:u,inputMinHeight:c}=this.options.design,d=typeof t.borderWidth=="number"?t.borderWidth:typeof t.borderWidth=="string"?g.BorderWidths[t.borderWidth]??null:null,p=r||.75,m=o||1,h=n||3,b=s||d||g.BorderWidths.thin,f=e||1,w=l||2,S=u||44;return`/* Mobile-First Form Styles - Generated from Design Config */
|
|
630
630
|
form {
|
|
631
631
|
margin: 0;
|
|
632
632
|
width: 100%;
|
|
@@ -785,7 +785,7 @@ input, textarea, select {
|
|
|
785
785
|
border-color: var(--color-danger-500);
|
|
786
786
|
|
|
787
787
|
&:focus {
|
|
788
|
-
box-shadow: 0 0 0 ${
|
|
788
|
+
box-shadow: 0 0 0 ${h}px color-mix(in oklab, var(--color-danger-500) ${Math.round((i||.3)*100)}%, transparent);
|
|
789
789
|
}
|
|
790
790
|
}
|
|
791
791
|
}
|
|
@@ -926,7 +926,7 @@ input[type="checkbox"] + label:not(fieldset label):not(label[data-toggle]) {
|
|
|
926
926
|
align-items: center;
|
|
927
927
|
justify-content: center;
|
|
928
928
|
min-height: calc(${S}px * 0.75);
|
|
929
|
-
padding: calc(var(--spacing-1) * ${
|
|
929
|
+
padding: calc(var(--spacing-1) * ${m*.6}) calc(var(--spacing-4) * 0.85);
|
|
930
930
|
border: var(--border-width-medium) solid var(--color-border);
|
|
931
931
|
border-radius: var(--radius-md);
|
|
932
932
|
font-family: var(--font-family-body);
|
|
@@ -967,7 +967,7 @@ input[type="checkbox"]:checked + label:not(fieldset label):not(label[data-toggle
|
|
|
967
967
|
label:has(input[type="checkbox"]:focus):not(fieldset label):not(label[data-toggle]),
|
|
968
968
|
input[type="checkbox"]:focus + label:not(fieldset label):not(label[data-toggle]) {
|
|
969
969
|
outline: none;
|
|
970
|
-
box-shadow: 0 0 0 ${
|
|
970
|
+
box-shadow: 0 0 0 ${h}px color-mix(in oklab, var(--color-primary-500) ${Math.round((i||.3)*100)}%, transparent);
|
|
971
971
|
}
|
|
972
972
|
|
|
973
973
|
label:has(input[type="checkbox"]:disabled):not(fieldset label):not(label[data-toggle]),
|
|
@@ -1030,7 +1030,7 @@ fieldset[role="group"].buttons {
|
|
|
1030
1030
|
align-items: center;
|
|
1031
1031
|
justify-content: center;
|
|
1032
1032
|
min-height: calc(${S}px * 0.75);
|
|
1033
|
-
padding: calc(var(--spacing-1) * ${
|
|
1033
|
+
padding: calc(var(--spacing-1) * ${m*.6}) calc(var(--spacing-4) * 0.85);
|
|
1034
1034
|
border: var(--border-width-medium) solid var(--color-border);
|
|
1035
1035
|
border-radius: var(--radius-md);
|
|
1036
1036
|
font-family: var(--font-family-body);
|
|
@@ -1075,7 +1075,7 @@ fieldset[role="group"].buttons {
|
|
|
1075
1075
|
label:has(input[type="radio"]:focus),
|
|
1076
1076
|
label:has(input[type="checkbox"]:focus) {
|
|
1077
1077
|
outline: none;
|
|
1078
|
-
box-shadow: 0 0 0 ${
|
|
1078
|
+
box-shadow: 0 0 0 ${h}px color-mix(in oklab, var(--color-primary-500) ${Math.round((i||.3)*100)}%, transparent);
|
|
1079
1079
|
}
|
|
1080
1080
|
|
|
1081
1081
|
label:has(input[type="radio"]:disabled),
|
|
@@ -1228,7 +1228,7 @@ button, .btn, input[type="submit"], input[type="button"], input[type="reset"] {
|
|
|
1228
1228
|
align-items: center;
|
|
1229
1229
|
justify-content: center;
|
|
1230
1230
|
min-height: ${S}px;
|
|
1231
|
-
padding: calc(var(--spacing-1) * ${
|
|
1231
|
+
padding: calc(var(--spacing-1) * ${m}) var(--spacing-6);
|
|
1232
1232
|
border: var(--border-width-medium) solid transparent;
|
|
1233
1233
|
border-radius: var(--radius-md);
|
|
1234
1234
|
font-family: var(--font-family-body);
|
|
@@ -1251,7 +1251,7 @@ button, .btn, input[type="submit"], input[type="button"], input[type="reset"] {
|
|
|
1251
1251
|
|
|
1252
1252
|
&:focus {
|
|
1253
1253
|
outline: none;
|
|
1254
|
-
box-shadow: 0 0 0 ${
|
|
1254
|
+
box-shadow: 0 0 0 ${h}px color-mix(in oklab, var(--color-primary-500) ${Math.round((i||.3)*100)}%, transparent);
|
|
1255
1255
|
}
|
|
1256
1256
|
|
|
1257
1257
|
&:disabled {
|
|
@@ -1281,7 +1281,7 @@ button, .btn, input[type="submit"], input[type="button"], input[type="reset"] {
|
|
|
1281
1281
|
}
|
|
1282
1282
|
|
|
1283
1283
|
&:focus {
|
|
1284
|
-
box-shadow: 0 0 0 ${
|
|
1284
|
+
box-shadow: 0 0 0 ${h}px color-mix(in oklab, var(--color-primary-500) ${Math.round((i||.3)*100)}%, transparent);
|
|
1285
1285
|
}
|
|
1286
1286
|
|
|
1287
1287
|
&:disabled {
|
|
@@ -1867,7 +1867,7 @@ tbody {
|
|
|
1867
1867
|
.badge-lg { padding: var(--spacing-2) var(--spacing-3); font-size: var(--font-size-sm); }
|
|
1868
1868
|
.pill { padding: var(--spacing-1) var(--spacing-3); border-radius: var(--radius-full); }
|
|
1869
1869
|
|
|
1870
|
-
`}#
|
|
1870
|
+
`}#me(){let{layout:t={},behavior:e={}}=this.options.design;return`/* ============================================================================
|
|
1871
1871
|
Dialog Primitive
|
|
1872
1872
|
Native <dialog> element with PDS integration
|
|
1873
1873
|
============================================================================ */
|
|
@@ -1890,12 +1890,10 @@ dialog {
|
|
|
1890
1890
|
|
|
1891
1891
|
/* Smooth transitions */
|
|
1892
1892
|
opacity: 0;
|
|
1893
|
-
|
|
1893
|
+
transform: scale(0.95);
|
|
1894
1894
|
transition:
|
|
1895
|
-
opacity
|
|
1896
|
-
|
|
1897
|
-
overlay 0.2s ease allow-discrete,
|
|
1898
|
-
display 0.2s ease allow-discrete;
|
|
1895
|
+
opacity var(--transition-normal) ease,
|
|
1896
|
+
transform var(--transition-normal) ease;
|
|
1899
1897
|
|
|
1900
1898
|
|
|
1901
1899
|
}
|
|
@@ -1903,14 +1901,18 @@ dialog {
|
|
|
1903
1901
|
/* Open state */
|
|
1904
1902
|
dialog[open] {
|
|
1905
1903
|
opacity: 1;
|
|
1906
|
-
|
|
1904
|
+
transform: scale(1);
|
|
1905
|
+
animation: pds-dialog-enter var(--transition-normal) ease;
|
|
1907
1906
|
}
|
|
1908
1907
|
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
dialog[open] {
|
|
1908
|
+
@keyframes pds-dialog-enter {
|
|
1909
|
+
from {
|
|
1912
1910
|
opacity: 0;
|
|
1913
|
-
|
|
1911
|
+
transform: scale(0.95);
|
|
1912
|
+
}
|
|
1913
|
+
to {
|
|
1914
|
+
opacity: 1;
|
|
1915
|
+
transform: scale(1);
|
|
1914
1916
|
}
|
|
1915
1917
|
}
|
|
1916
1918
|
|
|
@@ -1919,20 +1921,17 @@ dialog::backdrop {
|
|
|
1919
1921
|
background: var(--backdrop-bg);
|
|
1920
1922
|
backdrop-filter: var(--backdrop-filter);
|
|
1921
1923
|
opacity: 0;
|
|
1922
|
-
transition:
|
|
1923
|
-
opacity 0.2s ease,
|
|
1924
|
-
overlay 0.2s ease allow-discrete,
|
|
1925
|
-
display 0.2s ease allow-discrete;
|
|
1924
|
+
transition: opacity var(--transition-normal) ease;
|
|
1926
1925
|
}
|
|
1927
1926
|
|
|
1928
1927
|
dialog[open]::backdrop {
|
|
1929
1928
|
opacity: var(--backdrop-opacity, 1);
|
|
1929
|
+
animation: pds-dialog-backdrop-enter var(--transition-normal) ease;
|
|
1930
1930
|
}
|
|
1931
1931
|
|
|
1932
|
-
@
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
}
|
|
1932
|
+
@keyframes pds-dialog-backdrop-enter {
|
|
1933
|
+
from { opacity: 0; }
|
|
1934
|
+
to { opacity: var(--backdrop-opacity, 1); }
|
|
1936
1935
|
}
|
|
1937
1936
|
|
|
1938
1937
|
/* Dialog - constrain max height to 90vh, support custom maxHeight via CSS variable */
|
|
@@ -2053,7 +2052,7 @@ dialog.dialog-full { max-width: calc(100vw - var(--spacing-8)); max-height: calc
|
|
|
2053
2052
|
dialog, dialog::backdrop { transition-duration: 0.01s !important; }
|
|
2054
2053
|
}
|
|
2055
2054
|
|
|
2056
|
-
`}#
|
|
2055
|
+
`}#he(){let{layout:t={}}=this.options.design;return`/* Tab Strip Component */
|
|
2057
2056
|
|
|
2058
2057
|
/* Tab navigation */
|
|
2059
2058
|
|
|
@@ -3019,13 +3018,13 @@ ${this.#pe()}
|
|
|
3019
3018
|
|
|
3020
3019
|
${this.#ge()}
|
|
3021
3020
|
|
|
3022
|
-
${this.#
|
|
3021
|
+
${this.#me()}
|
|
3023
3022
|
|
|
3024
3023
|
${this.#ue()}
|
|
3025
3024
|
|
|
3026
3025
|
${this.#ye()}
|
|
3027
3026
|
|
|
3028
|
-
${this.#
|
|
3027
|
+
${this.#he()}
|
|
3029
3028
|
|
|
3030
3029
|
${this.#de()}
|
|
3031
3030
|
|
|
@@ -3282,7 +3281,7 @@ export const ${t} = new CSSStyleSheet();
|
|
|
3282
3281
|
${t}.replaceSync(\`${r}\`);
|
|
3283
3282
|
|
|
3284
3283
|
export const ${t}CSS = \`${r}\`;
|
|
3285
|
-
`}};var ne=class{constructor(){this._mode="static",this._staticPaths={tokens:"/assets/pds/styles/pds-tokens.css.js",primitives:"/assets/pds/styles/pds-primitives.css.js",components:"/assets/pds/styles/pds-components.css.js",utilities:"/assets/pds/styles/pds-utilities.css.js",styles:"/assets/pds/styles/pds-styles.css.js"}}setLiveMode(){this._mode="live"}setStaticMode(t={}){this._mode="static",this._staticPaths={...this._staticPaths,...t}}async getStylesheet(t){if(this._mode==="live")return null;try{return(await import(this._staticPaths[t]))[t]}catch(e){console.error(`[PDS Registry] Failed to load static ${t}:`,e),console.error(`[PDS Registry] Looking for: ${this._staticPaths[t]}`),console.error("[PDS Registry] Make sure you've run 'npm run pds:build' and configured PDS.start() with the correct static.root path");let r=new CSSStyleSheet;return r.replaceSync("/* Failed to load "+t+" */"),r}}get mode(){return this._mode}get isLive(){return this._mode==="live"}},ie=new ne;function et(a){try{if(typeof document>"u")return;if(typeof CSSStyleSheet<"u"&&"adoptedStyleSheets"in Document.prototype){let r=new CSSStyleSheet;r.replaceSync(a),r._pds=!0;let o=(document.adoptedStyleSheets||[]).filter(n=>n._pds!==!0);document.adoptedStyleSheets=[...o,r];return}let t="pds-runtime-stylesheet",e=document.getElementById(t);if(!e){e=document.createElement("style"),e.id=t,e.type="text/css";let r=document.head||document.getElementsByTagName("head")[0];r?r.appendChild(e):document.documentElement.appendChild(e)}e.textContent=a}catch(t){console.warn("installRuntimeStyles failed:",t)}}function J(a){let t=a;if(!t||typeof t!="object"){console.error("[Runtime] applyStyles requires an explicit generator instance in live mode");return}let e=t.layeredCSS||t.css||"";if(!e){t.options?.log?.("warn","[Runtime] No CSS available on generator to apply");return}et(e)}async function ze(a,t=[],e=null){try{let r=e?.primitivesStylesheet?e.primitivesStylesheet:await ie.getStylesheet("primitives");a.adoptedStyleSheets=[r,...t]}catch(r){let o=a.host?.tagName?.toLowerCase()||"unknown";console.error(`[PDS Adopter] <${o}> failed to adopt primitives:`,r),a.adoptedStyleSheets=t}}async function Me(a,t=["primitives"],e=[],r=null){try{let n=(await Promise.all(t.map(async i=>{if(r)switch(i){case"tokens":return r.tokensStylesheet;case"primitives":return r.primitivesStylesheet;case"components":return r.componentsStylesheet;case"utilities":return r.utilitiesStylesheet;default:break}return ie.getStylesheet(i)}))).filter(i=>i!==null);a.adoptedStyleSheets=[...n,...e]}catch(o){let n=a.host?.tagName?.toLowerCase()||"unknown";console.error(`[PDS Adopter] <${n}> failed to adopt layers:`,o),a.adoptedStyleSheets=e}}var tt=[{selector:".accordion"},{selector:"nav[data-dropdown]"},{selector:"label[data-toggle]"},{selector:'input[type="range"]'},{selector:"form[data-required]"},{selector:"fieldset[role=group][data-open]"},{selector:"[data-clip]"},{selector:"button, a[class*='btn-']"}];function rt(a){a.dataset.enhancedAccordion||(a.dataset.enhancedAccordion="true",a.addEventListener("toggle",t=>{t.target.open&&t.target.parentElement===a&&a.querySelectorAll(":scope > details[open]").forEach(e=>{e!==t.target&&(e.open=!1)})},!0))}function ot(a){if(a.dataset.enhancedDropdown)return;a.dataset.enhancedDropdown="true";let t=a.lastElementChild;if(!t)return;let e=a.querySelector("[data-dropdown-toggle]")||a.querySelector("button");e&&!e.hasAttribute("type")&&e.setAttribute("type","button"),t.id||(t.id=`dropdown-${Math.random().toString(36).slice(2,9)}`),t.tagName?.toLowerCase()==="menu"&&!t.hasAttribute("role")&&t.setAttribute("role","menu"),t.hasAttribute("aria-hidden")||t.setAttribute("aria-hidden","true"),e&&(e.setAttribute("aria-haspopup","true"),e.setAttribute("aria-controls",t.id),e.setAttribute("aria-expanded","false"));let o=()=>{let c=(a.getAttribute("data-direction")||a.getAttribute("data-dropdown-direction")||a.getAttribute("data-mode")||"auto").toLowerCase();if(c==="up"||c==="down")return c;let d=a.getBoundingClientRect(),p=t?.getBoundingClientRect?.()||{height:0},h=Math.max(t?.offsetHeight||0,t?.scrollHeight||0,p.height||0,200),m=Math.max(0,window.innerHeight-d.bottom),b=Math.max(0,d.top);return m>=h?"down":b>=h||b>m?"up":"down"},n=()=>{let c=(a.getAttribute("data-align")||a.getAttribute("data-dropdown-align")||"auto").toLowerCase();if(c==="left"||c==="right"||c==="start"||c==="end")return c==="start"?"left":c==="end"?"right":c;let d=a.getBoundingClientRect(),p=t?.getBoundingClientRect?.()||{width:0},h=Math.max(t?.offsetWidth||0,t?.scrollWidth||0,p.width||0,240),m=Math.max(0,window.innerWidth-d.left),b=Math.max(0,d.right);return m>=h?"left":b>=h||b>m?"right":"left"},i=null,s=()=>{a.dataset.dropdownDirection=o(),a.dataset.dropdownAlign=n(),t.setAttribute("aria-hidden","false"),e?.setAttribute("aria-expanded","true"),i||(i=c=>{(c.composedPath?c.composedPath():[c.target]).some(h=>h===a)||l()},setTimeout(()=>{document.addEventListener("click",i)},0))},l=()=>{t.setAttribute("aria-hidden","true"),e?.setAttribute("aria-expanded","false"),i&&(document.removeEventListener("click",i),i=null)},u=()=>{t.getAttribute("aria-hidden")==="false"?l():s()};e?.addEventListener("click",c=>{c.preventDefault(),c.stopPropagation(),u()}),a.addEventListener("keydown",c=>{c.key==="Escape"&&(l(),e?.focus())}),a.addEventListener("focusout",c=>{c.relatedTarget&&((c.composedPath?c.composedPath():[c.relatedTarget]).some(h=>h===a)||l())})}function at(a){if(a.dataset.enhancedToggle)return;a.dataset.enhancedToggle="true";let t=a.querySelector('input[type="checkbox"]');if(!t)return;a.hasAttribute("tabindex")||a.setAttribute("tabindex","0"),a.setAttribute("role","switch"),a.setAttribute("aria-checked",t.checked?"true":"false");let e=document.createElement("span");e.className="toggle-switch",e.setAttribute("role","presentation"),e.setAttribute("aria-hidden","true");let r=document.createElement("span");r.className="toggle-knob",e.appendChild(r),a.insertBefore(e,t.nextSibling);let o=()=>{a.setAttribute("aria-checked",t.checked?"true":"false")},n=()=>{t.disabled||(t.checked=!t.checked,o(),t.dispatchEvent(new Event("change",{bubbles:!0})))};a.addEventListener("click",i=>{i.preventDefault(),n()}),a.addEventListener("keydown",i=>{(i.key===" "||i.key==="Enter")&&(i.preventDefault(),n())}),t.addEventListener("change",o)}function nt(a){if(a.dataset.enhancedRange)return;let t=a.closest("label"),e=t?.classList.contains("range-output"),r=a.id||`range-${Math.random().toString(36).substring(2,11)}`,o=`${r}-output`;if(a.id=r,e){let n=t.querySelector("span");if(n&&!n.classList.contains("range-output-wrapper")){let i=document.createElement("span");i.className="range-output-wrapper",i.style.display="flex",i.style.justifyContent="space-between",i.style.alignItems="center";let s=document.createElement("span");s.textContent=n.textContent,i.appendChild(s);let l=document.createElement("output");l.id=o,l.setAttribute("for",r),l.style.color="var(--surface-text-secondary, var(--color-text-secondary))",l.style.fontSize="0.875rem",l.textContent=a.value,i.appendChild(l),n.textContent="",n.appendChild(i);let u=()=>{l.textContent=a.value};a.addEventListener("input",u)}}else{let n=a.closest(".range-container");n||(n=document.createElement("div"),n.className="range-container",a.parentNode?.insertBefore(n,a),n.appendChild(a)),n.style.position="relative";let i=document.createElement("output");i.id=o,i.setAttribute("for",r),i.className="range-bubble",i.setAttribute("aria-live","polite"),n.appendChild(i);let s=()=>{let c=parseFloat(a.min)||0,d=parseFloat(a.max)||100,p=parseFloat(a.value),h=(p-c)/(d-c);i.style.left=`calc(${h*100}% )`,i.textContent=String(p)},l=()=>i.classList.add("visible"),u=()=>i.classList.remove("visible");a.addEventListener("input",s),a.addEventListener("pointerdown",l),a.addEventListener("pointerup",u),a.addEventListener("pointerleave",u),a.addEventListener("focus",l),a.addEventListener("blur",u),s()}a.dataset.enhancedRange="1"}function it(a){if(a.dataset.enhancedRequired)return;a.dataset.enhancedRequired="true";let t=e=>{let r;if(e.closest("[role$=group]")?r=e.closest("[role$=group]").querySelector("legend"):r=e.closest("label"),!r||r.querySelector(".required-asterisk"))return;let o=document.createElement("span");o.classList.add("required-asterisk"),o.textContent="*",o.style.marginLeft="4px";let n=r.querySelector("span, [data-label]");if(n)n.appendChild(o);else{let s=r.querySelector("input, select, textarea");s?r.insertBefore(o,s):r.appendChild(o)}let i=e.closest("form");if(i&&!i.querySelector(".required-legend")){let s=document.createElement("small");s.classList.add("required-legend"),s.textContent="* Required fields",i.insertBefore(s,i.querySelector(".form-actions")||i.lastElementChild)}};a.querySelectorAll("[required]").forEach(e=>{t(e)})}function st(a){if(a.dataset.enhancedOpenGroup)return;a.dataset.enhancedOpenGroup="true",a.classList.add("flex","flex-wrap","buttons");let t=document.createElement("input");t.type="text",t.placeholder="Add item...",t.classList.add("input-text","input-sm"),t.style.width="auto";let e=a.querySelector('input[type="radio"], input[type="checkbox"]');a.appendChild(t),t.addEventListener("keydown",r=>{if(r.key==="Enter"||r.key==="Tab"){let o=t.value.trim();if(o){r.preventDefault();let n=e.type==="radio"?"radio":"checkbox",i=`open-group-${Math.random().toString(36).substring(2,11)}`,s=document.createElement("label"),l=document.createElement("span");l.setAttribute("data-label",""),l.textContent=o;let u=document.createElement("input");u.type=n,u.name=e.name||a.getAttribute("data-name")||"open-group",u.value=o,u.id=i,s.appendChild(l),s.appendChild(u),a.insertBefore(s,t),t.value=""}}else if(r.key==="Backspace"&&t.value===""){r.preventDefault();let o=a.querySelectorAll("label");o.length>0&&o[o.length-1].remove()}})}function ct(a){if(a.dataset.enhancedClip)return;a.dataset.enhancedClip="true",a.hasAttribute("tabindex")||a.setAttribute("tabindex","0"),a.hasAttribute("role")||a.setAttribute("role","button");let t=()=>{let r=a.getAttribute("data-clip-open")==="true";a.setAttribute("aria-expanded",r?"true":"false")},e=()=>{let r=a.getAttribute("data-clip-open")==="true";a.setAttribute("data-clip-open",r?"false":"true"),t()};a.addEventListener("click",r=>{r.defaultPrevented||e()}),a.addEventListener("keydown",r=>{(r.key===" "||r.key==="Enter")&&(r.preventDefault(),e())}),t()}function lt(a){if(a.dataset.enhancedBtnWorking)return;a.dataset.enhancedBtnWorking="true";let t=null,e=!1;new MutationObserver(o=>{o.forEach(n=>{if(n.attributeName==="class"){let i=a.classList.contains("btn-working"),s=a.querySelector("pds-icon");if(i)if(s)t||(t=s.getAttribute("icon")),s.setAttribute("icon","circle-notch");else{let l=document.createElement("pds-icon");l.setAttribute("icon","circle-notch"),l.setAttribute("size","sm"),a.insertBefore(l,a.firstChild),e=!0}else n.oldValue?.includes("btn-working")&&s&&(e?(s.remove(),e=!1):t&&(s.setAttribute("icon",t),t=null))}})}).observe(a,{attributes:!0,attributeFilter:["class"],attributeOldValue:!0})}var dt=new Map([[".accordion",rt],["nav[data-dropdown]",ot],["label[data-toggle]",at],['input[type="range"]',nt],["form[data-required]",it],["fieldset[role=group][data-open]",st],["[data-clip]",ct],["button, a[class*='btn-']",lt]]),Ee=tt.map(a=>({...a,run:dt.get(a.selector)||(()=>{})}));var Fe=[{selector:".accordion",description:"Ensures only one <details> element can be open at a time within the accordion.",demoHtml:`
|
|
3284
|
+
`}};var ne=class{constructor(){this._mode="static",this._staticPaths={tokens:"/assets/pds/styles/pds-tokens.css.js",primitives:"/assets/pds/styles/pds-primitives.css.js",components:"/assets/pds/styles/pds-components.css.js",utilities:"/assets/pds/styles/pds-utilities.css.js",styles:"/assets/pds/styles/pds-styles.css.js"}}setLiveMode(){this._mode="live"}setStaticMode(t={}){this._mode="static",this._staticPaths={...this._staticPaths,...t}}async getStylesheet(t){if(this._mode==="live")return null;try{return(await import(this._staticPaths[t]))[t]}catch(e){console.error(`[PDS Registry] Failed to load static ${t}:`,e),console.error(`[PDS Registry] Looking for: ${this._staticPaths[t]}`),console.error("[PDS Registry] Make sure you've run 'npm run pds:build' and configured PDS.start() with the correct static.root path");let r=new CSSStyleSheet;return r.replaceSync("/* Failed to load "+t+" */"),r}}get mode(){return this._mode}get isLive(){return this._mode==="live"}},ie=new ne;function et(a){try{if(typeof document>"u")return;if(typeof CSSStyleSheet<"u"&&"adoptedStyleSheets"in Document.prototype){let r=new CSSStyleSheet;r.replaceSync(a),r._pds=!0;let o=(document.adoptedStyleSheets||[]).filter(n=>n._pds!==!0);document.adoptedStyleSheets=[...o,r];return}let t="pds-runtime-stylesheet",e=document.getElementById(t);if(!e){e=document.createElement("style"),e.id=t,e.type="text/css";let r=document.head||document.getElementsByTagName("head")[0];r?r.appendChild(e):document.documentElement.appendChild(e)}e.textContent=a}catch(t){console.warn("installRuntimeStyles failed:",t)}}function J(a){let t=a;if(!t||typeof t!="object"){console.error("[Runtime] applyStyles requires an explicit generator instance in live mode");return}let e=t.layeredCSS||t.css||"";if(!e){t.options?.log?.("warn","[Runtime] No CSS available on generator to apply");return}et(e)}async function ze(a,t=[],e=null){try{let r=e?.primitivesStylesheet?e.primitivesStylesheet:await ie.getStylesheet("primitives");a.adoptedStyleSheets=[r,...t]}catch(r){let o=a.host?.tagName?.toLowerCase()||"unknown";console.error(`[PDS Adopter] <${o}> failed to adopt primitives:`,r),a.adoptedStyleSheets=t}}async function Me(a,t=["primitives"],e=[],r=null){try{let n=(await Promise.all(t.map(async i=>{if(r)switch(i){case"tokens":return r.tokensStylesheet;case"primitives":return r.primitivesStylesheet;case"components":return r.componentsStylesheet;case"utilities":return r.utilitiesStylesheet;default:break}return ie.getStylesheet(i)}))).filter(i=>i!==null);a.adoptedStyleSheets=[...n,...e]}catch(o){let n=a.host?.tagName?.toLowerCase()||"unknown";console.error(`[PDS Adopter] <${n}> failed to adopt layers:`,o),a.adoptedStyleSheets=e}}var tt=[{selector:".accordion"},{selector:"nav[data-dropdown]"},{selector:"label[data-toggle]"},{selector:'input[type="range"]'},{selector:"form[data-required]"},{selector:"fieldset[role=group][data-open]"},{selector:"[data-clip]"},{selector:"button, a[class*='btn-']"}];function rt(a){a.dataset.enhancedAccordion||(a.dataset.enhancedAccordion="true",a.addEventListener("toggle",t=>{t.target.open&&t.target.parentElement===a&&a.querySelectorAll(":scope > details[open]").forEach(e=>{e!==t.target&&(e.open=!1)})},!0))}function ot(a){if(a.dataset.enhancedDropdown)return;a.dataset.enhancedDropdown="true";let t=a.lastElementChild;if(!t)return;let e=a.querySelector("[data-dropdown-toggle]")||a.querySelector("button");e&&!e.hasAttribute("type")&&e.setAttribute("type","button"),t.id||(t.id=`dropdown-${Math.random().toString(36).slice(2,9)}`),t.tagName?.toLowerCase()==="menu"&&!t.hasAttribute("role")&&t.setAttribute("role","menu"),t.hasAttribute("aria-hidden")||t.setAttribute("aria-hidden","true"),e&&(e.setAttribute("aria-haspopup","true"),e.setAttribute("aria-controls",t.id),e.setAttribute("aria-expanded","false"));let o=()=>{let c=(a.getAttribute("data-direction")||a.getAttribute("data-dropdown-direction")||a.getAttribute("data-mode")||"auto").toLowerCase();if(c==="up"||c==="down")return c;let d=a.getBoundingClientRect(),p=t?.getBoundingClientRect?.()||{height:0},m=Math.max(t?.offsetHeight||0,t?.scrollHeight||0,p.height||0,200),h=Math.max(0,window.innerHeight-d.bottom),b=Math.max(0,d.top);return h>=m?"down":b>=m||b>h?"up":"down"},n=()=>{let c=(a.getAttribute("data-align")||a.getAttribute("data-dropdown-align")||"auto").toLowerCase();if(c==="left"||c==="right"||c==="start"||c==="end")return c==="start"?"left":c==="end"?"right":c;let d=a.getBoundingClientRect(),p=t?.getBoundingClientRect?.()||{width:0},m=Math.max(t?.offsetWidth||0,t?.scrollWidth||0,p.width||0,240),h=Math.max(0,window.innerWidth-d.left),b=Math.max(0,d.right);return h>=m?"left":b>=m||b>h?"right":"left"},i=null,s=()=>{a.dataset.dropdownDirection=o(),a.dataset.dropdownAlign=n(),t.setAttribute("aria-hidden","false"),e?.setAttribute("aria-expanded","true"),i||(i=c=>{(c.composedPath?c.composedPath():[c.target]).some(m=>m===a)||l()},setTimeout(()=>{document.addEventListener("click",i)},0))},l=()=>{t.setAttribute("aria-hidden","true"),e?.setAttribute("aria-expanded","false"),i&&(document.removeEventListener("click",i),i=null)},u=()=>{t.getAttribute("aria-hidden")==="false"?l():s()};e?.addEventListener("click",c=>{c.preventDefault(),c.stopPropagation(),u()}),a.addEventListener("keydown",c=>{c.key==="Escape"&&(l(),e?.focus())}),a.addEventListener("focusout",c=>{c.relatedTarget&&((c.composedPath?c.composedPath():[c.relatedTarget]).some(m=>m===a)||l())})}function at(a){if(a.dataset.enhancedToggle)return;a.dataset.enhancedToggle="true";let t=a.querySelector('input[type="checkbox"]');if(!t)return;a.hasAttribute("tabindex")||a.setAttribute("tabindex","0"),a.setAttribute("role","switch"),a.setAttribute("aria-checked",t.checked?"true":"false");let e=document.createElement("span");e.className="toggle-switch",e.setAttribute("role","presentation"),e.setAttribute("aria-hidden","true");let r=document.createElement("span");r.className="toggle-knob",e.appendChild(r),a.insertBefore(e,t.nextSibling);let o=()=>{a.setAttribute("aria-checked",t.checked?"true":"false")},n=()=>{t.disabled||(t.checked=!t.checked,o(),t.dispatchEvent(new Event("change",{bubbles:!0})))};a.addEventListener("click",i=>{i.preventDefault(),n()}),a.addEventListener("keydown",i=>{(i.key===" "||i.key==="Enter")&&(i.preventDefault(),n())}),t.addEventListener("change",o)}function nt(a){if(a.dataset.enhancedRange)return;let t=a.closest("label"),e=t?.classList.contains("range-output"),r=a.id||`range-${Math.random().toString(36).substring(2,11)}`,o=`${r}-output`;if(a.id=r,e){let n=t.querySelector("span");if(n&&!n.classList.contains("range-output-wrapper")){let i=document.createElement("span");i.className="range-output-wrapper",i.style.display="flex",i.style.justifyContent="space-between",i.style.alignItems="center";let s=document.createElement("span");s.textContent=n.textContent,i.appendChild(s);let l=document.createElement("output");l.id=o,l.setAttribute("for",r),l.style.color="var(--surface-text-secondary, var(--color-text-secondary))",l.style.fontSize="0.875rem",l.textContent=a.value,i.appendChild(l),n.textContent="",n.appendChild(i);let u=()=>{l.textContent=a.value};a.addEventListener("input",u)}}else{let n=a.closest(".range-container");n||(n=document.createElement("div"),n.className="range-container",a.parentNode?.insertBefore(n,a),n.appendChild(a)),n.style.position="relative";let i=document.createElement("output");i.id=o,i.setAttribute("for",r),i.className="range-bubble",i.setAttribute("aria-live","polite"),n.appendChild(i);let s=()=>{let c=parseFloat(a.min)||0,d=parseFloat(a.max)||100,p=parseFloat(a.value),m=(p-c)/(d-c);i.style.left=`calc(${m*100}% )`,i.textContent=String(p)},l=()=>i.classList.add("visible"),u=()=>i.classList.remove("visible");a.addEventListener("input",s),a.addEventListener("pointerdown",l),a.addEventListener("pointerup",u),a.addEventListener("pointerleave",u),a.addEventListener("focus",l),a.addEventListener("blur",u),s()}a.dataset.enhancedRange="1"}function it(a){if(a.dataset.enhancedRequired)return;a.dataset.enhancedRequired="true";let t=e=>{let r;if(e.closest("[role$=group]")?r=e.closest("[role$=group]").querySelector("legend"):r=e.closest("label"),!r||r.querySelector(".required-asterisk"))return;let o=document.createElement("span");o.classList.add("required-asterisk"),o.textContent="*",o.style.marginLeft="4px";let n=r.querySelector("span, [data-label]");if(n)n.appendChild(o);else{let s=r.querySelector("input, select, textarea");s?r.insertBefore(o,s):r.appendChild(o)}let i=e.closest("form");if(i&&!i.querySelector(".required-legend")){let s=document.createElement("small");s.classList.add("required-legend"),s.textContent="* Required fields",i.insertBefore(s,i.querySelector(".form-actions")||i.lastElementChild)}};a.querySelectorAll("[required]").forEach(e=>{t(e)})}function st(a){if(a.dataset.enhancedOpenGroup)return;a.dataset.enhancedOpenGroup="true",a.classList.add("flex","flex-wrap","buttons");let t=document.createElement("input");t.type="text",t.placeholder="Add item...",t.classList.add("input-text","input-sm"),t.style.width="auto";let e=a.querySelector('input[type="radio"], input[type="checkbox"]');a.appendChild(t),t.addEventListener("keydown",r=>{if(r.key==="Enter"||r.key==="Tab"){let o=t.value.trim();if(o){r.preventDefault();let n=e.type==="radio"?"radio":"checkbox",i=`open-group-${Math.random().toString(36).substring(2,11)}`,s=document.createElement("label"),l=document.createElement("span");l.setAttribute("data-label",""),l.textContent=o;let u=document.createElement("input");u.type=n,u.name=e.name||a.getAttribute("data-name")||"open-group",u.value=o,u.id=i,s.appendChild(l),s.appendChild(u),a.insertBefore(s,t),t.value=""}}else if(r.key==="Backspace"&&t.value===""){r.preventDefault();let o=a.querySelectorAll("label");o.length>0&&o[o.length-1].remove()}})}function ct(a){if(a.dataset.enhancedClip)return;a.dataset.enhancedClip="true",a.hasAttribute("tabindex")||a.setAttribute("tabindex","0"),a.hasAttribute("role")||a.setAttribute("role","button");let t=()=>{let r=a.getAttribute("data-clip-open")==="true";a.setAttribute("aria-expanded",r?"true":"false")},e=()=>{let r=a.getAttribute("data-clip-open")==="true";a.setAttribute("data-clip-open",r?"false":"true"),t()};a.addEventListener("click",r=>{r.defaultPrevented||e()}),a.addEventListener("keydown",r=>{(r.key===" "||r.key==="Enter")&&(r.preventDefault(),e())}),t()}function lt(a){if(a.dataset.enhancedBtnWorking)return;a.dataset.enhancedBtnWorking="true";let t=null,e=!1;new MutationObserver(o=>{o.forEach(n=>{if(n.attributeName==="class"){let i=a.classList.contains("btn-working"),s=a.querySelector("pds-icon");if(i)if(s)t||(t=s.getAttribute("icon")),s.setAttribute("icon","circle-notch");else{let l=document.createElement("pds-icon");l.setAttribute("icon","circle-notch"),l.setAttribute("size","sm"),a.insertBefore(l,a.firstChild),e=!0}else n.oldValue?.includes("btn-working")&&s&&(e?(s.remove(),e=!1):t&&(s.setAttribute("icon",t),t=null))}})}).observe(a,{attributes:!0,attributeFilter:["class"],attributeOldValue:!0})}var dt=new Map([[".accordion",rt],["nav[data-dropdown]",ot],["label[data-toggle]",at],['input[type="range"]',nt],["form[data-required]",it],["fieldset[role=group][data-open]",st],["[data-clip]",ct],["button, a[class*='btn-']",lt]]),Ee=tt.map(a=>({...a,run:dt.get(a.selector)||(()=>{})}));var Fe=[{selector:".accordion",description:"Ensures only one <details> element can be open at a time within the accordion.",demoHtml:`
|
|
3286
3285
|
<div class="accordion">
|
|
3287
3286
|
<details>
|
|
3288
3287
|
<summary>Section 1</summary>
|
|
@@ -3345,10 +3344,10 @@ export const ${t}CSS = \`${r}\`;
|
|
|
3345
3344
|
<button class="btn-primary btn-working">
|
|
3346
3345
|
<span>Saving</span>
|
|
3347
3346
|
</button>
|
|
3348
|
-
`.trim()}];var Te="pds",pt=/^([a-z][a-z0-9+\-.]*:)?\/\//i,Ce=/^[a-z]:/i;function I(a=""){return a.endsWith("/")?a:`${a}/`}function ut(a="",t=Te){let e=a.replace(/\/+$/,"");return new RegExp(`(?:^|/)${t}$`,"i").test(e)?e:`${e}/${t}`}function gt(a){return a.replace(/^\.\/+/,"")}function
|
|
3349
|
-
See: https://github.com/Pure-Web-Foundation/pure-ds/blob/main/readme.md#lit-components-not-working`):console.warn(`\u26A0\uFE0F PDS component <${f}> not found. Assets may not be installed.`)}else console.error(`\u274C Auto-define error for <${f}>:`,w)},...
|
|
3350
|
-
`);if(w){let S=document.head.querySelector("style[data-pds-preload]");S&&S.remove();let $=document.createElement("style");$.setAttribute("data-pds-preload",""),$.textContent=w,document.head.insertBefore($,document.head.firstChild)}}catch(
|
|
3347
|
+
`.trim()}];var Te="pds",pt=/^([a-z][a-z0-9+\-.]*:)?\/\//i,Ce=/^[a-z]:/i;function I(a=""){return a.endsWith("/")?a:`${a}/`}function ut(a="",t=Te){let e=a.replace(/\/+$/,"");return new RegExp(`(?:^|/)${t}$`,"i").test(e)?e:`${e}/${t}`}function gt(a){return a.replace(/^\.\/+/,"")}function mt(a){return Ce.test(a)?a.replace(Ce,"").replace(/^\/+/,""):a}function ht(a){return a.startsWith("public/")?a.substring(7):a}function Le(a,t={}){let e=t.segment||Te,r=t.defaultRoot||`/assets/${e}/`,o=a?.public&&a.public?.root||a?.static&&a.static?.root||null;if(!o||typeof o!="string")return I(r);let n=o.trim();return n?(n=n.replace(/\\/g,"/"),n=ut(n,e),n=I(n),pt.test(n)?n:(n=gt(n),n=mt(n),n.startsWith("/")||(n=ht(n),n.startsWith("/")||(n=`/${n}`),n=n.replace(/\/+/g,(i,s)=>s===0?i:"/")),I(n))):I(r)}function Ae(a){let t=a.replace(/['"]/g,"").trim();if(["system-ui","-apple-system","sans-serif","serif","monospace","cursive","fantasy","ui-sans-serif","ui-serif","ui-monospace","ui-rounded"].includes(t.toLowerCase()))return!0;let o=document.createElement("canvas").getContext("2d");if(!o)return!1;let n="mmmmmmmmmmlli",i="72px",s="monospace";o.font=`${i} ${s}`;let l=o.measureText(n).width;o.font=`${i} "${t}", ${s}`;let u=o.measureText(n).width;return l!==u}function ft(a){return a?a.split(",").map(r=>r.trim())[0].replace(/['"]/g,"").trim():null}async function bt(a,t={}){if(!a)return Promise.resolve();let{weights:e=[400,500,600,700],italic:r=!1}=t,o=ft(a);if(!o||Ae(o))return Promise.resolve();let n=encodeURIComponent(o);return document.querySelector(`link[href*="fonts.googleapis.com"][href*="${n}"]`)?(console.log(`Font "${o}" is already loading or loaded`),Promise.resolve()):(console.log(`Loading font "${o}" from Google Fonts...`),new Promise((s,l)=>{let u=document.createElement("link");u.rel="stylesheet";let c=r?`ital,wght@0,${e.join(";0,")};1,${e.join(";1,")}`:`wght@${e.join(";")}`;u.href=`https://fonts.googleapis.com/css2?family=${n}:${c}&display=swap`,u.setAttribute("data-font-loader",o),u.onload=()=>{console.log(`Successfully loaded font "${o}"`),s()},u.onerror=()=>{console.warn(`Failed to load font "${o}" from Google Fonts`),l(new Error(`Failed to load font: ${o}`))},document.head.appendChild(u),setTimeout(()=>{Ae(o)||console.warn(`Font "${o}" did not load within timeout`),s()},5e3)}))}async function se(a){if(!a)return Promise.resolve();let t=new Set;a.fontFamilyHeadings&&t.add(a.fontFamilyHeadings),a.fontFamilyBody&&t.add(a.fontFamilyBody),a.fontFamilyMono&&t.add(a.fontFamilyMono);let e=Array.from(t).map(r=>bt(r).catch(o=>{console.warn(`Could not load font: ${r}`,o)}));await Promise.all(e)}var vt=/^[a-z][a-z0-9+\-.]*:\/\//i,H=(()=>{try{return import.meta.url}catch{return}})(),Y=a=>typeof a=="string"&&a.length&&!a.endsWith("/")?`${a}/`:a;function Q(a,t={}){if(!a||vt.test(a))return a;let{preferModule:e=!0}=t,r=()=>{if(!H)return null;try{return new URL(a,H).href}catch{return null}},o=()=>{if(typeof window>"u"||!window.location?.origin)return null;try{return new URL(a,window.location.origin).href}catch{return null}};return(e?r()||o():o()||r())||a}var je=(()=>{if(H)try{let a=new URL(H);if(/\/public\/assets\/js\//.test(a.pathname))return new URL("../pds/",H).href}catch{return}})(),Be=!1;function Ne(a){Be||typeof document>"u"||(Be=!0,a.addEventListener("pds:ready",t=>{let e=t.detail?.mode;e&&document.documentElement.classList.add(`pds-${e}`,"pds-ready")}))}function de(a={},t={}){if(!t||typeof t!="object")return a;let e=Array.isArray(a)?[...a]:{...a};for(let[r,o]of Object.entries(t))o&&typeof o=="object"&&!Array.isArray(o)?e[r]=de(e[r]&&typeof e[r]=="object"?e[r]:{},o):e[r]=o;return e}function le(a=""){return String(a).toLowerCase().replace(/&/g," and ").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}function B(a){if(a==null)return a;if(typeof a=="function")return;if(typeof a!="object")return a;if(Array.isArray(a))return a.map(e=>B(e)).filter(e=>e!==void 0);let t={};for(let e in a)if(a.hasOwnProperty(e)){let r=a[e];if(typeof r!="function"){let o=B(r);o!==void 0&&(t[e]=o)}}return t}function pe(a={},t={},{presets:e,defaultLog:r}){let o=a&&typeof a.log=="function"?a.log:r,n=typeof a=="object"&&("colors"in a||"typography"in a||"spatialRhythm"in a||"shape"in a||"behavior"in a||"layout"in a||"advanced"in a||"a11y"in a||"components"in a||"icons"in a),i=a&&a.enhancers;i&&!Array.isArray(i)&&(i=Object.values(i));let s=i??t.enhancers??[],l=a&&a.preset,u=a&&a.design,c=a&&a.icons&&typeof a.icons=="object"?a.icons:null,d="preset"in(a||{})||"design"in(a||{})||"enhancers"in(a||{});a&&typeof a=="object"&&ke(a,{log:o,context:"PDS.start"});let p,m=null;if(d){u&&typeof u=="object"&&re(u,{log:o,context:"PDS.start"});let h=String(l||"default").toLowerCase(),b=e?.[h]||Object.values(e||{}).find(v=>le(v.name)===h||String(v.name||"").toLowerCase()===h);if(!b)throw new Error(`PDS preset not found: "${l||"default"}"`);m={id:b.id||le(b.name),name:b.name||b.id||String(h)};let f=structuredClone(b);if(u&&typeof u=="object"||c){let v=u?B(u):{},x=c?B(c):null,C=x?de(v,{icons:x}):v;f=de(f,structuredClone(C))}let{mode:w,autoDefine:S,applyGlobalStyles:$,manageTheme:L,themeStorageKey:R,preloadStyles:F,criticalLayers:A,managerURL:k,manager:z,preset:E,design:W,enhancers:K,log:q,...y}=a;p={...y,design:f,preset:m.name,log:q||r}}else if(n){re(a,{log:o,context:"PDS.start"});let{log:h,...b}=a;p={design:structuredClone(b),log:h||r}}else{let h=e?.default||Object.values(e||{}).find(b=>le(b.name)==="default");if(!h)throw new Error("PDS default preset not available");m={id:h.id||"default",name:h.name||"Default"},p={design:structuredClone(h),preset:m.name,log:r}}return{generatorConfig:p,enhancers:s,presetInfo:m}}function Pe({manageTheme:a,themeStorageKey:t,applyResolvedTheme:e,setupSystemListenerIfNeeded:r}){let o="light",n=null;if(a&&typeof window<"u"){try{n=localStorage.getItem(t)||null}catch{n=null}try{e?.(n),r?.(n)}catch{}n?n==="system"?o=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":o=n:o=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}return{resolvedTheme:o,storedTheme:n}}function Oe(a,{resolvePublicAssetURL:t}){let e=!!(a?.public?.root||a?.static?.root),r=t(a);return!e&&je&&(r=je),Y(Q(r))}async function De(a,{baseEnhancers:t=[]}={}){let{autoDefineBaseURL:e="/auto-define/",autoDefinePreload:r=[],autoDefineMapper:o=null,enhancers:n=[],autoDefineOverrides:i=null,autoDefinePreferModule:s=!0}=a,l=(()=>{let c=new Map;return(t||[]).forEach(d=>c.set(d.selector,d)),(n||[]).forEach(d=>c.set(d.selector,d)),Array.from(c.values())})(),u=null;if(typeof window<"u"&&typeof document<"u"){let c=null;try{let f=await Promise.resolve().then(()=>(We(),Re));c=f?.AutoDefiner||f?.default?.AutoDefiner||f?.default||null}catch(f){console.warn("AutoDefiner not available:",f?.message||f)}let d=f=>{switch(f){case"pds-tabpanel":return"pds-tabstrip.js";default:return`${f}.js`}},{mapper:p,...m}=i&&typeof i=="object"?i:{},b={baseURL:e&&Y(Q(e,{preferModule:s})),predefine:r,scanExisting:!0,observeShadows:!0,patchAttachShadow:!0,debounceMs:16,enhancers:l,onError:(f,w)=>{if(typeof f=="string"&&f.startsWith("pds-")){let $=["pds-form","pds-drawer"].includes(f),L=w?.message?.includes("#pds/lit")||w?.message?.includes("Failed to resolve module specifier");$&&L?console.error(`\u274C PDS component <${f}> requires Lit but #pds/lit is not in import map.
|
|
3348
|
+
See: https://github.com/Pure-Web-Foundation/pure-ds/blob/main/readme.md#lit-components-not-working`):console.warn(`\u26A0\uFE0F PDS component <${f}> not found. Assets may not be installed.`)}else console.error(`\u274C Auto-define error for <${f}>:`,w)},...m,mapper:f=>{if(customElements.get(f))return null;if(typeof o=="function")try{let w=o(f);return w===void 0?d(f):w}catch(w){return console.warn("Custom autoDefine.mapper error; falling back to default:",w?.message||w),d(f)}return d(f)}};c&&(u=new c(b),r.length>0&&typeof c.define=="function"&&await c.define(...r,{baseURL:e,mapper:b.mapper,onError:b.onError}))}return{autoDefiner:u,mergedEnhancers:l}}var ue=["light","dark"],ge=new Set(ue);function xt(a){let e=(Array.isArray(a?.themes)?a.themes.map(r=>String(r).toLowerCase()):ue).filter(r=>ge.has(r));return e.length?e:ue}function me(a,{preferDocument:t=!0}={}){let e=String(a||"").toLowerCase();if(ge.has(e))return e;if(t&&typeof document<"u"){let r=document.documentElement?.getAttribute("data-theme");if(ge.has(r))return r}return typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function he(a,t){let e=me(t);return xt(a).includes(e)}var _e=!1,_=null;function St(){if(typeof window>"u"||!window.localStorage)return null;try{let a=window.localStorage.getItem("pure-ds-config");if(!a)return null;let t=JSON.parse(a);if(t&&("preset"in t||"design"in t))return t}catch{return null}return null}function ve(a={},t={}){if(!t||typeof t!="object")return a;let e=Array.isArray(a)?[...a]:{...a};for(let[r,o]of Object.entries(t))o&&typeof o=="object"&&!Array.isArray(o)?e[r]=ve(e[r]&&typeof e[r]=="object"?e[r]:{},o):e[r]=o;return e}function $t(a){let t=St();if(!t||!a||typeof a!="object")return a;let e=t.preset,r=t.design&&typeof t.design=="object"?t.design:null;if(!e&&!r)return a;let o="preset"in a||"design"in a||"enhancers"in a,n={...a};if(e&&(n.preset=e),r)if(o){let i=a.design&&typeof a.design=="object"?a.design:{};n.design=ve(i,r)}else n=ve(a,r);return n}async function zt(a,{applyResolvedTheme:t,setupSystemListenerIfNeeded:e}){if(_e)return;let[r,o,n,i]=await Promise.all([Promise.resolve().then(()=>(ae(),$e)),Promise.resolve().then(()=>(G(),xe)),Promise.resolve().then(()=>(ye(),be)),Promise.resolve().then(()=>(He(),Ie))]),s=r?.default||r?.ontology,l=r?.findComponentForElement,u=o?.enums;_=n?.PDSQuery||n?.default||null,a.ontology=s,a.findComponentForElement=l,a.enums=u,a.common=i||{},a.presets=O,a.configRelations=we,a.enhancerMetadata=Fe,a.applyStyles=function(c){return J(c||T.instance)},a.adoptLayers=function(c,d,p){return Me(c,d,p,T.instance)},a.adoptPrimitives=function(c,d){return ze(c,d,T.instance)},a.getGenerator=async function(){return T},a.query=async function(c){if(!_){let p=await Promise.resolve().then(()=>(ye(),be));_=p?.PDSQuery||p?.default||null}return _?await new _(a).search(c):[]},a.applyLivePreset=async function(c,d={}){if(!c)return!1;if(!a.registry?.isLive)return console.warn("PDS.applyLivePreset is only available in live mode."),!1;let p=a.currentConfig||{},{design:m,preset:h,...b}=p,f={...structuredClone(B(b)),preset:c},w=pe(f,{},{presets:O,defaultLog:oe}),S=me(a.theme);if(!he(w.generatorConfig.design,S)){let F=w.presetInfo?.name||w.generatorConfig?.design?.name||c;console.warn(`PDS theme "${S}" not supported by preset "${F}".`)}p.theme&&!w.generatorConfig.theme&&(w.generatorConfig.theme=p.theme);let $=new T(w.generatorConfig);if(w.generatorConfig.design?.typography)try{await se(w.generatorConfig.design.typography)}catch(F){w.generatorConfig?.log?.("warn","Failed to load some fonts from Google Fonts:",F)}await J($);let L=w.presetInfo||{id:c,name:c};if(a.currentPreset=L,a.currentConfig=Object.freeze({...p,preset:w.generatorConfig.preset,design:structuredClone(w.generatorConfig.design),theme:w.generatorConfig.theme||p.theme}),d?.persist!==!1&&typeof window<"u"){let F="pure-ds-config";try{let A=localStorage.getItem(F),k=A?JSON.parse(A):null,z={...k&&typeof k=="object"?k:{},preset:L.id||c,design:structuredClone(w.generatorConfig.design||{})};localStorage.setItem(F,JSON.stringify(z))}catch(A){w.generatorConfig?.log?.("warn","Failed to store preset:",A)}}return!0},Object.getOwnPropertyDescriptor(a,"compiled")||Object.defineProperty(a,"compiled",{get(){return a.registry?.isLive&&T.instance?T.instance.compiled:null},enumerable:!0,configurable:!1}),a.preloadCritical=function(c,d={}){if(typeof window>"u"||!document.head||!c)return;let{theme:p,layers:m=["tokens"]}=d;try{let h=p||"light";(p==="system"||!p)&&(h=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),document.documentElement.setAttribute("data-theme",h);let b=c.design?{...c,theme:h}:{design:c,theme:h},f=new T(b),w=m.map(S=>{try{return f.css?.[S]||""}catch{return""}}).filter(S=>S.trim()).join(`
|
|
3349
|
+
`);if(w){let S=document.head.querySelector("style[data-pds-preload]");S&&S.remove();let $=document.createElement("style");$.setAttribute("data-pds-preload",""),$.textContent=w,document.head.insertBefore($,document.head.firstChild)}}catch(h){console.warn("PDS preload failed:",h)}},_e=!0}async function Mt(a,t,{emitReady:e,applyResolvedTheme:r,setupSystemListenerIfNeeded:o}){if(!t||typeof t!="object")throw new Error("PDS.start({ mode: 'live', ... }) requires a valid configuration object");if(t=$t(t),await zt(a,{applyResolvedTheme:r,setupSystemListenerIfNeeded:o}),Ne(a),typeof document<"u"&&document.adoptedStyleSheets){let d=`
|
|
3351
3350
|
html { opacity: 0; }
|
|
3352
3351
|
html.pds-ready { opacity: 1; transition: opacity 0.3s ease-in; }
|
|
3353
|
-
`;try{if(!document.adoptedStyleSheets.some(
|
|
3354
|
-
`);if(k){let z=document.head.querySelector("style[data-pds-critical]");z&&z.remove();let E=document.createElement("style");E.setAttribute("data-pds-critical",""),E.textContent=k;let W=document.head.querySelector('meta[charset], meta[name="viewport"]');W?W.parentNode.insertBefore(E,W.nextSibling):document.head.insertBefore(E,document.head.firstChild)}}catch(k){f?.log?.("warn","Failed to preload critical styles:",k)}a.registry.setLiveMode(),p.presetInfo?.name?f?.log?.("log",`PDS live with preset "${p.presetInfo.name}"`):f?.log?.("log","PDS live with custom config"),n&&(await J(T.instance),typeof window<"u"&&setTimeout(()=>{let k=document.head.querySelector("style[data-pds-critical]");k&&k.remove();let z=document.head.querySelector("style[data-pds-preload]");z&&z.remove();let E=document.getElementById("pds-runtime-stylesheet");E&&E.remove()},100));let S=Oe(t,{resolvePublicAssetURL:Le}),$;c&&c.baseURL?$=Y(Q(c.baseURL,{preferModule:!1})):$=`${S}components/`;let L=null,R=[];try{let k=await De({autoDefineBaseURL:$,autoDefinePreload:c&&Array.isArray(c.predefine)&&c.predefine||[],autoDefineMapper:c&&typeof c.mapper=="function"&&c.mapper||null,enhancers:
|
|
3352
|
+
`;try{if(!document.adoptedStyleSheets.some(m=>m._pdsFouc)){let m=new CSSStyleSheet;m.replaceSync(d),m._pdsFouc=!0,document.adoptedStyleSheets=[m,...document.adoptedStyleSheets]}}catch(p){if(console.warn("Constructable stylesheets not supported, using <style> tag fallback:",p),!document.head.querySelector("style[data-pds-fouc]")){let h=document.createElement("style");h.setAttribute("data-pds-fouc",""),h.textContent=d,document.head.insertBefore(h,document.head.firstChild)}}}let n=t.applyGlobalStyles??!0,i=t.manageTheme??!0,s=t.themeStorageKey??"pure-ds-theme",l=t.preloadStyles??!1,u=t.criticalLayers??["tokens","primitives"],c=t&&t.autoDefine||null;try{let{resolvedTheme:d}=Pe({manageTheme:i,themeStorageKey:s,applyResolvedTheme:r,setupSystemListenerIfNeeded:o}),p=pe(t,{},{presets:O,defaultLog:oe});if(i&&!he(p.generatorConfig.design,d)){let k=p.presetInfo?.name||p.generatorConfig?.design?.name||p.generatorConfig?.preset||"current preset";console.warn(`PDS theme "${d}" not supported by preset "${k}".`)}let m=p.enhancers,{log:h,...b}=p.generatorConfig,f=structuredClone(b);f.log=h,i&&(f.theme=d);let w=new T(f);if(f.design?.typography)try{await se(f.design.typography)}catch(k){f?.log?.("warn","Failed to load some fonts from Google Fonts:",k)}if(l&&typeof window<"u"&&document.head)try{let k=u.map(z=>{try{return w.css?.[z]||""}catch(E){return f?.log?.("warn",`Failed to generate critical CSS for layer "${z}":`,E),""}}).filter(z=>z.trim()).join(`
|
|
3353
|
+
`);if(k){let z=document.head.querySelector("style[data-pds-critical]");z&&z.remove();let E=document.createElement("style");E.setAttribute("data-pds-critical",""),E.textContent=k;let W=document.head.querySelector('meta[charset], meta[name="viewport"]');W?W.parentNode.insertBefore(E,W.nextSibling):document.head.insertBefore(E,document.head.firstChild)}}catch(k){f?.log?.("warn","Failed to preload critical styles:",k)}a.registry.setLiveMode(),p.presetInfo?.name?f?.log?.("log",`PDS live with preset "${p.presetInfo.name}"`):f?.log?.("log","PDS live with custom config"),n&&(await J(T.instance),typeof window<"u"&&setTimeout(()=>{let k=document.head.querySelector("style[data-pds-critical]");k&&k.remove();let z=document.head.querySelector("style[data-pds-preload]");z&&z.remove();let E=document.getElementById("pds-runtime-stylesheet");E&&E.remove()},100));let S=Oe(t,{resolvePublicAssetURL:Le}),$;c&&c.baseURL?$=Y(Q(c.baseURL,{preferModule:!1})):$=`${S}components/`;let L=null,R=[];try{let k=await De({autoDefineBaseURL:$,autoDefinePreload:c&&Array.isArray(c.predefine)&&c.predefine||[],autoDefineMapper:c&&typeof c.mapper=="function"&&c.mapper||null,enhancers:m,autoDefineOverrides:c||null,autoDefinePreferModule:!(c&&c.baseURL)},{baseEnhancers:Ee});L=k.autoDefiner,R=k.mergedEnhancers||[]}catch(k){f?.log?.("error","\u274C Failed to initialize AutoDefiner/Enhancers:",k)}let F=w?.options||f,A=B(t);if(a.currentConfig=Object.freeze({mode:"live",...structuredClone(A),design:structuredClone(p.generatorConfig.design),preset:p.generatorConfig.preset,theme:d,enhancers:R}),t?.liveEdit&&typeof document<"u")try{document.querySelector("pds-live-edit")||setTimeout(()=>{let k=document.createElement("pds-live-edit");document.body.appendChild(k)},1e3)}catch(k){f?.log?.("warn","Live editor failed to start:",k)}return e({mode:"live",generator:w,config:F,theme:d,autoDefiner:L}),{generator:w,config:F,theme:d,autoDefiner:L}}catch(d){throw a.dispatchEvent(new CustomEvent("pds:error",{detail:{error:d}})),d}}export{Mt as startLive};
|
|
@@ -3289,12 +3289,10 @@ dialog {
|
|
|
3289
3289
|
|
|
3290
3290
|
/* Smooth transitions */
|
|
3291
3291
|
opacity: 0;
|
|
3292
|
-
|
|
3292
|
+
transform: scale(0.95);
|
|
3293
3293
|
transition:
|
|
3294
|
-
opacity
|
|
3295
|
-
|
|
3296
|
-
overlay 0.2s ease allow-discrete,
|
|
3297
|
-
display 0.2s ease allow-discrete;
|
|
3294
|
+
opacity var(--transition-normal) ease,
|
|
3295
|
+
transform var(--transition-normal) ease;
|
|
3298
3296
|
|
|
3299
3297
|
|
|
3300
3298
|
}
|
|
@@ -3302,14 +3300,18 @@ dialog {
|
|
|
3302
3300
|
/* Open state */
|
|
3303
3301
|
dialog[open] {
|
|
3304
3302
|
opacity: 1;
|
|
3305
|
-
|
|
3303
|
+
transform: scale(1);
|
|
3304
|
+
animation: pds-dialog-enter var(--transition-normal) ease;
|
|
3306
3305
|
}
|
|
3307
3306
|
|
|
3308
|
-
|
|
3309
|
-
|
|
3310
|
-
dialog[open] {
|
|
3307
|
+
@keyframes pds-dialog-enter {
|
|
3308
|
+
from {
|
|
3311
3309
|
opacity: 0;
|
|
3312
|
-
|
|
3310
|
+
transform: scale(0.95);
|
|
3311
|
+
}
|
|
3312
|
+
to {
|
|
3313
|
+
opacity: 1;
|
|
3314
|
+
transform: scale(1);
|
|
3313
3315
|
}
|
|
3314
3316
|
}
|
|
3315
3317
|
|
|
@@ -3318,20 +3320,17 @@ dialog::backdrop {
|
|
|
3318
3320
|
background: var(--backdrop-bg);
|
|
3319
3321
|
backdrop-filter: var(--backdrop-filter);
|
|
3320
3322
|
opacity: 0;
|
|
3321
|
-
transition:
|
|
3322
|
-
opacity 0.2s ease,
|
|
3323
|
-
overlay 0.2s ease allow-discrete,
|
|
3324
|
-
display 0.2s ease allow-discrete;
|
|
3323
|
+
transition: opacity var(--transition-normal) ease;
|
|
3325
3324
|
}
|
|
3326
3325
|
|
|
3327
3326
|
dialog[open]::backdrop {
|
|
3328
3327
|
opacity: var(--backdrop-opacity, 1);
|
|
3328
|
+
animation: pds-dialog-backdrop-enter var(--transition-normal) ease;
|
|
3329
3329
|
}
|
|
3330
3330
|
|
|
3331
|
-
@
|
|
3332
|
-
|
|
3333
|
-
|
|
3334
|
-
}
|
|
3331
|
+
@keyframes pds-dialog-backdrop-enter {
|
|
3332
|
+
from { opacity: 0; }
|
|
3333
|
+
to { opacity: var(--backdrop-opacity, 1); }
|
|
3335
3334
|
}
|
|
3336
3335
|
|
|
3337
3336
|
/* Dialog - constrain max height to 90vh, support custom maxHeight via CSS variable */
|