@sekiui/elements 0.0.24 → 0.0.26

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.
Files changed (35) hide show
  1. package/README.md +10 -257
  2. package/dist/cjs/{index-6jIfEFyf.js → index-B1pILoQg.js} +61 -2
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/seki-button.cjs.entry.js +2 -2
  5. package/dist/cjs/seki-input.cjs.entry.js +66 -0
  6. package/dist/cjs/seki-skeleton.cjs.entry.js +25 -0
  7. package/dist/cjs/sekiui.cjs.js +2 -2
  8. package/dist/collection/collection-manifest.json +3 -1
  9. package/dist/collection/components/button/seki-button.css +20 -0
  10. package/dist/collection/components/input/seki-input.css +446 -0
  11. package/dist/collection/components/input/seki-input.js +503 -0
  12. package/dist/collection/components/skeleton/seki-skeleton.css +383 -0
  13. package/dist/collection/components/skeleton/seki-skeleton.js +61 -0
  14. package/dist/components/index.js +65 -3
  15. package/dist/components/seki-button.js +1 -1
  16. package/dist/components/seki-input.d.ts +11 -0
  17. package/dist/components/seki-input.js +104 -0
  18. package/dist/components/seki-skeleton.d.ts +11 -0
  19. package/dist/components/seki-skeleton.js +46 -0
  20. package/dist/esm/{index-BROrRAlq.js → index-CLC2YwJ6.js} +61 -3
  21. package/dist/esm/loader.js +3 -3
  22. package/dist/esm/seki-button.entry.js +2 -2
  23. package/dist/esm/seki-input.entry.js +64 -0
  24. package/dist/esm/seki-skeleton.entry.js +23 -0
  25. package/dist/esm/sekiui.js +3 -3
  26. package/dist/sekiui/{p-a3520082.entry.js → p-10c9b8b2.entry.js} +1 -1
  27. package/dist/sekiui/p-6573bc92.entry.js +1 -0
  28. package/dist/sekiui/p-6bb2c486.entry.js +1 -0
  29. package/dist/sekiui/p-CLC2YwJ6.js +2 -0
  30. package/dist/sekiui/sekiui.esm.js +1 -1
  31. package/dist/types/components/input/seki-input.d.ts +107 -0
  32. package/dist/types/components/skeleton/seki-skeleton.d.ts +15 -0
  33. package/dist/types/components.d.ts +250 -0
  34. package/package.json +1 -1
  35. package/dist/sekiui/p-BROrRAlq.js +0 -2
@@ -0,0 +1 @@
1
+ import{r as e,c as i,h as s}from"./p-CLC2YwJ6.js";const r=class{constructor(s){e(this,s),this.sekiInput=i(this,"sekiInput"),this.sekiChange=i(this,"sekiChange"),this.sekiFocus=i(this,"sekiFocus"),this.sekiBlur=i(this,"sekiBlur"),this.type="text",this.value="",this.disabled=!1,this.readonly=!1,this.required=!1,this.size="md",this.invalid=!1,this.handleInput=e=>{this.value=e.target.value,this.sekiInput.emit({value:this.value,nativeEvent:e})},this.handleChange=e=>{this.value=e.target.value,this.sekiChange.emit({value:this.value,nativeEvent:e})},this.handleFocus=e=>{this.sekiFocus.emit({nativeEvent:e})},this.handleBlur=e=>{this.sekiBlur.emit({value:e.target.value,nativeEvent:e})}}render(){return s("input",{key:"ee1a78a2e143eabec329263670723cee7fa5bd86",type:this.type,value:this.value,placeholder:this.placeholder,disabled:this.disabled,readOnly:this.readonly,required:this.required,name:this.name,autocomplete:this.autocomplete,min:this.min,max:this.max,step:this.step,pattern:this.pattern,minlength:this.minlength,maxlength:this.maxlength,class:`input input--${this.size}${this.invalid?" input--invalid":""}`,"aria-label":this.ariaLabel,"aria-describedby":this.ariaDescribedby,"aria-invalid":this.invalid?"true":null,"aria-disabled":this.disabled?"true":null,onInput:this.handleInput,onChange:this.handleChange,onFocus:this.handleFocus,onBlur:this.handleBlur})}};r.style=":root{--seki-neutral-50:hsl(0, 0%, 98%);--seki-neutral-100:hsl(0, 0%, 96.1%);--seki-neutral-200:hsl(0, 0%, 89.8%);--seki-neutral-300:hsl(0, 0%, 83.1%);--seki-neutral-400:hsl(0, 0%, 63.9%);--seki-neutral-500:hsl(0, 0%, 45.1%);--seki-neutral-600:hsl(0, 0%, 32.2%);--seki-neutral-700:hsl(0, 0%, 25.1%);--seki-neutral-800:hsl(0, 0%, 14.9%);--seki-neutral-900:hsl(0, 0%, 9%);--seki-neutral-950:hsl(0, 0%, 3.9%);--seki-primary-50:hsl(210, 100%, 97%);--seki-primary-100:hsl(210, 95%, 93%);--seki-primary-200:hsl(210, 95%, 85%);--seki-primary-300:hsl(210, 90%, 73%);--seki-primary-400:hsl(210, 85%, 58%);--seki-primary-500:hsl(210, 80%, 48%);--seki-primary-600:hsl(210, 75%, 40%);--seki-primary-700:hsl(210, 70%, 32%);--seki-primary-800:hsl(210, 65%, 25%);--seki-primary-900:hsl(210, 60%, 18%);--seki-primary-950:hsl(210, 55%, 10%);--seki-success-500:hsl(142, 71%, 45%);--seki-success-600:hsl(142, 71%, 35%);--seki-warning-500:hsl(38, 92%, 50%);--seki-warning-600:hsl(38, 92%, 40%);--seki-destructive-500:hsl(0, 84.2%, 60.2%);--seki-destructive-600:hsl(0, 72%, 41%)}:root{--seki-background:hsl(0, 0%, 100%);--seki-foreground:hsl(0, 0%, 3.9%);--seki-muted:hsl(0, 0%, 96.1%);--seki-muted-foreground:hsl(0, 0%, 45.1%);--seki-card:hsl(0, 0%, 100%);--seki-card-foreground:hsl(0, 0%, 3.9%);--seki-popover:hsl(0, 0%, 100%);--seki-popover-foreground:hsl(0, 0%, 3.9%);--seki-border:hsl(0, 0%, 89.8%);--seki-input:hsl(0, 0%, 89.8%);--seki-primary:hsl(0, 0%, 9%);--seki-primary-foreground:hsl(0, 0%, 98%);--seki-secondary:hsl(0, 0%, 96.1%);--seki-secondary-foreground:hsl(0, 0%, 9%);--seki-accent:hsl(0, 0%, 96.1%);--seki-accent-foreground:hsl(0, 0%, 9%);--seki-destructive:hsl(0, 84.2%, 60.2%);--seki-destructive-foreground:hsl(0, 0%, 98%);--seki-ring:hsl(0, 0%, 3.9%);--seki-bg-primary:var(--seki-background);--seki-bg-secondary:var(--seki-muted);--seki-bg-tertiary:var(--seki-accent);--seki-text-primary:var(--seki-foreground);--seki-text-secondary:var(--seki-muted-foreground);--seki-text-tertiary:var(--seki-neutral-400);--seki-border-default:var(--seki-border);--seki-border-emphasis:var(--seki-neutral-300)}:root[data-theme='dark']{--seki-background:hsl(0, 0%, 3.9%);--seki-foreground:hsl(0, 0%, 98%);--seki-muted:hsl(0, 0%, 14.9%);--seki-muted-foreground:hsl(0, 0%, 63.9%);--seki-card:hsl(0, 0%, 3.9%);--seki-card-foreground:hsl(0, 0%, 98%);--seki-popover:hsl(0, 0%, 3.9%);--seki-popover-foreground:hsl(0, 0%, 98%);--seki-border:hsl(0, 0%, 14.9%);--seki-input:hsl(0, 0%, 14.9%);--seki-primary:hsl(0, 0%, 98%);--seki-primary-foreground:hsl(0, 0%, 9%);--seki-secondary:hsl(0, 0%, 14.9%);--seki-secondary-foreground:hsl(0, 0%, 98%);--seki-accent:hsl(0, 0%, 14.9%);--seki-accent-foreground:hsl(0, 0%, 98%);--seki-destructive:hsl(0, 62.8%, 30.6%);--seki-destructive-foreground:hsl(0, 0%, 98%);--seki-ring:hsl(0, 0%, 83.1%);--seki-bg-primary:var(--seki-background);--seki-bg-secondary:var(--seki-muted);--seki-bg-tertiary:var(--seki-accent);--seki-text-primary:var(--seki-foreground);--seki-text-secondary:var(--seki-muted-foreground);--seki-text-tertiary:var(--seki-neutral-600);--seki-border-default:var(--seki-border);--seki-border-emphasis:var(--seki-neutral-700);--seki-button-primary-hover-bg:hsl(0, 0%, 98%, 0.9);--seki-button-secondary-hover-bg:hsl(0, 0%, 14.9%, 0.8)}:root{--seki-button-primary-bg:var(--seki-primary);--seki-button-primary-text:var(--seki-primary-foreground);--seki-button-primary-border:transparent;--seki-button-primary-hover-bg:hsl(0, 0%, 9%, 0.9);--seki-button-primary-hover-text:var(--seki-primary-foreground);--seki-button-primary-hover-border:transparent;--seki-button-secondary-bg:var(--seki-secondary);--seki-button-secondary-text:var(--seki-secondary-foreground);--seki-button-secondary-border:transparent;--seki-button-secondary-hover-bg:hsl(0, 0%, 96.1%, 0.8);--seki-button-secondary-hover-text:var(--seki-secondary-foreground);--seki-button-secondary-hover-border:transparent;--seki-button-outline-bg:transparent;--seki-button-outline-text:var(--seki-foreground);--seki-button-outline-border:var(--seki-input);--seki-button-outline-hover-bg:var(--seki-accent);--seki-button-outline-hover-text:var(--seki-accent-foreground);--seki-button-outline-hover-border:var(--seki-input);--seki-button-ghost-bg:transparent;--seki-button-ghost-text:var(--seki-foreground);--seki-button-ghost-border:transparent;--seki-button-ghost-hover-bg:var(--seki-accent);--seki-button-ghost-hover-text:var(--seki-accent-foreground);--seki-button-ghost-hover-border:transparent;--seki-button-destructive-bg:var(--seki-destructive);--seki-button-destructive-text:var(--seki-destructive-foreground);--seki-button-destructive-border:transparent;--seki-button-destructive-hover-bg:hsl(0, 84.2%, 60.2%, 0.9);--seki-button-destructive-hover-border:transparent;--seki-button-sm-padding-x:var(--seki-spacing-3, 0.75rem);--seki-button-sm-padding-y:0.375rem;--seki-button-sm-font-size:var(--seki-text-sm, 0.875rem);--seki-button-sm-height:2.25rem;--seki-button-md-padding-x:var(--seki-spacing-4, 1rem);--seki-button-md-padding-y:var(--seki-spacing-2, 0.5rem);--seki-button-md-font-size:var(--seki-text-base, 1rem);--seki-button-md-height:2.5rem;--seki-button-lg-padding-x:2rem;--seki-button-lg-padding-y:0.5rem;--seki-button-lg-font-size:1rem;--seki-button-lg-height:2.75rem;--seki-button-icon-sm-size:2rem;--seki-button-icon-size:2.5rem;--seki-button-icon-lg-size:3rem;--seki-button-icon-gap:0.5rem;--seki-button-link-bg:transparent;--seki-button-link-text:var(--seki-primary);--seki-button-link-border:transparent;--seki-button-link-hover-bg:transparent;--seki-button-link-hover-text:var(--seki-primary);--seki-button-link-hover-border:transparent;--seki-button-radius:var(--seki-radius-md, 0.375rem);--seki-button-font-weight:var(--seki-font-medium, 500);--seki-button-transition-duration:150ms;--seki-button-transition-timing:ease-in-out;--seki-button-shadow:var(--seki-shadow-sm, 0 1px 2px 0 rgb(0 0 0 / 0.05));--seki-button-shadow-hover:var(--seki-shadow-md, 0 4px 6px -1px rgb(0 0 0 / 0.1));--seki-button-disabled-opacity:0.5;--seki-input-bg:var(--seki-background);--seki-input-border:var(--seki-border);--seki-input-text:var(--seki-foreground);--seki-input-placeholder:var(--seki-muted-foreground);--seki-input-ring:var(--seki-ring);--seki-input-invalid-border:var(--seki-destructive);--seki-input-invalid-ring:var(--seki-destructive);--seki-input-disabled-opacity:0.5;--seki-input-radius:var(--seki-radius-md)}:root{--seki-spacing-0:0;--seki-spacing-0-5:0.125rem;--seki-spacing-1:0.25rem;--seki-spacing-1-5:0.375rem;--seki-spacing-2:0.5rem;--seki-spacing-2-5:0.625rem;--seki-spacing-3:0.75rem;--seki-spacing-3-5:0.875rem;--seki-spacing-4:1rem;--seki-spacing-5:1.25rem;--seki-spacing-6:1.5rem;--seki-spacing-8:2rem;--seki-spacing-10:2.5rem;--seki-spacing-12:3rem;--seki-spacing-16:4rem;--seki-spacing-20:5rem;--seki-spacing-24:6rem;--seki-input-height-sm:2rem;--seki-input-height-md:2.5rem;--seki-input-height-lg:3rem;--seki-input-padding-x:0.75rem;--seki-input-padding-y:0.5rem;--seki-input-font-size:0.875rem;--seki-input-ring-offset:2px}:root{--seki-shadow-sm:0 1px 2px 0 rgb(0 0 0 / 0.05);--seki-shadow-md:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--seki-shadow-lg:0 10px 15px -3px rgb(0 0 0 / 0.15), 0 4px 6px -4px rgb(0 0 0 / 0.1)}:root{--seki-font-sans:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue',\n Arial, sans-serif;--seki-font-mono:ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;--seki-text-xs:0.75rem;--seki-text-sm:0.875rem;--seki-text-base:1rem;--seki-text-lg:1.125rem;--seki-text-xl:1.25rem;--seki-text-2xl:1.5rem;--seki-text-3xl:1.875rem;--seki-text-4xl:2.25rem;--seki-font-normal:400;--seki-font-medium:500;--seki-font-semibold:600;--seki-font-bold:700;--seki-leading-tight:1.25;--seki-leading-normal:1.5;--seki-leading-relaxed:1.75}:root{--seki-radius-sm:0.25rem;--seki-radius-md:0.375rem;--seki-radius-lg:0.5rem;--seki-radius-xl:1rem;}:host{display:inline-block;width:100%}.input{box-sizing:border-box;width:100%;font-family:var(--seki-font-sans);font-size:var(--seki-input-font-size);border-radius:var(--seki-input-radius);border:1px solid var(--seki-input-border);background:var(--seki-input-bg);color:var(--seki-input-text);padding:var(--seki-input-padding-y) var(--seki-input-padding-x);transition:border-color 0.2s ease, box-shadow 0.2s ease}.input::placeholder{color:var(--seki-input-placeholder)}.input:focus-visible{outline:2px solid var(--seki-input-ring);outline-offset:var(--seki-input-ring-offset);border-color:var(--seki-input-ring)}.input:disabled{cursor:not-allowed;opacity:var(--seki-input-disabled-opacity)}.input:read-only{background:var(--seki-muted)}.input--invalid{border-color:var(--seki-input-invalid-border)}.input--invalid:focus-visible{outline-color:var(--seki-input-invalid-ring);border-color:var(--seki-input-invalid-border)}.input--sm{height:var(--seki-input-height-sm);font-size:calc(var(--seki-input-font-size) * 0.875);padding:calc(var(--seki-input-padding-y) * 0.75) calc(var(--seki-input-padding-x) * 0.875)}.input--md{height:var(--seki-input-height-md)}.input--lg{height:var(--seki-input-height-lg);font-size:calc(var(--seki-input-font-size) * 1.125);padding:calc(var(--seki-input-padding-y) * 1.25) calc(var(--seki-input-padding-x) * 1.125)}.input[type=\"file\"]::file-selector-button{border:0;background:transparent;font-size:var(--seki-input-font-size);font-weight:500;margin-right:0.75rem;cursor:pointer;color:var(--seki-input-text)}.input[type=\"file\"]::file-selector-button:hover{text-decoration:underline}@media (prefers-reduced-motion: reduce){.input{transition:none}}";export{r as seki_input}
@@ -0,0 +1 @@
1
+ import{r as e,h as s}from"./p-CLC2YwJ6.js";const r=class{constructor(s){e(this,s)}componentWillLoad(){this.ariaLabel&&this.ariaLabel.length>200&&console.warn(`[seki-skeleton] aria-label is ${this.ariaLabel.length} characters long. Screen readers may truncate labels over 200 characters. Consider using a shorter, more concise label.`)}render(){return s("div",{key:"05a380c08ba027ce88851c6d67beea12588f8e3a",class:"skeleton",part:"skeleton",role:"status","aria-busy":"true","aria-label":this.ariaLabel||void 0})}};r.style=":root{--seki-neutral-50:hsl(0, 0%, 98%);--seki-neutral-100:hsl(0, 0%, 96.1%);--seki-neutral-200:hsl(0, 0%, 89.8%);--seki-neutral-300:hsl(0, 0%, 83.1%);--seki-neutral-400:hsl(0, 0%, 63.9%);--seki-neutral-500:hsl(0, 0%, 45.1%);--seki-neutral-600:hsl(0, 0%, 32.2%);--seki-neutral-700:hsl(0, 0%, 25.1%);--seki-neutral-800:hsl(0, 0%, 14.9%);--seki-neutral-900:hsl(0, 0%, 9%);--seki-neutral-950:hsl(0, 0%, 3.9%);--seki-primary-50:hsl(210, 100%, 97%);--seki-primary-100:hsl(210, 95%, 93%);--seki-primary-200:hsl(210, 95%, 85%);--seki-primary-300:hsl(210, 90%, 73%);--seki-primary-400:hsl(210, 85%, 58%);--seki-primary-500:hsl(210, 80%, 48%);--seki-primary-600:hsl(210, 75%, 40%);--seki-primary-700:hsl(210, 70%, 32%);--seki-primary-800:hsl(210, 65%, 25%);--seki-primary-900:hsl(210, 60%, 18%);--seki-primary-950:hsl(210, 55%, 10%);--seki-success-500:hsl(142, 71%, 45%);--seki-success-600:hsl(142, 71%, 35%);--seki-warning-500:hsl(38, 92%, 50%);--seki-warning-600:hsl(38, 92%, 40%);--seki-destructive-500:hsl(0, 84.2%, 60.2%);--seki-destructive-600:hsl(0, 72%, 41%)}:root{--seki-background:hsl(0, 0%, 100%);--seki-foreground:hsl(0, 0%, 3.9%);--seki-muted:hsl(0, 0%, 96.1%);--seki-muted-foreground:hsl(0, 0%, 45.1%);--seki-card:hsl(0, 0%, 100%);--seki-card-foreground:hsl(0, 0%, 3.9%);--seki-popover:hsl(0, 0%, 100%);--seki-popover-foreground:hsl(0, 0%, 3.9%);--seki-border:hsl(0, 0%, 89.8%);--seki-input:hsl(0, 0%, 89.8%);--seki-primary:hsl(0, 0%, 9%);--seki-primary-foreground:hsl(0, 0%, 98%);--seki-secondary:hsl(0, 0%, 96.1%);--seki-secondary-foreground:hsl(0, 0%, 9%);--seki-accent:hsl(0, 0%, 96.1%);--seki-accent-foreground:hsl(0, 0%, 9%);--seki-destructive:hsl(0, 84.2%, 60.2%);--seki-destructive-foreground:hsl(0, 0%, 98%);--seki-ring:hsl(0, 0%, 3.9%);--seki-bg-primary:var(--seki-background);--seki-bg-secondary:var(--seki-muted);--seki-bg-tertiary:var(--seki-accent);--seki-text-primary:var(--seki-foreground);--seki-text-secondary:var(--seki-muted-foreground);--seki-text-tertiary:var(--seki-neutral-400);--seki-border-default:var(--seki-border);--seki-border-emphasis:var(--seki-neutral-300)}:root[data-theme='dark']{--seki-background:hsl(0, 0%, 3.9%);--seki-foreground:hsl(0, 0%, 98%);--seki-muted:hsl(0, 0%, 14.9%);--seki-muted-foreground:hsl(0, 0%, 63.9%);--seki-card:hsl(0, 0%, 3.9%);--seki-card-foreground:hsl(0, 0%, 98%);--seki-popover:hsl(0, 0%, 3.9%);--seki-popover-foreground:hsl(0, 0%, 98%);--seki-border:hsl(0, 0%, 14.9%);--seki-input:hsl(0, 0%, 14.9%);--seki-primary:hsl(0, 0%, 98%);--seki-primary-foreground:hsl(0, 0%, 9%);--seki-secondary:hsl(0, 0%, 14.9%);--seki-secondary-foreground:hsl(0, 0%, 98%);--seki-accent:hsl(0, 0%, 14.9%);--seki-accent-foreground:hsl(0, 0%, 98%);--seki-destructive:hsl(0, 62.8%, 30.6%);--seki-destructive-foreground:hsl(0, 0%, 98%);--seki-ring:hsl(0, 0%, 83.1%);--seki-bg-primary:var(--seki-background);--seki-bg-secondary:var(--seki-muted);--seki-bg-tertiary:var(--seki-accent);--seki-text-primary:var(--seki-foreground);--seki-text-secondary:var(--seki-muted-foreground);--seki-text-tertiary:var(--seki-neutral-600);--seki-border-default:var(--seki-border);--seki-border-emphasis:var(--seki-neutral-700);--seki-button-primary-hover-bg:hsl(0, 0%, 98%, 0.9);--seki-button-secondary-hover-bg:hsl(0, 0%, 14.9%, 0.8)}:root{--seki-button-primary-bg:var(--seki-primary);--seki-button-primary-text:var(--seki-primary-foreground);--seki-button-primary-border:transparent;--seki-button-primary-hover-bg:hsl(0, 0%, 9%, 0.9);--seki-button-primary-hover-text:var(--seki-primary-foreground);--seki-button-primary-hover-border:transparent;--seki-button-secondary-bg:var(--seki-secondary);--seki-button-secondary-text:var(--seki-secondary-foreground);--seki-button-secondary-border:transparent;--seki-button-secondary-hover-bg:hsl(0, 0%, 96.1%, 0.8);--seki-button-secondary-hover-text:var(--seki-secondary-foreground);--seki-button-secondary-hover-border:transparent;--seki-button-outline-bg:transparent;--seki-button-outline-text:var(--seki-foreground);--seki-button-outline-border:var(--seki-input);--seki-button-outline-hover-bg:var(--seki-accent);--seki-button-outline-hover-text:var(--seki-accent-foreground);--seki-button-outline-hover-border:var(--seki-input);--seki-button-ghost-bg:transparent;--seki-button-ghost-text:var(--seki-foreground);--seki-button-ghost-border:transparent;--seki-button-ghost-hover-bg:var(--seki-accent);--seki-button-ghost-hover-text:var(--seki-accent-foreground);--seki-button-ghost-hover-border:transparent;--seki-button-destructive-bg:var(--seki-destructive);--seki-button-destructive-text:var(--seki-destructive-foreground);--seki-button-destructive-border:transparent;--seki-button-destructive-hover-bg:hsl(0, 84.2%, 60.2%, 0.9);--seki-button-destructive-hover-border:transparent;--seki-button-sm-padding-x:var(--seki-spacing-3, 0.75rem);--seki-button-sm-padding-y:0.375rem;--seki-button-sm-font-size:var(--seki-text-sm, 0.875rem);--seki-button-sm-height:2.25rem;--seki-button-md-padding-x:var(--seki-spacing-4, 1rem);--seki-button-md-padding-y:var(--seki-spacing-2, 0.5rem);--seki-button-md-font-size:var(--seki-text-base, 1rem);--seki-button-md-height:2.5rem;--seki-button-lg-padding-x:2rem;--seki-button-lg-padding-y:0.5rem;--seki-button-lg-font-size:1rem;--seki-button-lg-height:2.75rem;--seki-button-icon-sm-size:2rem;--seki-button-icon-size:2.5rem;--seki-button-icon-lg-size:3rem;--seki-button-icon-gap:0.5rem;--seki-button-link-bg:transparent;--seki-button-link-text:var(--seki-primary);--seki-button-link-border:transparent;--seki-button-link-hover-bg:transparent;--seki-button-link-hover-text:var(--seki-primary);--seki-button-link-hover-border:transparent;--seki-button-radius:var(--seki-radius-md, 0.375rem);--seki-button-font-weight:var(--seki-font-medium, 500);--seki-button-transition-duration:150ms;--seki-button-transition-timing:ease-in-out;--seki-button-shadow:var(--seki-shadow-sm, 0 1px 2px 0 rgb(0 0 0 / 0.05));--seki-button-shadow-hover:var(--seki-shadow-md, 0 4px 6px -1px rgb(0 0 0 / 0.1));--seki-button-disabled-opacity:0.5;--seki-input-bg:var(--seki-background);--seki-input-border:var(--seki-border);--seki-input-text:var(--seki-foreground);--seki-input-placeholder:var(--seki-muted-foreground);--seki-input-ring:var(--seki-ring);--seki-input-invalid-border:var(--seki-destructive);--seki-input-invalid-ring:var(--seki-destructive);--seki-input-disabled-opacity:0.5;--seki-input-radius:var(--seki-radius-md)}:root{--seki-spacing-0:0;--seki-spacing-0-5:0.125rem;--seki-spacing-1:0.25rem;--seki-spacing-1-5:0.375rem;--seki-spacing-2:0.5rem;--seki-spacing-2-5:0.625rem;--seki-spacing-3:0.75rem;--seki-spacing-3-5:0.875rem;--seki-spacing-4:1rem;--seki-spacing-5:1.25rem;--seki-spacing-6:1.5rem;--seki-spacing-8:2rem;--seki-spacing-10:2.5rem;--seki-spacing-12:3rem;--seki-spacing-16:4rem;--seki-spacing-20:5rem;--seki-spacing-24:6rem;--seki-input-height-sm:2rem;--seki-input-height-md:2.5rem;--seki-input-height-lg:3rem;--seki-input-padding-x:0.75rem;--seki-input-padding-y:0.5rem;--seki-input-font-size:0.875rem;--seki-input-ring-offset:2px}:root{--seki-shadow-sm:0 1px 2px 0 rgb(0 0 0 / 0.05);--seki-shadow-md:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--seki-shadow-lg:0 10px 15px -3px rgb(0 0 0 / 0.15), 0 4px 6px -4px rgb(0 0 0 / 0.1)}:root{--seki-font-sans:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue',\n Arial, sans-serif;--seki-font-mono:ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;--seki-text-xs:0.75rem;--seki-text-sm:0.875rem;--seki-text-base:1rem;--seki-text-lg:1.125rem;--seki-text-xl:1.25rem;--seki-text-2xl:1.5rem;--seki-text-3xl:1.875rem;--seki-text-4xl:2.25rem;--seki-font-normal:400;--seki-font-medium:500;--seki-font-semibold:600;--seki-font-bold:700;--seki-leading-tight:1.25;--seki-leading-normal:1.5;--seki-leading-relaxed:1.75}:root{--seki-radius-sm:0.25rem;--seki-radius-md:0.375rem;--seki-radius-lg:0.5rem;--seki-radius-xl:1rem;}:host{display:inline-block}.skeleton{background-color:var(--seki-muted);border-radius:var(--seki-radius-md, 0.375rem);width:100%;height:100%;animation:skeleton-pulse 2s ease-in-out infinite}@keyframes skeleton-pulse{0%,100%{opacity:1}50%{opacity:0.5}}@media (prefers-reduced-motion: reduce){.skeleton{animation:none}}";export{r as seki_skeleton}
@@ -0,0 +1,2 @@
1
+ var e=Object.defineProperty,t=e=>{if(e.__stencil__getHostRef)return e.__stencil__getHostRef()},n=(e,t)=>{t&&(e.__stencil__getHostRef=()=>t,t.t=e)},o=(e,t)=>t in e,l=(e,t)=>(0,console.error)(e,t),i=new Map,s=new Map,r="slot-fb{display:contents}slot-fb[hidden]{display:none}",c="undefined"!=typeof window?window:{},u={o:0,l:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,o)=>e.addEventListener(t,n,o),rel:(e,t,n,o)=>e.removeEventListener(t,n,o),ce:(e,t)=>new CustomEvent(e,t)},a=e=>Promise.resolve(e),f=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),d=!!f&&(()=>!!c.document&&Object.getOwnPropertyDescriptor(c.document.adoptedStyleSheets,"length").writable)(),p=!1,h=[],m=[],v=(e,t)=>n=>{e.push(n),p||(p=!0,t&&4&u.o?$(b):u.raf(b))},y=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){l(e)}e.length=0},b=()=>{y(h),y(m),(p=h.length>0)&&u.raf(b)},$=e=>a().then(e),w=v(m,!0),g=e=>"object"==(e=typeof e)||"function"===e;function S(e){var t,n,o;return null!=(o=null==(n=null==(t=e.head)?void 0:t.querySelector('meta[name="csp-nonce"]'))?void 0:n.getAttribute("content"))?o:void 0}((t,n)=>{for(var o in n)e(t,o,{get:n[o],enumerable:!0})})({},{err:()=>k,map:()=>O,ok:()=>j,unwrap:()=>C,unwrapErr:()=>M});var j=e=>({isOk:!0,isErr:!1,value:e}),k=e=>({isOk:!1,isErr:!0,value:e});function O(e,t){if(e.isOk){const n=t(e.value);return n instanceof Promise?n.then((e=>j(e))):j(n)}if(e.isErr)return k(e.value);throw"should never get here"}var E,C=e=>{if(e.isOk)return e.value;throw e.value},M=e=>{if(e.isErr)return e.value;throw e.value};function x(){const e=this.attachShadow({mode:"open"});void 0===E&&(E=null),E&&(d?e.adoptedStyleSheets.push(E):e.adoptedStyleSheets=[...e.adoptedStyleSheets,E])}var P=new WeakMap,N=e=>"sc-"+e.i,R=(e,t,...n)=>{let o=null,l=null,i=!1,s=!1;const r=[],c=t=>{for(let n=0;n<t.length;n++)o=t[n],Array.isArray(o)?c(o):null!=o&&"boolean"!=typeof o&&((i="function"!=typeof e&&!g(o))&&(o+=""),i&&s?r[r.length-1].u+=o:r.push(i?D(null,o):o),s=i)};if(c(n),t){t.key&&(l=t.key);{const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}}const u=D(e,null);return u.p=t,r.length>0&&(u.h=r),u.m=l,u},D=(e,t)=>({o:0,v:e,u:t,$:null,h:null,p:null,m:null}),U={},W=e=>{const t=(e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"))(e);return RegExp(`(^|[^@]|@(?!supports\\s+selector\\s*\\([^{]*?${t}))(${t}\\b)`,"g")};W("::slotted"),W(":host"),W(":host-context");var A,L=(e,t)=>null==e||g(e)?e:4&t?"false"!==e&&(""===e||!!e):2&t?"string"==typeof e?parseFloat(e):"number"==typeof e?e:NaN:1&t?e+"":e,T=(e,n)=>{const o=(e=>{var n;return null==(n=t(e))?void 0:n.$hostElement$})(e);return{emit:e=>z(o,n,{bubbles:!0,composed:!0,cancelable:!0,detail:e})}},z=(e,t,n)=>{const o=u.ce(t,n);return e.dispatchEvent(o),o},F=(e,t,n,l,i,s)=>{if(n===l)return;let r=o(e,t),a=t.toLowerCase();if("class"===t){const t=e.classList,o=V(n);let i=V(l);t.remove(...o.filter((e=>e&&!i.includes(e)))),t.add(...i.filter((e=>e&&!o.includes(e))))}else if("key"===t);else if(r||"o"!==t[0]||"n"!==t[1]){const o=g(l);if(r||o&&null!==l)try{if(e.tagName.includes("-"))e[t]!==l&&(e[t]=l);else{const o=null==l?"":l;"list"===t?r=!1:null!=n&&e[t]==o||("function"==typeof e.__lookupSetter__(t)?e[t]=o:e.setAttribute(t,o))}}catch(e){}null==l||!1===l?!1===l&&""!==e.getAttribute(t)||e.removeAttribute(t):(!r||4&s||i)&&!o&&1===e.nodeType&&e.setAttribute(t,l=!0===l?"":l)}else if(t="-"===t[2]?t.slice(3):o(c,a)?a.slice(2):a[2]+t.slice(3),n||l){const o=t.endsWith(q);t=t.replace(G,""),n&&u.rel(e,t,n,o),l&&u.ael(e,t,l,o)}},H=/\s/,V=e=>("object"==typeof e&&e&&"baseVal"in e&&(e=e.baseVal),e&&"string"==typeof e?e.split(H):[]),q="Capture",G=RegExp(q+"$"),I=(e,t,n)=>{const o=11===t.$.nodeType&&t.$.host?t.$.host:t.$,l=e&&e.p||{},i=t.p||{};for(const e of Y(Object.keys(l)))e in i||F(o,e,l[e],void 0,n,t.o);for(const e of Y(Object.keys(i)))F(o,e,l[e],i[e],n,t.o)};function Y(e){return e.includes("ref")?[...e.filter((e=>"ref"!==e)),"ref"]:e}var _=!1,B=(e,t,n)=>{const o=t.h[n];let l,i,s=0;if(!c.document)throw Error("You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component.");if(l=o.$=c.document.createElement(o.v),I(null,o,_),o.h)for(s=0;s<o.h.length;++s)i=B(e,o,s),i&&l.appendChild(i);return l["s-hn"]=A,l},J=(e,t,n,o,l,i)=>{let s,r=e;for(r.shadowRoot&&r.tagName===A&&(r=r.shadowRoot);l<=i;++l)o[l]&&(s=B(null,n,l),s&&(o[l].$=s,Z(r,s,t)))},K=(e,t,n)=>{for(let o=t;o<=n;++o){const t=e[o];if(t){const e=t.$;e&&e.remove()}}},Q=(e,t,n=!1)=>e.v===t.v&&(n?(n&&!e.m&&t.m&&(e.m=t.m),!0):e.m===t.m),X=(e,t,n=!1)=>{const o=t.$=e.$,l=e.h,i=t.h;I(e,t,_),null!==l&&null!==i?((e,t,n,o,l=!1)=>{let i,s,r=0,c=0,u=0,a=0,f=t.length-1,d=t[0],p=t[f],h=o.length-1,m=o[0],v=o[h];for(;r<=f&&c<=h;)if(null==d)d=t[++r];else if(null==p)p=t[--f];else if(null==m)m=o[++c];else if(null==v)v=o[--h];else if(Q(d,m,l))X(d,m,l),d=t[++r],m=o[++c];else if(Q(p,v,l))X(p,v,l),p=t[--f],v=o[--h];else if(Q(d,v,l))X(d,v,l),Z(e,d.$,p.$.nextSibling),d=t[++r],v=o[--h];else if(Q(p,m,l))X(p,m,l),Z(e,p.$,d.$),p=t[--f],m=o[++c];else{for(u=-1,a=r;a<=f;++a)if(t[a]&&null!==t[a].m&&t[a].m===m.m){u=a;break}u>=0?(s=t[u],s.v!==m.v?i=B(t&&t[c],n,u):(X(s,m,l),t[u]=void 0,i=s.$),m=o[++c]):(i=B(t&&t[c],n,c),m=o[++c]),i&&Z(d.$.parentNode,i,d.$)}r>f?J(e,null==o[h+1]?null:o[h+1].$,n,o,c,h):c>h&&K(t,r,f)})(o,l,t,i,n):null!==i?J(o,null,t,i,0,i.length-1):!n&&null!==l&&K(l,0,l.length-1)},Z=(e,t,n)=>null==e?void 0:e.insertBefore(t,n),ee=(e,t)=>{if(t&&!e.S&&t["s-p"]){const n=t["s-p"].push(new Promise((o=>e.S=()=>{t["s-p"].splice(n-1,1),o()})))}},te=(e,t)=>{if(e.o|=16,4&e.o)return void(e.o|=512);ee(e,e.j);const n=()=>ne(e,t);if(!t)return w(n);queueMicrotask((()=>{n()}))},ne=(e,t)=>{const n=e.$hostElement$,o=e.t;if(!o)throw Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let l;return t?(e.k.length&&e.k.forEach((e=>e(n))),l=ue(o,"componentWillLoad",void 0,n)):l=ue(o,"componentWillUpdate",void 0,n),l=oe(l,(()=>ue(o,"componentWillRender",void 0,n))),oe(l,(()=>ie(e,o,t)))},oe=(e,t)=>le(e)?e.then(t).catch((e=>{console.error(e),t()})):t(),le=e=>e instanceof Promise||e&&e.then&&"function"==typeof e.then,ie=async(e,t,n)=>{var o;const l=e.$hostElement$,i=l["s-rc"];n&&(e=>{const t=e.O,n=e.$hostElement$,o=t.o,l=((e,t)=>{var n;const o=N(t),l=s.get(o);if(!c.document)return o;if(e=11===e.nodeType?e:c.document,l)if("string"==typeof l){let i,s=P.get(e=e.head||e);if(s||P.set(e,s=new Set),!s.has(o)){{i=c.document.createElement("style"),i.innerHTML=l;const o=null!=(n=u.C)?n:S(c.document);if(null!=o&&i.setAttribute("nonce",o),!(1&t.o))if("HEAD"===e.nodeName){const t=e.querySelectorAll("link[rel=preconnect]"),n=t.length>0?t[t.length-1].nextSibling:e.querySelector("style");e.insertBefore(i,(null==n?void 0:n.parentNode)===e?n:null)}else if("host"in e)if(f){const t=new CSSStyleSheet;t.replaceSync(l),d?e.adoptedStyleSheets.unshift(t):e.adoptedStyleSheets=[t,...e.adoptedStyleSheets]}else{const t=e.querySelector("style");t?t.innerHTML=l+t.innerHTML:e.prepend(i)}else e.append(i);1&t.o&&e.insertBefore(i,null)}4&t.o&&(i.innerHTML+=r),s&&s.add(o)}}else e.adoptedStyleSheets.includes(l)||(d?e.adoptedStyleSheets.push(l):e.adoptedStyleSheets=[...e.adoptedStyleSheets,l]);return o})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&o&&(n["s-sc"]=l,n.classList.add(l+"-h"))})(e);se(e,t,l,n),i&&(i.map((e=>e())),l["s-rc"]=void 0);{const t=null!=(o=l["s-p"])?o:[],n=()=>re(e);0===t.length?n():(Promise.all(t).then(n),e.o|=4,t.length=0)}},se=(e,t,n,o)=>{try{t=t.render(),e.o&=-17,e.o|=2,((e,t,n=!1)=>{const o=e.$hostElement$,l=e.O,i=e.M||D(null,null),s=(e=>e&&e.v===U)(t)?t:R(null,null,t);if(A=o.tagName,l.P&&(s.p=s.p||{},l.P.forEach((([e,t])=>{s.p[t]=o[e]}))),n&&s.p)for(const e of Object.keys(s.p))o.hasAttribute(e)&&!["key","ref","style","class"].includes(e)&&(s.p[e]=o[e]);s.v=null,s.o|=4,e.M=s,s.$=i.$=o.shadowRoot||o,X(i,s,n)})(e,t,o)}catch(t){l(t,e.$hostElement$)}return null},re=e=>{const t=e.$hostElement$,n=e.t,o=e.j;ue(n,"componentDidRender",void 0,t),64&e.o?ue(n,"componentDidUpdate",void 0,t):(e.o|=64,ae(t),ue(n,"componentDidLoad",void 0,t),e.N(t),o||ce()),e.S&&(e.S(),e.S=void 0),512&e.o&&$((()=>te(e,!1))),e.o&=-517},ce=()=>{$((()=>z(c,"appload",{detail:{namespace:"sekiui"}})))},ue=(e,t,n,o)=>{if(e&&e[t])try{return e[t](n)}catch(e){l(e,o)}},ae=e=>e.classList.add("hydrated"),fe=(e,n,o,l)=>{const i=t(e);if(!i)return;if(!i)throw Error(`Couldn't find host element for "${l.i}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/stenciljs/core/issues/5457).`);const s=i.R.get(n),r=i.o,c=i.t;if(o=L(o,l.D[n][0]),(!(8&r)||void 0===s)&&o!==s&&(!Number.isNaN(s)||!Number.isNaN(o))&&(i.R.set(n,o),c&&2==(18&r))){if(c.componentShouldUpdate&&!1===c.componentShouldUpdate(o,s,n))return;te(i,!1)}},de=(e,n,o)=>{var l,i;const s=e.prototype;if(n.D){const r=Object.entries(null!=(l=n.D)?l:{});if(r.map((([e,[l]])=>{if(31&l||2&o&&32&l){const{get:i,set:r}=Object.getOwnPropertyDescriptor(s,e)||{};i&&(n.D[e][0]|=2048),r&&(n.D[e][0]|=4096),(1&o||!i)&&Object.defineProperty(s,e,{get(){{if(!(2048&n.D[e][0]))return((e,n)=>t(this).R.get(n))(0,e);const o=t(this),l=o?o.t:s;if(!l)return;return l[e]}},configurable:!0,enumerable:!0}),Object.defineProperty(s,e,{set(i){const s=t(this);if(s){if(r)return void 0===(32&l?this[e]:s.$hostElement$[e])&&s.R.get(e)&&(i=s.R.get(e)),r.call(this,L(i,l)),void fe(this,e,i=32&l?this[e]:s.$hostElement$[e],n);{if(!(1&o&&4096&n.D[e][0]))return fe(this,e,i,n),void(1&o&&!s.t&&s.k.push((()=>{4096&n.D[e][0]&&s.t[e]!==s.R.get(e)&&(s.t[e]=i)})));const t=()=>{const t=s.t[e];!s.R.get(e)&&t&&s.R.set(e,t),s.t[e]=L(i,l),fe(this,e,s.t[e],n)};s.t?t():s.k.push((()=>{t()}))}}}})}})),1&o){const o=new Map;s.attributeChangedCallback=function(e,l,i){u.jmp((()=>{var r;const c=o.get(e),u=t(this);if(this.hasOwnProperty(c)&&(i=this[c],delete this[c]),s.hasOwnProperty(c)&&"number"==typeof this[c]&&this[c]==i)return;if(null==c){const t=null==u?void 0:u.o;if(u&&t&&!(8&t)&&128&t&&i!==l){const t=u.t,o=null==(r=n.U)?void 0:r[e];null==o||o.forEach((n=>{null!=t[n]&&t[n].call(t,i,l,e)}))}return}const a=Object.getOwnPropertyDescriptor(s,c);(i=(null!==i||"boolean"!=typeof this[c])&&i)==this[c]||a.get&&!a.set||(this[c]=i)}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(i=n.U)?i:{}),...r.filter((([e,t])=>31&t[0])).map((([e,t])=>{var l;const i=t[1]||e;return o.set(i,e),512&t[0]&&(null==(l=n.P)||l.push([e,i])),i}))]))}}return e},pe=(e,t)=>{ue(e,"connectedCallback",void 0,t)},he=(e,t)=>{ue(e,"disconnectedCallback",void 0,t||e)},me=(e,n={})=>{var o;if(!c.document)return void console.warn("Stencil: No document found. Skipping bootstrapping lazy components.");const a=[],d=n.exclude||[],p=c.customElements,h=c.document.head,m=h.querySelector("meta[charset]"),v=c.document.createElement("style"),y=[];let b,$=!0;Object.assign(u,n),u.l=new URL(n.resourcesUrl||"./",c.document.baseURI).href;let w=!1;if(e.map((e=>{e[1].map((n=>{const o={o:n[0],i:n[1],D:n[2],W:n[3]};4&o.o&&(w=!0),o.D=n[2],o.P=[];const r=o.i,c=class extends HTMLElement{constructor(e){if(super(e),this.hasRegisteredEventListeners=!1,((e,t)=>{const n={o:0,$hostElement$:e,O:t,R:new Map,A:new Map};n.L=new Promise((e=>n.N=e)),e["s-p"]=[],e["s-rc"]=[],n.k=[];const o=n;e.__stencil__getHostRef=()=>o})(e=this,o),1&o.o)if(e.shadowRoot){if("open"!==e.shadowRoot.mode)throw Error(`Unable to re-use existing shadow root for ${o.i}! Mode is set to ${e.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else x.call(e,o)}connectedCallback(){t(this)&&(this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),b&&(clearTimeout(b),b=null),$?y.push(this):u.jmp((()=>(e=>{if(!(1&u.o)){const n=t(e);if(!n)return;const o=n.O,r=()=>{};if(1&n.o)(null==n?void 0:n.t)?pe(n.t,e):(null==n?void 0:n.L)&&n.L.then((()=>pe(n.t,e)));else{n.o|=1;{let t=e;for(;t=t.parentNode||t.host;)if(t["s-p"]){ee(n,n.j=t);break}}o.D&&Object.entries(o.D).map((([t,[n]])=>{if(31&n&&t in e&&e[t]!==Object.prototype[t]){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n)=>{let o;if(!(32&t.o)){if(t.o|=32,n.T){const s=((e,t)=>{const n=e.i.replace(/-/g,"_"),o=e.T;if(!o)return;const s=i.get(o);return s?s[n]:import(`./${o}.entry.js`).then((e=>(i.set(o,e),e[n])),(e=>{l(e,t.$hostElement$)}))
2
+ /*!__STENCIL_STATIC_IMPORT_SWITCH__*/})(n,t);if(s&&"then"in s){const e=()=>{};o=await s,e()}else o=s;if(!o)throw Error(`Constructor for "${n.i}#${t.F}" was not found`);o.isProxied||(de(o,n,2),o.isProxied=!0);const r=()=>{};t.o|=8;try{new o(t)}catch(t){l(t,e)}t.o&=-9,r(),pe(t.t,e)}else o=e.constructor,customElements.whenDefined(e.localName).then((()=>t.o|=128));if(o&&o.style){let e;"string"==typeof o.style&&(e=o.style);const t=N(n);if(!s.has(t)){const o=()=>{};((e,t,n)=>{let o=s.get(e);f&&n?(o=o||new CSSStyleSheet,"string"==typeof o?o=t:o.replaceSync(t)):o=t,s.set(e,o)})(t,e,!!(1&n.o)),o()}}}const r=t.j,c=()=>te(t,!0);r&&r["s-rc"]?r["s-rc"].push(c):c()})(e,n,o)}r()}})(this))))}disconnectedCallback(){u.jmp((()=>(async e=>{if(!(1&u.o)){const n=t(e);(null==n?void 0:n.t)?he(n.t,e):(null==n?void 0:n.L)&&n.L.then((()=>he(n.t,e)))}P.has(e)&&P.delete(e),e.shadowRoot&&P.has(e.shadowRoot)&&P.delete(e.shadowRoot)})(this))),u.raf((()=>{var e;const n=t(this);if(!n)return;const o=y.findIndex((e=>e===this));o>-1&&y.splice(o,1),(null==(e=null==n?void 0:n.M)?void 0:e.$)instanceof Node&&!n.M.$.isConnected&&delete n.M.$}))}componentOnReady(){var e;return null==(e=t(this))?void 0:e.L}};o.T=e[0],d.includes(r)||p.get(r)||(a.push(r),p.define(r,de(c,o,1)))}))})),a.length>0&&(w&&(v.textContent+=r),v.textContent+=a.sort()+"{visibility:hidden}.hydrated{visibility:inherit}",v.innerHTML.length)){v.setAttribute("data-styles","");const e=null!=(o=u.C)?o:S(c.document);null!=e&&v.setAttribute("nonce",e),h.insertBefore(v,m?m.nextSibling:h.firstChild)}$=!1,y.length?y.map((e=>e.connectedCallback())):u.jmp((()=>b=setTimeout(ce,30)))},ve=e=>u.C=e;export{me as b,T as c,R as h,a as p,n as r,ve as s}
@@ -1 +1 @@
1
- import{p as a,b as r}from"./p-BROrRAlq.js";export{s as setNonce}from"./p-BROrRAlq.js";import{g as t}from"./p-DQuL1Twl.js";(()=>{const r=import.meta.url,s={};return""!==r&&(s.resourcesUrl=new URL(".",r).href),a(s)})().then((async a=>(await t(),r([["p-a3520082",[[257,"seki-button",{variant:[1],size:[1],disabled:[4],type:[1],ariaLabel:[1,"aria-label"]}]]]],a))));
1
+ import{p as a,b as e}from"./p-CLC2YwJ6.js";export{s as setNonce}from"./p-CLC2YwJ6.js";import{g as i}from"./p-DQuL1Twl.js";(()=>{const e=import.meta.url,i={};return""!==e&&(i.resourcesUrl=new URL(".",e).href),a(i)})().then((async a=>(await i(),e([["p-10c9b8b2",[[257,"seki-button",{variant:[1],size:[1],disabled:[4],type:[1],ariaLabel:[1,"aria-label"]}]]],["p-6573bc92",[[257,"seki-input",{type:[1],value:[1537],placeholder:[1],disabled:[4],readonly:[4],required:[4],name:[1],autocomplete:[1],min:[8],max:[8],step:[8],pattern:[1],minlength:[2],maxlength:[2],size:[1],invalid:[4],ariaLabel:[1,"aria-label"],ariaDescribedby:[1,"aria-describedby"]}]]],["p-6bb2c486",[[257,"seki-skeleton",{ariaLabel:[1,"aria-label"]}]]]],a))));
@@ -0,0 +1,107 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ export declare class SekiInput {
3
+ /**
4
+ * Input type (text, email, password, number, tel, url, date, file, etc.)
5
+ */
6
+ type: string;
7
+ /**
8
+ * Current value of the input
9
+ */
10
+ value?: string;
11
+ /**
12
+ * Placeholder text
13
+ */
14
+ placeholder?: string;
15
+ /**
16
+ * Whether the input is disabled
17
+ */
18
+ disabled: boolean;
19
+ /**
20
+ * Whether the input is readonly
21
+ */
22
+ readonly: boolean;
23
+ /**
24
+ * Whether the input is required
25
+ */
26
+ required: boolean;
27
+ /**
28
+ * Name attribute for form submission
29
+ */
30
+ name?: string;
31
+ /**
32
+ * Autocomplete attribute
33
+ */
34
+ autocomplete?: string;
35
+ /**
36
+ * Minimum value (for number/date inputs)
37
+ */
38
+ min?: string | number;
39
+ /**
40
+ * Maximum value (for number/date inputs)
41
+ */
42
+ max?: string | number;
43
+ /**
44
+ * Step value (for number inputs)
45
+ */
46
+ step?: string | number;
47
+ /**
48
+ * Validation pattern (regex)
49
+ */
50
+ pattern?: string;
51
+ /**
52
+ * Minimum length
53
+ */
54
+ minlength?: number;
55
+ /**
56
+ * Maximum length
57
+ */
58
+ maxlength?: number;
59
+ /**
60
+ * Size variant
61
+ */
62
+ size: 'sm' | 'md' | 'lg';
63
+ /**
64
+ * Whether the input is in an invalid/error state
65
+ */
66
+ invalid: boolean;
67
+ /**
68
+ * Accessible label for screen readers
69
+ */
70
+ ariaLabel?: string;
71
+ /**
72
+ * ID of element describing this input
73
+ */
74
+ ariaDescribedby?: string;
75
+ /**
76
+ * Emitted on every keystroke
77
+ */
78
+ sekiInput: EventEmitter<{
79
+ value: string;
80
+ nativeEvent: Event;
81
+ }>;
82
+ /**
83
+ * Emitted on blur or Enter
84
+ */
85
+ sekiChange: EventEmitter<{
86
+ value: string;
87
+ nativeEvent: Event;
88
+ }>;
89
+ /**
90
+ * Emitted on focus
91
+ */
92
+ sekiFocus: EventEmitter<{
93
+ nativeEvent: FocusEvent;
94
+ }>;
95
+ /**
96
+ * Emitted on blur
97
+ */
98
+ sekiBlur: EventEmitter<{
99
+ value: string;
100
+ nativeEvent: FocusEvent;
101
+ }>;
102
+ private handleInput;
103
+ private handleChange;
104
+ private handleFocus;
105
+ private handleBlur;
106
+ render(): any;
107
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @component seki-skeleton
3
+ * @description A loading placeholder component that displays an animated skeleton while content is loading
4
+ * @example
5
+ * <seki-skeleton style="width: 200px; height: 20px;"></seki-skeleton>
6
+ */
7
+ export declare class SekiSkeleton {
8
+ /**
9
+ * @description Accessible label for screen readers to provide context about what is loading
10
+ * @example <seki-skeleton aria-label="Loading profile"></seki-skeleton>
11
+ */
12
+ ariaLabel?: string;
13
+ componentWillLoad(): void;
14
+ render(): any;
15
+ }
@@ -5,6 +5,8 @@
5
5
  * It contains typing information for all components that exist in this project.
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
+ import { Event } from "./stencil-public-runtime";
9
+ export { Event } from "./stencil-public-runtime";
8
10
  export namespace Components {
9
11
  interface SekiButton {
10
12
  /**
@@ -32,6 +34,103 @@ export namespace Components {
32
34
  */
33
35
  "variant": 'primary' | 'secondary' | 'outline' | 'ghost' | 'destructive' | 'link';
34
36
  }
37
+ interface SekiInput {
38
+ /**
39
+ * ID of element describing this input
40
+ */
41
+ "ariaDescribedby"?: string;
42
+ /**
43
+ * Accessible label for screen readers
44
+ */
45
+ "ariaLabel"?: string;
46
+ /**
47
+ * Autocomplete attribute
48
+ */
49
+ "autocomplete"?: string;
50
+ /**
51
+ * Whether the input is disabled
52
+ * @default false
53
+ */
54
+ "disabled": boolean;
55
+ /**
56
+ * Whether the input is in an invalid/error state
57
+ * @default false
58
+ */
59
+ "invalid": boolean;
60
+ /**
61
+ * Maximum value (for number/date inputs)
62
+ */
63
+ "max"?: string | number;
64
+ /**
65
+ * Maximum length
66
+ */
67
+ "maxlength"?: number;
68
+ /**
69
+ * Minimum value (for number/date inputs)
70
+ */
71
+ "min"?: string | number;
72
+ /**
73
+ * Minimum length
74
+ */
75
+ "minlength"?: number;
76
+ /**
77
+ * Name attribute for form submission
78
+ */
79
+ "name"?: string;
80
+ /**
81
+ * Validation pattern (regex)
82
+ */
83
+ "pattern"?: string;
84
+ /**
85
+ * Placeholder text
86
+ */
87
+ "placeholder"?: string;
88
+ /**
89
+ * Whether the input is readonly
90
+ * @default false
91
+ */
92
+ "readonly": boolean;
93
+ /**
94
+ * Whether the input is required
95
+ * @default false
96
+ */
97
+ "required": boolean;
98
+ /**
99
+ * Size variant
100
+ * @default 'md'
101
+ */
102
+ "size": 'sm' | 'md' | 'lg';
103
+ /**
104
+ * Step value (for number inputs)
105
+ */
106
+ "step"?: string | number;
107
+ /**
108
+ * Input type (text, email, password, number, tel, url, date, file, etc.)
109
+ * @default 'text'
110
+ */
111
+ "type": string;
112
+ /**
113
+ * Current value of the input
114
+ * @default ''
115
+ */
116
+ "value"?: string;
117
+ }
118
+ /**
119
+ * @component seki-skeleton
120
+ * @description A loading placeholder component that displays an animated skeleton while content is loading
121
+ * @example <seki-skeleton style="width: 200px; height: 20px;"></seki-skeleton>
122
+ */
123
+ interface SekiSkeleton {
124
+ /**
125
+ * @description Accessible label for screen readers to provide context about what is loading
126
+ * @example <seki-skeleton aria-label="Loading profile"></seki-skeleton>
127
+ */
128
+ "ariaLabel"?: string;
129
+ }
130
+ }
131
+ export interface SekiInputCustomEvent<T> extends CustomEvent<T> {
132
+ detail: T;
133
+ target: HTMLSekiInputElement;
35
134
  }
36
135
  declare global {
37
136
  interface HTMLSekiButtonElement extends Components.SekiButton, HTMLStencilElement {
@@ -40,8 +139,41 @@ declare global {
40
139
  prototype: HTMLSekiButtonElement;
41
140
  new (): HTMLSekiButtonElement;
42
141
  };
142
+ interface HTMLSekiInputElementEventMap {
143
+ "sekiInput": { value: string; nativeEvent: Event };
144
+ "sekiChange": { value: string; nativeEvent: Event };
145
+ "sekiFocus": { nativeEvent: FocusEvent };
146
+ "sekiBlur": { value: string; nativeEvent: FocusEvent };
147
+ }
148
+ interface HTMLSekiInputElement extends Components.SekiInput, HTMLStencilElement {
149
+ addEventListener<K extends keyof HTMLSekiInputElementEventMap>(type: K, listener: (this: HTMLSekiInputElement, ev: SekiInputCustomEvent<HTMLSekiInputElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
150
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
151
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
152
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
153
+ removeEventListener<K extends keyof HTMLSekiInputElementEventMap>(type: K, listener: (this: HTMLSekiInputElement, ev: SekiInputCustomEvent<HTMLSekiInputElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
154
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
155
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
156
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
157
+ }
158
+ var HTMLSekiInputElement: {
159
+ prototype: HTMLSekiInputElement;
160
+ new (): HTMLSekiInputElement;
161
+ };
162
+ /**
163
+ * @component seki-skeleton
164
+ * @description A loading placeholder component that displays an animated skeleton while content is loading
165
+ * @example <seki-skeleton style="width: 200px; height: 20px;"></seki-skeleton>
166
+ */
167
+ interface HTMLSekiSkeletonElement extends Components.SekiSkeleton, HTMLStencilElement {
168
+ }
169
+ var HTMLSekiSkeletonElement: {
170
+ prototype: HTMLSekiSkeletonElement;
171
+ new (): HTMLSekiSkeletonElement;
172
+ };
43
173
  interface HTMLElementTagNameMap {
44
174
  "seki-button": HTMLSekiButtonElement;
175
+ "seki-input": HTMLSekiInputElement;
176
+ "seki-skeleton": HTMLSekiSkeletonElement;
45
177
  }
46
178
  }
47
179
  declare namespace LocalJSX {
@@ -71,8 +203,119 @@ declare namespace LocalJSX {
71
203
  */
72
204
  "variant"?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'destructive' | 'link';
73
205
  }
206
+ interface SekiInput {
207
+ /**
208
+ * ID of element describing this input
209
+ */
210
+ "ariaDescribedby"?: string;
211
+ /**
212
+ * Accessible label for screen readers
213
+ */
214
+ "ariaLabel"?: string;
215
+ /**
216
+ * Autocomplete attribute
217
+ */
218
+ "autocomplete"?: string;
219
+ /**
220
+ * Whether the input is disabled
221
+ * @default false
222
+ */
223
+ "disabled"?: boolean;
224
+ /**
225
+ * Whether the input is in an invalid/error state
226
+ * @default false
227
+ */
228
+ "invalid"?: boolean;
229
+ /**
230
+ * Maximum value (for number/date inputs)
231
+ */
232
+ "max"?: string | number;
233
+ /**
234
+ * Maximum length
235
+ */
236
+ "maxlength"?: number;
237
+ /**
238
+ * Minimum value (for number/date inputs)
239
+ */
240
+ "min"?: string | number;
241
+ /**
242
+ * Minimum length
243
+ */
244
+ "minlength"?: number;
245
+ /**
246
+ * Name attribute for form submission
247
+ */
248
+ "name"?: string;
249
+ /**
250
+ * Emitted on blur
251
+ */
252
+ "onSekiBlur"?: (event: SekiInputCustomEvent<{ value: string; nativeEvent: FocusEvent }>) => void;
253
+ /**
254
+ * Emitted on blur or Enter
255
+ */
256
+ "onSekiChange"?: (event: SekiInputCustomEvent<{ value: string; nativeEvent: Event }>) => void;
257
+ /**
258
+ * Emitted on focus
259
+ */
260
+ "onSekiFocus"?: (event: SekiInputCustomEvent<{ nativeEvent: FocusEvent }>) => void;
261
+ /**
262
+ * Emitted on every keystroke
263
+ */
264
+ "onSekiInput"?: (event: SekiInputCustomEvent<{ value: string; nativeEvent: Event }>) => void;
265
+ /**
266
+ * Validation pattern (regex)
267
+ */
268
+ "pattern"?: string;
269
+ /**
270
+ * Placeholder text
271
+ */
272
+ "placeholder"?: string;
273
+ /**
274
+ * Whether the input is readonly
275
+ * @default false
276
+ */
277
+ "readonly"?: boolean;
278
+ /**
279
+ * Whether the input is required
280
+ * @default false
281
+ */
282
+ "required"?: boolean;
283
+ /**
284
+ * Size variant
285
+ * @default 'md'
286
+ */
287
+ "size"?: 'sm' | 'md' | 'lg';
288
+ /**
289
+ * Step value (for number inputs)
290
+ */
291
+ "step"?: string | number;
292
+ /**
293
+ * Input type (text, email, password, number, tel, url, date, file, etc.)
294
+ * @default 'text'
295
+ */
296
+ "type"?: string;
297
+ /**
298
+ * Current value of the input
299
+ * @default ''
300
+ */
301
+ "value"?: string;
302
+ }
303
+ /**
304
+ * @component seki-skeleton
305
+ * @description A loading placeholder component that displays an animated skeleton while content is loading
306
+ * @example <seki-skeleton style="width: 200px; height: 20px;"></seki-skeleton>
307
+ */
308
+ interface SekiSkeleton {
309
+ /**
310
+ * @description Accessible label for screen readers to provide context about what is loading
311
+ * @example <seki-skeleton aria-label="Loading profile"></seki-skeleton>
312
+ */
313
+ "ariaLabel"?: string;
314
+ }
74
315
  interface IntrinsicElements {
75
316
  "seki-button": SekiButton;
317
+ "seki-input": SekiInput;
318
+ "seki-skeleton": SekiSkeleton;
76
319
  }
77
320
  }
78
321
  export { LocalJSX as JSX };
@@ -80,6 +323,13 @@ declare module "@stencil/core" {
80
323
  export namespace JSX {
81
324
  interface IntrinsicElements {
82
325
  "seki-button": LocalJSX.SekiButton & JSXBase.HTMLAttributes<HTMLSekiButtonElement>;
326
+ "seki-input": LocalJSX.SekiInput & JSXBase.HTMLAttributes<HTMLSekiInputElement>;
327
+ /**
328
+ * @component seki-skeleton
329
+ * @description A loading placeholder component that displays an animated skeleton while content is loading
330
+ * @example <seki-skeleton style="width: 200px; height: 20px;"></seki-skeleton>
331
+ */
332
+ "seki-skeleton": LocalJSX.SekiSkeleton & JSXBase.HTMLAttributes<HTMLSekiSkeletonElement>;
83
333
  }
84
334
  }
85
335
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sekiui/elements",
3
- "version": "0.0.24",
3
+ "version": "0.0.26",
4
4
  "description": "Modern, accessible Web Components with shadcn/ui-inspired design",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -1,2 +0,0 @@
1
- var e=Object.defineProperty,t=e=>{if(e.__stencil__getHostRef)return e.__stencil__getHostRef()},n=(e,t)=>{t&&(e.__stencil__getHostRef=()=>t,t.t=e)},o=(e,t)=>(0,console.error)(e,t),i=new Map,l=new Map,s="slot-fb{display:contents}slot-fb[hidden]{display:none}",r="undefined"!=typeof window?window:{},c={o:0,i:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,o)=>e.addEventListener(t,n,o),rel:(e,t,n,o)=>e.removeEventListener(t,n,o),ce:(e,t)=>new CustomEvent(e,t)},u=e=>Promise.resolve(e),a=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),f=!!a&&(()=>!!r.document&&Object.getOwnPropertyDescriptor(r.document.adoptedStyleSheets,"length").writable)(),d=!1,h=[],p=[],m=(e,t)=>n=>{e.push(n),d||(d=!0,t&&4&c.o?b(y):c.raf(y))},v=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){o(e)}e.length=0},y=()=>{v(h),v(p),(d=h.length>0)&&c.raf(y)},b=e=>u().then(e),$=m(p,!0),w=e=>"object"==(e=typeof e)||"function"===e;function g(e){var t,n,o;return null!=(o=null==(n=null==(t=e.head)?void 0:t.querySelector('meta[name="csp-nonce"]'))?void 0:n.getAttribute("content"))?o:void 0}((t,n)=>{for(var o in n)e(t,o,{get:n[o],enumerable:!0})})({},{err:()=>j,map:()=>k,ok:()=>S,unwrap:()=>E,unwrapErr:()=>M});var S=e=>({isOk:!0,isErr:!1,value:e}),j=e=>({isOk:!1,isErr:!0,value:e});function k(e,t){if(e.isOk){const n=t(e.value);return n instanceof Promise?n.then((e=>S(e))):S(n)}if(e.isErr)return j(e.value);throw"should never get here"}var O,E=e=>{if(e.isOk)return e.value;throw e.value},M=e=>{if(e.isErr)return e.value;throw e.value};function C(){const e=this.attachShadow({mode:"open"});void 0===O&&(O=null),O&&(f?e.adoptedStyleSheets.push(O):e.adoptedStyleSheets=[...e.adoptedStyleSheets,O])}var x=new WeakMap,P=e=>"sc-"+e.l,D=(e,t,...n)=>{let o=null,i=null,l=!1,s=!1;const r=[],c=t=>{for(let n=0;n<t.length;n++)o=t[n],Array.isArray(o)?c(o):null!=o&&"boolean"!=typeof o&&((l="function"!=typeof e&&!w(o))&&(o+=""),l&&s?r[r.length-1].u+=o:r.push(l?R(null,o):o),s=l)};if(c(n),t){t.key&&(i=t.key);{const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}}const u=R(e,null);return u.h=t,r.length>0&&(u.p=r),u.m=i,u},R=(e,t)=>({o:0,v:e,u:t,$:null,p:null,h:null,m:null}),U={},W=e=>{const t=(e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"))(e);return RegExp(`(^|[^@]|@(?!supports\\s+selector\\s*\\([^{]*?${t}))(${t}\\b)`,"g")};W("::slotted"),W(":host"),W(":host-context");var A,N=(e,t)=>null==e||w(e)?e:4&t?"false"!==e&&(""===e||!!e):1&t?e+"":e,L=(e,t,n,o,i,l)=>{if(n===o)return;let s=((e,t)=>t in e)(e,t);if(t.toLowerCase(),"class"===t){const t=e.classList,i=z(n);let l=z(o);t.remove(...i.filter((e=>e&&!l.includes(e)))),t.add(...l.filter((e=>e&&!i.includes(e))))}else if("key"===t);else{const r=w(o);if(s||r&&null!==o)try{if(e.tagName.includes("-"))e[t]!==o&&(e[t]=o);else{const i=null==o?"":o;"list"===t?s=!1:null!=n&&e[t]==i||("function"==typeof e.__lookupSetter__(t)?e[t]=i:e.setAttribute(t,i))}}catch(e){}null==o||!1===o?!1===o&&""!==e.getAttribute(t)||e.removeAttribute(t):(!s||4&l||i)&&!r&&1===e.nodeType&&e.setAttribute(t,o=!0===o?"":o)}},T=/\s/,z=e=>("object"==typeof e&&e&&"baseVal"in e&&(e=e.baseVal),e&&"string"==typeof e?e.split(T):[]),H=(e,t,n)=>{const o=11===t.$.nodeType&&t.$.host?t.$.host:t.$,i=e&&e.h||{},l=t.h||{};for(const e of V(Object.keys(i)))e in l||L(o,e,i[e],void 0,n,t.o);for(const e of V(Object.keys(l)))L(o,e,i[e],l[e],n,t.o)};function V(e){return e.includes("ref")?[...e.filter((e=>"ref"!==e)),"ref"]:e}var q=!1,F=(e,t,n)=>{const o=t.p[n];let i,l,s=0;if(!r.document)throw Error("You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component.");if(i=o.$=r.document.createElement(o.v),H(null,o,q),o.p)for(s=0;s<o.p.length;++s)l=F(e,o,s),l&&i.appendChild(l);return i["s-hn"]=A,i},G=(e,t,n,o,i,l)=>{let s,r=e;for(r.shadowRoot&&r.tagName===A&&(r=r.shadowRoot);i<=l;++i)o[i]&&(s=F(null,n,i),s&&(o[i].$=s,B(r,s,t)))},I=(e,t,n)=>{for(let o=t;o<=n;++o){const t=e[o];if(t){const e=t.$;e&&e.remove()}}},Y=(e,t,n=!1)=>e.v===t.v&&(n?(n&&!e.m&&t.m&&(e.m=t.m),!0):e.m===t.m),_=(e,t,n=!1)=>{const o=t.$=e.$,i=e.p,l=t.p;H(e,t,q),null!==i&&null!==l?((e,t,n,o,i=!1)=>{let l,s,r=0,c=0,u=0,a=0,f=t.length-1,d=t[0],h=t[f],p=o.length-1,m=o[0],v=o[p];for(;r<=f&&c<=p;)if(null==d)d=t[++r];else if(null==h)h=t[--f];else if(null==m)m=o[++c];else if(null==v)v=o[--p];else if(Y(d,m,i))_(d,m,i),d=t[++r],m=o[++c];else if(Y(h,v,i))_(h,v,i),h=t[--f],v=o[--p];else if(Y(d,v,i))_(d,v,i),B(e,d.$,h.$.nextSibling),d=t[++r],v=o[--p];else if(Y(h,m,i))_(h,m,i),B(e,h.$,d.$),h=t[--f],m=o[++c];else{for(u=-1,a=r;a<=f;++a)if(t[a]&&null!==t[a].m&&t[a].m===m.m){u=a;break}u>=0?(s=t[u],s.v!==m.v?l=F(t&&t[c],n,u):(_(s,m,i),t[u]=void 0,l=s.$),m=o[++c]):(l=F(t&&t[c],n,c),m=o[++c]),l&&B(d.$.parentNode,l,d.$)}r>f?G(e,null==o[p+1]?null:o[p+1].$,n,o,c,p):c>p&&I(t,r,f)})(o,i,t,l,n):null!==l?G(o,null,t,l,0,l.length-1):!n&&null!==i&&I(i,0,i.length-1)},B=(e,t,n)=>null==e?void 0:e.insertBefore(t,n),J=(e,t)=>{if(t&&!e.S&&t["s-p"]){const n=t["s-p"].push(new Promise((o=>e.S=()=>{t["s-p"].splice(n-1,1),o()})))}},K=(e,t)=>{if(e.o|=16,4&e.o)return void(e.o|=512);J(e,e.j);const n=()=>Q(e,t);if(!t)return $(n);queueMicrotask((()=>{n()}))},Q=(e,t)=>{const n=e.$hostElement$,o=e.t;if(!o)throw Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let i;return t?(e.k.length&&e.k.forEach((e=>e(n))),i=ie(o,"componentWillLoad",void 0,n)):i=ie(o,"componentWillUpdate",void 0,n),i=X(i,(()=>ie(o,"componentWillRender",void 0,n))),X(i,(()=>ee(e,o,t)))},X=(e,t)=>Z(e)?e.then(t).catch((e=>{console.error(e),t()})):t(),Z=e=>e instanceof Promise||e&&e.then&&"function"==typeof e.then,ee=async(e,t,n)=>{var o;const i=e.$hostElement$,u=i["s-rc"];n&&(e=>{const t=e.O,n=e.$hostElement$,o=t.o,i=((e,t)=>{var n;const o=P(t),i=l.get(o);if(!r.document)return o;if(e=11===e.nodeType?e:r.document,i)if("string"==typeof i){let l,u=x.get(e=e.head||e);if(u||x.set(e,u=new Set),!u.has(o)){{l=r.document.createElement("style"),l.innerHTML=i;const o=null!=(n=c.M)?n:g(r.document);if(null!=o&&l.setAttribute("nonce",o),!(1&t.o))if("HEAD"===e.nodeName){const t=e.querySelectorAll("link[rel=preconnect]"),n=t.length>0?t[t.length-1].nextSibling:e.querySelector("style");e.insertBefore(l,(null==n?void 0:n.parentNode)===e?n:null)}else if("host"in e)if(a){const t=new CSSStyleSheet;t.replaceSync(i),f?e.adoptedStyleSheets.unshift(t):e.adoptedStyleSheets=[t,...e.adoptedStyleSheets]}else{const t=e.querySelector("style");t?t.innerHTML=i+t.innerHTML:e.prepend(l)}else e.append(l);1&t.o&&e.insertBefore(l,null)}4&t.o&&(l.innerHTML+=s),u&&u.add(o)}}else e.adoptedStyleSheets.includes(i)||(f?e.adoptedStyleSheets.push(i):e.adoptedStyleSheets=[...e.adoptedStyleSheets,i]);return o})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&o&&(n["s-sc"]=i,n.classList.add(i+"-h"))})(e);te(e,t,i,n),u&&(u.map((e=>e())),i["s-rc"]=void 0);{const t=null!=(o=i["s-p"])?o:[],n=()=>ne(e);0===t.length?n():(Promise.all(t).then(n),e.o|=4,t.length=0)}},te=(e,t,n,i)=>{try{t=t.render(),e.o&=-17,e.o|=2,((e,t,n=!1)=>{const o=e.$hostElement$,i=e.C||R(null,null),l=(e=>e&&e.v===U)(t)?t:D(null,null,t);if(A=o.tagName,n&&l.h)for(const e of Object.keys(l.h))o.hasAttribute(e)&&!["key","ref","style","class"].includes(e)&&(l.h[e]=o[e]);l.v=null,l.o|=4,e.C=l,l.$=i.$=o.shadowRoot||o,_(i,l,n)})(e,t,i)}catch(t){o(t,e.$hostElement$)}return null},ne=e=>{const t=e.$hostElement$,n=e.t,o=e.j;ie(n,"componentDidRender",void 0,t),64&e.o?ie(n,"componentDidUpdate",void 0,t):(e.o|=64,le(t),ie(n,"componentDidLoad",void 0,t),e.P(t),o||oe()),e.S&&(e.S(),e.S=void 0),512&e.o&&b((()=>K(e,!1))),e.o&=-517},oe=()=>{b((()=>(e=>{const t=c.ce("appload",{detail:{namespace:"sekiui"}});return e.dispatchEvent(t),t})(r)))},ie=(e,t,n,i)=>{if(e&&e[t])try{return e[t](n)}catch(e){o(e,i)}},le=e=>e.classList.add("hydrated"),se=(e,n,o,i)=>{const l=t(e);if(!l)return;if(!l)throw Error(`Couldn't find host element for "${i.l}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/stenciljs/core/issues/5457).`);const s=l.D.get(n),r=l.o,c=l.t;if(o=N(o,i.R[n][0]),(!(8&r)||void 0===s)&&o!==s&&(!Number.isNaN(s)||!Number.isNaN(o))&&(l.D.set(n,o),c&&2==(18&r))){if(c.componentShouldUpdate&&!1===c.componentShouldUpdate(o,s,n))return;K(l,!1)}},re=(e,n,o)=>{var i,l;const s=e.prototype;if(n.R){const r=Object.entries(null!=(i=n.R)?i:{});if(r.map((([e,[i]])=>{if(31&i||2&o&&32&i){const{get:l,set:r}=Object.getOwnPropertyDescriptor(s,e)||{};l&&(n.R[e][0]|=2048),r&&(n.R[e][0]|=4096),(1&o||!l)&&Object.defineProperty(s,e,{get(){{if(!(2048&n.R[e][0]))return((e,n)=>t(this).D.get(n))(0,e);const o=t(this),i=o?o.t:s;if(!i)return;return i[e]}},configurable:!0,enumerable:!0}),Object.defineProperty(s,e,{set(l){const s=t(this);if(s){if(r)return void 0===(32&i?this[e]:s.$hostElement$[e])&&s.D.get(e)&&(l=s.D.get(e)),r.call(this,N(l,i)),void se(this,e,l=32&i?this[e]:s.$hostElement$[e],n);{if(!(1&o&&4096&n.R[e][0]))return se(this,e,l,n),void(1&o&&!s.t&&s.k.push((()=>{4096&n.R[e][0]&&s.t[e]!==s.D.get(e)&&(s.t[e]=l)})));const t=()=>{const t=s.t[e];!s.D.get(e)&&t&&s.D.set(e,t),s.t[e]=N(l,i),se(this,e,s.t[e],n)};s.t?t():s.k.push((()=>{t()}))}}}})}})),1&o){const o=new Map;s.attributeChangedCallback=function(e,i,l){c.jmp((()=>{var r;const c=o.get(e),u=t(this);if(this.hasOwnProperty(c)&&(l=this[c],delete this[c]),s.hasOwnProperty(c)&&"number"==typeof this[c]&&this[c]==l)return;if(null==c){const t=null==u?void 0:u.o;if(u&&t&&!(8&t)&&128&t&&l!==i){const t=u.t,o=null==(r=n.U)?void 0:r[e];null==o||o.forEach((n=>{null!=t[n]&&t[n].call(t,l,i,e)}))}return}const a=Object.getOwnPropertyDescriptor(s,c);(l=(null!==l||"boolean"!=typeof this[c])&&l)==this[c]||a.get&&!a.set||(this[c]=l)}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(l=n.U)?l:{}),...r.filter((([e,t])=>31&t[0])).map((([e,t])=>{const n=t[1]||e;return o.set(n,e),n}))]))}}return e},ce=(e,t)=>{ie(e,"connectedCallback",void 0,t)},ue=(e,t)=>{ie(e,"disconnectedCallback",void 0,t||e)},ae=(e,n={})=>{var u;if(!r.document)return void console.warn("Stencil: No document found. Skipping bootstrapping lazy components.");const f=[],d=n.exclude||[],h=r.customElements,p=r.document.head,m=p.querySelector("meta[charset]"),v=r.document.createElement("style"),y=[];let b,$=!0;Object.assign(c,n),c.i=new URL(n.resourcesUrl||"./",r.document.baseURI).href;let w=!1;if(e.map((e=>{e[1].map((n=>{const s={o:n[0],l:n[1],R:n[2],W:n[3]};4&s.o&&(w=!0),s.R=n[2];const r=s.l,u=class extends HTMLElement{constructor(e){if(super(e),this.hasRegisteredEventListeners=!1,((e,t)=>{const n={o:0,$hostElement$:e,O:t,D:new Map,A:new Map};n.N=new Promise((e=>n.P=e)),e["s-p"]=[],e["s-rc"]=[],n.k=[];const o=n;e.__stencil__getHostRef=()=>o})(e=this,s),1&s.o)if(e.shadowRoot){if("open"!==e.shadowRoot.mode)throw Error(`Unable to re-use existing shadow root for ${s.l}! Mode is set to ${e.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else C.call(e,s)}connectedCallback(){t(this)&&(this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),b&&(clearTimeout(b),b=null),$?y.push(this):c.jmp((()=>(e=>{if(!(1&c.o)){const n=t(e);if(!n)return;const s=n.O,r=()=>{};if(1&n.o)(null==n?void 0:n.t)?ce(n.t,e):(null==n?void 0:n.N)&&n.N.then((()=>ce(n.t,e)));else{n.o|=1;{let t=e;for(;t=t.parentNode||t.host;)if(t["s-p"]){J(n,n.j=t);break}}s.R&&Object.entries(s.R).map((([t,[n]])=>{if(31&n&&t in e&&e[t]!==Object.prototype[t]){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n)=>{let s;if(!(32&t.o)){if(t.o|=32,n.L){const l=((e,t)=>{const n=e.l.replace(/-/g,"_"),l=e.L;if(!l)return;const s=i.get(l);return s?s[n]:import(`./${l}.entry.js`).then((e=>(i.set(l,e),e[n])),(e=>{o(e,t.$hostElement$)}))
2
- /*!__STENCIL_STATIC_IMPORT_SWITCH__*/})(n,t);if(l&&"then"in l){const e=()=>{};s=await l,e()}else s=l;if(!s)throw Error(`Constructor for "${n.l}#${t.T}" was not found`);s.isProxied||(re(s,n,2),s.isProxied=!0);const r=()=>{};t.o|=8;try{new s(t)}catch(t){o(t,e)}t.o&=-9,r(),ce(t.t,e)}else s=e.constructor,customElements.whenDefined(e.localName).then((()=>t.o|=128));if(s&&s.style){let e;"string"==typeof s.style&&(e=s.style);const t=P(n);if(!l.has(t)){const o=()=>{};((e,t,n)=>{let o=l.get(e);a&&n?(o=o||new CSSStyleSheet,"string"==typeof o?o=t:o.replaceSync(t)):o=t,l.set(e,o)})(t,e,!!(1&n.o)),o()}}}const r=t.j,c=()=>K(t,!0);r&&r["s-rc"]?r["s-rc"].push(c):c()})(e,n,s)}r()}})(this))))}disconnectedCallback(){c.jmp((()=>(async e=>{if(!(1&c.o)){const n=t(e);(null==n?void 0:n.t)?ue(n.t,e):(null==n?void 0:n.N)&&n.N.then((()=>ue(n.t,e)))}x.has(e)&&x.delete(e),e.shadowRoot&&x.has(e.shadowRoot)&&x.delete(e.shadowRoot)})(this))),c.raf((()=>{var e;const n=t(this);if(!n)return;const o=y.findIndex((e=>e===this));o>-1&&y.splice(o,1),(null==(e=null==n?void 0:n.C)?void 0:e.$)instanceof Node&&!n.C.$.isConnected&&delete n.C.$}))}componentOnReady(){var e;return null==(e=t(this))?void 0:e.N}};s.L=e[0],d.includes(r)||h.get(r)||(f.push(r),h.define(r,re(u,s,1)))}))})),f.length>0&&(w&&(v.textContent+=s),v.textContent+=f.sort()+"{visibility:hidden}.hydrated{visibility:inherit}",v.innerHTML.length)){v.setAttribute("data-styles","");const e=null!=(u=c.M)?u:g(r.document);null!=e&&v.setAttribute("nonce",e),p.insertBefore(v,m?m.nextSibling:p.firstChild)}$=!1,y.length?y.map((e=>e.connectedCallback())):c.jmp((()=>b=setTimeout(oe,30)))},fe=e=>c.M=e;export{ae as b,D as h,u as p,n as r,fe as s}