solid-ui 3.1.3-11 → 3.1.3-12

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 (153) hide show
  1. package/README.md +2 -0
  2. package/dist/chunks/{account-CdqIoTsl.js → account-Bb818bGF.js} +20 -15
  3. package/dist/chunks/account-Bb818bGF.js.map +1 -0
  4. package/dist/chunks/{auth-D8B5yczR.js → auth-ClVI18ss.js} +90 -79
  5. package/dist/chunks/auth-ClVI18ss.js.map +1 -0
  6. package/dist/chunks/{avatar-DNGFKkhm.js → avatar-DGu_PX5y.js} +12 -4
  7. package/dist/chunks/avatar-DGu_PX5y.js.map +1 -0
  8. package/dist/chunks/{button-oanBb_ha.js → button-B9-nlEpz.js} +2 -2
  9. package/dist/chunks/{button-oanBb_ha.js.map → button-B9-nlEpz.js.map} +1 -1
  10. package/dist/chunks/{combobox-Dav1bNHS.js → combobox-DrT0Nb-A.js} +3 -3
  11. package/dist/chunks/combobox-DrT0Nb-A.js.map +1 -0
  12. package/dist/chunks/{dialog-Ujvm11_B.js → dialog-kyHgc-uy.js} +2 -2
  13. package/dist/chunks/{dialog-Ujvm11_B.js.map → dialog-kyHgc-uy.js.map} +1 -1
  14. package/dist/chunks/{guard-DZGvf4tS.js → guard-DEqOFEs4.js} +78 -52
  15. package/dist/chunks/guard-DEqOFEs4.js.map +1 -0
  16. package/dist/chunks/{login-button-Ta3tkpn4.js → login-button-Czm-E9Na.js} +4 -4
  17. package/dist/chunks/{login-button-Ta3tkpn4.js.map → login-button-Czm-E9Na.js.map} +1 -1
  18. package/dist/chunks/{logout-button-Db6VmUmJ.js → logout-button-BrR_jOhK.js} +4 -4
  19. package/dist/chunks/{logout-button-Db6VmUmJ.js.map → logout-button-BrR_jOhK.js.map} +1 -1
  20. package/dist/chunks/{menu-CQEXqNO6.js → menu-1PG19fCC.js} +3 -3
  21. package/dist/chunks/{menu-CQEXqNO6.js.map → menu-1PG19fCC.js.map} +1 -1
  22. package/dist/chunks/{menu-item-BHJ4xljI.js → menu-item-C9uErV38.js} +71 -54
  23. package/dist/chunks/menu-item-C9uErV38.js.map +1 -0
  24. package/dist/chunks/{provider-CoVkCkMs.js → provider-qd_4VaKB.js} +5 -2
  25. package/dist/chunks/provider-qd_4VaKB.js.map +1 -0
  26. package/dist/chunks/{signup-button-wO4uoqUi.js → signup-button-BnA5p-uJ.js} +4 -4
  27. package/dist/chunks/{signup-button-wO4uoqUi.js.map → signup-button-BnA5p-uJ.js.map} +1 -1
  28. package/dist/chunks/{src-B9CXYA44.js → src-DJOb1wMf.js} +2 -2
  29. package/dist/chunks/{src-B9CXYA44.js.map → src-DJOb1wMf.js.map} +1 -1
  30. package/dist/components/account/Account.cjs.js +6 -4
  31. package/dist/components/account/Account.cjs.js.map +1 -1
  32. package/dist/components/account/Account.d.ts +2 -0
  33. package/dist/components/account/Account.d.ts.map +1 -1
  34. package/dist/components/account/Account.esm.js +10 -4
  35. package/dist/components/account/Account.esm.js.map +1 -1
  36. package/dist/components/account/Account.stories.d.ts +10 -2
  37. package/dist/components/account/Account.stories.d.ts.map +1 -1
  38. package/dist/components/account/Account.styles.cjs.js +1 -1
  39. package/dist/components/account/Account.styles.cjs.js.map +1 -1
  40. package/dist/components/account/Account.styles.esm.js +1 -1
  41. package/dist/components/account/Account.styles.esm.js.map +1 -1
  42. package/dist/components/account.js +1 -1
  43. package/dist/components/all.cjs.js +1 -0
  44. package/dist/components/all.d.ts +2 -0
  45. package/dist/components/all.d.ts.map +1 -0
  46. package/dist/components/all.esm.js +24 -0
  47. package/dist/components/avatar/Avatar.cjs.js +1 -1
  48. package/dist/components/avatar/Avatar.cjs.js.map +1 -1
  49. package/dist/components/avatar/Avatar.d.ts +3 -0
  50. package/dist/components/avatar/Avatar.d.ts.map +1 -1
  51. package/dist/components/avatar/Avatar.esm.js +9 -1
  52. package/dist/components/avatar/Avatar.esm.js.map +1 -1
  53. package/dist/components/avatar/Avatar.stories.d.ts +4 -4
  54. package/dist/components/avatar.js +1 -1
  55. package/dist/components/button/Button.styles.cjs.js +1 -1
  56. package/dist/components/button/Button.styles.cjs.js.map +1 -1
  57. package/dist/components/button/Button.styles.esm.js +1 -1
  58. package/dist/components/button/Button.styles.esm.js.map +1 -1
  59. package/dist/components/button.js +1 -1
  60. package/dist/components/combobox/Combobox.cjs.js +1 -1
  61. package/dist/components/combobox/Combobox.cjs.js.map +1 -1
  62. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  63. package/dist/components/combobox/Combobox.esm.js +1 -1
  64. package/dist/components/combobox/Combobox.esm.js.map +1 -1
  65. package/dist/components/combobox/Combobox.styles.cjs.js +1 -1
  66. package/dist/components/combobox/Combobox.styles.cjs.js.map +1 -1
  67. package/dist/components/combobox/Combobox.styles.esm.js +1 -1
  68. package/dist/components/combobox/Combobox.styles.esm.js.map +1 -1
  69. package/dist/components/combobox.js +1 -1
  70. package/dist/components/dialog.js +1 -1
  71. package/dist/components/guard/Guard.cjs.js +4 -2
  72. package/dist/components/guard/Guard.cjs.js.map +1 -1
  73. package/dist/components/guard/Guard.d.ts +7 -0
  74. package/dist/components/guard/Guard.d.ts.map +1 -1
  75. package/dist/components/guard/Guard.esm.js +74 -48
  76. package/dist/components/guard/Guard.esm.js.map +1 -1
  77. package/dist/components/guard/Guard.stories.d.ts +14 -3
  78. package/dist/components/guard/Guard.stories.d.ts.map +1 -1
  79. package/dist/components/guard.js +1 -1
  80. package/dist/components/index.cjs.js +1 -1
  81. package/dist/components/index.d.ts +0 -1
  82. package/dist/components/index.d.ts.map +1 -1
  83. package/dist/components/index.esm.js +1 -24
  84. package/dist/components/login-button.js +1 -1
  85. package/dist/components/login-modal.js +1 -1
  86. package/dist/components/logout-button.js +1 -1
  87. package/dist/components/menu/Menu.cjs.js +1 -1
  88. package/dist/components/menu/Menu.cjs.js.map +1 -1
  89. package/dist/components/menu/Menu.esm.js +1 -1
  90. package/dist/components/menu/Menu.esm.js.map +1 -1
  91. package/dist/components/menu/Menu.stories.d.ts.map +1 -1
  92. package/dist/components/menu/Menu.styles.cjs.js +1 -1
  93. package/dist/components/menu/Menu.styles.cjs.js.map +1 -1
  94. package/dist/components/menu/Menu.styles.esm.js +1 -1
  95. package/dist/components/menu/Menu.styles.esm.js.map +1 -1
  96. package/dist/components/menu-item/MenuItem.cjs.js +4 -4
  97. package/dist/components/menu-item/MenuItem.cjs.js.map +1 -1
  98. package/dist/components/menu-item/MenuItem.d.ts +1 -0
  99. package/dist/components/menu-item/MenuItem.d.ts.map +1 -1
  100. package/dist/components/menu-item/MenuItem.esm.js +72 -55
  101. package/dist/components/menu-item/MenuItem.esm.js.map +1 -1
  102. package/dist/components/menu-item/MenuItem.styles.cjs.js +1 -1
  103. package/dist/components/menu-item/MenuItem.styles.cjs.js.map +1 -1
  104. package/dist/components/menu-item/MenuItem.styles.esm.js +1 -1
  105. package/dist/components/menu-item/MenuItem.styles.esm.js.map +1 -1
  106. package/dist/components/menu-item.js +1 -1
  107. package/dist/components/menu.js +1 -1
  108. package/dist/components/provider/Provider.cjs.js +1 -1
  109. package/dist/components/provider/Provider.cjs.js.map +1 -1
  110. package/dist/components/provider/Provider.d.ts +1 -0
  111. package/dist/components/provider/Provider.d.ts.map +1 -1
  112. package/dist/components/provider/Provider.esm.js +3 -0
  113. package/dist/components/provider/Provider.esm.js.map +1 -1
  114. package/dist/components/provider.js +1 -1
  115. package/dist/components/signup-button.js +1 -1
  116. package/dist/components.js +14 -14
  117. package/dist/index.js +3 -3
  118. package/dist/lib/auth/NoopAuth.cjs.js +1 -1
  119. package/dist/lib/auth/NoopAuth.cjs.js.map +1 -1
  120. package/dist/lib/auth/NoopAuth.d.ts +2 -2
  121. package/dist/lib/auth/NoopAuth.d.ts.map +1 -1
  122. package/dist/lib/auth/NoopAuth.esm.js +2 -3
  123. package/dist/lib/auth/NoopAuth.esm.js.map +1 -1
  124. package/dist/lib/auth/SolidAuth.cjs.js +1 -1
  125. package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
  126. package/dist/lib/auth/SolidAuth.d.ts +6 -0
  127. package/dist/lib/auth/SolidAuth.d.ts.map +1 -1
  128. package/dist/lib/auth/SolidAuth.esm.js +28 -16
  129. package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
  130. package/dist/lib/auth/context.cjs.js.map +1 -1
  131. package/dist/lib/auth/context.d.ts +2 -0
  132. package/dist/lib/auth/context.d.ts.map +1 -1
  133. package/dist/lib/auth/context.esm.js.map +1 -1
  134. package/dist/loader.js +3 -3
  135. package/dist/solid-ui.js +92 -88
  136. package/dist/solid-ui.min.js +92 -88
  137. package/dist/solid-ui.min.js.map +1 -1
  138. package/dist/storybook/auth/StorybookAuth.d.ts +1 -0
  139. package/dist/storybook/auth/StorybookAuth.d.ts.map +1 -1
  140. package/dist/storybook/components/StorybookProvider.d.ts +1 -0
  141. package/dist/storybook/components/StorybookProvider.d.ts.map +1 -1
  142. package/dist/storybook/helpers.d.ts.map +1 -1
  143. package/dist/storybook/stubs.d.ts +7 -3
  144. package/dist/storybook/stubs.d.ts.map +1 -1
  145. package/dist/theme.css +1 -1
  146. package/package.json +1 -1
  147. package/dist/chunks/account-CdqIoTsl.js.map +0 -1
  148. package/dist/chunks/auth-D8B5yczR.js.map +0 -1
  149. package/dist/chunks/avatar-DNGFKkhm.js.map +0 -1
  150. package/dist/chunks/combobox-Dav1bNHS.js.map +0 -1
  151. package/dist/chunks/guard-DZGvf4tS.js.map +0 -1
  152. package/dist/chunks/menu-item-BHJ4xljI.js.map +0 -1
  153. package/dist/chunks/provider-CoVkCkMs.js.map +0 -1
@@ -107,7 +107,7 @@ var m = class extends HTMLElement {
107
107
  customElements.get("icon-svg-spinners-3-dots-fade") || customElements.define("icon-svg-spinners-3-dots-fade", m);
108
108
  //#endregion
109
109
  //#region src/components/combobox/Combobox.styles.css
110
- var h = r`:host{flex-direction:column;align-items:flex-start;gap:5px;display:inline-flex;& label{color:var(--solid-ui-color-gray-600);font-size:var(--solid-ui-font-size-sm);font-weight:400}& wa-popup{width:100%;display:block}& wa-popup::part(popup){border:1px solid var(--solid-ui-color-gray-100);background:#fff;border-radius:5px;overflow:hidden;box-shadow:0 4px 16px #00000059}& .input-wrapper{width:100%;position:relative;& input{border:1px solid var(--solid-ui-color-gray-400);border-radius:5px;width:100%;padding:10px 40px 10px 10px}& icon-lucide-chevron-down{color:var(--solid-ui-color-gray-500);width:var(--solid-ui-font-size-lg);height:var(--solid-ui-font-size-lg);pointer-events:none;position:absolute;top:50%;right:15px;transform:translateY(-50%)}}& .listbox{max-height:inherit;flex-direction:column;display:flex;overflow:auto;& [role=option],& .non-selectable-option{color:var(--solid-ui-color-gray-700);padding:12px 8px}& [role=option]{border-bottom:1px solid var(--solid-ui-color-gray-100);cursor:pointer;&:hover,&[data-active]{background:#0000000d}}& .non-selectable-option{justify-content:center;align-items:center;display:flex;& icon-svg-spinners-3-dots-fade{width:2rem}& .message--error{color:var(--solid-ui-color-error)}}}}`, g, _, v, y, b, x, S, C, w, T, E, D, O, k, A, j, M, N, P, ee, te, ne, re, ie, ae, oe, se, F, I, L, R, z, B, V, H, U, W, G, K, ce, le, ue, de, fe, pe, me, he, ge, _e, ve, ye, be, xe, Se, Ce, we, Te, Ee;
110
+ var h = r`:host{flex-direction:column;align-items:flex-start;gap:5px;display:inline-flex;& label{color:var(--solid-ui-color-gray-600);font-size:var(--solid-ui-font-size-sm);font-weight:400}& wa-popup{width:100%;display:block}& wa-popup::part(popup){border:1px solid var(--solid-ui-color-gray-100);background:#fff;border-radius:5px;padding:4px;overflow:hidden;box-shadow:0 4px 16px #00000059}& .input-wrapper{width:100%;position:relative;& input{border:1px solid var(--solid-ui-color-gray-400);border-radius:5px;width:100%;padding:10px 40px 10px 10px}& icon-lucide-chevron-down{color:var(--solid-ui-color-gray-500);width:var(--solid-ui-font-size-lg);height:var(--solid-ui-font-size-lg);pointer-events:none;position:absolute;top:50%;right:15px;transform:translateY(-50%)}}& .listbox{max-height:inherit;flex-direction:column;gap:2px;display:flex;overflow:auto;& [role=option],& .non-selectable-option{color:var(--solid-ui-color-gray-700);border-radius:5px;padding:12px 8px}& [role=option]{cursor:pointer;&:hover,&[data-active]{background:var(--solid-ui-color-primary-hover)}&[aria-selected=true]{background:var(--solid-ui-color-primary-selected)}}& .non-selectable-option{justify-content:center;align-items:center;display:flex;& icon-svg-spinners-3-dots-fade{width:2rem}& .message--error{color:var(--solid-ui-color-error)}}}}`, g, _, v, y, b, x, S, C, w, T, E, D, O, k, A, j, M, N, P, ee, te, ne, re, ie, ae, oe, se, F, I, L, R, z, B, V, H, U, W, G, K, ce, le, ue, de, fe, pe, me, he, ge, _e, ve, ye, be, xe, Se, Ce, we, Te, Ee;
111
111
  function q(e, t, n) {
112
112
  De(e, t), t.set(e, n);
113
113
  }
@@ -489,7 +489,7 @@ new (Te = (v = /*#__PURE__*/ new WeakMap(), y = /*#__PURE__*/ new WeakMap(), b =
489
489
  ${e.map((e, t) => e.selectable === !1 ? i`<div class="non-selectable-option">${e.template ?? e.label}</div>` : i`<div
490
490
  id=${this.getOptionId(t)}
491
491
  role="option"
492
- aria-selected=${this.open && t === this.activeIndex ? "true" : "false"}
492
+ aria-selected=${e.value === this.value ? "true" : "false"}
493
493
  data-active=${t === this.activeIndex || a}
494
494
  @mousemove=${() => this.setActiveIndex(t)}
495
495
  >
@@ -731,4 +731,4 @@ var Fe = $;
731
731
  //#endregion
732
732
  export { $ as n, Pe as r, Fe as t };
733
733
 
734
- //# sourceMappingURL=combobox-Dav1bNHS.js.map
734
+ //# sourceMappingURL=combobox-DrT0Nb-A.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combobox-DrT0Nb-A.js","names":["t","debounce","delay","callback","timeout","debouncedCallback","args","cancel","setTimeout","clearTimeout","customElement","WebComponent","Task","html","nothing","property","query","state","debounce","FormControlTrait","styles","AsyncOptionsInfo","Error","defineAsyncComboboxOptionsProvider","provider","_classDecs","_Combobox","_Combobox2","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_ref","_labelDecs","type","String","reflect","_nameDecs","_valueDecs","_placeholderDecs","_requiredDecs","Boolean","_selectOnlyDecs","attribute","_asyncOptionsUrlDecs","_asyncOptionsResultsFieldDecs","_asyncOptionsLabelFieldDecs","_asyncOptionsValueFieldDecs","_asyncOptionsProviderDecs","Function","_optionsFallbackDecs","Array","_inputElementDecs","_filterDecs","_displayValueDecs","_openDecs","_activeIndexDecs","_Combobox3","Combobox","_classPrivateFieldGet","label","v","_classPrivateFieldSet","name","value","placeholder","required","selectOnly","asyncOptionsUrl","asyncOptionsResultsField","asyncOptionsLabelField","asyncOptionsValueField","asyncOptionsProvider","optionsFallback","inputElement","filter","displayValue","open","activeIndex","constructor","_classPrivateFieldInitSpec","_initProto","_init_label","_init_name","_init_value","_init_placeholder","_init_required","_init_selectOnly","_init_asyncOptionsUrl","_init_asyncOptionsResultsField","_init_asyncOptionsLabelField","_init_asyncOptionsValueField","_init_asyncOptionsProvider","_init_optionsFallback","_init_inputElement","_init_filter","_init_displayValue","_init_open","_init_activeIndex","_defineProperty","event","path","composedPath","includes","hide","controlTrait","addTrait","getControlElement","getInternals","listboxId","controlId","selectedOption","_selectedOption","disconnectedCallback","removeOpenListeners","willUpdate","changedProperties","has","updateAsyncOptionsTask","options","getFilteredOptions","option","find","selectable","optionLabel","updateDisplayValue","getInitialActiveIndex","undefined","render","activeOption","activeDescendant","getOptionId","accessibleName","renderLabel","onAnchorMouseDown","labelId","onInputKeyDown","onInputFocus","onInput","onListboxMouseDown","map","index","setActiveIndex","template","asyncOptionsTask","initial","complete","pending","error","isError","message","Object","getOptionsFromDOM","toLowerCase","querySelectorAll","from","textContent","selectedIndex","findIndex","length","getNextIndex","currentIndex","direction","updateDebouncedFilter","results","response","fetch","replace","encodeURIComponent","data","json","labelField","valueField","result","show","filteredOptions","focusLast","addOpenListeners","requestAnimationFrame","scrollActiveOptionIntoView","cancel","selectOption","previousValue","setValue","focus","preventScroll","dispatchEvent","CustomEvent","bubbles","composed","detail","shadowRoot","querySelector","scrollIntoView","block","openListenersAttached","document","addEventListener","handleDocumentFocusIn","handleDocumentMouseDown","root","getRootNode","removeEventListener","target","preventDefault","openPopupFromKey","key","onSubmit","stopPropagation","HTMLElement","optionElement","closest","optionId","id","Number","parseInt","e","c","_initClass","_applyDecs","_Class","_identity","default","Combobox"],"sources":["../../node_modules/@lit/task/task.js","../../src/lib/timing.ts","../../src/components/combobox/Combobox.styles.css","../../src/components/combobox/Combobox.ts","../../src/components/combobox/index.ts"],"sourcesContent":["import{notEqual as t}from\"@lit/reactive-element\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const s={INITIAL:0,PENDING:1,COMPLETE:2,ERROR:3},i=Symbol();class h{get taskComplete(){return this.t||(1===this.i?this.t=new Promise(((t,s)=>{this.o=t,this.h=s})):3===this.i?this.t=Promise.reject(this.l):this.t=Promise.resolve(this.u)),this.t}constructor(t,s,i){this.p=0,this.i=0,(this._=t).addController(this);const h=\"object\"==typeof s?s:{task:s,args:i};this.v=h.task,this.j=h.args,this.m=h.argsEqual??r,this.k=h.onComplete,this.A=h.onError,this.autoRun=h.autoRun??!0,\"initialValue\"in h&&(this.u=h.initialValue,this.i=2,this.O=this.T?.())}hostUpdate(){!0===this.autoRun&&this.S()}hostUpdated(){\"afterUpdate\"===this.autoRun&&this.S()}T(){if(void 0===this.j)return;const t=this.j();if(!Array.isArray(t))throw Error(\"The args function must return an array\");return t}async S(){const t=this.T(),s=this.O;this.O=t,t===s||void 0===t||void 0!==s&&this.m(s,t)||await this.run(t)}async run(t){let s,h;t??=this.T(),this.O=t,1===this.i?this.q?.abort():(this.t=void 0,this.o=void 0,this.h=void 0),this.i=1,\"afterUpdate\"===this.autoRun?queueMicrotask((()=>this._.requestUpdate())):this._.requestUpdate();const r=++this.p;this.q=new AbortController;let e=!1;try{s=await this.v(t,{signal:this.q.signal})}catch(t){e=!0,h=t}if(this.p===r){if(s===i)this.i=0;else{if(!1===e){try{this.k?.(s)}catch{}this.i=2,this.o?.(s)}else{try{this.A?.(h)}catch{}this.i=3,this.h?.(h)}this.u=s,this.l=h}this._.requestUpdate()}}abort(t){1===this.i&&this.q?.abort(t)}get value(){return this.u}get error(){return this.l}get status(){return this.i}render(t){switch(this.i){case 0:return t.initial?.();case 1:return t.pending?.();case 2:return t.complete?.(this.value);case 3:return t.error?.(this.error);default:throw Error(\"Unexpected status: \"+this.i)}}}const r=(s,i)=>s===i||s.length===i.length&&s.every(((s,h)=>!t(s,i[h])));export{h as Task,s as TaskStatus,i as initialState,r as shallowArrayEquals};\n//# sourceMappingURL=task.js.map\n","export interface DebouncedFunction<Args extends any[]> {\n (...args: Args): void;\n cancel(): void;\n}\n\nexport function debounce<Args extends any[]> (\n delay: number,\n callback: (...args: Args) => unknown\n): DebouncedFunction<Args> {\n let timeout: ReturnType<typeof setTimeout> | null = null\n\n const debouncedCallback: DebouncedFunction<Args> = (...args: Args) => {\n debouncedCallback.cancel()\n timeout = setTimeout(() => callback(...args), delay)\n }\n\n debouncedCallback.cancel = () => {\n if (timeout === null) {\n return\n }\n\n clearTimeout(timeout)\n timeout = null\n }\n\n return debouncedCallback\n}\n",":host {\n display: inline-flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 5px;\n\n label {\n color: var(--solid-ui-color-gray-600);\n font-size: var(--solid-ui-font-size-sm);\n font-weight: 400;\n }\n\n wa-popup {\n display: block;\n width: 100%;\n }\n\n wa-popup::part(popup) {\n background: white;\n border: 1px solid var(--solid-ui-color-gray-100);\n border-radius: 5px;\n box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.35);\n overflow: hidden;\n padding: 4px;\n }\n\n .input-wrapper {\n position: relative;\n width: 100%;\n\n input {\n border: 1px solid var(--solid-ui-color-gray-400);\n border-radius: 5px;\n padding: 10px;\n padding-right: 40px;\n width: 100%;\n }\n\n icon-lucide-chevron-down {\n position: absolute;\n right: 15px;\n top: 50%;\n transform: translateY(-50%);\n color: var(--solid-ui-color-gray-500);\n width: var(--solid-ui-font-size-lg);\n height: var(--solid-ui-font-size-lg);\n pointer-events: none;\n }\n }\n\n .listbox {\n display: flex;\n flex-direction: column;\n gap: 2px;\n max-height: inherit;\n overflow: auto;\n\n [role=\"option\"], .non-selectable-option {\n color: var(--solid-ui-color-gray-700);\n padding: 12px 8px;\n border-radius: 5px;\n }\n\n [role=\"option\"] {\n cursor: pointer;\n\n &:hover,\n &[data-active] {\n background: var(--solid-ui-color-primary-hover);\n }\n\n &[aria-selected=\"true\"] {\n background: var(--solid-ui-color-primary-selected);\n }\n }\n\n .non-selectable-option {\n display: flex;\n justify-content: center;\n align-items: center;\n\n icon-svg-spinners-3-dots-fade {\n width: 2rem;\n }\n\n .message--error {\n color: var(--solid-ui-color-error);\n }\n }\n }\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { Task } from '@lit/task'\nimport { html, nothing, TemplateResult, type PropertyValues } from 'lit'\nimport { property, query, state } from 'lit/decorators.js'\nimport { debounce } from '@/lib/timing'\nimport FormControlTrait from '@/lib/components/traits/FormControlTrait'\nimport type ComboboxOption from '@/components/combobox-option/ComboboxOption'\n\nimport '~icons/lucide/chevron-down'\nimport '~icons/svg-spinners/3-dots-fade'\nimport '@awesome.me/webawesome/dist/components/popup/popup.js'\n\nimport styles from './Combobox.styles.css'\n\nclass AsyncOptionsInfo extends Error {}\n\nexport type ComboboxOptionData = {\n value: unknown;\n label: string;\n template?: TemplateResult;\n selectable?: boolean;\n}\n\nexport type ComboboxChangeEvent = CustomEvent<{ option: ComboboxOptionData }>\n\nexport type AsyncComboboxOptionsProvider = (query: string) => Promise<ComboboxOptionData[]>\n\nexport function defineAsyncComboboxOptionsProvider<T extends AsyncComboboxOptionsProvider> (provider: T): T {\n return provider\n}\n\n@customElement('solid-ui-combobox')\nexport default class Combobox extends WebComponent {\n static styles = styles\n static formAssociated = true\n\n @property({ type: String, reflect: true })\n accessor label = ''\n\n @property({ type: String, reflect: true })\n accessor name = ''\n\n @property()\n accessor value = ''\n\n @property({ type: String, reflect: true })\n accessor placeholder = ''\n\n @property({ type: Boolean, reflect: true })\n accessor required = false\n\n @property({ type: Boolean, reflect: true, attribute: 'select-only' })\n accessor selectOnly = false\n\n @property({ type: String, attribute: 'async-options-url' })\n accessor asyncOptionsUrl = ''\n\n @property({ type: String, attribute: 'async-options-results-field' })\n accessor asyncOptionsResultsField = ''\n\n @property({ type: String, attribute: 'async-options-label-field' })\n accessor asyncOptionsLabelField = ''\n\n @property({ type: String, attribute: 'async-options-value-field' })\n accessor asyncOptionsValueField = ''\n\n @property({ type: Function })\n accessor asyncOptionsProvider: AsyncComboboxOptionsProvider | null = null\n\n @property({ type: Array })\n accessor optionsFallback: ComboboxOptionData[] | null = null\n\n @query('input')\n private accessor inputElement: HTMLInputElement | null = null\n\n @state()\n private accessor filter = ''\n\n @state()\n private accessor displayValue = ''\n\n @state()\n private accessor open = false\n\n @state()\n private accessor activeIndex = -1\n\n private controlTrait: FormControlTrait\n private openListenersAttached = false\n private updateDebouncedFilter = debounce(300, (value) => (this.filter = value))\n private asyncOptionsTask?: Task<readonly [string], ComboboxOptionData[]>\n private _selectedOption: ComboboxOptionData | undefined\n private readonly listboxId: string\n\n constructor () {\n super()\n\n this.controlTrait = this.addTrait(\n new FormControlTrait(this, {\n getControlElement: () => this.inputElement,\n getInternals: () => this.getInternals(),\n })\n )\n\n this.listboxId = `listbox-${this.controlTrait.controlId}`\n }\n\n get selectedOption (): ComboboxOptionData | undefined {\n return this._selectedOption\n }\n\n disconnectedCallback () {\n super.disconnectedCallback()\n\n this.removeOpenListeners()\n }\n\n protected willUpdate (changedProperties: PropertyValues<this>) {\n super.willUpdate(changedProperties)\n\n if (changedProperties.has('asyncOptionsUrl') || changedProperties.has('asyncOptionsProvider')) {\n this.updateAsyncOptionsTask()\n }\n\n if (changedProperties.has('value')) {\n const options = this.getFilteredOptions()\n const option = options.find((option) => option.selectable !== false && option.value === this.value) ??\n this.optionsFallback?.find((option) => option.value === this.value)\n const optionLabel = option?.selectable !== false && option?.label\n\n this.updateDisplayValue(optionLabel || this.value)\n\n if (this.open) {\n this.activeIndex = this.getInitialActiveIndex(options)\n }\n\n if (this._selectedOption && this._selectedOption.value !== this.value) {\n this._selectedOption = undefined\n }\n }\n }\n\n protected render () {\n const options = this.getFilteredOptions()\n const activeOption =\n this.open && this.activeIndex >= 0 ? options[this.activeIndex] : undefined\n const activeDescendant =\n activeOption !== undefined ? this.getOptionId(this.activeIndex) : undefined\n const accessibleName = this.placeholder || 'Combobox'\n\n return html`\n ${this.controlTrait.renderLabel()}\n <wa-popup\n placement=\"bottom\"\n flip\n shift\n sync=\"width\"\n auto-size=\"vertical\"\n auto-size-padding=\"10\"\n ?active=${this.open}\n >\n <div class=\"input-wrapper\" slot=\"anchor\" @mousedown=${this.onAnchorMouseDown}>\n <input\n id=\"${this.controlTrait.controlId}\"\n type=\"text\"\n name=${this.name}\n placeholder=${this.placeholder}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n aria-expanded=${this.open ? 'true' : 'false'}\n aria-controls=${this.listboxId}\n aria-activedescendant=${activeDescendant ?? nothing}\n aria-labelledby=${this.label ? this.controlTrait.labelId : nothing}\n aria-label=${this.label ? nothing : accessibleName}\n aria-required=${this.required ? 'true' : nothing}\n autocomplete=\"off\"\n spellcheck=\"false\"\n ?required=${this.required}\n .value=${this.displayValue}\n @keydown=${this.onInputKeyDown}\n @focus=${this.onInputFocus}\n @input=${() => this.selectOnly ? this.updateDisplayValue(this.inputElement?.value ?? '') : this.controlTrait.onInput()}\n />\n <icon-lucide-chevron-down></icon-lucide-chevron-down>\n </div>\n <div\n id=${this.listboxId}\n class=\"listbox\"\n role=\"listbox\"\n aria-orientation=\"vertical\"\n aria-labelledby=${this.label ? this.controlTrait.labelId : nothing}\n aria-label=${this.label ? nothing : accessibleName}\n ?hidden=${!this.open}\n @mousedown=${this.onListboxMouseDown}\n >\n ${options.map((option, index) => {\n return option.selectable !== false\n ? html`<div\n id=${this.getOptionId(index)}\n role=\"option\"\n aria-selected=${option.value === this.value ? 'true' : 'false'}\n data-active=${index === this.activeIndex || nothing}\n @mousemove=${() => this.setActiveIndex(index)}\n >\n ${option.template ?? option.label}\n </div>`\n : html`<div class=\"non-selectable-option\">${option.template ?? option.label}</div>`\n })}\n </div>\n </wa-popup>\n `\n }\n\n private getFilteredOptions (): ComboboxOptionData[] {\n if (this.asyncOptionsTask) {\n return this.asyncOptionsTask.render({\n initial: () => this.optionsFallback ?? [],\n complete: (options) => options,\n pending: () => [\n {\n value: '',\n label: 'Loading...',\n template: html`<icon-svg-spinners-3-dots-fade></icon-svg-spinners-3-dots-fade>`,\n selectable: false\n } as const,\n ],\n error: (error) => {\n const isError = !(error instanceof AsyncOptionsInfo)\n const message = Object(error).message ?? 'Something went wrong'\n\n return [\n {\n value: '',\n label: message,\n template: html`<span class=\"message message--${isError ? 'error' : 'info'}\">${message}</span>`,\n selectable: false\n } as const,\n ]\n },\n })\n }\n\n return this.getOptionsFromDOM().filter((option) =>\n String(option.label).toLowerCase().includes(this.filter)\n )\n }\n\n private getOptionsFromDOM (): ComboboxOptionData[] {\n const options = this.querySelectorAll<ComboboxOption>(\n 'solid-ui-combobox-option'\n )\n\n return Array.from(options).map((option) => ({\n value: option.value,\n label: option.textContent ?? '',\n }))\n }\n\n private getOptionId (index: number): string {\n return `${this.listboxId}-option-${index}`\n }\n\n private getInitialActiveIndex (options: ComboboxOptionData[]): number {\n const selectedIndex = options.findIndex((option) => option.value === this.value)\n\n if (selectedIndex >= 0) {\n return selectedIndex\n }\n\n return options.length > 0 ? 0 : -1\n }\n\n private getNextIndex (\n currentIndex: number,\n options: ComboboxOptionData[],\n direction: 1 | -1\n ): number {\n if (options.length === 0) {\n return -1\n }\n\n return (currentIndex + direction + options.length) % options.length\n }\n\n private setActiveIndex (index: number) {\n this.activeIndex = index\n }\n\n private updateDisplayValue (value: unknown) {\n this.displayValue = String(value)\n\n if (this.open) {\n const filter = this.displayValue.toLowerCase()\n\n if (this.asyncOptionsTask) {\n this.updateDebouncedFilter(filter)\n } else {\n this.filter = filter\n }\n }\n }\n\n private updateAsyncOptionsTask () {\n if (!this.asyncOptionsUrl && !this.asyncOptionsProvider) {\n this.asyncOptionsTask = undefined\n\n return\n }\n\n this.asyncOptionsTask ??= new Task(\n this,\n async ([filter]) => {\n if (this.asyncOptionsProvider) {\n const results = await this.asyncOptionsProvider(filter)\n\n if (results.length === 0) {\n throw new AsyncOptionsInfo('No results found')\n }\n\n return results\n }\n\n const response = await fetch(\n this.asyncOptionsUrl.replace('%search%', encodeURIComponent(filter))\n )\n const data = await response.json()\n const results = Array.from(\n this.asyncOptionsResultsField\n ? data[this.asyncOptionsResultsField]\n : data\n )\n\n if (results.length === 0) {\n throw new AsyncOptionsInfo('No results found')\n }\n\n const labelField = this.asyncOptionsLabelField || 'label'\n const valueField = this.asyncOptionsValueField || 'value'\n\n return results.map((result) => ({\n label: String(Object(result)[labelField]),\n value: Object(result)[valueField],\n }))\n },\n () => [this.filter]\n )\n }\n\n private show (options?: { focusLast?: boolean }) {\n if (this.open) {\n return\n }\n\n const filteredOptions = this.getFilteredOptions()\n\n if (filteredOptions.length === 0) {\n return\n }\n\n this.open = true\n this.activeIndex = options?.focusLast\n ? filteredOptions.length - 1\n : this.getInitialActiveIndex(filteredOptions)\n this.addOpenListeners()\n\n requestAnimationFrame(() => this.scrollActiveOptionIntoView())\n }\n\n private hide () {\n if (!this.open) {\n return\n }\n\n this.filter = ''\n this.open = false\n this.activeIndex = -1\n this.removeOpenListeners()\n this.updateDebouncedFilter.cancel()\n }\n\n private selectOption (option: ComboboxOptionData) {\n const previousValue = this.value\n\n this._selectedOption = option\n\n this.hide()\n this.controlTrait.setValue(option.value)\n this.inputElement?.focus({ preventScroll: true })\n this.dispatchEvent(new CustomEvent('change', { bubbles: true, composed: true, detail: { option } }))\n\n if (previousValue === this.value) {\n this.updateDisplayValue(option.label)\n }\n }\n\n private scrollActiveOptionIntoView () {\n if (this.activeIndex < 0) {\n return\n }\n\n this.shadowRoot\n ?.querySelector(`#${this.getOptionId(this.activeIndex)}`)\n ?.scrollIntoView({ block: 'nearest' })\n }\n\n private addOpenListeners () {\n if (this.openListenersAttached) {\n return\n }\n\n document.addEventListener('focusin', this.handleDocumentFocusIn)\n document.addEventListener('mousedown', this.handleDocumentMouseDown)\n\n const root = this.getRootNode()\n\n if (root !== document) {\n root.addEventListener('focusin', this.handleDocumentFocusIn)\n }\n\n this.openListenersAttached = true\n }\n\n private removeOpenListeners () {\n if (!this.openListenersAttached) {\n return\n }\n\n document.removeEventListener('focusin', this.handleDocumentFocusIn)\n document.removeEventListener('mousedown', this.handleDocumentMouseDown)\n\n const root = this.getRootNode()\n\n if (root !== document) {\n root.removeEventListener('focusin', this.handleDocumentFocusIn)\n }\n\n this.openListenersAttached = false\n }\n\n private handleDocumentFocusIn = (event: Event) => {\n const path = event.composedPath()\n\n if (!path.includes(this)) {\n this.hide()\n }\n }\n\n private handleDocumentMouseDown = (event: MouseEvent) => {\n const path = event.composedPath()\n\n if (!path.includes(this)) {\n this.hide()\n }\n }\n\n private onAnchorMouseDown (event: MouseEvent) {\n if (event.target === this.inputElement) {\n return\n }\n\n event.preventDefault()\n this.inputElement?.focus({ preventScroll: true })\n }\n\n private onInputFocus () {\n this.show()\n }\n\n private openPopupFromKey (focusLast: boolean) {\n if (!this.open) {\n this.show({ focusLast })\n }\n }\n\n private onInputKeyDown (event: KeyboardEvent) {\n const options = this.getFilteredOptions()\n\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault()\n\n if (!this.open) {\n this.openPopupFromKey(false)\n } else {\n this.activeIndex = this.getNextIndex(this.activeIndex, options, 1)\n this.scrollActiveOptionIntoView()\n }\n break\n case 'ArrowUp':\n event.preventDefault()\n\n if (!this.open) {\n this.openPopupFromKey(true)\n } else {\n this.activeIndex = this.getNextIndex(this.activeIndex, options, -1)\n this.scrollActiveOptionIntoView()\n }\n break\n case 'Enter':\n if (this.open && this.activeIndex >= 0 && options[this.activeIndex]) {\n event.preventDefault()\n this.selectOption(options[this.activeIndex])\n } else if (!this.open) {\n event.preventDefault()\n this.controlTrait.onSubmit()\n }\n break\n case 'Escape':\n if (this.open) {\n event.preventDefault()\n event.stopPropagation()\n this.hide()\n this.inputElement?.focus({ preventScroll: true })\n }\n break\n case 'Tab':\n this.hide()\n break\n default:\n if (!this.open) {\n this.show()\n }\n }\n }\n\n private onListboxMouseDown (event: MouseEvent) {\n event.preventDefault()\n\n if (!(event.target instanceof HTMLElement)) {\n return\n }\n\n const optionElement = event.target.closest('[role=\"option\"]')\n\n if (!optionElement) {\n return\n }\n\n const optionId = optionElement.id\n const index = Number.parseInt(optionId.replace(`${this.listboxId}-option-`, ''), 10)\n const option = this.getFilteredOptions()[index]\n\n if (option) {\n this.selectOption(option)\n }\n }\n}\n","import Combobox from './Combobox'\n\nexport * from './Combobox'\nexport { Combobox }\nexport default Combobox\n"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -5,7 +5,7 @@ import { t as c } from "./close-dialog-DfAh83bX.js";
5
5
  import { n as l } from "./decorators-BqWyWiL9.js";
6
6
  import { t as u } from "./query-BYu9q8lA.js";
7
7
  import "./dialog-header-kEWl21oD.js";
8
- import "./button-oanBb_ha.js";
8
+ import "./button-B9-nlEpz.js";
9
9
  //#region node_modules/@lit/context/lib/controllers/context-consumer.js
10
10
  var d = class {
11
11
  constructor(e, t, n, r) {
@@ -322,4 +322,4 @@ var G = W;
322
322
  //#endregion
323
323
  export { f as i, W as n, p as r, G as t };
324
324
 
325
- //# sourceMappingURL=dialog-Ujvm11_B.js.map
325
+ //# sourceMappingURL=dialog-kyHgc-uy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-Ujvm11_B.js","names":["t","t","CloseDialogEvent","DialogTrait","target","config","constructor","close","data","window","dispatchEvent","getContext","id","customElement","WebComponent","consume","html","nothing","property","query","dialogContext","DEFAULT_DIALOG_CONTEXT","DialogTrait","styles","_classDecs","_Dialog","_Dialog2","_A","WeakMap","_B","_C","_ref","_titleDecs","type","String","reflect","_nativeDialogDecs","_contextDecs","context","subscribe","_Dialog3","Dialog","_classPrivateFieldGet","title","v","_classPrivateFieldSet","nativeDialog","constructor","_classPrivateFieldInitSpec","_initProto","_init_title","_init_nativeDialog","_init_context","_defineProperty","dialogTrait","addTrait","getContext","close","data","firstUpdated","showModal","show","setAttribute","addEventListener","render","header","e","c","_initClass","_applyDecs","_Class","_identity","default","Dialog"],"sources":["../../node_modules/@lit/context/lib/controllers/context-consumer.js","../../node_modules/@lit/context/lib/decorators/consume.js","../../src/lib/components/traits/DialogTrait.ts","../../src/components/dialog/Dialog.styles.css","../../src/components/dialog/Dialog.ts","../../src/components/dialog/index.ts"],"sourcesContent":["import{ContextRequestEvent as t}from\"../context-request-event.js\";\n/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class s{constructor(t,s,i,h){if(this.subscribe=!1,this.provided=!1,this.value=void 0,this.t=(t,s)=>{this.unsubscribe&&(this.unsubscribe!==s&&(this.provided=!1,this.unsubscribe()),this.subscribe||this.unsubscribe()),this.value=t,this.host.requestUpdate(),this.provided&&!this.subscribe||(this.provided=!0,this.callback&&this.callback(t,s)),this.unsubscribe=s},this.host=t,void 0!==s.context){const t=s;this.context=t.context,this.callback=t.callback,this.subscribe=t.subscribe??!1}else this.context=s,this.callback=i,this.subscribe=h??!1;this.host.addController(this)}hostConnected(){this.dispatchRequest()}hostDisconnected(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=void 0)}dispatchRequest(){this.host.dispatchEvent(new t(this.context,this.host,this.t,this.subscribe))}}export{s as ContextConsumer};\n//# sourceMappingURL=context-consumer.js.map\n","import{ContextConsumer as t}from\"../controllers/context-consumer.js\";\n/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function c({context:c,subscribe:e}){return(o,n)=>{\"object\"==typeof n?n.addInitializer((function(){new t(this,{context:c,callback:t=>{o.set.call(this,t)},subscribe:e})})):o.constructor.addInitializer((o=>{new t(o,{context:c,callback:t=>{o[n]=t},subscribe:e})}))}}export{c as consume};\n//# sourceMappingURL=consume.js.map\n","import { WebComponent } from '@/lib/components'\nimport { CloseDialogEvent } from '@/lib/dialogs/events/close-dialog'\nimport type { DialogContext } from '@/lib/dialogs/context'\n\nimport { WebComponentTrait } from './WebComponentTrait'\n\nexport interface DialogTraitConfig {\n getContext: () => DialogContext\n}\n\nexport default class DialogTrait<T> implements WebComponentTrait {\n public target: WebComponent\n private config: DialogTraitConfig\n\n constructor (target: WebComponent, config: DialogTraitConfig) {\n this.target = target\n this.config = config\n }\n\n close (data?: T) {\n window.dispatchEvent(new CloseDialogEvent(this.config.getContext().id, data))\n }\n}\n","dialog {\n margin: auto;\n border-radius: 5px;\n box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.35);\n min-width: 343px;\n\n solid-ui-dialog-header solid-ui-button {\n color: var(--solid-ui-color-gray-600);\n }\n}\n\ndialog:not([open]) {\n display: none;\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { consume } from '@lit/context'\nimport { html, nothing } from 'lit'\nimport { property, query } from 'lit/decorators.js'\nimport { DialogContext, dialogContext, DEFAULT_DIALOG_CONTEXT } from '@/lib/dialogs/context'\nimport DialogTrait from '@/lib/components/traits/DialogTrait'\n\nimport '~icons/lucide/x'\nimport '@/components/dialog-header'\nimport '@/components/button'\n\nimport styles from './Dialog.styles.css'\n\n@customElement('solid-ui-dialog')\nexport default class Dialog extends WebComponent {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor title = ''\n\n @query('dialog')\n private accessor nativeDialog: HTMLDialogElement | null = null\n\n @consume({ context: dialogContext, subscribe: true })\n private accessor context: DialogContext = DEFAULT_DIALOG_CONTEXT\n\n private dialogTrait: DialogTrait<unknown>\n\n constructor () {\n super()\n\n this.dialogTrait = this.addTrait(new DialogTrait(this, {\n getContext: () => this.context\n }))\n }\n\n public close (data?: unknown) {\n this.dialogTrait.close(data)\n }\n\n protected firstUpdated () {\n if (!this.nativeDialog) {\n return\n }\n\n if (typeof this.nativeDialog.showModal === 'function') {\n this.nativeDialog.showModal()\n } else if (typeof this.nativeDialog.show === 'function') {\n this.nativeDialog.show()\n } else {\n this.nativeDialog.setAttribute('open', '')\n }\n\n this.nativeDialog.addEventListener('close', () => this.close())\n }\n\n protected render () {\n const header = this.title\n ? html`\n <solid-ui-dialog-header>\n <h1>${this.title}</h1>\n\n <solid-ui-button variant=\"ghost\" @click=${this.close}>\n <span class=\"sr-only\">Close</span>\n <icon-lucide-x slot=\"icon\"></icon-lucide-x>\n </solid-ui-button>\n </solid-ui-dialog-header>\n `\n : nothing\n\n return html`\n <dialog>\n <slot name=\"header\">${header}</slot>\n <slot></slot>\n <slot name=\"footer\"></slot>\n </dialog>\n `\n }\n}\n","import Dialog from './Dialog'\n\nexport { Dialog }\nexport default Dialog\n"],"x_google_ignoreList":[0,1],"mappings":";;;;;;;;;AAKG,IAAM,IAAN,MAAO;CAAC,YAAY,GAAE,GAAE,GAAE,GAAE;EAAC,IAAG,KAAK,YAAU,CAAC,GAAE,KAAK,WAAS,CAAC,GAAE,KAAK,QAAM,KAAK,GAAE,KAAK,KAAG,GAAE,MAAI;GAAC,KAAK,gBAAc,KAAK,gBAAc,MAAI,KAAK,WAAS,CAAC,GAAE,KAAK,YAAY,IAAG,KAAK,aAAW,KAAK,YAAY,IAAG,KAAK,QAAM,GAAE,KAAK,KAAK,cAAc,GAAE,KAAK,YAAU,CAAC,KAAK,cAAY,KAAK,WAAS,CAAC,GAAE,KAAK,YAAU,KAAK,SAAS,GAAE,CAAC,IAAG,KAAK,cAAY;EAAC,GAAE,KAAK,OAAK,GAAW,EAAE,YAAX,KAAK,GAAc;GAAC,IAAM,IAAE;GAAE,KAAK,UAAQ,EAAE,SAAQ,KAAK,WAAS,EAAE,UAAS,KAAK,YAAU,EAAE,aAAW,CAAC;EAAC,OAAM,KAAK,UAAQ,GAAE,KAAK,WAAS,GAAE,KAAK,YAAU,KAAG,CAAC;EAAE,KAAK,KAAK,cAAc,IAAI;CAAC;CAAC,gBAAe;EAAC,KAAK,gBAAgB;CAAC;CAAC,mBAAkB;EAAC,AAAsC,KAAK,iBAAxB,KAAK,YAAY,GAAmB,KAAK;CAAE;CAAC,kBAAiB;EAAC,KAAK,KAAK,cAAc,IAAIA,EAAE,KAAK,SAAQ,KAAK,MAAK,KAAK,GAAE,KAAK,SAAS,CAAC;CAAC;AAAC;;;ACA/wB,SAAS,EAAE,EAAC,SAAQ,GAAE,WAAU,KAAG;CAAC,QAAO,GAAE,MAAI;EAAC,AAAU,OAAO,KAAjB,WAAmB,EAAE,gBAAgB,WAAU;GAAC,IAAIC,EAAE,MAAK;IAAC,SAAQ;IAAE,WAAS,MAAG;KAAC,EAAE,IAAI,KAAK,MAAK,CAAC;IAAC;IAAE,WAAU;GAAC,CAAC;EAAC,EAAE,IAAE,EAAE,YAAY,iBAAgB,MAAG;GAAC,IAAIA,EAAE,GAAE;IAAC,SAAQ;IAAE,WAAS,MAAG;KAAC,EAAE,KAAG;IAAC;IAAE,WAAU;GAAC,CAAC;EAAC,EAAE;CAAC;AAAC;;;ACKxQ,IAAqBE,IAArB,MAAiE;CACxDC;CACCC;CAERC,YAAaF,GAAsBC,GAA2B;EAE5D,AADA,KAAKD,SAASA,GACd,KAAKC,SAASA;CAChB;CAEAE,MAAOC,GAAU;EACfC,OAAOC,cAAc,IAAIR,EAAiB,KAAKG,OAAOM,WAAW,CAAC,CAACC,IAAIJ,CAAI,CAAC;CAC9E;AACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AEXwCgB,IAAA,CAEvCX,EAAc,iBAAiB,CAAC;AAAA,IAAAY;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA,GAAAE,kBAAA,IAAAF,QAAA,GAAAG,KAAAC,IAI9Bd,EAAS;CAAEe,MAAMC;CAAQC,SAAS;AAAK,CAAC,GAACC,IAGzCjB,EAAM,QAAQ,GAACkB,IAGftB,EAAQ;CAAEuB,SAASlB;CAAemB,WAAW;AAAK,CAAC,GAAC,UAAAC,IAVvD,cACoC1B,EAAa;CAAA,KAAAiB,KAAA;EAAA,OAAAW,EAAAf,GAAA,IAAA;CAAA;CAAA,IAItCgB,MAAKC,GAAA;EAAAC,EAAAlB,GAAA,MAAAiB,CAAA;CAAA;CAAA,IAGGE,eAAY;EAAA,OAAAJ,EAAAb,GAAA,IAAA;CAAA;CAAA,IAAZiB,aAAYF,GAAA;EAAAC,EAAAhB,GAAA,MAAAe,CAAA;CAAA;CAAA,IAGZN,UAAO;EAAA,OAAAI,EAAAZ,GAAA,IAAA;CAAA;CAAA,IAAPQ,QAAOM,GAAA;EAAAC,EAAAf,GAAA,MAAAc,CAAA;CAAA;CAIxBG,cAAe;EAGb,AAFA,MAAM,GAACC,EAAA,MAAArB,IAAAsB,EAAA,IAAA,GAAAC,EAAA,MAXQ,EAAE,EAAA,GAAAF,EAAA,MAAAnB,GAAAsB,EAAA,MAGuC,IAAI,CAAA,GAAAH,EAAA,MAAAlB,GAAAsB,EAAA,MAGpB/B,CAAsB,CAAA,GAAAgC,EAAA,MAAA,eAAA,KAAA,CAAA,GAO9D,KAAKC,cAAc,KAAKC,SAAS,IAAIjC,EAAY,MAAM,EACrDkC,kBAAkB,KAAKlB,QACzB,CAAC,CAAC;CACJ;CAEOmB,MAAOC,GAAgB;EAC5B,KAAKJ,YAAYG,MAAMC,CAAI;CAC7B;CAEUC,eAAgB;EACnB,KAAKb,iBAIN,OAAO,KAAKA,aAAac,aAAc,aACzC,KAAKd,aAAac,UAAU,IACnB,OAAO,KAAKd,aAAae,QAAS,aAC3C,KAAKf,aAAae,KAAK,IAEvB,KAAKf,aAAagB,aAAa,QAAQ,EAAE,GAG3C,KAAKhB,aAAaiB,iBAAiB,eAAe,KAAKN,MAAM,CAAC;CAChE;CAEUO,SAAU;EAclB,OAAOhD,CAAI;;kCAbI,KAAK2B,QAChB3B,CAAI;;kBAEM,KAAK2B,MAAK;;sDAE0B,KAAKc,MAAK;;;;;YAMxDxC,EAIgC;;;;;CAKtC;AACF,GAAC,CAAAiD,GAAA,CAAAhB,GAAAC,GAAAC,GAAAH,IAAAkB,GAAA,CAAA1C,GAAA2C,MAAAC,EAAA7B,GAAA;CAAA;EAAAR;EAAA;EAAA;CAAA;CAAA;EAAAI;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;AAAA,GAAAb,GAAA,GAAA,KAAA,GAhEmCV,CAAY,GAAA0B,IAAA8B,IAAA,cAAAC,EAAA;CAAAxB,cAAA;EAAA,MAAAtB,CAAA,GAAA4B,EAAA,MAAA,UAC9B9B,CAAM,GAAA6C,EAAA;CAAA;AAAA,GAAAf,EAAAiB,GAAA5C,GAAA,KAAA,CAAA,GAAA4C,GAAA;;;ACZxB,IAAA,IAAeG"}
1
+ {"version":3,"file":"dialog-kyHgc-uy.js","names":["t","t","CloseDialogEvent","DialogTrait","target","config","constructor","close","data","window","dispatchEvent","getContext","id","customElement","WebComponent","consume","html","nothing","property","query","dialogContext","DEFAULT_DIALOG_CONTEXT","DialogTrait","styles","_classDecs","_Dialog","_Dialog2","_A","WeakMap","_B","_C","_ref","_titleDecs","type","String","reflect","_nativeDialogDecs","_contextDecs","context","subscribe","_Dialog3","Dialog","_classPrivateFieldGet","title","v","_classPrivateFieldSet","nativeDialog","constructor","_classPrivateFieldInitSpec","_initProto","_init_title","_init_nativeDialog","_init_context","_defineProperty","dialogTrait","addTrait","getContext","close","data","firstUpdated","showModal","show","setAttribute","addEventListener","render","header","e","c","_initClass","_applyDecs","_Class","_identity","default","Dialog"],"sources":["../../node_modules/@lit/context/lib/controllers/context-consumer.js","../../node_modules/@lit/context/lib/decorators/consume.js","../../src/lib/components/traits/DialogTrait.ts","../../src/components/dialog/Dialog.styles.css","../../src/components/dialog/Dialog.ts","../../src/components/dialog/index.ts"],"sourcesContent":["import{ContextRequestEvent as t}from\"../context-request-event.js\";\n/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class s{constructor(t,s,i,h){if(this.subscribe=!1,this.provided=!1,this.value=void 0,this.t=(t,s)=>{this.unsubscribe&&(this.unsubscribe!==s&&(this.provided=!1,this.unsubscribe()),this.subscribe||this.unsubscribe()),this.value=t,this.host.requestUpdate(),this.provided&&!this.subscribe||(this.provided=!0,this.callback&&this.callback(t,s)),this.unsubscribe=s},this.host=t,void 0!==s.context){const t=s;this.context=t.context,this.callback=t.callback,this.subscribe=t.subscribe??!1}else this.context=s,this.callback=i,this.subscribe=h??!1;this.host.addController(this)}hostConnected(){this.dispatchRequest()}hostDisconnected(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=void 0)}dispatchRequest(){this.host.dispatchEvent(new t(this.context,this.host,this.t,this.subscribe))}}export{s as ContextConsumer};\n//# sourceMappingURL=context-consumer.js.map\n","import{ContextConsumer as t}from\"../controllers/context-consumer.js\";\n/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function c({context:c,subscribe:e}){return(o,n)=>{\"object\"==typeof n?n.addInitializer((function(){new t(this,{context:c,callback:t=>{o.set.call(this,t)},subscribe:e})})):o.constructor.addInitializer((o=>{new t(o,{context:c,callback:t=>{o[n]=t},subscribe:e})}))}}export{c as consume};\n//# sourceMappingURL=consume.js.map\n","import { WebComponent } from '@/lib/components'\nimport { CloseDialogEvent } from '@/lib/dialogs/events/close-dialog'\nimport type { DialogContext } from '@/lib/dialogs/context'\n\nimport { WebComponentTrait } from './WebComponentTrait'\n\nexport interface DialogTraitConfig {\n getContext: () => DialogContext\n}\n\nexport default class DialogTrait<T> implements WebComponentTrait {\n public target: WebComponent\n private config: DialogTraitConfig\n\n constructor (target: WebComponent, config: DialogTraitConfig) {\n this.target = target\n this.config = config\n }\n\n close (data?: T) {\n window.dispatchEvent(new CloseDialogEvent(this.config.getContext().id, data))\n }\n}\n","dialog {\n margin: auto;\n border-radius: 5px;\n box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.35);\n min-width: 343px;\n\n solid-ui-dialog-header solid-ui-button {\n color: var(--solid-ui-color-gray-600);\n }\n}\n\ndialog:not([open]) {\n display: none;\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { consume } from '@lit/context'\nimport { html, nothing } from 'lit'\nimport { property, query } from 'lit/decorators.js'\nimport { DialogContext, dialogContext, DEFAULT_DIALOG_CONTEXT } from '@/lib/dialogs/context'\nimport DialogTrait from '@/lib/components/traits/DialogTrait'\n\nimport '~icons/lucide/x'\nimport '@/components/dialog-header'\nimport '@/components/button'\n\nimport styles from './Dialog.styles.css'\n\n@customElement('solid-ui-dialog')\nexport default class Dialog extends WebComponent {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor title = ''\n\n @query('dialog')\n private accessor nativeDialog: HTMLDialogElement | null = null\n\n @consume({ context: dialogContext, subscribe: true })\n private accessor context: DialogContext = DEFAULT_DIALOG_CONTEXT\n\n private dialogTrait: DialogTrait<unknown>\n\n constructor () {\n super()\n\n this.dialogTrait = this.addTrait(new DialogTrait(this, {\n getContext: () => this.context\n }))\n }\n\n public close (data?: unknown) {\n this.dialogTrait.close(data)\n }\n\n protected firstUpdated () {\n if (!this.nativeDialog) {\n return\n }\n\n if (typeof this.nativeDialog.showModal === 'function') {\n this.nativeDialog.showModal()\n } else if (typeof this.nativeDialog.show === 'function') {\n this.nativeDialog.show()\n } else {\n this.nativeDialog.setAttribute('open', '')\n }\n\n this.nativeDialog.addEventListener('close', () => this.close())\n }\n\n protected render () {\n const header = this.title\n ? html`\n <solid-ui-dialog-header>\n <h1>${this.title}</h1>\n\n <solid-ui-button variant=\"ghost\" @click=${this.close}>\n <span class=\"sr-only\">Close</span>\n <icon-lucide-x slot=\"icon\"></icon-lucide-x>\n </solid-ui-button>\n </solid-ui-dialog-header>\n `\n : nothing\n\n return html`\n <dialog>\n <slot name=\"header\">${header}</slot>\n <slot></slot>\n <slot name=\"footer\"></slot>\n </dialog>\n `\n }\n}\n","import Dialog from './Dialog'\n\nexport { Dialog }\nexport default Dialog\n"],"x_google_ignoreList":[0,1],"mappings":"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"}
@@ -1,26 +1,34 @@
1
- import { c as e, s as t } from "./auth-D8B5yczR.js";
2
- import { i as n } from "./dialog-Ujvm11_B.js";
1
+ import { c as e, s as t } from "./auth-ClVI18ss.js";
2
+ import { i as n } from "./dialog-kyHgc-uy.js";
3
3
  import { n as r, r as i } from "./components-PQfnwrHI.js";
4
4
  import { i as a } from "./lit-C4H1jI4q.js";
5
5
  //#region src/components/guard/Guard.ts
6
- var o, s, c, l, u, d, f;
7
- function p(e, t, n) {
8
- m(e, t), t.set(e, n);
6
+ var o, s, c, l, u, d, f, p, m, h;
7
+ function g(e, t, n) {
8
+ _(e, t), t.set(e, n);
9
9
  }
10
- function m(e, t) {
10
+ function _(e, t) {
11
11
  if (t.has(e)) throw TypeError("Cannot initialize the same private elements twice on an object");
12
12
  }
13
- function h(e, t, n) {
14
- return e.set(_(e, t), n), n;
13
+ function v(e, t, n) {
14
+ return e.set(b(e, t), n), n;
15
15
  }
16
- function g(e, t) {
17
- return e.get(_(e, t));
16
+ function y(e, t) {
17
+ return e.get(b(e, t));
18
18
  }
19
- function _(e, t, n) {
19
+ function b(e, t, n) {
20
20
  if (typeof e == "function" ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
21
21
  throw TypeError("Private element is not present on this object");
22
22
  }
23
- function v(e, t, n, r, i, a) {
23
+ function x(e, t, n) {
24
+ return (t = C(t)) in e ? Object.defineProperty(e, t, {
25
+ value: n,
26
+ enumerable: !0,
27
+ configurable: !0,
28
+ writable: !0
29
+ }) : e[t] = n, e;
30
+ }
31
+ function S(e, t, n, r, i, a) {
24
32
  function o(e, t, n) {
25
33
  return function(r, i) {
26
34
  return n && n(r), e[t].call(r, i);
@@ -41,18 +49,18 @@ function v(e, t, n, r, i, a) {
41
49
  var g, _ = t[0], v = t[3], y = !l;
42
50
  if (!y) {
43
51
  n || Array.isArray(_) || (_ = [_]);
44
- var b = {}, S = [], C = i === 3 ? "get" : i === 4 || p ? "set" : "value";
52
+ var b = {}, x = [], S = i === 3 ? "get" : i === 4 || p ? "set" : "value";
45
53
  d ? (f || p ? b = {
46
- get: x(function() {
54
+ get: T(function() {
47
55
  return v(this);
48
56
  }, r, "get"),
49
57
  set: function(e) {
50
58
  t[4](this, e);
51
59
  }
52
- } : b[C] = v, f || x(b[C], r, i === 2 ? "" : C)) : f || (b = Object.getOwnPropertyDescriptor(e, r));
60
+ } : b[S] = v, f || T(b[S], r, i === 2 ? "" : S)) : f || (b = Object.getOwnPropertyDescriptor(e, r));
53
61
  }
54
- for (var w = e, T = _.length - 1; T >= 0; T -= n ? 2 : 1) {
55
- var E = _[T], D = n ? _[T - 1] : void 0, O = {}, k = {
62
+ for (var C = e, w = _.length - 1; w >= 0; w -= n ? 2 : 1) {
63
+ var E = _[w], D = n ? _[w - 1] : void 0, O = {}, k = {
56
64
  kind: [
57
65
  "field",
58
66
  "accessor",
@@ -69,7 +77,7 @@ function v(e, t, n, r, i, a) {
69
77
  }.bind(null, O)
70
78
  };
71
79
  try {
72
- if (y) (g = c(E.call(D, w, k), "class decorators", "return")) && (w = g);
80
+ if (y) (g = c(E.call(D, C, k), "class decorators", "return")) && (C = g);
73
81
  else {
74
82
  var A, j;
75
83
  k.static = u, k.private = d, d ? i === 2 ? A = function(e) {
@@ -82,22 +90,22 @@ function v(e, t, n, r, i, a) {
82
90
  var M = k.access = { has: d ? m.bind() : function(e) {
83
91
  return r in e;
84
92
  } };
85
- if (A && (M.get = A), j && (M.set = j), w = E.call(D, p ? {
93
+ if (A && (M.get = A), j && (M.set = j), C = E.call(D, p ? {
86
94
  get: b.get,
87
95
  set: b.set
88
- } : b[C], k), p) {
89
- if (typeof w == "object" && w) (g = c(w.get, "accessor.get")) && (b.get = g), (g = c(w.set, "accessor.set")) && (b.set = g), (g = c(w.init, "accessor.init")) && S.push(g);
90
- else if (w !== void 0) throw TypeError("accessor decorators must return an object with get, set, or init properties or void 0");
91
- } else c(w, (f ? "field" : "method") + " decorators", "return") && (f ? S.push(w) : b[C] = w);
96
+ } : b[S], k), p) {
97
+ if (typeof C == "object" && C) (g = c(C.get, "accessor.get")) && (b.get = g), (g = c(C.set, "accessor.set")) && (b.set = g), (g = c(C.init, "accessor.init")) && x.push(g);
98
+ else if (C !== void 0) throw TypeError("accessor decorators must return an object with get, set, or init properties or void 0");
99
+ } else c(C, (f ? "field" : "method") + " decorators", "return") && (f ? x.push(C) : b[S] = C);
92
100
  }
93
101
  } finally {
94
102
  O.v = !0;
95
103
  }
96
104
  }
97
105
  return (f || p) && l.push(function(e, t) {
98
- for (var n = S.length - 1; n >= 0; n--) t = S[n].call(e, t);
106
+ for (var n = x.length - 1; n >= 0; n--) t = x[n].call(e, t);
99
107
  return t;
100
- }), f || y || (d ? p ? l.push(o(b, "get"), o(b, "set")) : l.push(i === 2 ? b[C] : o.call.bind(b[C])) : Object.defineProperty(e, r, b)), w;
108
+ }), f || y || (d ? p ? l.push(o(b, "get"), o(b, "set")) : l.push(i === 2 ? b[S] : o.call.bind(b[S])) : Object.defineProperty(e, r, b)), C;
101
109
  }
102
110
  function u(e, t) {
103
111
  return Object.defineProperty(e, Symbol.metadata || Symbol.for("Symbol.metadata"), {
@@ -109,7 +117,7 @@ function v(e, t, n, r, i, a) {
109
117
  if (arguments.length >= 6) var d = a[Symbol.metadata || Symbol.for("Symbol.metadata")];
110
118
  var f = Object.create(d ?? null), p = function(e, t, n, r) {
111
119
  var i, a, o = [], c = function(t) {
112
- return S(t) === e;
120
+ return E(t) === e;
113
121
  }, u = /* @__PURE__ */ new Map();
114
122
  function d(e) {
115
123
  e && o.push(s.bind(null, e));
@@ -117,13 +125,13 @@ function v(e, t, n, r, i, a) {
117
125
  for (var f = 0; f < t.length; f++) {
118
126
  var p = t[f];
119
127
  if (Array.isArray(p)) {
120
- var m = p[1], h = p[2], g = p.length > 3, _ = 16 & m, v = !!(8 & m), b = (m &= 7) == 0, x = h + "/" + v;
121
- if (!b && !g) {
122
- var C = u.get(x);
123
- if (!0 === C || C === 3 && m !== 4 || C === 4 && m !== 3) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h);
124
- u.set(x, !(m > 2) || m);
128
+ var m = p[1], h = p[2], g = p.length > 3, _ = 16 & m, v = !!(8 & m), y = (m &= 7) == 0, b = h + "/" + v;
129
+ if (!y && !g) {
130
+ var x = u.get(b);
131
+ if (!0 === x || x === 3 && m !== 4 || x === 4 && m !== 3) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h);
132
+ u.set(b, !(m > 2) || m);
125
133
  }
126
- l(v ? e : e.prototype, p, _, g ? "#" + h : y(h), m, r, v ? a ||= [] : i ||= [], o, v, g, b, m === 1, v && g ? c : n);
134
+ l(v ? e : e.prototype, p, _, g ? "#" + h : C(h), m, r, v ? a ||= [] : i ||= [], o, v, g, y, m === 1, v && g ? c : n);
127
135
  }
128
136
  }
129
137
  return d(i), d(a), o;
@@ -136,11 +144,11 @@ function v(e, t, n, r, i, a) {
136
144
  }
137
145
  };
138
146
  }
139
- function y(e) {
140
- var t = b(e, "string");
147
+ function C(e) {
148
+ var t = w(e, "string");
141
149
  return typeof t == "symbol" ? t : t + "";
142
150
  }
143
- function b(e, t) {
151
+ function w(e, t) {
144
152
  if (typeof e != "object" || !e) return e;
145
153
  var n = e[Symbol.toPrimitive];
146
154
  if (n !== void 0) {
@@ -150,7 +158,7 @@ function b(e, t) {
150
158
  }
151
159
  return (t === "string" ? String : Number)(e);
152
160
  }
153
- function x(e, t, n) {
161
+ function T(e, t, n) {
154
162
  typeof t == "symbol" && (t = (t = t.description) ? "[" + t + "]" : "");
155
163
  try {
156
164
  Object.defineProperty(e, "name", {
@@ -160,41 +168,59 @@ function x(e, t, n) {
160
168
  } catch {}
161
169
  return e;
162
170
  }
163
- function S(e) {
171
+ function E(e) {
164
172
  if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (e === null ? "null" : typeof e));
165
173
  return e;
166
174
  }
167
- l = [i("solid-guard")];
168
- var C, w = /*#__PURE__*/ new WeakMap();
169
- f = (u = n({
175
+ function D(e) {
176
+ return e;
177
+ }
178
+ d = [i("solid-ui-guard")];
179
+ var O;
180
+ new (m = (c = /*#__PURE__*/ new WeakMap(), h = (f = n({
170
181
  context: e,
171
182
  subscribe: !0
172
- }), "auth"), o = class extends r {
183
+ }), "auth"), s = class extends r {
173
184
  constructor(...e) {
174
- super(...e), p(this, w, (s(this), d(this, t)));
185
+ super(...e), g(this, c, (l(this), p(this, t))), x(this, "unsubscribeSessionUpdated", void 0);
175
186
  }
176
- get [f]() {
177
- return g(w, this);
187
+ get [h]() {
188
+ return y(c, this);
178
189
  }
179
190
  set auth(e) {
180
- h(w, this, e);
191
+ v(c, this, e);
192
+ }
193
+ connectedCallback() {
194
+ super.connectedCallback(), this.unsubscribeSessionUpdated = this.auth.onSessionUpdated(() => this.requestUpdate());
195
+ }
196
+ disconnectedCallback() {
197
+ super.disconnectedCallback(), this.unsubscribeSessionUpdated?.();
181
198
  }
182
199
  render() {
183
- return this.auth.account ? a`
200
+ return this.auth.initialized ? this.auth.account ? a`
184
201
  <slot></slot>
185
202
  ` : a`
186
203
  <slot name="guest"></slot>
204
+ ` : a`
205
+ <slot name="initializing"></slot>
187
206
  `;
188
207
  }
189
- }, {e: [d, s], c: [C, c]} = v(o, [[
190
- u,
208
+ }, {e: [p, l], c: [O, u]} = S(s, [[
209
+ f,
191
210
  1,
192
211
  "auth"
193
- ]], l, 0, void 0, r), c();
212
+ ]], d, 0, void 0, r), s), o = class extends D {
213
+ constructor() {
214
+ super(O), x(this, "states", {
215
+ initializing: (e) => !e.auth.initialized,
216
+ loggedIn: (e) => !!e.auth.account
217
+ }), u();
218
+ }
219
+ }, x(o, m, void 0), o)();
194
220
  //#endregion
195
221
  //#region src/components/guard/index.ts
196
- var T = C;
222
+ var k = O;
197
223
  //#endregion
198
- export { C as n, T as t };
224
+ export { O as n, k as t };
199
225
 
200
- //# sourceMappingURL=guard-DZGvf4tS.js.map
226
+ //# sourceMappingURL=guard-DEqOFEs4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guard-DEqOFEs4.js","names":["customElement","WebComponent","consume","html","authContext","DEFAULT_AUTH_CONTEXT","_classDecs","_Guard","_Guard2","_A","WeakMap","_ref","_authDecs","context","subscribe","_Guard3","Guard","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_auth","_defineProperty","_classPrivateFieldGet","auth","v","_classPrivateFieldSet","connectedCallback","unsubscribeSessionUpdated","onSessionUpdated","requestUpdate","disconnectedCallback","render","initialized","account","e","c","_initClass","_applyDecs","_Class","_identity","initializing","component","loggedIn","default","Guard"],"sources":["../../src/components/guard/Guard.ts","../../src/components/guard/index.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { consume } from '@lit/context'\nimport { html } from 'lit'\nimport { authContext, AuthContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\n\n@customElement('solid-ui-guard')\nexport default class Guard extends WebComponent {\n static states = {\n initializing: (component: Guard) => !component.auth.initialized,\n loggedIn: (component: Guard) => !!component.auth.account,\n }\n\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n private unsubscribeSessionUpdated?: () => void\n\n connectedCallback () {\n super.connectedCallback()\n\n this.unsubscribeSessionUpdated = this.auth.onSessionUpdated(() => this.requestUpdate())\n }\n\n disconnectedCallback () {\n super.disconnectedCallback()\n\n this.unsubscribeSessionUpdated?.()\n }\n\n protected render () {\n if (!this.auth.initialized) {\n return html`\n <slot name=\"initializing\"></slot>\n `\n }\n\n if (!this.auth.account) {\n return html`\n <slot name=\"guest\"></slot>\n `\n }\n\n return html`\n <slot></slot>\n `\n }\n}\n","import Guard from './Guard'\n\nexport { Guard }\nexport default Guard\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAG2EM,IAAA,CAE1EN,EAAc,gBAAgB,CAAC;AAAA,IAAAO;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,KAAAC,IAO7BV,EAAQ;CAAEW,SAAST;CAAaU,WAAW;AAAK,CAAC,GAAC,SAAAC,IAPrD,cACmCd,EAAa;CAAAgB,YAAA,GAAAC,GAAA;EAOWI,AAPX,MAAA,GAAAJ,CAAA,GAAAC,EAAA,MAAAV,IAAAW,EAAA,IAAA,GAAAC,EAAA,MAOThB,CAAoB,EAAA,GAAAiB,EAAA,MAAA,6BAAA,KAAA,CAAA;CAAA;CAAA,KAAAX,KAAA;EAAA,OAAAY,EAAAd,GAAA,IAAA;CAAA;CAAA,IAAxCe,KAAIC,GAAA;EAAAC,EAAAjB,GAAA,MAAAgB,CAAA;CAAA;CAIrBE,oBAAqB;EAGnB,AAFA,MAAMA,kBAAkB,GAExB,KAAKC,4BAA4B,KAAKJ,KAAKK,uBAAuB,KAAKC,cAAc,CAAC;CACxF;CAEAC,uBAAwB;EAGtB,AAFA,MAAMA,qBAAqB,GAE3B,KAAKH,4BAA4B;CACnC;CAEUI,SAAU;EAalB,OAZK,KAAKR,KAAKS,cAMV,KAAKT,KAAKU,UAMR/B,CAAI;;QALFA,CAAI;;UANJA,CAAI;;;CAcf;AACF,GAAC,CAAAgC,GAAA,CAAAd,GAAAD,IAAAgB,GAAA,CAAA7B,GAAA8B,MAAAC,EAAAvB,GAAA,CAAA;CAAAH;CAAA;CAAA;AAAA,CAAA,GAAAN,GAAA,GAAA,KAAA,GAxCkCL,CAAY,GAAAc,IAAAwB,IAAA,cAAAC,EAAA;CAAAvB,cAAA;EAAA,MAAAV,CAAA,GAAAe,EAAA,MAAA,UAC7B;GACdmB,eAAeC,MAAqB,CAACA,EAAUlB,KAAKS;GACpDU,WAAWD,MAAqB,CAAC,CAACA,EAAUlB,KAAKU;EACnD,CAAC,GAAAG,EAAA;CAAA;AAAA,GAAAf,EAAAiB,GAAA/B,GAAA,KAAA,CAAA,GAAA+B,GAAA;;;ACPH,IAAA,IAAeM"}
@@ -1,8 +1,8 @@
1
- import { c as e, s as t } from "./auth-D8B5yczR.js";
2
- import { i as n } from "./dialog-Ujvm11_B.js";
1
+ import { c as e, s as t } from "./auth-ClVI18ss.js";
2
+ import { i as n } from "./dialog-kyHgc-uy.js";
3
3
  import { n as r, r as i } from "./components-PQfnwrHI.js";
4
4
  import { i as a } from "./lit-C4H1jI4q.js";
5
- import "./button-oanBb_ha.js";
5
+ import "./button-B9-nlEpz.js";
6
6
  //#region src/components/login-button/LoginButton.ts
7
7
  var o, s, c, l, u, d, f;
8
8
  function p(e, t, n) {
@@ -208,4 +208,4 @@ var T = C;
208
208
  //#endregion
209
209
  export { C as n, T as t };
210
210
 
211
- //# sourceMappingURL=login-button-Ta3tkpn4.js.map
211
+ //# sourceMappingURL=login-button-Czm-E9Na.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"login-button-Ta3tkpn4.js","names":["customElement","WebComponent","consume","html","authContext","DEFAULT_AUTH_CONTEXT","_classDecs","_LoginButton","_A","WeakMap","_ref","_authDecs","context","subscribe","LoginButton","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_auth","_classPrivateFieldGet","auth","v","_classPrivateFieldSet","render","onClick","click","login","e","preventDefault","_LoginButton2","c","_initClass","_applyDecs","default","LoginButton"],"sources":["../../src/components/login-button/LoginButton.ts","../../src/components/login-button/index.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { consume } from '@lit/context'\nimport { html } from 'lit'\nimport { authContext, AuthContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\n\nimport '@/components/button'\n\n@customElement('solid-ui-login-button')\nexport default class LoginButton extends WebComponent {\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n protected render () {\n return html`\n <slot name=\"trigger\" @click=${this.onClick}>\n <solid-ui-button>\n <slot>\n Log In\n </slot>\n </solid-ui-button>\n </slot>\n `\n }\n\n click () {\n this.auth.login()\n }\n\n private onClick (e: MouseEvent) {\n e.preventDefault()\n\n this.click()\n }\n}\n","import LoginButton from './LoginButton'\n\nexport { LoginButton }\nexport default LoginButton\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAK4BM,IAAA,CAE3BN,EAAc,uBAAuB,CAAC;AAAA,IAAAO,GAAAC,kBAAA,IAAAC,QAAA;AAAAC,KAAAC,IAEpCT,EAAQ;CAAEU,SAASR;CAAaS,WAAW;AAAK,CAAC,GAAC,SAwBpDiB,IAAAhB,cAzBwCb,EAAa;CAAAc,YAAA,GAAAC,GAAA;EAAAC,AAAA,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAT,IAAAU,EAAA,IAAA,GAAAC,EAAA,MAEfd,CAAoB,EAAA;CAAA;CAAA,KAAAK,KAAA;EAAA,OAAAU,EAAAZ,GAAA,IAAA;CAAA;CAAA,IAAxCa,KAAIC,GAAA;EAAAC,EAAAf,GAAA,MAAAc,CAAA;CAAA;CAEXE,SAAU;EAClB,OAAOrB,CAAI;oCACqB,KAAKsB,QAAO;;;;;;;;CAQ9C;CAEAC,QAAS;EACP,KAAKL,KAAKM,MAAM;CAClB;CAEQF,QAASG,GAAe;EAG9B,AAFAA,EAAEC,eAAe,GAEjB,KAAKH,MAAM;CACb;AACF,GAAC,CAAAE,GAAA,CAAAT,GAAAD,IAAAa,GAAA,CAAAxB,GAAAyB,MAAAC,EAAAH,GAAA,CAAA;CAAAnB;CAAA;CAAA;AAAA,CAAA,GAAAL,GAAA,GAAA,KAAA,GAzBwCL,CAAY,GAAA+B,EAAA;;;ACLrD,IAAA,IAAeG"}
1
+ {"version":3,"file":"login-button-Czm-E9Na.js","names":["customElement","WebComponent","consume","html","authContext","DEFAULT_AUTH_CONTEXT","_classDecs","_LoginButton","_A","WeakMap","_ref","_authDecs","context","subscribe","LoginButton","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_auth","_classPrivateFieldGet","auth","v","_classPrivateFieldSet","render","onClick","click","login","e","preventDefault","_LoginButton2","c","_initClass","_applyDecs","default","LoginButton"],"sources":["../../src/components/login-button/LoginButton.ts","../../src/components/login-button/index.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { consume } from '@lit/context'\nimport { html } from 'lit'\nimport { authContext, AuthContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\n\nimport '@/components/button'\n\n@customElement('solid-ui-login-button')\nexport default class LoginButton extends WebComponent {\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n protected render () {\n return html`\n <slot name=\"trigger\" @click=${this.onClick}>\n <solid-ui-button>\n <slot>\n Log In\n </slot>\n </solid-ui-button>\n </slot>\n `\n }\n\n click () {\n this.auth.login()\n }\n\n private onClick (e: MouseEvent) {\n e.preventDefault()\n\n this.click()\n }\n}\n","import LoginButton from './LoginButton'\n\nexport { LoginButton }\nexport default LoginButton\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAK4BM,IAAA,CAE3BN,EAAc,uBAAuB,CAAC;AAAA,IAAAO,GAAAC,kBAAA,IAAAC,QAAA;AAAAC,KAAAC,IAEpCT,EAAQ;CAAEU,SAASR;CAAaS,WAAW;AAAK,CAAC,GAAC,SAwBpDiB,IAAAhB,cAzBwCb,EAAa;CAAAc,YAAA,GAAAC,GAAA;EAAAC,AAAA,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAT,IAAAU,EAAA,IAAA,GAAAC,EAAA,MAEfd,CAAoB,EAAA;CAAA;CAAA,KAAAK,KAAA;EAAA,OAAAU,EAAAZ,GAAA,IAAA;CAAA;CAAA,IAAxCa,KAAIC,GAAA;EAAAC,EAAAf,GAAA,MAAAc,CAAA;CAAA;CAEXE,SAAU;EAClB,OAAOrB,CAAI;oCACqB,KAAKsB,QAAO;;;;;;;;CAQ9C;CAEAC,QAAS;EACP,KAAKL,KAAKM,MAAM;CAClB;CAEQF,QAASG,GAAe;EAG9B,AAFAA,EAAEC,eAAe,GAEjB,KAAKH,MAAM;CACb;AACF,GAAC,CAAAE,GAAA,CAAAT,GAAAD,IAAAa,GAAA,CAAAxB,GAAAyB,MAAAC,EAAAH,GAAA,CAAA;CAAAnB;CAAA;CAAA;AAAA,CAAA,GAAAL,GAAA,GAAA,KAAA,GAzBwCL,CAAY,GAAA+B,EAAA;;;ACLrD,IAAA,IAAeG"}
@@ -1,8 +1,8 @@
1
- import { c as e, s as t } from "./auth-D8B5yczR.js";
2
- import { i as n } from "./dialog-Ujvm11_B.js";
1
+ import { c as e, s as t } from "./auth-ClVI18ss.js";
2
+ import { i as n } from "./dialog-kyHgc-uy.js";
3
3
  import { n as r, r as i } from "./components-PQfnwrHI.js";
4
4
  import { i as a } from "./lit-C4H1jI4q.js";
5
- import "./button-oanBb_ha.js";
5
+ import "./button-B9-nlEpz.js";
6
6
  //#region src/components/logout-button/LogoutButton.ts
7
7
  var o, s, c, l, u, d, f;
8
8
  function p(e, t, n) {
@@ -208,4 +208,4 @@ var T = C;
208
208
  //#endregion
209
209
  export { C as n, T as t };
210
210
 
211
- //# sourceMappingURL=logout-button-Db6VmUmJ.js.map
211
+ //# sourceMappingURL=logout-button-BrR_jOhK.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logout-button-Db6VmUmJ.js","names":["customElement","WebComponent","consume","html","authContext","DEFAULT_AUTH_CONTEXT","_classDecs","_LogoutButton","_A","WeakMap","_ref","_authDecs","context","subscribe","LogoutButton","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_auth","_classPrivateFieldGet","auth","v","_classPrivateFieldSet","render","onClick","click","logout","e","preventDefault","_LogoutButton2","c","_initClass","_applyDecs","default","LogoutButton"],"sources":["../../src/components/logout-button/LogoutButton.ts","../../src/components/logout-button/index.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { consume } from '@lit/context'\nimport { html } from 'lit'\nimport { authContext, AuthContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\n\nimport '@/components/button'\n\n@customElement('solid-ui-logout-button')\nexport default class LogoutButton extends WebComponent {\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n protected render () {\n return html`\n <slot name=\"trigger\" @click=${this.onClick}>\n <solid-ui-button>\n <slot>\n Log Out\n </slot>\n </solid-ui-button>\n </slot>\n `\n }\n\n click () {\n this.auth.logout()\n }\n\n private onClick (e: MouseEvent) {\n e.preventDefault()\n\n this.click()\n }\n}\n","import LogoutButton from './LogoutButton'\n\nexport { LogoutButton }\nexport default LogoutButton\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAK4BM,IAAA,CAE3BN,EAAc,wBAAwB,CAAC;AAAA,IAAAO,GAAAC,kBAAA,IAAAC,QAAA;AAAAC,KAAAC,IAErCT,EAAQ;CAAEU,SAASR;CAAaS,WAAW;AAAK,CAAC,GAAC,SAwBpDiB,IAAAhB,cAzByCb,EAAa;CAAAc,YAAA,GAAAC,GAAA;EAAAC,AAAA,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAT,IAAAU,EAAA,IAAA,GAAAC,EAAA,MAEhBd,CAAoB,EAAA;CAAA;CAAA,KAAAK,KAAA;EAAA,OAAAU,EAAAZ,GAAA,IAAA;CAAA;CAAA,IAAxCa,KAAIC,GAAA;EAAAC,EAAAf,GAAA,MAAAc,CAAA;CAAA;CAEXE,SAAU;EAClB,OAAOrB,CAAI;oCACqB,KAAKsB,QAAO;;;;;;;;CAQ9C;CAEAC,QAAS;EACP,KAAKL,KAAKM,OAAO;CACnB;CAEQF,QAASG,GAAe;EAG9B,AAFAA,EAAEC,eAAe,GAEjB,KAAKH,MAAM;CACb;AACF,GAAC,CAAAE,GAAA,CAAAT,GAAAD,IAAAa,GAAA,CAAAxB,GAAAyB,MAAAC,EAAAH,GAAA,CAAA;CAAAnB;CAAA;CAAA;AAAA,CAAA,GAAAL,GAAA,GAAA,KAAA,GAzByCL,CAAY,GAAA+B,EAAA;;;ACLtD,IAAA,IAAeG"}
1
+ {"version":3,"file":"logout-button-BrR_jOhK.js","names":["customElement","WebComponent","consume","html","authContext","DEFAULT_AUTH_CONTEXT","_classDecs","_LogoutButton","_A","WeakMap","_ref","_authDecs","context","subscribe","LogoutButton","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_auth","_classPrivateFieldGet","auth","v","_classPrivateFieldSet","render","onClick","click","logout","e","preventDefault","_LogoutButton2","c","_initClass","_applyDecs","default","LogoutButton"],"sources":["../../src/components/logout-button/LogoutButton.ts","../../src/components/logout-button/index.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { consume } from '@lit/context'\nimport { html } from 'lit'\nimport { authContext, AuthContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\n\nimport '@/components/button'\n\n@customElement('solid-ui-logout-button')\nexport default class LogoutButton extends WebComponent {\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n protected render () {\n return html`\n <slot name=\"trigger\" @click=${this.onClick}>\n <solid-ui-button>\n <slot>\n Log Out\n </slot>\n </solid-ui-button>\n </slot>\n `\n }\n\n click () {\n this.auth.logout()\n }\n\n private onClick (e: MouseEvent) {\n e.preventDefault()\n\n this.click()\n }\n}\n","import LogoutButton from './LogoutButton'\n\nexport { LogoutButton }\nexport default LogoutButton\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAK4BM,IAAA,CAE3BN,EAAc,wBAAwB,CAAC;AAAA,IAAAO,GAAAC,kBAAA,IAAAC,QAAA;AAAAC,KAAAC,IAErCT,EAAQ;CAAEU,SAASR;CAAaS,WAAW;AAAK,CAAC,GAAC,SAwBpDiB,IAAAhB,cAzByCb,EAAa;CAAAc,YAAA,GAAAC,GAAA;EAAAC,AAAA,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAT,IAAAU,EAAA,IAAA,GAAAC,EAAA,MAEhBd,CAAoB,EAAA;CAAA;CAAA,KAAAK,KAAA;EAAA,OAAAU,EAAAZ,GAAA,IAAA;CAAA;CAAA,IAAxCa,KAAIC,GAAA;EAAAC,EAAAf,GAAA,MAAAc,CAAA;CAAA;CAEXE,SAAU;EAClB,OAAOrB,CAAI;oCACqB,KAAKsB,QAAO;;;;;;;;CAQ9C;CAEAC,QAAS;EACP,KAAKL,KAAKM,OAAO;CACnB;CAEQF,QAASG,GAAe;EAG9B,AAFAA,EAAEC,eAAe,GAEjB,KAAKH,MAAM;CACb;AACF,GAAC,CAAAE,GAAA,CAAAT,GAAAD,IAAAa,GAAA,CAAAxB,GAAAyB,MAAAC,EAAAH,GAAA,CAAA;CAAAnB;CAAA;CAAA;AAAA,CAAA,GAAAL,GAAA,GAAA,KAAA,GAzByCL,CAAY,GAAA+B,EAAA;;;ACLtD,IAAA,IAAeG"}
@@ -2018,7 +2018,7 @@ U.css = se, o([h()], U.prototype, "svg", 2), o([m({ reflect: !0 })], U.prototype
2018
2018
  ], { waitUntilFirstUpdate: !0 })], U.prototype, "setIcon", 1), U = o([c("wa-icon")], U);
2019
2019
  //#endregion
2020
2020
  //#region src/components/menu/Menu.styles.css
2021
- var De = r`wa-dropdown::part(menu){min-width:300px;box-shadow:0 4px 16px #00000059}wa-dropdown-item{padding:0}`, W, G, K, q, J, Y, Oe, ke, Ae, je, Me, Ne, Pe, Fe, Ie, Le, Re, ze, Be;
2021
+ var De = r`wa-dropdown::part(menu){gap:2px;min-width:300px;box-shadow:0 4px 16px #00000059}wa-dropdown-item{border-radius:5px;padding:0;&:hover{background-color:var(--solid-ui-color-primary-hover)}}`, W, G, K, q, J, Y, Oe, ke, Ae, je, Me, Ne, Pe, Fe, Ie, Le, Re, ze, Be;
2022
2022
  function X(e, t, n) {
2023
2023
  Ve(e, t), t.set(e, n);
2024
2024
  }
@@ -2200,7 +2200,7 @@ new (ze = (K = /*#__PURE__*/ new WeakMap(), q = /*#__PURE__*/ new WeakMap(), J =
2200
2200
  reflect: !0
2201
2201
  }), Fe = g("wa-dropdown"), Le = h(), "placement"), G = class extends e {
2202
2202
  constructor(...e) {
2203
- super(...e), X(this, K, (Oe(this), Me(this, "bottom-start"))), X(this, q, Pe(this, 0)), X(this, J, Ie(this, null)), X(this, Y, Re(this, [])), Ue(this, "observer", new MutationObserver(() => this.syncItems()));
2203
+ super(...e), X(this, K, (Oe(this), Me(this, "bottom-start"))), X(this, q, Pe(this, 5)), X(this, J, Ie(this, null)), X(this, Y, Re(this, [])), Ue(this, "observer", new MutationObserver(() => this.syncItems()));
2204
2204
  }
2205
2205
  get [Be]() {
2206
2206
  return Q(K, this);
@@ -2306,4 +2306,4 @@ var Xe = $;
2306
2306
  //#endregion
2307
2307
  export { $ as n, Xe as t };
2308
2308
 
2309
- //# sourceMappingURL=menu-CQEXqNO6.js.map
2309
+ //# sourceMappingURL=menu-1PG19fCC.js.map