@sekiui/elements 0.0.35 → 0.0.37

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 (90) hide show
  1. package/dist/cjs/{index-dzrwTIbP.js → index-CQBxP9_b.js} +57 -1
  2. package/dist/cjs/index.cjs.js +1 -1
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/seki-button.cjs.entry.js +1 -1
  5. package/dist/cjs/seki-field-description.cjs.entry.js +43 -0
  6. package/dist/cjs/seki-field-error.cjs.entry.js +66 -0
  7. package/dist/cjs/seki-field-group.cjs.entry.js +25 -0
  8. package/dist/cjs/seki-field-label.cjs.entry.js +22 -0
  9. package/dist/cjs/seki-field-legend.cjs.entry.js +17 -0
  10. package/dist/cjs/seki-field.cjs.entry.js +47 -0
  11. package/dist/cjs/seki-fieldset.cjs.entry.js +22 -0
  12. package/dist/cjs/seki-input.cjs.entry.js +2 -2
  13. package/dist/cjs/seki-skeleton.cjs.entry.js +2 -2
  14. package/dist/cjs/seki-switch.cjs.entry.js +1 -1
  15. package/dist/cjs/sekiui.cjs.js +2 -2
  16. package/dist/collection/collection-manifest.json +7 -0
  17. package/dist/collection/components/field/seki-field.css +451 -0
  18. package/dist/collection/components/field/seki-field.js +94 -0
  19. package/dist/collection/components/field-description/seki-field-description.css +372 -0
  20. package/dist/collection/components/field-description/seki-field-description.js +95 -0
  21. package/dist/collection/components/field-error/seki-field-error.css +373 -0
  22. package/dist/collection/components/field-error/seki-field-error.js +163 -0
  23. package/dist/collection/components/field-group/seki-field-group.css +371 -0
  24. package/dist/collection/components/field-group/seki-field-group.js +52 -0
  25. package/dist/collection/components/field-label/seki-field-label.css +380 -0
  26. package/dist/collection/components/field-label/seki-field-label.js +68 -0
  27. package/dist/collection/components/field-legend/seki-field-legend.css +375 -0
  28. package/dist/collection/components/field-legend/seki-field-legend.js +18 -0
  29. package/dist/collection/components/fieldset/seki-fieldset.css +382 -0
  30. package/dist/collection/components/fieldset/seki-fieldset.js +49 -0
  31. package/dist/collection/components/input/seki-input.js +1 -1
  32. package/dist/collection/components/skeleton/seki-skeleton.js +1 -1
  33. package/dist/components/index.js +2 -2
  34. package/dist/components/{p--oknAIA5.js → p-ag6agK1v.js} +30 -2
  35. package/dist/components/seki-button.js +1 -1
  36. package/dist/components/seki-field-description.d.ts +11 -0
  37. package/dist/components/seki-field-description.js +66 -0
  38. package/dist/components/seki-field-error.d.ts +11 -0
  39. package/dist/components/seki-field-error.js +94 -0
  40. package/dist/components/seki-field-group.d.ts +11 -0
  41. package/dist/components/seki-field-group.js +46 -0
  42. package/dist/components/seki-field-label.d.ts +11 -0
  43. package/dist/components/seki-field-label.js +44 -0
  44. package/dist/components/seki-field-legend.d.ts +11 -0
  45. package/dist/components/seki-field-legend.js +36 -0
  46. package/dist/components/seki-field.d.ts +11 -0
  47. package/dist/components/seki-field.js +69 -0
  48. package/dist/components/seki-fieldset.d.ts +11 -0
  49. package/dist/components/seki-fieldset.js +43 -0
  50. package/dist/components/seki-input.js +2 -2
  51. package/dist/components/seki-skeleton.js +2 -2
  52. package/dist/esm/{index-F_LoNrhC.js → index-xoBNLQoq.js} +57 -2
  53. package/dist/esm/index.js +1 -1
  54. package/dist/esm/loader.js +3 -3
  55. package/dist/esm/seki-button.entry.js +1 -1
  56. package/dist/esm/seki-field-description.entry.js +41 -0
  57. package/dist/esm/seki-field-error.entry.js +64 -0
  58. package/dist/esm/seki-field-group.entry.js +23 -0
  59. package/dist/esm/seki-field-label.entry.js +20 -0
  60. package/dist/esm/seki-field-legend.entry.js +15 -0
  61. package/dist/esm/seki-field.entry.js +45 -0
  62. package/dist/esm/seki-fieldset.entry.js +20 -0
  63. package/dist/esm/seki-input.entry.js +2 -2
  64. package/dist/esm/seki-skeleton.entry.js +2 -2
  65. package/dist/esm/seki-switch.entry.js +1 -1
  66. package/dist/esm/sekiui.js +3 -3
  67. package/dist/sekiui/index.esm.js +1 -1
  68. package/dist/sekiui/{p-a22c9d08.entry.js → p-0226e4f7.entry.js} +1 -1
  69. package/dist/sekiui/{p-b0298d88.entry.js → p-03487f1f.entry.js} +1 -1
  70. package/dist/sekiui/p-0f6ca3b1.entry.js +1 -0
  71. package/dist/sekiui/p-17cdd420.entry.js +1 -0
  72. package/dist/sekiui/p-3787d562.entry.js +1 -0
  73. package/dist/sekiui/p-4cf3ac27.entry.js +1 -0
  74. package/dist/sekiui/{p-23858479.entry.js → p-72741840.entry.js} +1 -1
  75. package/dist/sekiui/{p-3a4a98f8.entry.js → p-96f49bc5.entry.js} +1 -1
  76. package/dist/sekiui/p-a9601821.entry.js +1 -0
  77. package/dist/sekiui/p-d09b94a2.entry.js +1 -0
  78. package/dist/sekiui/p-d25987f6.entry.js +1 -0
  79. package/dist/sekiui/p-xoBNLQoq.js +2 -0
  80. package/dist/sekiui/sekiui.esm.js +1 -1
  81. package/dist/types/components/field/seki-field.d.ts +21 -0
  82. package/dist/types/components/field-description/seki-field-description.d.ts +20 -0
  83. package/dist/types/components/field-error/seki-field-error.d.ts +34 -0
  84. package/dist/types/components/field-group/seki-field-group.d.ts +8 -0
  85. package/dist/types/components/field-label/seki-field-label.d.ts +13 -0
  86. package/dist/types/components/field-legend/seki-field-legend.d.ts +3 -0
  87. package/dist/types/components/fieldset/seki-fieldset.d.ts +8 -0
  88. package/dist/types/components.d.ts +187 -0
  89. package/package.json +1 -1
  90. package/dist/sekiui/p-F_LoNrhC.js +0 -2
@@ -0,0 +1,8 @@
1
+ export declare class SekiFieldset {
2
+ /**
3
+ * Whether all fields in the fieldset are disabled
4
+ * When true, cascades disabled state to all nested form controls
5
+ */
6
+ disabled: boolean;
7
+ render(): any;
8
+ }
@@ -34,6 +34,74 @@ export namespace Components {
34
34
  */
35
35
  "variant": 'primary' | 'secondary' | 'outline' | 'ghost' | 'destructive' | 'link';
36
36
  }
37
+ interface SekiField {
38
+ /**
39
+ * Whether the field is in an invalid/error state Applies data-invalid attribute for styling
40
+ * @default false
41
+ */
42
+ "invalid": boolean;
43
+ /**
44
+ * Layout orientation for the field - vertical: Label above control (default) - horizontal: Label beside control - responsive: Horizontal on wide screens, vertical on narrow
45
+ * @default 'vertical'
46
+ */
47
+ "orientation": 'vertical' | 'horizontal' | 'responsive';
48
+ }
49
+ interface SekiFieldDescription {
50
+ /**
51
+ * Get the component's ID Useful for dynamically setting aria-describedby attributes
52
+ */
53
+ "getId": () => Promise<string>;
54
+ /**
55
+ * Unique ID for this description element Auto-generated if not provided Used for aria-describedby references
56
+ */
57
+ "id"?: string;
58
+ }
59
+ interface SekiFieldError {
60
+ /**
61
+ * Get the component's ID Useful for dynamically setting aria-describedby attributes
62
+ */
63
+ "getId": () => Promise<string>;
64
+ /**
65
+ * Unique ID for this error element Auto-generated if not provided Used for aria-describedby references
66
+ */
67
+ "id"?: string;
68
+ /**
69
+ * Programmatically show/hide the error message
70
+ */
71
+ "setVisible": (visible: boolean) => Promise<void>;
72
+ /**
73
+ * Whether the error message is visible Controls display and announcement behavior
74
+ * @default true
75
+ */
76
+ "visible": boolean;
77
+ }
78
+ interface SekiFieldGroup {
79
+ /**
80
+ * Gap between fields Accepts any valid CSS length value (px, rem, em, etc.)
81
+ * @default '1rem'
82
+ */
83
+ "gap": string;
84
+ }
85
+ interface SekiFieldLabel {
86
+ /**
87
+ * ID of the form control this label is for Sets the `for` attribute on the label element
88
+ */
89
+ "htmlFor"?: string;
90
+ /**
91
+ * Whether the field is required Displays a required indicator (*) after the label text
92
+ * @default false
93
+ */
94
+ "required": boolean;
95
+ }
96
+ interface SekiFieldLegend {
97
+ }
98
+ interface SekiFieldset {
99
+ /**
100
+ * Whether all fields in the fieldset are disabled When true, cascades disabled state to all nested form controls
101
+ * @default false
102
+ */
103
+ "disabled": boolean;
104
+ }
37
105
  interface SekiInput {
38
106
  /**
39
107
  * ID of element describing this input
@@ -185,6 +253,48 @@ declare global {
185
253
  prototype: HTMLSekiButtonElement;
186
254
  new (): HTMLSekiButtonElement;
187
255
  };
256
+ interface HTMLSekiFieldElement extends Components.SekiField, HTMLStencilElement {
257
+ }
258
+ var HTMLSekiFieldElement: {
259
+ prototype: HTMLSekiFieldElement;
260
+ new (): HTMLSekiFieldElement;
261
+ };
262
+ interface HTMLSekiFieldDescriptionElement extends Components.SekiFieldDescription, HTMLStencilElement {
263
+ }
264
+ var HTMLSekiFieldDescriptionElement: {
265
+ prototype: HTMLSekiFieldDescriptionElement;
266
+ new (): HTMLSekiFieldDescriptionElement;
267
+ };
268
+ interface HTMLSekiFieldErrorElement extends Components.SekiFieldError, HTMLStencilElement {
269
+ }
270
+ var HTMLSekiFieldErrorElement: {
271
+ prototype: HTMLSekiFieldErrorElement;
272
+ new (): HTMLSekiFieldErrorElement;
273
+ };
274
+ interface HTMLSekiFieldGroupElement extends Components.SekiFieldGroup, HTMLStencilElement {
275
+ }
276
+ var HTMLSekiFieldGroupElement: {
277
+ prototype: HTMLSekiFieldGroupElement;
278
+ new (): HTMLSekiFieldGroupElement;
279
+ };
280
+ interface HTMLSekiFieldLabelElement extends Components.SekiFieldLabel, HTMLStencilElement {
281
+ }
282
+ var HTMLSekiFieldLabelElement: {
283
+ prototype: HTMLSekiFieldLabelElement;
284
+ new (): HTMLSekiFieldLabelElement;
285
+ };
286
+ interface HTMLSekiFieldLegendElement extends Components.SekiFieldLegend, HTMLStencilElement {
287
+ }
288
+ var HTMLSekiFieldLegendElement: {
289
+ prototype: HTMLSekiFieldLegendElement;
290
+ new (): HTMLSekiFieldLegendElement;
291
+ };
292
+ interface HTMLSekiFieldsetElement extends Components.SekiFieldset, HTMLStencilElement {
293
+ }
294
+ var HTMLSekiFieldsetElement: {
295
+ prototype: HTMLSekiFieldsetElement;
296
+ new (): HTMLSekiFieldsetElement;
297
+ };
188
298
  interface HTMLSekiInputElementEventMap {
189
299
  "sekiInput": { value: string; nativeEvent: Event };
190
300
  "sekiChange": { value: string; nativeEvent: Event };
@@ -243,6 +353,13 @@ declare global {
243
353
  };
244
354
  interface HTMLElementTagNameMap {
245
355
  "seki-button": HTMLSekiButtonElement;
356
+ "seki-field": HTMLSekiFieldElement;
357
+ "seki-field-description": HTMLSekiFieldDescriptionElement;
358
+ "seki-field-error": HTMLSekiFieldErrorElement;
359
+ "seki-field-group": HTMLSekiFieldGroupElement;
360
+ "seki-field-label": HTMLSekiFieldLabelElement;
361
+ "seki-field-legend": HTMLSekiFieldLegendElement;
362
+ "seki-fieldset": HTMLSekiFieldsetElement;
246
363
  "seki-input": HTMLSekiInputElement;
247
364
  "seki-skeleton": HTMLSekiSkeletonElement;
248
365
  "seki-switch": HTMLSekiSwitchElement;
@@ -275,6 +392,62 @@ declare namespace LocalJSX {
275
392
  */
276
393
  "variant"?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'destructive' | 'link';
277
394
  }
395
+ interface SekiField {
396
+ /**
397
+ * Whether the field is in an invalid/error state Applies data-invalid attribute for styling
398
+ * @default false
399
+ */
400
+ "invalid"?: boolean;
401
+ /**
402
+ * Layout orientation for the field - vertical: Label above control (default) - horizontal: Label beside control - responsive: Horizontal on wide screens, vertical on narrow
403
+ * @default 'vertical'
404
+ */
405
+ "orientation"?: 'vertical' | 'horizontal' | 'responsive';
406
+ }
407
+ interface SekiFieldDescription {
408
+ /**
409
+ * Unique ID for this description element Auto-generated if not provided Used for aria-describedby references
410
+ */
411
+ "id"?: string;
412
+ }
413
+ interface SekiFieldError {
414
+ /**
415
+ * Unique ID for this error element Auto-generated if not provided Used for aria-describedby references
416
+ */
417
+ "id"?: string;
418
+ /**
419
+ * Whether the error message is visible Controls display and announcement behavior
420
+ * @default true
421
+ */
422
+ "visible"?: boolean;
423
+ }
424
+ interface SekiFieldGroup {
425
+ /**
426
+ * Gap between fields Accepts any valid CSS length value (px, rem, em, etc.)
427
+ * @default '1rem'
428
+ */
429
+ "gap"?: string;
430
+ }
431
+ interface SekiFieldLabel {
432
+ /**
433
+ * ID of the form control this label is for Sets the `for` attribute on the label element
434
+ */
435
+ "htmlFor"?: string;
436
+ /**
437
+ * Whether the field is required Displays a required indicator (*) after the label text
438
+ * @default false
439
+ */
440
+ "required"?: boolean;
441
+ }
442
+ interface SekiFieldLegend {
443
+ }
444
+ interface SekiFieldset {
445
+ /**
446
+ * Whether all fields in the fieldset are disabled When true, cascades disabled state to all nested form controls
447
+ * @default false
448
+ */
449
+ "disabled"?: boolean;
450
+ }
278
451
  interface SekiInput {
279
452
  /**
280
453
  * ID of element describing this input
@@ -432,6 +605,13 @@ declare namespace LocalJSX {
432
605
  }
433
606
  interface IntrinsicElements {
434
607
  "seki-button": SekiButton;
608
+ "seki-field": SekiField;
609
+ "seki-field-description": SekiFieldDescription;
610
+ "seki-field-error": SekiFieldError;
611
+ "seki-field-group": SekiFieldGroup;
612
+ "seki-field-label": SekiFieldLabel;
613
+ "seki-field-legend": SekiFieldLegend;
614
+ "seki-fieldset": SekiFieldset;
435
615
  "seki-input": SekiInput;
436
616
  "seki-skeleton": SekiSkeleton;
437
617
  "seki-switch": SekiSwitch;
@@ -442,6 +622,13 @@ declare module "@stencil/core" {
442
622
  export namespace JSX {
443
623
  interface IntrinsicElements {
444
624
  "seki-button": LocalJSX.SekiButton & JSXBase.HTMLAttributes<HTMLSekiButtonElement>;
625
+ "seki-field": LocalJSX.SekiField & JSXBase.HTMLAttributes<HTMLSekiFieldElement>;
626
+ "seki-field-description": LocalJSX.SekiFieldDescription & JSXBase.HTMLAttributes<HTMLSekiFieldDescriptionElement>;
627
+ "seki-field-error": LocalJSX.SekiFieldError & JSXBase.HTMLAttributes<HTMLSekiFieldErrorElement>;
628
+ "seki-field-group": LocalJSX.SekiFieldGroup & JSXBase.HTMLAttributes<HTMLSekiFieldGroupElement>;
629
+ "seki-field-label": LocalJSX.SekiFieldLabel & JSXBase.HTMLAttributes<HTMLSekiFieldLabelElement>;
630
+ "seki-field-legend": LocalJSX.SekiFieldLegend & JSXBase.HTMLAttributes<HTMLSekiFieldLegendElement>;
631
+ "seki-fieldset": LocalJSX.SekiFieldset & JSXBase.HTMLAttributes<HTMLSekiFieldsetElement>;
445
632
  "seki-input": LocalJSX.SekiInput & JSXBase.HTMLAttributes<HTMLSekiInputElement>;
446
633
  /**
447
634
  * @component seki-skeleton
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sekiui/elements",
3
- "version": "0.0.35",
3
+ "version": "0.0.37",
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)=>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,H=(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,L=(e,n)=>{const o=(e=>{var n;return null==(n=t(e))?void 0:n.$hostElement$})(e);return{emit:e=>T(o,n,{bubbles:!0,composed:!0,cancelable:!0,detail:e})}},T=(e,t,n)=>{const o=u.ce(t,n);return e.dispatchEvent(o),o},z=(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("style"===t){for(const t in n)l&&null!=l[t]||(t.includes("-")?e.style.removeProperty(t):e.style[t]="");for(const t in l)n&&l[t]===n[t]||(t.includes("-")?e.style.setProperty(t,l[t]):e.style[t]=l[t])}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)}},F=/\s/,V=e=>("object"==typeof e&&e&&"baseVal"in e&&(e=e.baseVal),e&&"string"==typeof e?e.split(F):[]),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||z(o,e,l[e],void 0,n,t.o);for(const e of Y(Object.keys(i)))z(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(null!==o.u)l=o.$=c.document.createTextNode(o.u);else{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,s=t.u;null===s?(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?(null!==e.u&&(o.textContent=""),J(o,null,t,i,0,i.length-1)):!n&&null!==l&&K(l,0,l.length-1)):e.u!==s&&(o.data=s)},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.o|=256,e.k&&(e.k.map((([e,t])=>ue(o,e,t,n))),e.k=void 0),e.O.length&&e.O.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.C,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.M)?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.C,i=e.P||D(null,null),s=(e=>e&&e.v===U)(t)?t:R(null,null,t);if(A=o.tagName,l.N&&(s.p=s.p||{},l.N.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.P=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.R(t),o||ce()),e.S&&(e.S(),e.S=void 0),512&e.o&&$((()=>te(e,!1))),e.o&=-517},ce=()=>{$((()=>T(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.D.get(n),r=i.o,c=i.t;if(o=H(o,l.U[n][0]),(!(8&r)||void 0===s)&&o!==s&&(!Number.isNaN(s)||!Number.isNaN(o))&&(i.D.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.U){const r=Object.entries(null!=(l=n.U)?l:{});if(r.map((([e,[l]])=>{if(31&l||2&o&&32&l){const{get:i,set:r}=Object.getOwnPropertyDescriptor(s,e)||{};i&&(n.U[e][0]|=2048),r&&(n.U[e][0]|=4096),(1&o||!i)&&Object.defineProperty(s,e,{get(){{if(!(2048&n.U[e][0]))return((e,n)=>t(this).D.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.D.get(e)&&(i=s.D.get(e)),r.call(this,H(i,l)),void fe(this,e,i=32&l?this[e]:s.$hostElement$[e],n);{if(!(1&o&&4096&n.U[e][0]))return fe(this,e,i,n),void(1&o&&!s.t&&s.O.push((()=>{4096&n.U[e][0]&&s.t[e]!==s.D.get(e)&&(s.t[e]=i)})));const t=()=>{const t=s.t[e];!s.D.get(e)&&t&&s.D.set(e,t),s.t[e]=H(i,l),fe(this,e,s.t[e],n)};s.t?t():s.O.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.W)?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.W)?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.N)||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],U:n[2],A:n[3]};4&o.o&&(w=!0),o.U=n[2],o.A=n[3],o.N=[];const r=o.i,c=class extends HTMLElement{constructor(e){if(super(e),this.hasRegisteredEventListeners=!1,((e,t)=>{const n={o:0,$hostElement$:e,C:t,D:new Map,H:new Map};n.L=new Promise((e=>n.R=e)),e["s-p"]=[],e["s-rc"]=[],n.O=[];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(){const e=t(this);e&&(this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0,ve(this,e,o.A)),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.C,r=()=>{};if(1&n.o)ve(e,n,o.A),(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.U&&Object.entries(o.U).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.V)&&(n.V.map((e=>e())),n.V=void 0),(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.P)?void 0:e.$)instanceof Node&&!n.P.$.isConnected&&delete n.P.$}))}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.M)?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,t,n)=>{n&&c.document&&n.map((([n,o,l])=>{const i=e,s=ye(t,l),r=be(n);u.ael(i,o,s,r),(t.V=t.V||[]).push((()=>u.rel(i,o,s,r)))}))},ye=(e,t)=>n=>{var o;try{256&e.o?null==(o=e.t)||o[t](n):(e.k=e.k||[]).push([t,n])}catch(t){l(t,e.$hostElement$)}},be=e=>({passive:!!(1&e),capture:!!(2&e)}),$e=e=>u.M=e;export{U as H,me as b,L as c,R as h,a as p,n as r,$e as s}