@luzmo/lucero 1.0.1-alpha.3 → 1.0.1-alpha.31

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 (232) hide show
  1. package/components/accordion/index.cjs +6 -6
  2. package/components/accordion/index.js +13 -12
  3. package/components/action-bar/index.cjs +4 -4
  4. package/components/action-bar/index.js +11 -9
  5. package/components/action-button/index.cjs +3 -3
  6. package/components/action-button/index.js +6 -5
  7. package/components/action-group/index.cjs +1 -1
  8. package/components/action-group/index.js +1 -1
  9. package/components/{action-group-DBImibFn.js → action-group-Bwt9w8Vh.js} +10 -9
  10. package/components/action-group-D917z7XF.cjs +20 -0
  11. package/components/action-menu/index.cjs +9 -9
  12. package/components/action-menu/index.js +9 -9
  13. package/components/avatar/index.cjs +3 -3
  14. package/components/avatar/index.js +6 -6
  15. package/components/base-5nDSSNeT.cjs +18 -0
  16. package/components/base-CdYjmV_8.js +96 -0
  17. package/components/button/button-base.d.ts +16 -0
  18. package/components/button/button.d.ts +38 -2
  19. package/components/button/index.cjs +2 -2
  20. package/components/button/index.js +34 -29
  21. package/components/{button-base-DbkDzb71.js → button-base-B5uul3tZ.js} +54 -39
  22. package/components/button-base-C7or8-FB.cjs +25 -0
  23. package/components/button-group/index.cjs +1 -1
  24. package/components/button-group/index.js +10 -8
  25. package/components/calendar/index.cjs +96 -1
  26. package/components/calendar/index.js +538 -6
  27. package/components/checkbox/index.cjs +4 -4
  28. package/components/checkbox/index.js +6 -4
  29. package/components/{checkbox-mixin-Do7EgtpQ.js → checkbox-mixin-DUbGDm7f.js} +9 -9
  30. package/components/{checkbox-mixin-BDN0dBtS.cjs → checkbox-mixin-DhN8CIXY.cjs} +3 -3
  31. package/components/{clear-button-DoeRUWQ3.js → clear-button-Bjp7N52G.js} +14 -13
  32. package/components/clear-button-C39c3PH0.cjs +18 -0
  33. package/components/{close-button-BWXdHSx3.js → close-button-CqlkCakI.js} +13 -12
  34. package/components/close-button-rjMQFibf.cjs +18 -0
  35. package/components/color-area/index.cjs +5 -5
  36. package/components/color-area/index.js +11 -10
  37. package/components/color-controller-7sNUf7SP.js +386 -0
  38. package/components/color-controller-ChN-A9Ft.cjs +18 -0
  39. package/components/color-field/color-field.d.ts +8 -0
  40. package/components/color-field/index.cjs +4 -4
  41. package/components/color-field/index.js +37 -24
  42. package/components/color-handle/index.cjs +2 -2
  43. package/components/color-handle/index.js +7 -5
  44. package/components/color-loupe/index.cjs +1 -1
  45. package/components/color-loupe/index.js +1 -1
  46. package/components/color-loupe-CIEFp7ln.cjs +56 -0
  47. package/components/{color-loupe-CmMsXbjT.js → color-loupe-CLPX6xVb.js} +6 -4
  48. package/components/color-menu/index.cjs +8 -8
  49. package/components/color-menu/index.js +45 -45
  50. package/components/color-palette/color-palette.d.ts +38 -3
  51. package/components/color-palette/index.cjs +1 -1
  52. package/components/color-palette/index.js +53 -39
  53. package/components/color-palette-group/color-palette-group.d.ts +79 -0
  54. package/components/color-palette-group/index.cjs +28 -0
  55. package/components/color-palette-group/index.d.ts +7 -0
  56. package/components/color-palette-group/index.js +206 -0
  57. package/components/color-picker/color-picker.d.ts +31 -2
  58. package/components/color-picker/index.cjs +6 -5
  59. package/components/color-picker/index.js +15 -11
  60. package/components/color-slider/index.cjs +40 -1
  61. package/components/color-slider/index.js +452 -6
  62. package/components/date-time-picker/index.cjs +16 -16
  63. package/components/date-time-picker/index.js +104 -105
  64. package/components/{dependency-manger-CEXvGQUV.js → dependency-manger-CO-VPlqq.js} +4 -4
  65. package/components/{dependency-manger-C5HCkMMB.cjs → dependency-manger-uthev62E.cjs} +1 -1
  66. package/components/divider/index.cjs +1 -1
  67. package/components/divider/index.js +10 -8
  68. package/components/field-group/index.cjs +1 -1
  69. package/components/field-group/index.js +1 -1
  70. package/components/field-group-BYHNJmv0.cjs +23 -0
  71. package/components/{field-group-DXfBWrkO.js → field-group-CHmw159R.js} +7 -5
  72. package/components/field-label/index.cjs +1 -1
  73. package/components/field-label/index.js +1 -1
  74. package/components/{field-label-CZ2zzChK.js → field-label-Cy3xMWZ-.js} +9 -8
  75. package/components/field-label-DZoeqJJX.cjs +25 -0
  76. package/components/{focus-visible-DBlJGoEW.js → focus-visible-BvScGDCE.js} +20 -20
  77. package/components/focus-visible-D4BXb5RB.cjs +18 -0
  78. package/components/{focusable-BxtpnzWp.js → focusable-BjvsvVam.js} +3 -2
  79. package/components/focusable-CbVKgGfS.cjs +18 -0
  80. package/components/icon/index.cjs +1 -1
  81. package/components/icon/index.js +22 -20
  82. package/components/index.cjs +1 -1
  83. package/components/index.js +139 -137
  84. package/components/infield-button/index.cjs +2 -2
  85. package/components/infield-button/index.js +4 -3
  86. package/components/label/index.cjs +1 -1
  87. package/components/label/index.js +6 -4
  88. package/components/{language-resolution-8yZa5r_P.js → language-resolution-B-wjV5bb.js} +9 -8
  89. package/components/{directive-C7oCP5Bh.cjs → language-resolution-EUER43cg.cjs} +1 -5
  90. package/components/like-anchor-B2EqJPdw.cjs +32 -0
  91. package/components/{like-anchor-Bvn_vLQ8.js → like-anchor-CgqCU210.js} +23 -22
  92. package/components/{manage-help-text-DhgARkZX.cjs → manage-help-text-Bat9yGvF.cjs} +3 -3
  93. package/components/{manage-help-text-syYnjKGL.js → manage-help-text-C9sCHK3R.js} +8 -8
  94. package/components/menu/index.cjs +38 -13
  95. package/components/menu/index.js +137 -104
  96. package/components/menu/menu-item.d.ts +8 -1
  97. package/components/multi-language-field/index.cjs +2 -2
  98. package/components/multi-language-field/index.js +8 -6
  99. package/components/number-field/index.cjs +6 -6
  100. package/components/number-field/index.js +33 -34
  101. package/components/observe-slot-presence-CNltc0C0.cjs +18 -0
  102. package/components/{observe-slot-presence-CmVi0zTc.js → observe-slot-presence-DFi6GE3H.js} +1 -1
  103. package/components/observe-slot-text-CBMHpuIK.cjs +18 -0
  104. package/components/{observe-slot-text-BPfIQQtz.js → observe-slot-text-DorVpCL4.js} +14 -15
  105. package/components/options/index.cjs +26 -58
  106. package/components/options/index.js +205 -849
  107. package/components/overlay/index.cjs +6 -6
  108. package/components/overlay/index.js +30 -31
  109. package/components/overlay-DpWon1Rp.js +1736 -0
  110. package/components/overlay-nUwFClQq.cjs +47 -0
  111. package/components/{pending-state-CaH1si5b.cjs → pending-state-DQctFHI8.cjs} +2 -2
  112. package/components/{pending-state-DTX7ggyF.js → pending-state-Dx1u3EXA.js} +2 -2
  113. package/components/picker/index.cjs +1 -1
  114. package/components/picker/index.js +2 -2
  115. package/components/{picker-BmoXv1jt.js → picker-Cm6_didQ.js} +44 -44
  116. package/components/picker-DxYgh4LR.cjs +123 -0
  117. package/components/picker-button/index.cjs +4 -4
  118. package/components/picker-button/index.js +7 -6
  119. package/components/{platform-BiXhwqk3.cjs → platform-BJnOJJag.cjs} +1 -1
  120. package/components/{platform-BM-uMWpX.js → platform-CqwNrovd.js} +12 -12
  121. package/components/popover/index.cjs +1 -1
  122. package/components/popover/index.js +1 -1
  123. package/components/popover-lcZnODPK.cjs +30 -0
  124. package/components/{popover-DjX0aAnY.js → popover-ucIgjbQs.js} +8 -7
  125. package/components/progress-circle/index.cjs +1 -1
  126. package/components/progress-circle/index.js +1 -1
  127. package/components/{progress-circle-DXH9z8-6.js → progress-circle-D5J0ZwY0.js} +8 -7
  128. package/components/progress-circle-DgMbqrzG.cjs +33 -0
  129. package/components/radio/index.cjs +2 -2
  130. package/components/radio/index.js +11 -10
  131. package/components/search/index.cjs +6 -6
  132. package/components/search/index.js +5 -5
  133. package/components/select/index.cjs +43 -43
  134. package/components/select/index.js +106 -91
  135. package/components/select/select.d.ts +1 -1
  136. package/components/{base-BjTwmyRF.cjs → sized-mixin-DcvJLFeo.cjs} +1 -5
  137. package/components/{sized-mixin-D4ACoVUr.js → sized-mixin-cJbo3PKR.js} +5 -5
  138. package/components/slider/index.cjs +1 -1
  139. package/components/slider/index.js +48 -1101
  140. package/components/{strategies-9indNIEb.js → strategies-Bk97oVn1.js} +15 -50
  141. package/components/strategies-CNgBb6dM.cjs +18 -0
  142. package/components/{streaming-listener-CP-JE6Fa.js → streaming-listener-BlWm-XZU.js} +5 -6
  143. package/components/streaming-listener-D9Wc7skA.cjs +18 -0
  144. package/components/swatch/index.cjs +7 -7
  145. package/components/swatch/index.js +17 -16
  146. package/components/switch/index.cjs +2 -2
  147. package/components/switch/index.js +5 -4
  148. package/components/tabs/index.cjs +16 -24
  149. package/components/tabs/index.js +93 -161
  150. package/components/tags/index.cjs +4 -4
  151. package/components/tags/index.js +14 -13
  152. package/components/text-field/index.cjs +3 -3
  153. package/components/text-field/index.js +12 -10
  154. package/components/text-field/text-field.d.ts +1 -0
  155. package/components/{text-field-BIADXoLC.js → text-field-BTEpwGFu.js} +73 -99
  156. package/components/text-field-JMrsh-zo.cjs +81 -0
  157. package/components/{text-field.module-ColtFhf_.js → text-field.module-C2KVUJcX.js} +1 -1
  158. package/components/{text-field.module-p_VF2tC_.cjs → text-field.module-DXhFA9G-.cjs} +1 -1
  159. package/components/toast/index.cjs +11 -11
  160. package/components/toast/index.js +10 -8
  161. package/components/tooltip/index.cjs +4 -4
  162. package/components/tooltip/index.js +60 -36
  163. package/components/tooltip/tooltip.d.ts +12 -1
  164. package/components/unit-input/index.cjs +6 -6
  165. package/components/unit-input/index.js +10 -9
  166. package/components/utils.cjs +1 -1
  167. package/components/utils.js +6 -6
  168. package/custom-elements.json +1 -1
  169. package/index.d.ts +1 -0
  170. package/package.json +67 -1
  171. package/components/NumberFormatter-DewVDY5w.cjs +0 -18
  172. package/components/NumberFormatter-DgOUVrge.js +0 -136
  173. package/components/NumberParser-Dik4a0h-.cjs +0 -18
  174. package/components/NumberParser-ci9J5EKv.js +0 -173
  175. package/components/action-group-DJGMcRHb.cjs +0 -20
  176. package/components/async-directive-BX1T1e1_.cjs +0 -22
  177. package/components/async-directive-BfcqVjDp.js +0 -82
  178. package/components/base-CBCg3yyw.cjs +0 -40
  179. package/components/base-D76d76ww.js +0 -26
  180. package/components/base-WsynuqaS.js +0 -677
  181. package/components/button-base-XgPLmwP-.cjs +0 -25
  182. package/components/class-map-Di1D_rCm.cjs +0 -22
  183. package/components/class-map-NbVXqBU0.js +0 -51
  184. package/components/clear-button-Qi1pMA5S.cjs +0 -18
  185. package/components/close-button-BFMBEw3q.cjs +0 -18
  186. package/components/color-controller-DTp1juRz.js +0 -3198
  187. package/components/color-controller-_ZwyhvaU.cjs +0 -18
  188. package/components/color-loupe-CaA_Lfkk.cjs +0 -56
  189. package/components/directive-helpers-Cm6gitnu.js +0 -62
  190. package/components/directive-helpers-DyIRTWwA.cjs +0 -22
  191. package/components/directive-oAbCiebi.js +0 -44
  192. package/components/field-group-DkGst3r5.cjs +0 -23
  193. package/components/field-label-mO1AkUgR.cjs +0 -25
  194. package/components/flow-D-0MTYCm.js +0 -527
  195. package/components/flow-DM3dNAKs.cjs +0 -30
  196. package/components/focus-visible-B0P9aY_G.cjs +0 -18
  197. package/components/focusable-EbipgXRh.cjs +0 -18
  198. package/components/if-defined-C9YGdo33.cjs +0 -22
  199. package/components/if-defined-DOaE2coe.js +0 -27
  200. package/components/index-A-yOTB_d.js +0 -1490
  201. package/components/index-BLWuwZXx.cjs +0 -113
  202. package/components/index-BwxgAdzi.cjs +0 -57
  203. package/components/index-HjQa8tew.js +0 -1174
  204. package/components/language-resolution-DJzmyzZq.cjs +0 -18
  205. package/components/like-anchor-sod1C1fR.cjs +0 -32
  206. package/components/luzmo-icons-DbwDQtuO.js +0 -229
  207. package/components/luzmo-icons-DletXGWU.cjs +0 -29
  208. package/components/mutation-controller-DH7YOCyj.js +0 -52
  209. package/components/mutation-controller-DkOMCW-c.cjs +0 -22
  210. package/components/observe-slot-presence-bc9chhsi.cjs +0 -18
  211. package/components/observe-slot-text-Ceb7SvYT.cjs +0 -18
  212. package/components/overlay-Cig9r6uU.js +0 -2747
  213. package/components/overlay-KSKMzzkh.cjs +0 -47
  214. package/components/picker-DWsBWdPN.cjs +0 -123
  215. package/components/popover-KFfO0IYL.cjs +0 -30
  216. package/components/progress-circle-BvRJNuNo.cjs +0 -33
  217. package/components/query-BL-TJj7K.cjs +0 -22
  218. package/components/query-D_KR_GUc.js +0 -51
  219. package/components/query-assigned-elements-DjfhL1cl.js +0 -36
  220. package/components/query-assigned-elements-DsKsfk7G.cjs +0 -22
  221. package/components/query-assigned-nodes-BcKWmGzy.cjs +0 -22
  222. package/components/query-assigned-nodes-C76XVPWY.js +0 -36
  223. package/components/sized-mixin-CPxE5C96.cjs +0 -18
  224. package/components/state-D8JEtYqe.cjs +0 -22
  225. package/components/state-Deh-vKYE.js +0 -29
  226. package/components/strategies-BACP6MhR.cjs +0 -18
  227. package/components/streaming-listener-B00MvALi.cjs +0 -18
  228. package/components/style-map-CeilmSgs.cjs +0 -22
  229. package/components/style-map-IgqIKvlE.js +0 -53
  230. package/components/text-field-D5d_Gt0t.cjs +0 -85
  231. package/components/when-CDK1Tt5Y.js +0 -28
  232. package/components/when-CDZyJPvd.cjs +0 -22
@@ -1,47 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- "use strict";const x=require("./base-CBCg3yyw.cjs"),Ce=require("./state-D8JEtYqe.cjs"),oe=require("./query-BL-TJj7K.cjs"),Pe=require("./query-assigned-elements-DsKsfk7G.cjs"),Dt=require("./if-defined-C9YGdo33.cjs"),jt=require("./style-map-CeilmSgs.cjs"),Nt=require("./random-id-CqvckpWe.cjs"),Yt=require("./element-resolution-BvRLGqIU.cjs"),ht=require("./focusable-selectors-BgFlyFcY.cjs"),Gt=require("./slottable-request-event-BfUUt1Mh.cjs"),St=require("./condition-attribute-with-id-DrQYZzFS.cjs"),yt=require("./platform-BiXhwqk3.cjs");function Oe(e,t,i=[]){for(const[n,o]of t.entries()){const s=e[n],r=s.parentElement||s.getRootNode();i[n]&&i[n](o),r&&r!==s&&s.replaceWith(o),delete e[n]}return t}const Te=(e,t,{position:i,prepareCallback:n}={position:"beforeend"})=>{let{length:o}=e;if(o===0)return()=>e;let s=1,r=0;(i==="afterbegin"||i==="afterend")&&(s=-1,r=o-1);const a=new Array(o),l=new Array(o),h=document.createComment("placeholder for reparented element");do{const c=e[r];n&&(l[r]=n(c)),a[r]=h.cloneNode();const d=c.parentElement||c.getRootNode();d&&d!==c&&d.replaceChild(a[r],c),t.insertAdjacentElement(i,c),r+=s}while(--o>0);return function(){return Oe(a,e,l)}},Ae=1e3,Re=1e3;class De{constructor(t={}){this.warmUpDelay=Ae,this.coolDownDelay=Re,this.isWarm=!1,this.timeout=0,Object.assign(this,t)}openTimer(t){if(this.cancelCooldownTimer(),!this.component||t!==this.component)return this.component&&(this.close(this.component),this.cancelCooldownTimer()),this.component=t,this.isWarm?Promise.resolve(!1):(this.promise=new Promise(i=>{this.resolve=i,this.timeout=window.setTimeout(()=>{this.resolve&&(this.resolve(!1),this.isWarm=!0)},this.warmUpDelay)}),this.promise);if(this.promise)return this.promise;throw new Error("Inconsistent state")}close(t){this.component&&this.component===t&&(this.resetCooldownTimer(),this.timeout>0&&(clearTimeout(this.timeout),this.timeout=0),this.resolve&&(this.resolve(!0),delete this.resolve),delete this.promise,delete this.component)}resetCooldownTimer(){this.isWarm&&(this.cooldownTimeout&&window.clearTimeout(this.cooldownTimeout),this.cooldownTimeout=window.setTimeout(()=>{this.isWarm=!1,delete this.cooldownTimeout},this.coolDownDelay))}cancelCooldownTimer(){this.cooldownTimeout&&window.clearTimeout(this.cooldownTimeout),delete this.cooldownTimeout}}const lt=new De,Y=()=>{},Pt=(e,t,i)=>{const n=new AbortController,o=new Map,s=()=>{n.abort(),i()};let r,a;const l=requestAnimationFrame(()=>{r=requestAnimationFrame(()=>{a=requestAnimationFrame(()=>{s()})})}),h=d=>{d.target===e&&(o.set(d.propertyName,o.get(d.propertyName)-1),o.get(d.propertyName)||o.delete(d.propertyName),o.size===0&&s())},c=d=>{d.target===e&&(o.has(d.propertyName)||o.set(d.propertyName,0),o.set(d.propertyName,o.get(d.propertyName)+1),cancelAnimationFrame(l),cancelAnimationFrame(r),cancelAnimationFrame(a))};e.addEventListener("transitionrun",c,{signal:n.signal}),e.addEventListener("transitionend",h,{signal:n.signal}),e.addEventListener("transitioncancel",h,{signal:n.signal}),t()};function R(){return new Promise(e=>requestAnimationFrame(()=>e()))}class it extends x.LuzmoElement{constructor(){super(...arguments),this.dispose=Y,this.offset=0,this.willPreventClose=!1}applyFocus(t,i){}get delayed(){return!1}set delayed(t){}get disabled(){return!1}set disabled(t){}get elementResolver(){return this._elementResolver}set elementResolver(t){this._elementResolver=t}ensureOnDOM(t){}makeTransition(t){return null}manageDelay(t){}manageDialogOpen(){}managePopoverOpen(){}managePosition(){}get open(){return!1}set open(t){}get placementController(){return this._placementController}set placementController(t){this._placementController=t}requestSlottable(){}returnFocus(){}get state(){return"closed"}set state(t){}manuallyKeepOpen(){}static update(){const t=new CustomEvent("luzmo-update-overlays",{bubbles:!0,composed:!0,cancelable:!0});document.dispatchEvent(t)}static async open(t,i,n,o){await Promise.resolve().then(()=>Ct);const s=arguments.length===2,r=n||t,a=new this;let l=!1;const h=Te([r],a,{position:"beforeend",prepareCallback:f=>{const u=f.slot;return f.removeAttribute("slot"),()=>{f.slot=u}}});if(a.dispose=()=>{a.addEventListener("luzmo-closed",()=>{l||(h(),l=!0),requestAnimationFrame(()=>{a.remove()})}),a.open=!1,a.dispose=Y},!s&&r&&o){const f=t,u=i,p=o;return it.applyOptions(a,{...p,delayed:p.delayed||r.hasAttribute("delayed"),trigger:p.virtualTrigger||f,type:u==="modal"?"modal":u==="hover"?"hint":"auto"}),f.after(a),await a.updateComplete,a.open=!0,a.dispose}const d=i;return a.append(r),it.applyOptions(a,{...d,delayed:d.delayed||r.hasAttribute("delayed")}),a.updateComplete.then(()=>{a.open=!0}),a}static applyOptions(t,i){t.delayed=!!i.delayed,t.receivesFocus=i.receivesFocus??"auto",t.triggerElement=i.trigger||null,t.type=i.type||"modal",t.offset=i.offset??0,t.placement=i.placement,t.willPreventClose=!!i.notImmediatelyClosable}}const _t=e=>e.querySelector(ht.userFocusableSelector),It=e=>e.assignedElements().find(i=>i.matches(ht.userFocusableSelector));class qt extends Event{constructor(){super("beforetoggle",{bubbles:!1,composed:!1}),this.currentState="open",this.newState="closed"}}class Mt extends Event{constructor(){super("beforetoggle",{bubbles:!1,composed:!1}),this.currentState="closed",this.newState="open"}}class F extends Event{constructor(t,i,{publish:n,interaction:o,reason:s}){super(t,{bubbles:n,composed:n}),this.overlay=i,this.detail={interaction:o,reason:s}}}class dt{constructor(t,i){this.x=0,this.y=0,this.x=t,this.y=i}updateBoundingClientRect(t,i){this.x=t,this.y=i,it.update()}getBoundingClientRect(){return{width:0,height:0,top:this.y,right:this.x,y:this.y,x:this.x,bottom:this.y,left:this.x,toJSON(){}}}}function Le(e){class t extends e{async manageDialogOpen(){const n=this.open;if(await R(),await this.managePosition(),this.open!==n)return;const o=await this.dialogMakeTransition(n);this.open===n&&await this.dialogApplyFocus(n,o)}dialogMakeTransition(n){let o=null;const s=(a,l)=>()=>{if(a.open=n,!n){const c=()=>{a.removeEventListener("close",c)};a.addEventListener("close",c)}if(l>0)return;const h=n?Mt:qt;this.dispatchEvent(new h),n&&(a.matches(ht.userFocusableSelector)&&(o=a),o=o||_t(a),o||a.querySelectorAll("slot").forEach(d=>{o||(o=It(d))}),!(!this.isConnected||this.dialogEl.open)&&this.dialogEl.showModal())},r=(a,l)=>()=>{if(this.open!==n)return;const h=n?"luzmo-opened":"luzmo-closed";if(l>0){a.dispatchEvent(new F(h,this,{interaction:this.type,publish:!1}));return}if(!this.isConnected||n!==this.open)return;const c=async()=>{const d=this.triggerElement instanceof dt;this.dispatchEvent(new F(h,this,{interaction:this.type,publish:d})),a.dispatchEvent(new F(h,this,{interaction:this.type,publish:!1})),this.triggerElement&&!d&&this.triggerElement.dispatchEvent(new F(h,this,{interaction:this.type,publish:!0})),this.state=n?"opened":"closed",this.returnFocus(),await R(),await R(),n===this.open&&n===!1&&this.requestSlottable()};!n&&this.dialogEl.open?(this.dialogEl.addEventListener("close",()=>{c()},{once:!0}),this.dialogEl.close()):c()};return this.elements.forEach((a,l)=>{Pt(a,s(a,l),r(a,l))}),o}dialogApplyFocus(n,o){this.applyFocus(n,o)}}return t}function Se(e){class t extends e{async managePopoverOpen(){await this.managePosition()}async manageDelay(n){if(n===!1||n!==this.open){lt.close(this);return}this.delayed&&await lt.openTimer(this)&&(this.open=!n)}ensureOnDOM(n){document.body.offsetHeight}makeTransition(n){if(this.open!==n)return null;let o=null;const s=(a,l)=>()=>{if(n!==this.open)return;if(a.open=n,l===0){const c=n?Mt:qt;this.dispatchEvent(new c)}if(n!==!0||(a.matches(ht.userFocusableSelector)&&(o=a),o=o||_t(a),o))return;a.querySelectorAll("slot").forEach(c=>{o||(o=It(c))})},r=(a,l)=>async()=>{if(this.open!==n)return;const h=n?"luzmo-opened":"luzmo-closed";if(a.dispatchEvent(new F(h,this,{interaction:this.type})),l>0)return;const c=this.triggerElement instanceof dt;this.dispatchEvent(new F(h,this,{interaction:this.type,publish:c})),this.triggerElement&&!c&&this.triggerElement.dispatchEvent(new F(h,this,{interaction:this.type,publish:!0})),this.state=n?"opened":"closed",this.returnFocus(),await R(),await R(),n===this.open&&n===!1&&this.requestSlottable()};return this.elements.forEach((a,l)=>{Pt(a,s(a,l),r(a,l))}),o}}return t}const Fe=CSS.supports("(overlay: auto)");function Xt(e){let t=!1;try{t=e.matches(":popover-open")}catch{}let i=!1;try{i=e.matches(":open")}catch{}return t||i}function ke(e){class t extends e{async manageDelay(n){if(n===!1||n!==this.open){lt.close(this);return}this.delayed&&await lt.openTimer(this)&&(this.open=!n)}shouldHidePopover(n){if(n&&this.open!==n)return;const o=async({newState:s}={})=>{s!=="open"&&await this.placementController.resetOverlayPosition()};if(!Xt(this.dialogEl)){o();return}this.dialogEl.addEventListener("toggle",o,{once:!0})}shouldShowPopover(n){let o=!1;try{o=this.dialogEl.matches(":popover-open")}catch{}let s=!1;try{s=this.dialogEl.matches(":open")}catch{}n&&this.open===n&&!o&&!s&&this.isConnected&&(this.dialogEl.showPopover(),this.managePosition())}async ensureOnDOM(n){Fe||await this.shouldHidePopover(n),this.shouldShowPopover(n),await R()}makeTransition(n){if(this.open!==n)return null;let o=null;const s=(a,l)=>()=>{if(a.open=n,l===0){const c=n?Mt:qt;this.dispatchEvent(new c)}if(!n||(a.matches(ht.userFocusableSelector)&&(o=a),o=o||_t(a),o))return;a.querySelectorAll("slot").forEach(c=>{o||(o=It(c))})},r=(a,l)=>()=>{if(this.open!==n)return;const h=n?"luzmo-opened":"luzmo-closed";if(l>0){a.dispatchEvent(new F(h,this,{interaction:this.type,publish:!1}));return}const c=async()=>{if(this.open!==n)return;await R();const f=this.triggerElement instanceof dt;this.dispatchEvent(new F(h,this,{interaction:this.type,publish:f})),a.dispatchEvent(new F(h,this,{interaction:this.type,publish:!1})),this.triggerElement&&!f&&this.triggerElement.dispatchEvent(new F(h,this,{interaction:this.type,publish:!0})),this.state=n?"opened":"closed",this.returnFocus(),await R(),await R(),n===this.open&&n===!1&&this.requestSlottable()};if(this.open!==n)return;const d=Xt(this.dialogEl);n!==!0&&d&&this.isConnected?(this.dialogEl.addEventListener("beforetoggle",()=>{c()},{once:!0}),this.dialogEl.hidePopover()):c()};return this.elements.forEach((a,l)=>{Pt(a,s(a,l),r(a,l))}),o}}return t}const ze="showPopover"in document.createElement("div");class Ne{constructor(){this.root=document.body,this.stack=[],this.handleScroll=t=>{t.target!==document&&t.target!==document.documentElement&&t.target!==document.body||this.stack.forEach(i=>{i.open&&(i.type==="auto"&&i.triggerElement instanceof HTMLElement&&i.triggerElement.closest("luzmo-picker, luzmo-select, luzmo-action-menu")&&t.stopPropagation(),document.dispatchEvent(new CustomEvent("luzmo-update-overlays",{bubbles:!0,composed:!0,cancelable:!0})))})},this.handlePointerdown=t=>{this.pointerdownPath=t.composedPath(),this.lastOverlay=this.stack.at(-1)},this.handlePointerup=()=>{const t=this.pointerdownPath;if(this.pointerdownPath=void 0,this.stack.length===0||!(t!=null&&t.length))return;const i=this.lastOverlay;this.lastOverlay=void 0;const n=this.stack.length-1,o=this.stack.filter((s,r)=>!t.find(l=>l===s||l===(s==null?void 0:s.triggerElement)&&(s==null?void 0:s.type)==="hint"||r===n&&s!==i&&s.triggerInteraction==="longpress")&&!s.shouldPreventClose()&&s.type!=="manual"&&!(s.type==="modal"&&i!==s));o.reverse(),o.forEach(s=>{this.closeOverlay(s);let r=s.parentOverlayToForceClose;for(;r;)this.closeOverlay(r),r=r.parentOverlayToForceClose})},this.handleBeforetoggle=t=>{const{target:i,newState:n}=t;n!=="open"&&this.closeOverlay(i)},this.handleKeydown=t=>{if(t.code!=="Escape"||this.stack.length===0)return;const i=this.stack.at(-1);if((i==null?void 0:i.type)==="page"){t.preventDefault();return}if((i==null?void 0:i.type)==="manual"){this.closeOverlay(i);return}ze||i&&this.closeOverlay(i)},this.bindEvents()}get document(){return this.root.ownerDocument||document}bindEvents(){this.document.addEventListener("pointerdown",this.handlePointerdown),this.document.addEventListener("pointerup",this.handlePointerup),this.document.addEventListener("keydown",this.handleKeydown),this.document.addEventListener("scroll",this.handleScroll,{capture:!0})}closeOverlay(t){const i=this.stack.indexOf(t);i!==-1&&this.stack.splice(i,1),t.open=!1}overlaysByTriggerElement(t){return this.stack.filter(i=>i.triggerElement===t)}add(t){if(this.stack.includes(t)){const i=this.stack.indexOf(t);i!==-1&&(this.stack.splice(i,1),this.stack.push(t));return}if(t.type==="auto"||t.type==="modal"||t.type==="page"){const i="luzmo-overlay-query-path",n=new Event(i,{composed:!0,bubbles:!0});t.addEventListener(i,o=>{const s=o.composedPath();this.stack.forEach(r=>{!s.find(l=>l===r)&&r.type!=="manual"&&r.type!=="modal"&&this.closeOverlay(r)})},{once:!0}),t.dispatchEvent(n)}else if(t.type==="hint"){if(this.stack.some(n=>n.type!=="manual"&&n.triggerElement&&n.triggerElement===t.triggerElement)){t.open=!1;return}this.stack.forEach(n=>{n.type==="hint"&&this.closeOverlay(n)})}requestAnimationFrame(()=>{this.stack.push(t),t.addEventListener("beforetoggle",this.handleBeforetoggle,{once:!0})})}remove(t){this.closeOverlay(t)}}const Jt=new Ne,_e=':host{display:contents;pointer-events:none;--luzmo-overlay-animation-distance: .5rem}:host(:has(> luzmo-tooltip)){--luzmo-overlay-animation-distance: var( --luzmo-tooltip-animation-distance, 4px )}.dialog{margin:0;border:0;background:none;padding:0;position:fixed;overflow:visible;opacity:1!important;box-sizing:border-box;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);height:auto;inset:auto;top:0;left:0;display:flex;--luzmo-overlay-open: true}.dialog:not([is-visible]){display:none}.dialog:focus{outline:none}dialog:modal{--luzmo-popover-filter: drop-shadow(0px 2px 6px rgba(0, 0, 0, .15))}:host(:not([open])) .dialog{--luzmo-overlay-open: false}.dialog::backdrop{display:none}.dialog:before{position:absolute;top:-999em;right:-999em;bottom:-999em;left:-999em;content:"";pointer-events:auto!important}.dialog:not(.not-immediately-closable):before{display:none}.dialog>div{width:100%}::slotted(*){pointer-events:auto;visibility:visible!important}::slotted(luzmo-popover){position:static}.dialog:not([actual-placement])[placement*=top]{padding-block:var(--luzmo-overlay-animation-distance);margin-top:var(--luzmo-overlay-animation-distance)}.dialog:not([actual-placement])[placement*=right]{padding-inline:var(--luzmo-overlay-animation-distance);margin-left:calc(-1 * var(--luzmo-overlay-animation-distance))}.dialog:not([actual-placement])[placement*=bottom]{padding-block:var(--luzmo-overlay-animation-distance);margin-top:calc(-1 * var(--luzmo-overlay-animation-distance))}.dialog:not([actual-placement])[placement*=left]{padding-inline:var(--luzmo-overlay-animation-distance);margin-left:var(--luzmo-overlay-animation-distance)}.dialog[actual-placement*=top]{padding-block:var(--luzmo-overlay-animation-distance);margin-top:var(--luzmo-overlay-animation-distance)}.dialog[actual-placement*=right]{padding-inline:var(--luzmo-overlay-animation-distance);margin-left:calc(-1 * var(--luzmo-overlay-animation-distance))}.dialog[actual-placement*=bottom]{padding-block:var(--luzmo-overlay-animation-distance);margin-top:calc(-1 * var(--luzmo-overlay-animation-distance))}.dialog[actual-placement*=left]{padding-inline:var(--luzmo-overlay-animation-distance);margin-left:var(--luzmo-overlay-animation-distance)}slot[name=longpress-describedby-descriptor]{display:none}@supports selector(:open){.dialog{opacity:0}.dialog:open{opacity:1;--luzmo-popover-filter: drop-shadow(0px 2px 6px rgba(0, 0, 0, .15))}}@supports selector(:popover-open){.dialog{opacity:0}.dialog:popover-open{opacity:1;--luzmo-popover-filter: drop-shadow(0px 2px 6px rgba(0, 0, 0, .15))}}@supports (overlay: auto){.dialog{display:none;transition:all var(--luzmo-overlay-animation-duration, .13s),translate 0s,display var(--luzmo-overlay-animation-duration, .13s);transition-behavior:allow-discrete}.dialog:popover-open,.dialog:modal{display:flex}}@supports (not selector(:open)) and (not selector(:popover-open)){:host:not([open]) .dialog{pointer-events:none}.dialog[actual-placement]{z-index:calc(var(--luzmo-overlay-z-index-base, 1000) + var(--luzmo-overlay-open-count))}}',G=Math.min,A=Math.max,wt=Math.round,pt=Math.floor,q=e=>({x:e,y:e}),Ie={left:"right",right:"left",bottom:"top",top:"bottom"},qe={start:"end",end:"start"};function Ft(e,t,i){return A(e,G(t,i))}function st(e,t){return typeof e=="function"?e(t):e}function X(e){return e.split("-")[0]}function rt(e){return e.split("-")[1]}function se(e){return e==="x"?"y":"x"}function Wt(e){return e==="y"?"height":"width"}function Q(e){return["top","bottom"].includes(X(e))?"y":"x"}function $t(e){return se(Q(e))}function Me(e,t,i){i===void 0&&(i=!1);const n=rt(e),o=$t(e),s=Wt(o);let r=o==="x"?n===(i?"end":"start")?"right":"left":n==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=bt(r)),[r,bt(r)]}function We(e){const t=bt(e);return[kt(e),t,kt(t)]}function kt(e){return e.replace(/start|end/g,t=>qe[t])}function $e(e,t,i){const n=["left","right"],o=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return i?t?o:n:t?n:o;case"left":case"right":return t?s:r;default:return[]}}function He(e,t,i,n){const o=rt(e);let s=$e(X(e),i==="start",n);return o&&(s=s.map(r=>r+"-"+o),t&&(s=s.concat(s.map(kt)))),s}function bt(e){return e.replace(/left|right|bottom|top/g,t=>Ie[t])}function Be(e){return{top:0,right:0,bottom:0,left:0,...e}}function re(e){return typeof e!="number"?Be(e):{top:e,right:e,bottom:e,left:e}}function Et(e){const{x:t,y:i,width:n,height:o}=e;return{width:n,height:o,top:i,left:t,right:t+n,bottom:i+o,x:t,y:i}}function Qt(e,t,i){let{reference:n,floating:o}=e;const s=Q(t),r=$t(t),a=Wt(r),l=X(t),h=s==="y",c=n.x+n.width/2-o.width/2,d=n.y+n.height/2-o.height/2,f=n[a]/2-o[a]/2;let u;switch(l){case"top":u={x:c,y:n.y-o.height};break;case"bottom":u={x:c,y:n.y+n.height};break;case"right":u={x:n.x+n.width,y:d};break;case"left":u={x:n.x-o.width,y:d};break;default:u={x:n.x,y:n.y}}switch(rt(t)){case"start":u[r]-=f*(i&&h?-1:1);break;case"end":u[r]+=f*(i&&h?-1:1);break}return u}const Ve=async(e,t,i)=>{const{placement:n="bottom",strategy:o="absolute",middleware:s=[],platform:r}=i,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let h=await r.getElementRects({reference:e,floating:t,strategy:o}),{x:c,y:d}=Qt(h,n,l),f=n,u={},p=0;for(let m=0;m<a.length;m++){const{name:v,fn:g}=a[m],{x:y,y:w,data:E,reset:b}=await g({x:c,y:d,initialPlacement:n,placement:f,strategy:o,middlewareData:u,rects:h,platform:r,elements:{reference:e,floating:t}});c=y??c,d=w??d,u={...u,[v]:{...u[v],...E}},b&&p<=50&&(p++,typeof b=="object"&&(b.placement&&(f=b.placement),b.rects&&(h=b.rects===!0?await r.getElementRects({reference:e,floating:t,strategy:o}):b.rects),{x:c,y:d}=Qt(h,f,l)),m=-1)}return{x:c,y:d,placement:f,strategy:o,middlewareData:u}};async function Ht(e,t){var i;t===void 0&&(t={});const{x:n,y:o,platform:s,rects:r,elements:a,strategy:l}=e,{boundary:h="clippingAncestors",rootBoundary:c="viewport",elementContext:d="floating",altBoundary:f=!1,padding:u=0}=st(t,e),p=re(u),v=a[f?d==="floating"?"reference":"floating":d],g=Et(await s.getClippingRect({element:(i=await(s.isElement==null?void 0:s.isElement(v)))==null||i?v:v.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(a.floating)),boundary:h,rootBoundary:c,strategy:l})),y=d==="floating"?{x:n,y:o,width:r.floating.width,height:r.floating.height}:r.reference,w=await(s.getOffsetParent==null?void 0:s.getOffsetParent(a.floating)),E=await(s.isElement==null?void 0:s.isElement(w))?await(s.getScale==null?void 0:s.getScale(w))||{x:1,y:1}:{x:1,y:1},b=Et(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:y,offsetParent:w,strategy:l}):y);return{top:(g.top-b.top+p.top)/E.y,bottom:(b.bottom-g.bottom+p.bottom)/E.y,left:(g.left-b.left+p.left)/E.x,right:(b.right-g.right+p.right)/E.x}}const Ue=e=>({name:"arrow",options:e,async fn(t){const{x:i,y:n,placement:o,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:h,padding:c=0}=st(e,t)||{};if(h==null)return{};const d=re(c),f={x:i,y:n},u=$t(o),p=Wt(u),m=await r.getDimensions(h),v=u==="y",g=v?"top":"left",y=v?"bottom":"right",w=v?"clientHeight":"clientWidth",E=s.reference[p]+s.reference[u]-f[u]-s.floating[p],b=f[u]-s.reference[u],L=await(r.getOffsetParent==null?void 0:r.getOffsetParent(h));let C=L?L[w]:0;(!C||!await(r.isElement==null?void 0:r.isElement(L)))&&(C=a.floating[w]||s.floating[p]);const $=E/2-b/2,N=C/2-m[p]/2-1,S=G(d[g],N),V=G(d[y],N),_=S,U=C-m[p]-V,O=C/2-m[p]/2+$,tt=Ft(_,O,U),H=!l.arrow&&rt(o)!=null&&O!==tt&&s.reference[p]/2-(O<_?S:V)-m[p]/2<0,I=H?O<_?O-_:O-U:0;return{[u]:f[u]+I,data:{[u]:tt,centerOffset:O-tt-I,...H&&{alignmentOffset:I}},reset:H}}}),Ke=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var i,n;const{placement:o,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:h}=t,{mainAxis:c=!0,crossAxis:d=!0,fallbackPlacements:f,fallbackStrategy:u="bestFit",fallbackAxisSideDirection:p="none",flipAlignment:m=!0,...v}=st(e,t);if((i=s.arrow)!=null&&i.alignmentOffset)return{};const g=X(o),y=Q(a),w=X(a)===a,E=await(l.isRTL==null?void 0:l.isRTL(h.floating)),b=f||(w||!m?[bt(a)]:We(a)),L=p!=="none";!f&&L&&b.push(...He(a,m,p,E));const C=[a,...b],$=await Ht(t,v),N=[];let S=((n=s.flip)==null?void 0:n.overflows)||[];if(c&&N.push($[g]),d){const O=Me(o,r,E);N.push($[O[0]],$[O[1]])}if(S=[...S,{placement:o,overflows:N}],!N.every(O=>O<=0)){var V,_;const O=(((V=s.flip)==null?void 0:V.index)||0)+1,tt=C[O];if(tt)return{data:{index:O,overflows:S},reset:{placement:tt}};let H=(_=S.filter(I=>I.overflows[0]<=0).sort((I,K)=>I.overflows[1]-K.overflows[1])[0])==null?void 0:_.placement;if(!H)switch(u){case"bestFit":{var U;const I=(U=S.filter(K=>{if(L){const j=Q(K.placement);return j===y||j==="y"}return!0}).map(K=>[K.placement,K.overflows.filter(j=>j>0).reduce((j,xe)=>j+xe,0)]).sort((K,j)=>K[1]-j[1])[0])==null?void 0:U[0];I&&(H=I);break}case"initialPlacement":H=a;break}if(o!==H)return{reset:{placement:H}}}return{}}}};async function je(e,t){const{placement:i,platform:n,elements:o}=e,s=await(n.isRTL==null?void 0:n.isRTL(o.floating)),r=X(i),a=rt(i),l=Q(i)==="y",h=["left","top"].includes(r)?-1:1,c=s&&l?-1:1,d=st(t,e);let{mainAxis:f,crossAxis:u,alignmentAxis:p}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return a&&typeof p=="number"&&(u=a==="end"?p*-1:p),l?{x:u*c,y:f*h}:{x:f*h,y:u*c}}const Ye=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var i,n;const{x:o,y:s,placement:r,middlewareData:a}=t,l=await je(t,e);return r===((i=a.offset)==null?void 0:i.placement)&&(n=a.arrow)!=null&&n.alignmentOffset?{}:{x:o+l.x,y:s+l.y,data:{...l,placement:r}}}}},Ge=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:i,y:n,placement:o}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:v=>{let{x:g,y}=v;return{x:g,y}}},...l}=st(e,t),h={x:i,y:n},c=await Ht(t,l),d=Q(X(o)),f=se(d);let u=h[f],p=h[d];if(s){const v=f==="y"?"top":"left",g=f==="y"?"bottom":"right",y=u+c[v],w=u-c[g];u=Ft(y,u,w)}if(r){const v=d==="y"?"top":"left",g=d==="y"?"bottom":"right",y=p+c[v],w=p-c[g];p=Ft(y,p,w)}const m=a.fn({...t,[f]:u,[d]:p});return{...m,data:{x:m.x-i,y:m.y-n,enabled:{[f]:s,[d]:r}}}}}},Xe=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var i,n;const{placement:o,rects:s,platform:r,elements:a}=t,{apply:l=()=>{},...h}=st(e,t),c=await Ht(t,h),d=X(o),f=rt(o),u=Q(o)==="y",{width:p,height:m}=s.floating;let v,g;d==="top"||d==="bottom"?(v=d,g=f===(await(r.isRTL==null?void 0:r.isRTL(a.floating))?"start":"end")?"left":"right"):(g=d,v=f==="end"?"top":"bottom");const y=m-c.top-c.bottom,w=p-c.left-c.right,E=G(m-c[v],y),b=G(p-c[g],w),L=!t.middlewareData.shift;let C=E,$=b;if((i=t.middlewareData.shift)!=null&&i.enabled.x&&($=w),(n=t.middlewareData.shift)!=null&&n.enabled.y&&(C=y),L&&!f){const S=A(c.left,0),V=A(c.right,0),_=A(c.top,0),U=A(c.bottom,0);u?$=p-2*(S!==0||V!==0?S+V:A(c.left,c.right)):C=m-2*(_!==0||U!==0?_+U:A(c.top,c.bottom))}await l({...t,availableWidth:$,availableHeight:C});const N=await r.getDimensions(a.floating);return p!==N.width||m!==N.height?{reset:{rects:!0}}:{}}}};function Ot(){return typeof window<"u"}function at(e){return ae(e)?(e.nodeName||"").toLowerCase():"#document"}function D(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function W(e){var t;return(t=(ae(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function ae(e){return Ot()?e instanceof Node||e instanceof D(e).Node:!1}function k(e){return Ot()?e instanceof Element||e instanceof D(e).Element:!1}function M(e){return Ot()?e instanceof HTMLElement||e instanceof D(e).HTMLElement:!1}function Zt(e){return!Ot()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof D(e).ShadowRoot}function ut(e){const{overflow:t,overflowX:i,overflowY:n,display:o}=z(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+i)&&!["inline","contents"].includes(o)}function Je(e){return["table","td","th"].includes(at(e))}function Tt(e){return[":popover-open",":modal"].some(t=>{try{return e.matches(t)}catch{return!1}})}function Bt(e){const t=Vt(),i=k(e)?z(e):e;return["transform","translate","scale","rotate","perspective"].some(n=>i[n]?i[n]!=="none":!1)||(i.containerType?i.containerType!=="normal":!1)||!t&&(i.backdropFilter?i.backdropFilter!=="none":!1)||!t&&(i.filter?i.filter!=="none":!1)||["transform","translate","scale","rotate","perspective","filter"].some(n=>(i.willChange||"").includes(n))||["paint","layout","strict","content"].some(n=>(i.contain||"").includes(n))}function Qe(e){let t=J(e);for(;M(t)&&!nt(t);){if(Bt(t))return t;if(Tt(t))return null;t=J(t)}return null}function Vt(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function nt(e){return["html","body","#document"].includes(at(e))}function z(e){return D(e).getComputedStyle(e)}function At(e){return k(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function J(e){if(at(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Zt(e)&&e.host||W(e);return Zt(t)?t.host:t}function le(e){const t=J(e);return nt(t)?e.ownerDocument?e.ownerDocument.body:e.body:M(t)&&ut(t)?t:le(t)}function ct(e,t,i){var n;t===void 0&&(t=[]),i===void 0&&(i=!0);const o=le(e),s=o===((n=e.ownerDocument)==null?void 0:n.body),r=D(o);if(s){const a=zt(r);return t.concat(r,r.visualViewport||[],ut(o)?o:[],a&&i?ct(a):[])}return t.concat(o,ct(o,[],i))}function zt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function ce(e){const t=z(e);let i=parseFloat(t.width)||0,n=parseFloat(t.height)||0;const o=M(e),s=o?e.offsetWidth:i,r=o?e.offsetHeight:n,a=wt(i)!==s||wt(n)!==r;return a&&(i=s,n=r),{width:i,height:n,$:a}}function Ut(e){return k(e)?e:e.contextElement}function et(e){const t=Ut(e);if(!M(t))return q(1);const i=t.getBoundingClientRect(),{width:n,height:o,$:s}=ce(t);let r=(s?wt(i.width):i.width)/n,a=(s?wt(i.height):i.height)/o;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}const Ze=q(0);function he(e){const t=D(e);return!Vt()||!t.visualViewport?Ze:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function ti(e,t,i){return t===void 0&&(t=!1),!i||t&&i!==D(e)?!1:t}function Z(e,t,i,n){t===void 0&&(t=!1),i===void 0&&(i=!1);const o=e.getBoundingClientRect(),s=Ut(e);let r=q(1);t&&(n?k(n)&&(r=et(n)):r=et(e));const a=ti(s,i,n)?he(s):q(0);let l=(o.left+a.x)/r.x,h=(o.top+a.y)/r.y,c=o.width/r.x,d=o.height/r.y;if(s){const f=D(s),u=n&&k(n)?D(n):n;let p=f,m=zt(p);for(;m&&n&&u!==p;){const v=et(m),g=m.getBoundingClientRect(),y=z(m),w=g.left+(m.clientLeft+parseFloat(y.paddingLeft))*v.x,E=g.top+(m.clientTop+parseFloat(y.paddingTop))*v.y;l*=v.x,h*=v.y,c*=v.x,d*=v.y,l+=w,h+=E,p=D(m),m=zt(p)}}return Et({width:c,height:d,x:l,y:h})}function Kt(e,t){const i=At(e).scrollLeft;return t?t.left+i:Z(W(e)).left+i}function de(e,t,i){i===void 0&&(i=!1);const n=e.getBoundingClientRect(),o=n.left+t.scrollLeft-(i?0:Kt(e,n)),s=n.top+t.scrollTop;return{x:o,y:s}}function ei(e){let{elements:t,rect:i,offsetParent:n,strategy:o}=e;const s=o==="fixed",r=W(n),a=t?Tt(t.floating):!1;if(n===r||a&&s)return i;let l={scrollLeft:0,scrollTop:0},h=q(1);const c=q(0),d=M(n);if((d||!d&&!s)&&((at(n)!=="body"||ut(r))&&(l=At(n)),M(n))){const u=Z(n);h=et(n),c.x=u.x+n.clientLeft,c.y=u.y+n.clientTop}const f=r&&!d&&!s?de(r,l,!0):q(0);return{width:i.width*h.x,height:i.height*h.y,x:i.x*h.x-l.scrollLeft*h.x+c.x+f.x,y:i.y*h.y-l.scrollTop*h.y+c.y+f.y}}function ii(e){return Array.from(e.getClientRects())}function ni(e){const t=W(e),i=At(e),n=e.ownerDocument.body,o=A(t.scrollWidth,t.clientWidth,n.scrollWidth,n.clientWidth),s=A(t.scrollHeight,t.clientHeight,n.scrollHeight,n.clientHeight);let r=-i.scrollLeft+Kt(e);const a=-i.scrollTop;return z(n).direction==="rtl"&&(r+=A(t.clientWidth,n.clientWidth)-o),{width:o,height:s,x:r,y:a}}function oi(e,t){const i=D(e),n=W(e),o=i.visualViewport;let s=n.clientWidth,r=n.clientHeight,a=0,l=0;if(o){s=o.width,r=o.height;const h=Vt();(!h||h&&t==="fixed")&&(a=o.offsetLeft,l=o.offsetTop)}return{width:s,height:r,x:a,y:l}}function si(e,t){const i=Z(e,!0,t==="fixed"),n=i.top+e.clientTop,o=i.left+e.clientLeft,s=M(e)?et(e):q(1),r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=o*s.x,h=n*s.y;return{width:r,height:a,x:l,y:h}}function te(e,t,i){let n;if(t==="viewport")n=oi(e,i);else if(t==="document")n=ni(W(e));else if(k(t))n=si(t,i);else{const o=he(e);n={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return Et(n)}function ue(e,t){const i=J(e);return i===t||!k(i)||nt(i)?!1:z(i).position==="fixed"||ue(i,t)}function ri(e,t){const i=t.get(e);if(i)return i;let n=ct(e,[],!1).filter(a=>k(a)&&at(a)!=="body"),o=null;const s=z(e).position==="fixed";let r=s?J(e):e;for(;k(r)&&!nt(r);){const a=z(r),l=Bt(r);!l&&a.position==="fixed"&&(o=null),(s?!l&&!o:!l&&a.position==="static"&&!!o&&["absolute","fixed"].includes(o.position)||ut(r)&&!l&&ue(e,r))?n=n.filter(c=>c!==r):o=a,r=J(r)}return t.set(e,n),n}function ai(e){let{element:t,boundary:i,rootBoundary:n,strategy:o}=e;const r=[...i==="clippingAncestors"?Tt(t)?[]:ri(t,this._c):[].concat(i),n],a=r[0],l=r.reduce((h,c)=>{const d=te(t,c,o);return h.top=A(d.top,h.top),h.right=G(d.right,h.right),h.bottom=G(d.bottom,h.bottom),h.left=A(d.left,h.left),h},te(t,a,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function li(e){const{width:t,height:i}=ce(e);return{width:t,height:i}}function ci(e,t,i){const n=M(t),o=W(t),s=i==="fixed",r=Z(e,!0,s,t);let a={scrollLeft:0,scrollTop:0};const l=q(0);if(n||!n&&!s)if((at(t)!=="body"||ut(o))&&(a=At(t)),n){const f=Z(t,!0,s,t);l.x=f.x+t.clientLeft,l.y=f.y+t.clientTop}else o&&(l.x=Kt(o));const h=o&&!n&&!s?de(o,a):q(0),c=r.left+a.scrollLeft-l.x-h.x,d=r.top+a.scrollTop-l.y-h.y;return{x:c,y:d,width:r.width,height:r.height}}function Lt(e){return z(e).position==="static"}function ee(e,t){if(!M(e)||z(e).position==="fixed")return null;if(t)return t(e);let i=e.offsetParent;return W(e)===i&&(i=i.ownerDocument.body),i}function pe(e,t){const i=D(e);if(Tt(e))return i;if(!M(e)){let o=J(e);for(;o&&!nt(o);){if(k(o)&&!Lt(o))return o;o=J(o)}return i}let n=ee(e,t);for(;n&&Je(n)&&Lt(n);)n=ee(n,t);return n&&nt(n)&&Lt(n)&&!Bt(n)?i:n||Qe(e)||i}const hi=async function(e){const t=this.getOffsetParent||pe,i=this.getDimensions,n=await i(e.floating);return{reference:ci(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function di(e){return z(e).direction==="rtl"}const ui={convertOffsetParentRelativeRectToViewportRelativeRect:ei,getDocumentElement:W,getClippingRect:ai,getOffsetParent:pe,getElementRects:hi,getClientRects:ii,getDimensions:li,getScale:et,isElement:k,isRTL:di};function fe(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function pi(e,t){let i=null,n;const o=W(e);function s(){var a;clearTimeout(n),(a=i)==null||a.disconnect(),i=null}function r(a,l){a===void 0&&(a=!1),l===void 0&&(l=1),s();const h=e.getBoundingClientRect(),{left:c,top:d,width:f,height:u}=h;if(a||t(),!f||!u)return;const p=pt(d),m=pt(o.clientWidth-(c+f)),v=pt(o.clientHeight-(d+u)),g=pt(c),w={rootMargin:-p+"px "+-m+"px "+-v+"px "+-g+"px",threshold:A(0,G(1,l))||1};let E=!0;function b(L){const C=L[0].intersectionRatio;if(C!==l){if(!E)return r();C?r(!1,C):n=setTimeout(()=>{r(!1,1e-7)},1e3)}C===1&&!fe(h,e.getBoundingClientRect())&&r(),E=!1}try{i=new IntersectionObserver(b,{...w,root:o.ownerDocument})}catch{i=new IntersectionObserver(b,w)}i.observe(e)}return r(!0),s}function ie(e,t,i,n){n===void 0&&(n={});const{ancestorScroll:o=!0,ancestorResize:s=!0,elementResize:r=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:l=!1}=n,h=Ut(e),c=o||s?[...h?ct(h):[],...ct(t)]:[];c.forEach(g=>{o&&g.addEventListener("scroll",i,{passive:!0}),s&&g.addEventListener("resize",i)});const d=h&&a?pi(h,i):null;let f=-1,u=null;r&&(u=new ResizeObserver(g=>{let[y]=g;y&&y.target===h&&u&&(u.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var w;(w=u)==null||w.observe(t)})),i()}),h&&!l&&u.observe(h),u.observe(t));let p,m=l?Z(e):null;l&&v();function v(){const g=Z(e);m&&!fe(m,g)&&i(),m=g,p=requestAnimationFrame(v)}return i(),()=>{var g;c.forEach(y=>{o&&y.removeEventListener("scroll",i),s&&y.removeEventListener("resize",i)}),d==null||d(),(g=u)==null||g.disconnect(),u=null,l&&cancelAnimationFrame(p)}}const fi=Ye,mi=Ge,ne=Ke,gi=Xe,vi=Ue,yi=(e,t,i)=>{const n=new Map,o={platform:ui,...i},s={...o.platform,_c:n};return Ve(e,t,{...o,platform:s})};function ft(e){if(e===void 0)return 0;const t=window.devicePixelRatio||1;return Math.round(e*t)/t}const mt=8,wi=100,bi=e=>({left:["right","bottom","top"],"left-start":["right-start","bottom","top"],"left-end":["right-end","bottom","top"],right:["left","bottom","top"],"right-start":["left-start","bottom","top"],"right-end":["left-end","bottom","top"],top:["bottom","left","right"],"top-start":["bottom-start","left","right"],"top-end":["bottom-end","left","right"],bottom:["top","left","right"],"bottom-start":["top-start","left","right"],"bottom-end":["top-end","left","right"]})[e]??[e],Ei=Symbol("placement updated");class me{constructor(t){this.originalPlacements=new WeakMap,this.allowPlacementUpdate=!1,this.closeForAncestorUpdate=()=>{!this.allowPlacementUpdate&&this.options.type!=="modal"&&this.cleanup&&this.target.dispatchEvent(new Event("close",{bubbles:!0})),this.allowPlacementUpdate=!1},this.updatePlacement=()=>{this.computePlacement()},this.resetOverlayPosition=()=>{!this.target||!this.options||(this.clearOverlayPosition(),this.host.offsetHeight,this.computePlacement())},this.host=t,this.host.addController(this)}placeOverlay(t=this.target,i=this.options){if(this.target=t,this.options=i,!t||!i)return;const n=ie(i.trigger,t,this.closeForAncestorUpdate,{ancestorResize:!1,elementResize:!1,layoutShift:!1}),o=ie(i.trigger,t,this.updatePlacement,{ancestorScroll:!1});this.cleanup=()=>{var s;(s=this.host.elements)==null||s.forEach(r=>{r.addEventListener("luzmo-closed",()=>{const a=this.originalPlacements.get(r);a&&r.setAttribute("placement",a),this.originalPlacements.delete(r)},{once:!0})}),n(),o()}}async computePlacement(){var f,u;const{options:t,target:i}=this;await(document.fonts?document.fonts.ready:Promise.resolve());const n=t.trigger instanceof HTMLElement?ne():ne({padding:mt,fallbackPlacements:bi(t.placement)}),[o=0,s=0]=Array.isArray(t==null?void 0:t.offset)?t.offset:[t.offset,0],r=(f=this.host.elements.find(p=>p.tipElement))==null?void 0:f.tipElement,a=[fi({mainAxis:o,crossAxis:s}),mi({padding:mt}),n,gi({padding:mt,apply:({availableWidth:p,availableHeight:m,rects:{floating:v}})=>{const g=Math.max(wi,Math.floor(m)),y=v.height;this.initialHeight=this.isConstrained&&this.initialHeight||y,this.isConstrained=y<this.initialHeight||g<=y;const w=this.isConstrained?`${g}px`:"";Object.assign(i.style,{maxWidth:`${Math.floor(p)}px`,maxHeight:w})}}),...r?[vi({element:r,padding:t.tipPadding||mt})]:[]],{x:l,y:h,placement:c,middlewareData:d}=await yi(t.trigger,i,{placement:t.placement,middleware:a,strategy:"fixed"});if(Object.assign(i.style,{top:"0px",left:"0px",translate:`${ft(l)}px ${ft(h)}px`}),i.setAttribute("actual-placement",c),(u=this.host.elements)==null||u.forEach(p=>{this.originalPlacements.has(p)||this.originalPlacements.set(p,p.getAttribute("placement")),p.setAttribute("placement",c)}),r&&d.arrow){const{x:p,y:m}=d.arrow;Object.assign(r.style,{top:c.startsWith("right")||c.startsWith("left")?"0px":"",left:c.startsWith("bottom")||c.startsWith("top")?"0px":"",translate:`${ft(p)}px ${ft(m)}px`})}}clearOverlayPosition(){this.target&&(this.target.style.removeProperty("max-height"),this.target.style.removeProperty("max-width"),this.initialHeight=void 0,this.isConstrained=!1)}hostConnected(){document.addEventListener("luzmo-update-overlays",this.resetOverlayPosition)}hostUpdated(){var t;this.host.open||((t=this.cleanup)==null||t.call(this),this.cleanup=void 0)}hostDisconnected(){var t;(t=this.cleanup)==null||t.call(this),this.cleanup=void 0,document.removeEventListener("luzmo-update-overlays",this.resetOverlayPosition)}}var ot=(e=>(e.click="click",e.hover="hover",e.longpress="longpress",e))(ot||{});const xt=Symbol("lastInteractionType"),gt="remove-focus-ring-safari-hack";class Rt{constructor(t,{overlay:i,isPersistent:n,handleOverlayReady:o}){this.target=t,this.isLazilyOpen=!1,this.isPersistent=!1,this.isPersistent=!!n,this.handleOverlayReady=o,this.isPersistent&&this.init(),this.overlay=i}get activelyOpening(){return!1}get open(){var t;return((t=this.overlay)==null?void 0:t.open)??this.isLazilyOpen}set open(t){if(t!==this.open){if(this.isLazilyOpen=t,this.overlay){this.overlay.open=t,this.target[xt]=this.type;return}t&&(customElements.whenDefined("luzmo-overlay").then(async()=>{const{LuzmoOverlay:i}=await Promise.resolve().then(()=>Ct);this.overlay=new i,this.overlay.open=!0,this.target[xt]=this.type}),Promise.resolve().then(()=>Ct))}}get overlay(){return this._overlay}set overlay(t){var i;t&&this.overlay!==t&&(this.overlay&&this.overlay.removeController(this),this._overlay=t,this.overlay.addController(this),this.initOverlay(),this.prepareDescription(this.target),(i=this.handleOverlayReady)==null||i.call(this,this.overlay))}prepareDescription(t){}releaseDescription(){}shouldCompleteOpen(){}init(){}initOverlay(){}abort(){var t;this.releaseDescription(),(t=this.abortController)==null||t.abort()}hostConnected(){this.init()}hostDisconnected(){this.isPersistent||this.abort()}}class ge extends Rt{constructor(){super(...arguments),this.type=ot.click,this.preventNextToggle=!1}handleClick(){this.preventNextToggle||(this.open=!this.open),this.preventNextToggle=!1}handlePointerdown(){this.preventNextToggle=this.open}init(){var i;(i=this.abortController)==null||i.abort(),this.abortController=new AbortController;const{signal:t}=this.abortController;this.target.addEventListener("click",()=>this.handleClick(),{signal:t}),this.target.addEventListener("pointerdown",()=>this.handlePointerdown(),{signal:t})}}const xi=300;class ve extends Rt{constructor(){super(...arguments),this.type=ot.hover,this.elementIds=[],this.focusedin=!1,this.pointerentered=!1}handleKeyup(t){(t.code==="Tab"||t.code==="Escape")&&(this.open=!0,this.removeSafariFocusRingClass())}handleTargetFocusin(){if(this.target.matches(":focus-visible")){if(yt.isWebKit()&&this.target[xt]===ot.click){this.target.classList.add(gt);return}this.open=!0,this.focusedin=!0,this.removeSafariFocusRingClass()}}handleTargetFocusout(){this.removeSafariFocusRingClass(),this.focusedin=!1,!this.pointerentered&&(this.open=!1)}handleTargetPointerenter(){var t;this.hoverTimeout&&(clearTimeout(this.hoverTimeout),this.hoverTimeout=void 0),!((t=this.overlay)!=null&&t.disabled)&&(this.open=!0,this.pointerentered=!0)}handleTargetPointerleave(){this.doPointerleave()}handleHostPointerenter(){this.hoverTimeout&&(clearTimeout(this.hoverTimeout),this.hoverTimeout=void 0)}handleHostPointerleave(){this.doPointerleave()}prepareDescription(){if(this.overlay.elements.length===0)return;const t=this.target.getRootNode(),i=this.overlay.elements[0].getRootNode(),n=this.overlay.getRootNode();t===n?this.prepareOverlayRelativeDescription():t===i&&this.prepareContentRelativeDescription()}prepareOverlayRelativeDescription(){const t=St.conditionAttributeWithId(this.target,"aria-describedby",[this.overlay.id]);this.releaseDescription=()=>{t(),this.releaseDescription=Y}}prepareContentRelativeDescription(){const t=[],i=this.overlay.elements.map(o=>(t.push(o.id),o.id||(o.id=`${this.overlay.tagName.toLowerCase()}-helper-${Nt.randomID()}`),o.id));this.elementIds=t;const n=St.conditionAttributeWithId(this.target,"aria-describedby",i);this.releaseDescription=()=>{n(),this.overlay.elements.map((o,s)=>{o.id=this.elementIds[s]}),this.releaseDescription=Y}}doPointerleave(){this.pointerentered=!1;const t=this.target;this.focusedin&&t.matches(":focus-visible")||(this.hoverTimeout=setTimeout(()=>{this.open=!1},xi))}init(){var i;(i=this.abortController)==null||i.abort(),this.abortController=new AbortController;const{signal:t}=this.abortController;this.target.addEventListener("keyup",n=>this.handleKeyup(n),{signal:t}),this.target.addEventListener("focusin",()=>this.handleTargetFocusin(),{signal:t}),this.target.addEventListener("focusout",()=>this.handleTargetFocusout(),{signal:t}),this.target.addEventListener("pointerenter",()=>this.handleTargetPointerenter(),{signal:t}),this.target.addEventListener("pointerleave",()=>this.handleTargetPointerleave(),{signal:t}),this.overlay&&this.initOverlay()}initOverlay(){if(!this.abortController)return;const{signal:t}=this.abortController;this.overlay.addEventListener("pointerenter",()=>this.handleHostPointerenter(),{signal:t}),this.overlay.addEventListener("pointerleave",()=>this.handleHostPointerleave(),{signal:t})}removeSafariFocusRingClass(){yt.isWebKit()&&this.target.classList.contains(gt)&&this.target.classList.remove(gt)}}const Ci=300,ye={touch:"Double tap and long press for additional options",keyboard:"Press Space or Alt+Down Arrow for additional options",mouse:"Click and hold for additional options"};class we extends Rt{constructor(){super(...arguments),this.type=ot.longpress,this.longpressState=null,this.releaseDescription=Y,this.handlePointerup=()=>{var t;clearTimeout(this.timeout),this.target&&(this.longpressState=((t=this.overlay)==null?void 0:t.state)==="opening"?"pressed":null,document.removeEventListener("pointerup",this.handlePointerup),document.removeEventListener("pointercancel",this.handlePointerup))}}get activelyOpening(){return this.longpressState==="opening"||this.longpressState==="pressed"}handleLongpress(){this.open=!0,this.longpressState=this.longpressState==="potential"?"opening":"pressed"}handlePointerdown(t){!this.target||t.button!==0||(this.longpressState="potential",document.addEventListener("pointerup",this.handlePointerup),document.addEventListener("pointercancel",this.handlePointerup),"holdAffordance"in this.target)||(this.timeout=setTimeout(()=>{this.target&&this.target.dispatchEvent(new CustomEvent("longpress",{bubbles:!0,composed:!0,detail:{source:"pointer"}}))},Ci))}handleKeydown(t){const{code:i,altKey:n}=t;n&&i==="ArrowDown"&&(t.stopPropagation(),t.stopImmediatePropagation())}handleKeyup(t){const{code:i,altKey:n}=t;if(i==="Space"||n&&i==="ArrowDown"){if(!this.target)return;t.stopPropagation(),this.target.dispatchEvent(new CustomEvent("longpress",{bubbles:!0,composed:!0,detail:{source:"keyboard"}})),setTimeout(()=>{this.longpressState=null})}}prepareDescription(t){if(this.releaseDescription!==Y||this.overlay.elements.length===0)return;const i=document.createElement("div");i.id=`longpress-describedby-descriptor-${Nt.randomID()}`;const n=yt.isIOS()||yt.isAndroid()?"touch":"keyboard";i.textContent=ye[n],i.slot="longpress-describedby-descriptor";const o=t.getRootNode(),s=this.overlay.getRootNode();o===s?this.overlay.append(i):(i.hidden=!("host"in o),t.after(i));const r=St.conditionAttributeWithId(t,"aria-describedby",[i.id]);this.releaseDescription=()=>{r(),i.remove(),this.releaseDescription=Y}}shouldCompleteOpen(){this.longpressState=this.longpressState==="pressed"?null:this.longpressState}init(){var i;(i=this.abortController)==null||i.abort(),this.abortController=new AbortController;const{signal:t}=this.abortController;this.target.addEventListener("longpress",()=>this.handleLongpress(),{signal:t}),this.target.addEventListener("pointerdown",n=>this.handlePointerdown(n),{signal:t}),this.prepareDescription(this.target),!this.target.holdAffordance&&(this.target.addEventListener("keydown",n=>this.handleKeydown(n),{signal:t}),this.target.addEventListener("keyup",n=>this.handleKeyup(n),{signal:t}))}}const be={click:ge,longpress:we,hover:ve};var Pi=Object.defineProperty,Oi=Object.getOwnPropertyDescriptor,T=(e,t,i,n)=>{for(var o=n>1?void 0:n?Oi(t,i):t,s=e.length-1,r;s>=0;s--)(r=e[s])&&(o=(n?r(t,i,o):r(o))||o);return n&&o&&Pi(t,i,o),o};const Ti="showPopover"in document.createElement("div");let vt=Le(it);vt=Ti?ke(vt):Se(vt);var B;const P=(B=class extends vt{constructor(){super(...arguments),this._delayed=!1,this._disabled=!1,this.offset=0,this._open=!1,this.lastRequestSlottableState=!1,this.receivesFocus="auto",this._state="closed",this.triggerElement=null,this.type="auto",this.wasOpen=!1,this.closeOnFocusOut=t=>{if(!t.relatedTarget)return;const i=new Event("overlay-relation-query",{bubbles:!0,composed:!0});t.relatedTarget.addEventListener(i.type,n=>{n.composedPath().includes(this)||(this.open=!1)}),t.relatedTarget.dispatchEvent(i)}}get delayed(){var t;return((t=this.elements.at(-1))==null?void 0:t.hasAttribute("delayed"))||this._delayed}set delayed(t){this._delayed=t}get disabled(){return this._disabled}set disabled(t){var i;this._disabled=t,t?((i=this.strategy)==null||i.abort(),this.wasOpen=this.open,this.open=!1):(this.bindEvents(),this.open=this.open||this.wasOpen,this.wasOpen=!1)}get hasNonVirtualTrigger(){return!!this.triggerElement&&!(this.triggerElement instanceof dt)}get placementController(){return this._placementController||(this._placementController=new me(this)),this._placementController}get open(){return this._open}set open(t){var i;t&&this.disabled||t!==this.open&&((i=this.strategy)!=null&&i.activelyOpening&&!t||(this._open=t,this.open&&(B.openCount+=1),this.requestUpdate("open",!this.open),this.open&&this.requestSlottable()))}get state(){return this._state}set state(t){var n;if(t===this.state)return;const i=this.state;this._state=t,(this.state==="opened"||this.state==="closed")&&((n=this.strategy)==null||n.shouldCompleteOpen()),this.requestUpdate("state",i)}get elementResolver(){return this._elementResolver||(this._elementResolver=new Yt.ElementResolutionController(this)),this._elementResolver}get usesDialog(){return this.type==="modal"||this.type==="page"}get popoverValue(){if("popover"in this)switch(this.type){case"modal":case"page":return;case"hint":return"manual";default:return this.type}}get requiresPositioning(){return!(this.type==="page"||!this.open||!this.triggerElement||!this.placement&&this.type!=="hint")}managePosition(){if(!this.requiresPositioning||!this.open)return;const t=this.offset||0,i=this.triggerElement,n=this.placement||"right",o=this.tipPadding;this.placementController.placeOverlay(this.dialogEl,{offset:t,placement:n,tipPadding:o,trigger:i,type:this.type})}async managePopoverOpen(){super.managePopoverOpen();const t=this.open;if(this.open!==t||(await this.manageDelay(t),this.open!==t)||(this.triggerInteraction==="longpress"&&await R(),await this.ensureOnDOM(t),this.open!==t))return;const i=await this.makeTransition(t);this.open===t&&await this.applyFocus(t,i)}async applyFocus(t,i){if(!(this.receivesFocus==="false"||this.type==="hint")){if(await R(),await R(),t===this.open&&!this.open){this.hasNonVirtualTrigger&&this.contains(this.getRootNode().activeElement)&&this.triggerElement.focus();return}i==null||i.focus()}}returnFocus(){var i;if(this.open||this.type==="hint")return;const t=()=>{var s,r;const n=[];let o=document.activeElement;for(;(s=o==null?void 0:o.shadowRoot)!=null&&s.activeElement;)o=o.shadowRoot.activeElement;for(;o;){const a=o.assignedSlot||o.parentElement||((r=o.getRootNode())==null?void 0:r.host);a&&n.push(a),o=a}return n};this.receivesFocus!=="false"&&((i=this.triggerElement)!=null&&i.focus)&&(this.contains(this.getRootNode().activeElement)||t().includes(this)||document.activeElement===document.body)&&this.triggerElement.focus()}async manageOpen(t){if(!(!this.isConnected&&this.open)&&(this.hasUpdated||await this.updateComplete,this.open?(Jt.add(this),this.willPreventClose&&(document.addEventListener("pointerup",()=>{this.dialogEl.classList.toggle("not-immediately-closable",!1),this.willPreventClose=!1},{once:!0}),this.dialogEl.classList.toggle("not-immediately-closable",!0))):(t&&this.dispose(),Jt.remove(this)),this.open&&this.state!=="opened"?this.state="opening":!this.open&&this.state!=="closed"&&(this.state="closing"),this.usesDialog?this.manageDialogOpen():this.managePopoverOpen(),this.type==="auto")){const i=this.getRootNode();this.open?i.addEventListener("focusout",this.closeOnFocusOut,{capture:!0}):i.removeEventListener("focusout",this.closeOnFocusOut,{capture:!0})}}bindEvents(){var t;(t=this.strategy)==null||t.abort(),this.strategy=void 0,this.hasNonVirtualTrigger&&this.triggerInteraction&&(this.strategy=new be[this.triggerInteraction](this.triggerElement,{overlay:this}))}handleBeforetoggle(t){t.newState!=="open"&&this.handleBrowserClose(t)}handleBrowserClose(t){var i;if(t.stopPropagation(),!((i=this.strategy)!=null&&i.activelyOpening)){this.open=!1;return}this.manuallyKeepOpen()}manuallyKeepOpen(){this.open=!0,this.placementController.allowPlacementUpdate=!0,this.manageOpen(!1)}handleSlotchange(){var t,i;this.elements.length===0?(t=this.strategy)==null||t.releaseDescription():this.hasNonVirtualTrigger&&((i=this.strategy)==null||i.prepareDescription(this.triggerElement))}shouldPreventClose(){const t=this.willPreventClose;return this.willPreventClose=!1,t}requestSlottable(){this.lastRequestSlottableState!==this.open&&(this.open||document.body.offsetHeight,this.dispatchEvent(new Gt.SlottableRequestEvent("overlay-content",this.open?{}:Gt.removeSlottableRequest)),this.lastRequestSlottableState=this.open)}willUpdate(t){var n;if(this.hasAttribute("id")||this.setAttribute("id",`${this.tagName.toLowerCase()}-${Nt.randomID()}`),t.has("open")&&(this.hasUpdated||this.open)&&this.manageOpen(t.get("open")),t.has("trigger")){const[o,s]=((n=this.trigger)==null?void 0:n.split("@"))||[];this.elementResolver.selector=o?`#${o}`:"",this.triggerInteraction=s}let i=!1;t.has(Yt.elementResolverUpdatedSymbol)&&(i=this.triggerElement,this.triggerElement=this.elementResolver.element),t.has("triggerElement")&&(i=t.get("triggerElement")),i!==!1&&this.bindEvents()}updated(t){super.updated(t),t.has("placement")&&(this.placement?this.dialogEl.setAttribute("actual-placement",this.placement):this.dialogEl.removeAttribute("actual-placement"),this.open&&t.get("placement")!==void 0&&this.placementController.resetOverlayPosition()),t.has("state")&&this.state==="closed"&&t.get("state")!==void 0&&this.placementController.clearOverlayPosition()}renderContent(){return x.x` <slot @slotchange=${this.handleSlotchange}></slot> `}get dialogStyleMap(){return{"--luzmo-overlay-open-count":B.openCount.toString()}}renderDialog(){return x.x`
19
- <dialog
20
- class="dialog"
21
- part="dialog"
22
- placement=${Dt.o(this.requiresPositioning?this.placement||"right":void 0)}
23
- style=${jt.o(this.dialogStyleMap)}
24
- @close=${this.handleBrowserClose}
25
- @cancel=${this.handleBrowserClose}
26
- @beforetoggle=${this.handleBeforetoggle}
27
- ?is-visible=${this.state!=="closed"}
28
- >
29
- ${this.renderContent()}
30
- </dialog>
31
- `}renderPopover(){return x.x`
32
- <div
33
- class="dialog"
34
- part="dialog"
35
- placement=${Dt.o(this.requiresPositioning?this.placement||"right":void 0)}
36
- popover=${Dt.o(this.popoverValue)}
37
- style=${jt.o(this.dialogStyleMap)}
38
- @beforetoggle=${this.handleBeforetoggle}
39
- @close=${this.handleBrowserClose}
40
- ?is-visible=${this.state!=="closed"}
41
- >
42
- ${this.renderContent()}
43
- </div>
44
- `}render(){const t=this.type==="modal"||this.type==="page";return x.x`
45
- ${t?this.renderDialog():this.renderPopover()}
46
- <slot name="longpress-describedby-descriptor"></slot>
47
- `}connectedCallback(){super.connectedCallback(),this.addEventListener("close",()=>{this.open=!1}),this.hasUpdated&&this.bindEvents()}disconnectedCallback(){var t;(t=this.strategy)==null||t.releaseDescription(),this.open=!1,super.disconnectedCallback()}},B.styles=[x.r(_e)],B.openCount=1,B);T([x.n({type:Boolean})],P.prototype,"delayed",1);T([oe.e(".dialog")],P.prototype,"dialogEl",2);T([x.n({type:Boolean})],P.prototype,"disabled",1);T([Pe.o({flatten:!0,selector:':not([slot="longpress-describedby-descriptor"], slot)'})],P.prototype,"elements",2);T([x.n({type:Number})],P.prototype,"offset",2);T([x.n({type:Boolean,reflect:!0})],P.prototype,"open",1);T([x.n()],P.prototype,"placement",2);T([x.n({attribute:"receives-focus"})],P.prototype,"receivesFocus",2);T([oe.e("slot")],P.prototype,"slotEl",2);T([Ce.r()],P.prototype,"state",1);T([x.n({type:Number,attribute:"tip-padding"})],P.prototype,"tipPadding",2);T([x.n()],P.prototype,"trigger",2);T([x.n({attribute:!1})],P.prototype,"triggerElement",2);T([x.n({attribute:!1})],P.prototype,"triggerInteraction",2);T([x.n()],P.prototype,"type",2);let Ee=P;const Ct=Object.freeze(Object.defineProperty({__proto__:null,LuzmoOverlay:Ee},Symbol.toStringTag,{value:"Module"}));exports.ClickController=ge;exports.HoverController=ve;exports.InteractionController=Rt;exports.InteractionTypes=ot;exports.LONGPRESS_INSTRUCTIONS=ye;exports.LongpressController=we;exports.LuzmoAbstractOverlay=it;exports.LuzmoOverlay=Ee;exports.PlacementController=me;exports.SAFARI_FOCUS_RING_CLASS=gt;exports.VirtualTrigger=dt;exports.guaranteedAllTransitionend=Pt;exports.lastInteractionType=xt;exports.nextFrame=R;exports.noop=Y;exports.overlay=Ct;exports.overlayTimer=lt;exports.placementUpdatedSymbol=Ei;exports.strategies=be;
@@ -1,123 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- "use strict";const r=require("./base-CBCg3yyw.cjs"),v=require("./state-D8JEtYqe.cjs"),b=require("./query-BL-TJj7K.cjs"),k=require("./class-map-Di1D_rCm.cjs"),d=require("./if-defined-C9YGdo33.cjs"),g=require("./style-map-CeilmSgs.cjs"),m=require("./focusable-EbipgXRh.cjs"),f=require("./dependency-manger-C5HCkMMB.cjs"),u=require("./strategies-BACP6MhR.cjs"),z=require("./pending-state-CaH1si5b.cjs"),y=require("./sized-mixin-CPxE5C96.cjs"),l=require("./luzmo-icons-DletXGWU.cjs");require("./menu/index.cjs");require("./overlay/index.cjs");require("./progress-circle/index.cjs");require("./tooltip/index.cjs");const w='#button{cursor:pointer;-webkit-user-select:none;user-select:none;font-family:var(--luzmo-button-font-family, var(--luzmo-font-family));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:var(--luzmo-button-line-height, var(--luzmo-line-height, 1.3));text-transform:none;vertical-align:top;-webkit-appearance:button;transition:background var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out,border-color var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out,color var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out,box-shadow var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out;justify-content:center;align-items:center;margin:0;-webkit-text-decoration:none;text-decoration:none;display:inline-flex;position:relative;overflow:visible}#button::-moz-focus-inner{border-style:none;padding:0}#button:focus{outline:none}#icon{margin-inline-end:var(--luzmo-picker-spacing-text-to-icon, var(--picker-spacing-text-to-icon));font-size:var(--luzmo-picker-font-size, var(--picker-font-size))}@media (forced-colors: active){:host{--highcontrast-picker-focus-indicator-color: Highlight;--highcontrast-picker-border-color-default: ButtonBorder;--highcontrast-picker-border-color-hover: Highlight;--highcontrast-picker-border-color-disabled: GrayText;--highcontrast-picker-content-color-default: ButtonText;--highcontrast-picker-content-color-disabled: GrayText;--highcontrast-picker-background-color: ButtonFace}#button:focus-visible{--highcontrast-picker-border-color-hover: ButtonText}#button .label,#button:after{forced-color-adjust:none}}#button{box-sizing:border-box;max-inline-size:100%;min-inline-size:calc(var(--picker-minimum-width-multiplier) * var(--luzmo-picker-block-size, var(--picker-block-size)));block-size:var(--luzmo-picker-block-size, var(--picker-block-size));border-width:var(--luzmo-picker-border-width, var(--picker-border-width));border-radius:var(--luzmo-picker-border-radius, var(--picker-border-radius));box-shadow:var(--luzmo-picker-box-shadow, var(--picker-box-shadow));transition:background-color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)),box-shadow var(--luzmo-picker-animation-duration, var(--picker-animation-duration)),border-color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)) ease-in-out;color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default, var(--picker-background-color-default)));border-style:solid;border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-default, var(--picker-border-color-default)));margin-block-start:var(--luzmo-picker-spacing-label-to-picker, var(--picker-spacing-label-to-picker));padding-block:0;padding-inline-start:var(--luzmo-picker-spacing-edge-to-text, var(--picker-spacing-edge-to-text));padding-inline-end:var(--luzmo-picker-spacing-edge-to-disclosure-icon, var(--picker-spacing-edge-to-disclosure-icon));display:flex}#button:after{pointer-events:none;content:"";block-size:calc(100% + var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) * 2 + var(--luzmo-picker-border-width, var(--picker-border-width)) * 2);inline-size:calc(100% + var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) * 2 + var(--luzmo-picker-border-width, var(--picker-border-width)) * 2);border-style:solid;border-width:var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width));border-radius:calc(var(--luzmo-picker-border-radius, var(--picker-border-radius)) + var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-border-width, var(--picker-border-width)));border-color:#0000;margin-block-start:calc((var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width)) + var(--luzmo-picker-border-width, var(--picker-border-width))) * -1);margin-inline-start:calc((var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width)) + var(--luzmo-picker-border-width, var(--picker-border-width))) * -1);position:absolute;inset-block:0;inset-inline:0}#button:active{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-active, var(--picker-background-color-active)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-active, var(--picker-border-color-active)))}#button:active:after{border-color:#0000}#button.placeholder:active .label{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-active, var(--picker-font-color-active)))}#button:focus-visible{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-key-focus, var(--picker-background-color-key-focus)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-key-focus, var(--picker-border-color-key-focus)));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-key-focus, var(--picker-font-color-key-focus)));outline:none}#button:focus-visible:after{border-color:var(--highcontrast-picker-focus-indicator-color, var(--luzmo-picker-focus-indicator-color, var(--picker-focus-indicator-color)))}#button.placeholder:focus-visible{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-key-focus, var(--picker-font-color-key-focus)))}#button:focus-visible .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-key-focus, var(--picker-icon-color-key-focus)))}:host([open]) #button:not(:disabled,.is-disabled){color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default-open, var(--picker-font-color-default-open)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default-open, var(--picker-background-color-default-open)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-default-open, var(--picker-border-color-default-open)))}:host([open]) #button:not(:disabled,.is-disabled) .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-default-open, var(--picker-icon-color-default-open)))}:host([invalid]) #button:not(:disabled,.is-disabled){border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-default, var(--picker-border-color-error-default)))}:host([invalid]) #button:not(:disabled,.is-disabled) .validation-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-error, var(--picker-icon-color-error)))}:host([invalid]) #button:not(:disabled,.is-disabled):active{border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-active, var(--picker-border-color-error-active)))}:host([invalid][open]) #button:not(:disabled,.is-disabled){border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-default-open, var(--picker-border-color-error-default-open)))}:host([invalid]) #button:not(:disabled,.is-disabled):focus-visible{border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-key-focus, var(--picker-border-color-error-key-focus)))}:host([pending]) #button .disclosure-icon{color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-icon-color-disabled, var(--picker-icon-color-disabled)))}.icon{flex-shrink:0}.label{white-space:nowrap;font-size:var(--luzmo-picker-font-size, var(--picker-font-size));line-height:var(--luzmo-picker-line-height, var(--picker-line-height));font-weight:var(--luzmo-picker-font-weight, var(--picker-font-weight));text-overflow:ellipsis;text-align:start;flex:auto;overflow:hidden}.label.placeholder{font-weight:var(--luzmo-picker-placeholder-font-weight, var(--picker-font-weight));font-style:var(--luzmo-picker-placeholder-font-style, var(--picker-placeholder-font-style));transition:color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)) ease-in-out;color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)))}.label.placeholder:active{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-active, var(--picker-font-color-active)))}.disclosure-icon{vertical-align:top;transition:color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)) ease-out;margin-inline-start:var(--luzmo-picker-spacing-icon-to-disclosure-icon, var(--picker-spacing-icon-to-disclosure-icon));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-default, var(--picker-icon-color-default)));flex-shrink:0;display:inline-block;position:relative}.disclosure-icon:active{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-active, var(--picker-icon-color-active)))}luzmo-progress-circle,.validation-icon{margin-inline-start:var(--luzmo-picker-spacing-text-to-icon, var(--picker-spacing-text-to-icon))}.icon-container{display:flex;position:relative;height:100%;align-items:center;font-size:var(--luzmo-picker-disclosure-icon-size, var(--picker-disclosure-icon-size))}.icon-container.disclosure-icon{margin-inline-end:0}.label~.disclosure-icon{margin-inline-start:var(--luzmo-picker-spacing-text-to-icon, var(--picker-spacing-text-to-icon))}:host([quiet]) #button{inline-size:auto;min-inline-size:0;padding-inline:var(--luzmo-picker-spacing-edge-to-text-quiet, var(--picker-spacing-edge-to-text-quiet));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)));background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent);border:none;border-radius:0;box-shadow:none;margin-block-start:calc(var(--luzmo-picker-spacing-label-to-picker-quiet, var(--picker-spacing-label-to-picker-quiet)) + 1px)}:host([quiet]) #button.label-inline{margin-block-start:0}:host([quiet]) #button .disclosure-icon{margin-inline-end:var(--luzmo-picker-spacing-edge-to-disclosure-icon-quiet, var(--picker-spacing-edge-to-disclosure-icon-quiet))}:host([quiet]) #button:after{block-size:auto;inline-size:auto;border:none}@media (hover: hover){#button:hover{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-hover, var(--picker-font-color-hover)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-hover, var(--picker-background-color-hover)));border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-hover, var(--picker-border-color-hover)))}#button:hover .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-hover, var(--picker-icon-color-hover)))}:host([open]):not([quiet]) #button:not(:disabled,.is-disabled):hover{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-hover-open, var(--picker-font-color-hover-open)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-hover-open, var(--picker-background-color-hover-open)));border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-hover-open, var(--picker-border-color-hover-open)))}:host([open]) #button:not(:disabled,.is-disabled):hover .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-hover-open, var(--picker-icon-color-hover-open)))}:host([invalid]) #button:not(:disabled,.is-disabled):hover{border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-error-hover, var(--picker-border-color-error-hover)))}:host([invalid][open]) #button:not(:disabled,.is-disabled):hover{border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-error-hover-open, var(--picker-border-color-error-hover-open)))}.label.placeholder:hover{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-hover, var(--picker-font-color-hover)))}:host([quiet]) #button:hover{background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent)!important}}:host([quiet]) #button:focus-visible{background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent)}:host([quiet]) #button:focus-visible:after{box-shadow:0 var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width)) 0 0 var(--highcontrast-picker-focus-indicator-color, var(--luzmo-picker-focus-indicator-color, var(--picker-focus-indicator-color)));margin:calc((var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-border-width, var(--picker-border-width))) * -1) 0;border:none;border-radius:0}:host([quiet][open]) #button,:host([quiet][disabled]) #button#button,:host([quiet]) #button#button:disabled,:host([quiet]) #button:active{background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent)}.label-inline{vertical-align:top;display:inline-flex}:host([disabled]) #button,#button:disabled{cursor:default;background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-disabled, var(--picker-background-color-disabled)));border-color:#0000;border-color:var(--highcontrast-picker-border-color-disabled, transparent);color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-font-color-disabled, var(--picker-font-color-disabled)))}:host([disabled]) #button .icon,:host([disabled]) #button .disclosure-icon,:host([disabled]) #button .validation-icon,#button:disabled .icon,#button:disabled .disclosure-icon,#button:disabled .validation-icon{color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-icon-color-disabled, var(--picker-icon-color-disabled)))}:host([disabled]) #button .label.placeholder,#button:disabled .label.placeholder{color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-font-color-disabled, var(--picker-font-color-disabled)))}:host{--picker-box-shadow: 0px 1px 3px 0px rgba(var(--luzmo-border-color-rgb), .06);--picker-background-color-default: var(--luzmo-background-color);--picker-background-color-default-open: var(--luzmo-background-color-hover);--picker-background-color-active: var(--luzmo-background-color-down);--picker-background-color-hover: var(--luzmo-background-color-hover);--picker-background-color-hover-open: var(--luzmo-background-color-down);--picker-background-color-key-focus: var(--luzmo-background-color-down);--picker-border-color-default: var(--luzmo-border-color);--picker-border-color-default-open: var(--luzmo-border-color-hover);--picker-border-color-hover: var(--luzmo-border-color);--picker-border-color-hover-open: var(--luzmo-border-color-hover);--picker-border-color-active: var(--luzmo-border-color);--picker-border-color-key-focus: var(--luzmo-border-color);--picker-border-width: var(--luzmo-border-width);--picker-font-size: var(--luzmo-font-size);--picker-font-weight: var(--luzmo-font-weight);--picker-placeholder-font-style: var(--luzmo-font-style);--picker-line-height: var(--luzmo-line-height);--picker-block-size: 32px;--picker-border-radius: var(--luzmo-border-radius);--picker-spacing-edge-to-text: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon-inline-end: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-icon-to-disclosure-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-text-quiet: 0px;--picker-spacing-label-to-picker: 0px;--picker-spacing-label-to-picker-quiet: calc( -1 * var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-disclosure-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-disclosure-icon-quiet: 0px;--picker-animation-duration: var(--luzmo-animation-duration);--picker-font-color-default: var(--luzmo-font-color);--picker-font-color-default-open: var(--luzmo-font-color-hover);--picker-font-color-hover: var(--luzmo-font-color-hover);--picker-font-color-hover-open: var(--luzmo-font-color-down);--picker-font-color-active: var(--luzmo-font-color-focus);--picker-font-color-key-focus: var(--luzmo-font-color-focus);--picker-icon-color-default: var(--luzmo-font-color);--picker-icon-color-default-open: var(--luzmo-font-color-hover);--picker-icon-color-hover: var(--luzmo-font-color-hover);--picker-icon-color-hover-open: var(--luzmo-font-color-hover);--picker-icon-color-active: var(--luzmo-font-color-focus);--picker-icon-color-key-focus: var(--luzmo-font-color-focus);--picker-border-color-error-default: var(--luzmo-negative-color);--picker-border-color-error-default-open: var(--luzmo-negative-color-down);--picker-border-color-error-hover: var(--luzmo-negative-color-hover);--picker-border-color-error-hover-open: var(--luzmo-negative-color-down);--picker-border-color-error-active: var(--luzmo-negative-color-down);--picker-border-color-error-key-focus: var(--luzmo-negative-color-focus);--picker-icon-color-error: var(--luzmo-negative-color);--picker-background-color-disabled: var(--luzmo-background-color-disabled);--picker-font-color-disabled: var(--luzmo-disabled-color);--picker-icon-color-disabled: var(--luzmo-disabled-color);--picker-focus-indicator-gap: var(--luzmo-indicator-gap);--picker-focus-indicator-width: var(--luzmo-indicator-width);--picker-focus-indicator-color: var(--luzmo-indicator-color);--picker-disclosure-icon-size: var(--luzmo-font-size-s)}:host([size=s]){--picker-block-size: 28px;--picker-font-size: var(--luzmo-font-size-s);--picker-border-radius: var(--luzmo-border-radius);--picker-spacing-edge-to-text: var(--luzmo-spacing-3);--picker-spacing-text-to-icon: var(--luzmo-spacing-3);--picker-spacing-text-to-icon-inline-end: var(--luzmo-spacing-3);--picker-spacing-icon-to-disclosure-icon: var(--luzmo-spacing-3);--picker-spacing-label-to-picker-quiet: calc(-1 * var(--luzmo-spacing-3));--picker-spacing-edge-to-disclosure-icon: var(--luzmo-spacing-3);--picker-disclosure-icon-size: var(--luzmo-font-size-s)}:host([size=l]){--picker-block-size: 40px;--picker-font-size: var(--luzmo-font-size-l);--picker-border-radius: var(--luzmo-border-radius);--picker-spacing-edge-to-text: var(--luzmo-spacing-4);--picker-spacing-text-to-icon: var(--luzmo-spacing-4);--picker-spacing-text-to-icon-inline-end: var(--luzmo-spacing-4);--picker-spacing-icon-to-disclosure-icon: var(--luzmo-spacing-4);--picker-spacing-label-to-picker-quiet: calc(-1 * var(--luzmo-spacing-4));--picker-spacing-edge-to-disclosure-icon: var(--luzmo-spacing-4);--picker-disclosure-icon-size: var(--luzmo-font-size)}:host([size=xl]){--picker-block-size: 48px;--picker-font-size: var(--luzmo-font-size-xl);--picker-border-radius: var(--luzmo-border-radius-l);--picker-spacing-edge-to-text: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon-inline-end: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-icon-to-disclosure-icon: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-label-to-picker-quiet: calc( -1 * var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-disclosure-icon: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-disclosure-icon-size: var(--luzmo-font-size-l)}:host([variant=highlight]) ::slotted(luzmo-menu-item[selected]){--menu-item-highlight-label-content-color: var(--luzmo-primary-inverse-color);--menu-item-label-icon-color-default: var(--luzmo-primary-inverse-color);--menu-checkmark-display: var(--menu-checkmark-display-hidden);padding-inline-start:var(--luzmo-menu-item-label-inline-edge-to-content, var(--menu-item-label-inline-edge-to-content));background-color:var(--luzmo-menu-item-highlight-label-background-color, var(--menu-item-highlight-label-background-color, var(--luzmo-border-color)))}:host{display:inline-flex;vertical-align:top;max-inline-size:100%;inline-size:var(--luzmo-picker-inline-size, var(--picker-inline-size));min-inline-size:calc(var(--picker-minimum-width-multiplier) * var(--luzmo-picker-block-size, var(--picker-block-size)))}:host([quiet]){width:auto;min-width:0}:host([disabled]){pointer-events:none}#button{width:100%;min-width:100%;max-width:100%}#icon:not([hidden]){display:inline-flex}:host([readonly]) #button{-webkit-user-select:inherit;user-select:inherit}.picker,.validation-icon{flex-shrink:0}luzmo-overlay{pointer-events:none}luzmo-menu{pointer-events:initial}:host>luzmo-menu{display:none}:host([focused]:not([quiet])) #button #label.placeholder{color:var(--picker-placeholder-text-color-key-focus, var(--alias-placeholder-text-color-hover))}#label.visually-hidden~.picker{margin-inline-start:auto}:host([focused]:not([quiet],[pending])) #button .picker{color:var(--picker-icon-color-key-focus, var(--alias-icon-color-focus))}.visually-hidden{border:0;clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;margin:0 -1px -1px 0;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}luzmo-overlay:not(:defined){display:none}#button.remove-focus-ring-safari-hack:focus-visible{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default, var(--picker-background-color-default)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-default, var(--picker-border-color-default)));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)))}#button.remove-focus-ring-safari-hack:after{border:none}#button.remove-focus-ring-safari-hack:focus-visible:after{box-shadow:none}#button.remove-focus-ring-safari-hack:active{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default, var(--picker-background-color-default)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-default, var(--picker-border-color-default)));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)))}';var x=Object.defineProperty,I=Object.getOwnPropertyDescriptor,c=(s,e,o,t)=>{for(var a=t>1?void 0:t?I(e,o):e,n=s.length-1,p;n>=0;n--)(p=s[n])&&(a=(t?p(e,o,a):p(a))||a);return t&&a&&x(e,o,a),a};const q=()=>r.x`
19
- <div class="disclosure-icon icon">
20
- ${l.O2(l.T,{className:"indicator"})}
21
- </div>
22
- `,S=()=>r.x`
23
- <div class="icon-container validation-icon icon">
24
- ${l.O2(l.I)}
25
- </div>
26
- `,h="option-picker";class i extends y.SizedMixin(m.Focusable,{noDefaultSize:!0}){constructor(){super(),this.disabled=!1,this.focused=!1,this.invalid=!1,this.pending=!1,this.pendingLabel="Pending",this.open=!1,this.readonly=!1,this.placement="bottom-start",this.quiet=!1,this.value="",this.selects="single",this.dependencyManager=new f.DependencyManagerController(this),this.isMobile=new u.MatchMediaController(this,u.IS_MOBILE),this.listRole="listbox",this.itemRole="option",this.hasRenderedOverlay=!1,this._selfManageFocusElement=!1,this.deprecatedMenu=null,this.selectionPromise=Promise.resolve(),this.willManageSelection=!1,this.recentlyConnected=!1,this.enterKeydownOn=null,this.handleSlottableRequest=e=>{},this.applyFocusElementLabel=(e,o)=>{this.appliedLabel=e,this.labelAlignment=o.sideAligned?"inline":void 0},this.handleKeydown=e=>{this.focused=!0,!(e.code!=="ArrowDown"&&e.code!=="ArrowUp")&&(e.stopPropagation(),e.preventDefault(),this.toggle(!0))},this.renderAngleIcon=()=>q(),this.renderAlertIcon=()=>S(),this.handleEnterKeydown=e=>{if(e.code==="Enter"){if(this.enterKeydownOn){e.preventDefault();return}this.enterKeydownOn=e.target,this.addEventListener("keyup",o=>{o.code==="Enter"&&(this.enterKeydownOn=null)},{once:!0})}},this.pendingStateController=new z.PendingStateController(this)}get selectedItem(){return this._selectedItem}get selectedItemContent(){return this._selectedItemContent||{icon:[],content:[]}}get selfManageFocusElement(){return this._selfManageFocusElement}get menuItems(){return this.optionsMenu.childItems}set selectedItem(e){const o=e==null?void 0:e.querySelector('[slot="icon"]');if(this.selectedItemContent=e?e.itemChildren:void 0,e===this.selectedItem)return;const t=this.selectedItem;this._selectedItem=e,this._selectedItemIcon=(o==null?void 0:o.icon)??void 0,this.requestUpdate("selectedItem",t)}get focusElement(){return this.open?this.optionsMenu:this.button}forceFocusVisible(){this.disabled||(this.focused=!0)}click(){this.disabled||this.toggle()}handleButtonBlur(){this.focused=!1}focus(e){super.focus(e),!this.disabled&&this.focusElement&&(this.focused=this.hasVisibleFocusInTree())}handleHelperFocus(){this.focused=!0,this.button.focus()}handleChange(e){this.strategy&&(this.strategy.preventNextToggle="no");const o=e.target,[t]=o.selectedItems;e.stopPropagation(),e.cancelable?this.setValueFromItem(t,e):(this.open=!1,this.strategy&&(this.strategy.open=!1))}handleButtonFocus(e){var o;(o=this.strategy)==null||o.handleButtonFocus(e)}toggle(e){this.readonly||this.pending||(this.open=e===void 0?!this.open:e,this.strategy&&(this.strategy.open=this.open),this._selfManageFocusElement=this.open)}close(){this.readonly||this.strategy&&(this.open=!1,this.strategy.open=!1)}bindEvents(){var e;(e=this.strategy)==null||e.abort(),this.strategy=this.isMobile.matches?new u.strategies.mobile(this.button,this):new u.strategies.desktop(this.button,this)}connectedCallback(){super.connectedCallback(),this.recentlyConnected=this.hasUpdated}disconnectedCallback(){var e;this.close(),(e=this.strategy)==null||e.releaseDescription(),super.disconnectedCallback()}async setValueFromItem(e,o){this.open=!1,this.strategy&&(this.strategy.open=!1);const t=this.selectedItem,a=this.value;if(this.selectedItem=e,this.value=(e==null?void 0:e.value)??"",await this.updateComplete,!this.dispatchEvent(new CustomEvent("change",{bubbles:!0,cancelable:!0,composed:!0,detail:this.value}))&&this.selects){o&&o.preventDefault(),this.setMenuItemSelected(this.selectedItem,!1),t&&this.setMenuItemSelected(t,!0),this.selectedItem=t,this.value=a,this.open=!0,this.strategy&&(this.strategy.open=!0);return}else if(!this.selects){this.selectedItem=t,this.value=a;return}t&&this.setMenuItemSelected(t,!1),this.setMenuItemSelected(e,!!this.selects)}setMenuItemSelected(e,o){this.selects!=null&&(e.selected=o)}get containerStyles(){return this.isMobile.matches?{"--swc-menu-width":"100%"}:{}}set selectedItemContent(e){if(e===this.selectedItemContent)return;const o=this.selectedItemContent;this._selectedItemContent=e,this.requestUpdate("selectedItemContent",o)}handleTooltipSlotchange(e){this.tooltipEl=e.target.assignedElements()[0]}renderLabelContent(e){return this.value&&this.selectedItem?e:r.x`
27
- <slot name="label" id="label">
28
- <span aria-hidden=${d.o(this.appliedLabel?void 0:"true")}>
29
- ${this.label}
30
- </span>
31
- </slot>
32
- `}get buttonContent(){const e={"visually-hidden":this.icons==="only"&&!!this.value,placeholder:!this.value,label:!0},o=this.appliedLabel||this.label,t=r.x` <div id="icon" ?hidden=${this.icons==="none"}>
33
- ${this._selectedItemIcon?l.O2(this._selectedItemIcon):r.E}
34
- </div>`;return[r.x`
35
- ${this._selectedItemIcon?t:r.E}
36
- <div
37
- id=${d.o(this.value&&this.selectedItem?"label":void 0)}
38
- class=${k.e(e)}
39
- >
40
- ${this.renderLabelContent(this.selectedItemContent.content)}
41
- </div>
42
- ${this.value&&this.selectedItem?r.x`
43
- <div
44
- aria-hidden="true"
45
- class="visually-hidden"
46
- id="applied-label"
47
- >
48
- ${o}
49
- <slot name="label"></slot>
50
- </div>
51
- `:r.x` <span hidden id="applied-label">${o}</span> `}
52
- ${this.invalid&&!this.pending?r.x` ${this.renderAlertIcon()} `:r.E}
53
- ${this.pendingStateController.renderPendingState()}
54
- ${this.readonly?r.E:this.renderAngleIcon()}
55
- <slot
56
- aria-hidden="true"
57
- name="tooltip"
58
- id="tooltip"
59
- @slotchange=${this.handleTooltipSlotchange}
60
- ></slot>
61
- `]}renderOverlay(e){var t,a,n;if(((t=this.strategy)==null?void 0:t.overlay)===void 0)return e;const o=this.renderContainer(e);return r.B(o,(a=this.strategy)==null?void 0:a.overlay,{host:this}),(n=this.strategy)==null?void 0:n.overlay}get renderDescriptionSlot(){return r.x`
62
- <div id=${h}>
63
- <slot name="description"></slot>
64
- </div>
65
- `}render(){return this.tooltipEl&&(this.tooltipEl.disabled=this.open),r.x`
66
- <span
67
- id="focus-helper"
68
- tabindex=${this.focused||this.open?"-1":"0"}
69
- @focus=${this.handleHelperFocus}
70
- aria-describedby=${h}
71
- ></span>
72
- <button
73
- aria-controls=${d.o(this.open?"menu":void 0)}
74
- aria-describedby="tooltip"
75
- aria-expanded=${this.open?"true":"false"}
76
- aria-haspopup="true"
77
- aria-labelledby="loader icon label applied-label"
78
- id="button"
79
- class=${d.o(this.labelAlignment?`label-${this.labelAlignment}`:void 0)}
80
- @blur=${this.handleButtonBlur}
81
- @keydown=${{handleEvent:this.handleEnterKeydown,capture:!0}}
82
- ?disabled=${this.disabled}
83
- tabindex="-1"
84
- >
85
- ${this.buttonContent}
86
- </button>
87
- ${this.renderMenu} ${this.renderDescriptionSlot}
88
- `}update(e){var o,t;this.selects&&(this.selects="single"),e.has("disabled")&&this.disabled&&this.strategy&&(this.open=!1,this.strategy.open=!1),e.has("pending")&&this.pending&&this.strategy&&(this.open=!1,this.strategy.open=!1),e.has("value")&&this.shouldScheduleManageSelection(),this.hasUpdated||(this.deprecatedMenu=this.querySelector(":scope > luzmo-menu"),(o=this.deprecatedMenu)==null||o.toggleAttribute("ignore",!0),(t=this.deprecatedMenu)==null||t.setAttribute("selects","inherit")),super.update(e)}bindButtonKeydownListener(){this.button.addEventListener("keydown",this.handleKeydown)}updated(e){super.updated(e),e.has("open")&&(this.strategy.open=this.open)}firstUpdated(e){super.firstUpdated(e),this.bindButtonKeydownListener(),this.bindEvents()}get dismissHelper(){return r.x`
89
- <div class="visually-hidden">
90
- <button
91
- tabindex="-1"
92
- aria-label="Dismiss"
93
- @click=${this.close}
94
- ></button>
95
- </div>
96
- `}renderContainer(e){const o=r.x`
97
- ${this.dismissHelper} ${e} ${this.dismissHelper}
98
- `;return this.dependencyManager.add("luzmo-popover"),Promise.resolve().then(()=>require("./popover/index.cjs")),r.x`
99
- <luzmo-popover
100
- id="popover"
101
- size=${this.size}
102
- role="presentation"
103
- style=${g.o(this.containerStyles)}
104
- placement=${this.placement}
105
- >
106
- ${o}
107
- </luzmo-popover>
108
- `}get renderMenu(){const e=r.x`
109
- <luzmo-menu
110
- aria-labelledby="applied-label"
111
- @change=${this.handleChange}
112
- id="menu"
113
- @keydown=${{handleEvent:this.handleEnterKeydown,capture:!0}}
114
- @scroll=${this.onScroll}
115
- role=${this.listRole}
116
- .selects=${this.selects}
117
- .selected=${this.value?[this.value]:[]}
118
- size=${this.size}
119
- @luzmo-menu-item-added-or-updated=${this.shouldManageSelection}
120
- >
121
- <slot @slotchange=${this.shouldScheduleManageSelection}></slot>
122
- </luzmo-menu>
123
- `;return this.hasRenderedOverlay=this.hasRenderedOverlay||this.focused||this.open||!!this.deprecatedMenu,this.hasRenderedOverlay?(this.dependencyManager.loaded&&this.dependencyManager.add("luzmo-overlay"),this.renderOverlay(e)):e}shouldScheduleManageSelection(e){!this.willManageSelection&&(!e||e.target.getRootNode().host===this)&&(this.willManageSelection=!0,requestAnimationFrame(()=>{requestAnimationFrame(()=>{this.manageSelection()})}))}shouldManageSelection(){this.willManageSelection||(this.willManageSelection=!0,this.manageSelection())}async manageSelection(){if(this.selects==null)return;this.selectionPromise=new Promise(o=>this.selectionResolver=o);let e;await this.optionsMenu.updateComplete,this.recentlyConnected&&(await new Promise(o=>requestAnimationFrame(()=>o(!0))),this.recentlyConnected=!1),this.menuItems.forEach(o=>{this.value===o.value&&!o.disabled?e=o:o.selected=!1}),e?(e.selected=!!this.selects,this.selectedItem=e):(this.value="",this.selectedItem=void 0),this.open&&(await this.optionsMenu.updateComplete,this.optionsMenu.updateSelectedItemIndex()),this.selectionResolver(),this.willManageSelection=!1}async getUpdateComplete(){const e=await super.getUpdateComplete();return await this.selectionPromise,e}onScroll(){this.dispatchEvent(new Event("scroll",{cancelable:!0,composed:!0}))}}c([v.r()],i.prototype,"appliedLabel",2);c([b.e("#button")],i.prototype,"button",2);c([r.n({type:Boolean,reflect:!0})],i.prototype,"disabled",2);c([r.n({type:Boolean,reflect:!0})],i.prototype,"focused",2);c([r.n({type:String,reflect:!0})],i.prototype,"icons",2);c([r.n({type:String,reflect:!0})],i.prototype,"variant",2);c([r.n({type:Boolean,reflect:!0})],i.prototype,"invalid",2);c([r.n({type:Boolean,reflect:!0})],i.prototype,"pending",2);c([r.n({type:String,attribute:"pending-label"})],i.prototype,"pendingLabel",2);c([r.n()],i.prototype,"label",2);c([r.n({type:Boolean,reflect:!0})],i.prototype,"open",2);c([r.n({type:Boolean,reflect:!0})],i.prototype,"readonly",2);c([v.r()],i.prototype,"labelAlignment",2);c([b.e("luzmo-menu")],i.prototype,"optionsMenu",2);c([b.e("luzmo-overlay")],i.prototype,"overlayElement",2);c([r.n()],i.prototype,"placement",2);c([r.n({type:Boolean,reflect:!0})],i.prototype,"quiet",2);c([r.n({type:String})],i.prototype,"value",2);c([r.n({attribute:!1})],i.prototype,"selectedItem",1);c([v.r()],i.prototype,"selectedItemContent",1);class M extends i{constructor(){super(...arguments),this.handleKeydown=e=>{const{code:o}=e;if(this.focused=!0,!o.startsWith("Arrow")||this.readonly||this.pending)return;if(o==="ArrowUp"||o==="ArrowDown"){this.toggle(!0),e.preventDefault();return}e.preventDefault();const t=this.selectedItem?this.menuItems.indexOf(this.selectedItem):-1,a=t<0||o==="ArrowRight"?1:-1;let n=t+a;for(;this.menuItems[n]&&this.menuItems[n].disabled;)n+=a;!this.menuItems[n]||this.menuItems[n].disabled||(!this.value||n!==t)&&this.setValueFromItem(this.menuItems[n])}}static get styles(){return[r.r(w)]}get containerStyles(){const e=super.containerStyles;return this.quiet||(e["min-width"]=`${this.offsetWidth}px`),e}}exports.DESCRIPTION_ID=h;exports.LuzmoPicker=M;exports.LuzmoPickerBase=i;
@@ -1,30 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./base-CBCg3yyw.cjs"),s=require("./query-BL-TJj7K.cjs"),v=require("./sized-mixin-CPxE5C96.cjs"),m=":host{pointer-events:none;visibility:hidden;opacity:0;max-height:var(--luzmo-popover-max-height)!important;transition:transform .13s ease-in-out,opacity .13s ease-in-out,visibility 0s linear .13s;transition:transform var(--luzmo-overlay-animation-duration, var(--animation-duration-100, .13s)) ease-in-out,opacity var(--luzmo-overlay-animation-duration, var(--animation-duration-100, .13s)) ease-in-out,visibility 0s linear var(--luzmo-overlay-animation-duration, var(--animation-duration-100, .13s))}:host([open]){pointer-events:auto;visibility:visible;opacity:1;transition-delay:0s;transition-delay:var(--luzmo-overlay-animation-duration-opened, var(--animation-duration-0, 0s))}@media (forced-colors: active){:host{--highcontrast-popover-border-color: CanvasText}}:host{--popover-filter: drop-shadow( var(--luzmo-popover-shadow-horizontal, var(--popover-shadow-horizontal)) var(--luzmo-popover-shadow-vertical, var(--popover-shadow-vertical)) var(--luzmo-popover-shadow-blur, var(--popover-shadow-blur)) var(--luzmo-popover-shadow-color, var(--popover-shadow-color)) );box-sizing:border-box;padding:var(--luzmo-popover-content-area-spacing-vertical, var(--popover-content-area-spacing-vertical)) 0;border-radius:var(--luzmo-popover-corner-radius, var(--popover-corner-radius));border-style:solid;border-color:var(--highcontrast-popover-border-color, var(--luzmo-popover-border-color, var(--popover-border-color)));border-width:var(--luzmo-popover-border-width, var(--popover-border-width));background-color:var(--luzmo-popover-background-color, var(--popover-background-color));filter:var(--luzmo-popover-filter, var(--popover-filter));outline:none;flex-direction:column;display:inline-flex;position:absolute}:host([tip]) #tip .triangle{stroke-linecap:square;stroke-linejoin:miter;fill:var(--highcontrast-popover-background-color, var(--luzmo-popover-background-color, var(--popover-background-color)));stroke:var(--highcontrast-popover-border-color, var(--luzmo-popover-border-color, var(--popover-border-color)));stroke-width:var(--luzmo-popover-border-width, var(--popover-border-width))}*{--luzmo-popover-filter: none}:host([tip]) .luzmo-Popover--top-end,:host([tip]) .luzmo-Popover--top-left,:host([tip]) .luzmo-Popover--top-right,:host([tip]) .luzmo-Popover--top-start,:host([placement*=top][tip]){margin-block-end:calc(var(--luzmo-popover-pointer-height, var(--popover-pointer-height)) - var(--luzmo-popover-border-width, var(--popover-border-width)))}:host([open]) .luzmo-Popover--top-end,:host([open]) .luzmo-Popover--top-left,:host([open]) .luzmo-Popover--top-right,:host([open]) .luzmo-Popover--top-start,:host([placement*=top][open]){transform:translateY(calc(var(--luzmo-popover-animation-distance, var(--popover-animation-distance)) * -1))}:host([tip]) .luzmo-Popover--bottom-end,:host([tip]) .luzmo-Popover--bottom-left,:host([tip]) .luzmo-Popover--bottom-right,:host([tip]) .luzmo-Popover--bottom-start,:host([placement*=bottom][tip]){margin-block-start:calc(var(--luzmo-popover-pointer-height, var(--popover-pointer-height)) - var(--luzmo-popover-border-width, var(--popover-border-width)))}:host([open]) .luzmo-Popover--bottom-end,:host([open]) .luzmo-Popover--bottom-left,:host([open]) .luzmo-Popover--bottom-right,:host([open]) .luzmo-Popover--bottom-start,:host([placement*=bottom][open]){transform:translateY(var(--luzmo-popover-animation-distance, var(--popover-animation-distance)))}:host([tip]) .luzmo-Popover--right-bottom,:host([tip]) .luzmo-Popover--right-top,:host([placement*=right][tip]){margin-left:calc(var(--luzmo-popover-pointer-width, var(--popover-pointer-width)) - var(--luzmo-popover-border-width, var(--popover-border-width)))}:host([open]) .luzmo-Popover--right-bottom,:host([open]) .luzmo-Popover--right-top,:host([placement*=right][open]){transform:translate(var(--luzmo-popover-animation-distance, var(--popover-animation-distance)))}:host([tip]) .luzmo-Popover--left-bottom,:host([tip]) .luzmo-Popover--left-top,:host([placement*=left][tip]){margin-right:calc(var(--luzmo-popover-pointer-width, var(--popover-pointer-width)) - var(--luzmo-popover-border-width, var(--popover-border-width)))}:host([open]) .luzmo-Popover--left-bottom,:host([open]) .luzmo-Popover--left-top,:host([placement*=left][open]){transform:translate(calc(var(--luzmo-popover-animation-distance, var(--popover-animation-distance)) * -1))}:host([tip]) .luzmo-Popover--start-bottom,:host([tip]) .luzmo-Popover--start-top,:host([tip]) .luzmo-Popover--start{margin-inline-end:calc(var(--luzmo-popover-pointer-width, var(--popover-pointer-width)) - var(--luzmo-popover-border-width, var(--popover-border-width)))}:host([open]) .luzmo-Popover--start-bottom,:host([open]) .luzmo-Popover--start-top,:host([open]) .luzmo-Popover--start{transform:translate(calc(var(--luzmo-popover-animation-distance, var(--popover-animation-distance)) * -1))}:host([open]) .luzmo-Popover--start-bottom:dir(rtl),:host([open]) .luzmo-Popover--start-top:dir(rtl),:host([open]) .luzmo-Popover--start:dir(rtl),:host([dir=rtl][open]) .luzmo-Popover--start-bottom,:host([dir=rtl][open]) .luzmo-Popover--start-top,:host([dir=rtl][open]) .luzmo-Popover--start{transform:translate(var(--luzmo-popover-animation-distance, var(--popover-animation-distance)))}:host([tip]) .luzmo-Popover--end-bottom,:host([tip]) .luzmo-Popover--end-top,:host([tip]) .luzmo-Popover--end{margin-inline-start:calc(var(--luzmo-popover-pointer-width, var(--popover-pointer-width)) - var(--luzmo-popover-border-width, var(--popover-border-width)))}:host([open]) .luzmo-Popover--end-bottom,:host([open]) .luzmo-Popover--end-top,:host([open]) .luzmo-Popover--end{transform:translate(var(--luzmo-popover-animation-distance, var(--popover-animation-distance)))}:host([open]) .luzmo-Popover--end-bottom:dir(rtl),:host([open]) .luzmo-Popover--end-top:dir(rtl),:host([open]) .luzmo-Popover--end:dir(rtl),:host([dir=rtl][open]) .luzmo-Popover--end-bottom,:host([dir=rtl][open]) .luzmo-Popover--end-top,:host([dir=rtl][open]) .luzmo-Popover--end{transform:translate(calc(var(--luzmo-popover-animation-distance, var(--popover-animation-distance)) * -1))}:host([tip]) #tip,:host([tip][placement*=bottom]) #tip,:host([tip]) .luzmo-Popover--bottom-end #tip,:host([tip]) .luzmo-Popover--bottom-left #tip,:host([tip]) .luzmo-Popover--bottom-right #tip,:host([tip]) .luzmo-Popover--bottom-start #tip,:host([tip][placement*=top]) #tip,:host([tip]) .luzmo-Popover--top-end #tip,:host([tip]) .luzmo-Popover--top-left #tip,:host([tip]) .luzmo-Popover--top-right #tip,:host([tip]) .luzmo-Popover--top-start #tip{inline-size:var(--luzmo-popover-pointer-width, var(--popover-pointer-width));block-size:var(--luzmo-popover-pointer-height, var(--popover-pointer-height));margin:auto;position:absolute;inset-block-start:100%;inset-inline:0;transform:translate(0)}:host([tip]) .luzmo-Popover--top-left #tip{inset-inline:var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing)) auto}:host([tip]) .luzmo-Popover--top-right #tip{inset-inline:auto var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing))}:host([tip]) .luzmo-Popover--top-start #tip{margin-inline-start:var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing))}:host([tip]) .luzmo-Popover--top-end #tip{margin-inline-end:var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing))}:host([tip][placement*=bottom]) #tip,:host([tip]) .luzmo-Popover--bottom-end #tip,:host([tip]) .luzmo-Popover--bottom-left #tip,:host([tip]) .luzmo-Popover--bottom-right #tip,:host([tip]) .luzmo-Popover--bottom-start #tip{inset-block:auto 100%;transform:scaleY(-1)}:host([tip]) .luzmo-Popover--bottom-left #tip{inset-inline:var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing)) auto}:host([tip]) .luzmo-Popover--bottom-right #tip{inset-inline:auto var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing))}:host([tip]) .luzmo-Popover--bottom-start #tip{margin-inline-start:var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing))}:host([tip]) .luzmo-Popover--bottom-end #tip{margin-inline-end:var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing))}:host([tip]) .luzmo-Popover--end #tip,:host([tip]) .luzmo-Popover--end-bottom #tip,:host([tip]) .luzmo-Popover--end-top #tip,:host([tip][placement*=left]) #tip,:host([tip]) .luzmo-Popover--left-bottom #tip,:host([tip]) .luzmo-Popover--left-top #tip,:host([tip][placement*=right]) #tip,:host([tip]) .luzmo-Popover--right-bottom #tip,:host([tip]) .luzmo-Popover--right-top #tip,:host([tip]) .luzmo-Popover--start #tip,:host([tip]) .luzmo-Popover--start-bottom #tip,:host([tip]) .luzmo-Popover--start-top #tip{inline-size:var(--luzmo-popover-pointer-height, var(--popover-pointer-height));block-size:var(--luzmo-popover-pointer-width, var(--popover-pointer-width));inset-block:0}:host([tip][placement*=left]) #tip,:host([tip]) .luzmo-Popover--left-bottom #tip,:host([tip]) .luzmo-Popover--left-top #tip{left:100%;right:auto}:host([tip][placement*=right]) #tip,:host([tip]) .luzmo-Popover--right-bottom #tip,:host([tip]) .luzmo-Popover--right-top #tip{left:auto;right:100%;transform:scaleX(-1)}:host([tip]) .luzmo-Popover--end-top #tip,:host([tip]) .luzmo-Popover--left-top #tip,:host([tip]) .luzmo-Popover--right-top #tip,:host([tip]) .luzmo-Popover--start-top #tip{inset-block:var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing)) auto}:host([tip]) .luzmo-Popover--end-bottom #tip,:host([tip]) .luzmo-Popover--left-bottom #tip,:host([tip]) .luzmo-Popover--right-bottom #tip,:host([tip]) .luzmo-Popover--start-bottom #tip{inset-block:auto var(--luzmo-popover-pointer-edge-spacing, var(--popover-pointer-edge-spacing))}:host([tip]) .luzmo-Popover--start #tip,:host([tip]) .luzmo-Popover--start-bottom #tip,:host([tip]) .luzmo-Popover--start-top #tip{margin-inline-start:100%}:host([tip]) .luzmo-Popover--start #tip:dir(rtl),:host([tip]) .luzmo-Popover--start-bottom #tip:dir(rtl),:host([tip]) .luzmo-Popover--start-top #tip:dir(rtl),:host([dir=rtl][tip]) .luzmo-Popover--start #tip,:host([dir=rtl][tip]) .luzmo-Popover--start-bottom #tip,:host([dir=rtl][tip]) .luzmo-Popover--start-top #tip{transform:none}:host([tip]) .luzmo-Popover--end #tip,:host([tip]) .luzmo-Popover--end-bottom #tip,:host([tip]) .luzmo-Popover--end-top #tip{margin-inline-end:100%;transform:scaleX(-1)}:host([tip]) .luzmo-Popover--end #tip:dir(rtl),:host([tip]) .luzmo-Popover--end-bottom #tip:dir(rtl),:host([tip]) .luzmo-Popover--end-top #tip:dir(rtl),:host([dir=rtl][tip]) .luzmo-Popover--end #tip,:host([dir=rtl][tip]) .luzmo-Popover--end-bottom #tip,:host([dir=rtl][tip]) .luzmo-Popover--end-top #tip{transform:scaleX(1)}:host{--popover-border-width: var(--luzmo-border-width);--popover-animation-distance: calc( var(--luzmo-spacing-2) + var(--luzmo-spacing-1) );--popover-background-color: var(--luzmo-background-color);--popover-border-color: var(--luzmo-border-color);--popover-content-area-spacing-vertical: var(--luzmo-spacing-2);--popover-shadow-horizontal: 0;--popover-shadow-vertical: 1px;--popover-shadow-blur: 4px;--popover-shadow-color: var(--luzmo-border-color);--popover-corner-radius: var(--luzmo-border-radius);--popover-pointer-width: var(--luzmo-spacing-5);--popover-pointer-height: var(--luzmo-spacing-3);--popover-pointer-edge-offset: 16px;--popover-pointer-edge-spacing: 24px}:host([size=s]){--popover-animation-distance: var(--luzmo-spacing-2)}:host([size=l]){--popover-animation-distance: var(--luzmo-spacing-3)}:host([size=xl]){--popover-animation-distance: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) )}:host{min-width:min-content;max-height:100%;max-width:100%;clip-path:none}::slotted(*){overscroll-behavior:contain}:host([placement*=left]) #tip[style],:host([placement*=right]) #tip[style]{inset-block-end:auto}:host([placement*=top]) #tip[style],:host([placement*=bottom]) #tip[style]{inset-inline-end:auto}.block,.inline{width:100%;height:100%;display:block}:host([placement*=left]) .block,:host([placement*=right]) .block{display:none}:host([placement*=top]) .inline,:host([placement*=bottom]) .inline{display:none}::slotted(.visually-hidden){border:0;clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;margin:0 -1px -1px 0;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}::slotted(luzmo-menu){margin:0}:host([dialog]){min-width:var(--luzmo-popover-dialog-min-width, 270px);padding:var(--luzmo-popover-dialog-padding, 30px 29px)}:host([tip][placement]) #tip{height:auto}";var h=Object.defineProperty,p=(e,a,n,d)=>{for(var t=void 0,i=e.length-1,l;i>=0;i--)(l=e[i])&&(t=l(a,n,t)||t);return t&&h(a,n,t),t};class r extends v.SizedMixin(o.LuzmoElement){constructor(){super(...arguments),this.open=!1,this.tip=!1}static get styles(){return[o.r(m)]}renderTip(){return o.x`
19
- <div id="tip" aria-hidden="true">
20
- <svg class="tip block" viewBox="0 -0.5 16 9">
21
- <path class="triangle" d="M-1,-1 8,8 17,-1"></path>
22
- </svg>
23
- <svg class="tip inline" viewBox="0 -0.5 9 16">
24
- <path class="triangle" d="M-1,-1 8,8 -1,17"></path>
25
- </svg>
26
- </div>
27
- `}render(){return o.x`
28
- <slot></slot>
29
- ${this.tip?this.renderTip():o.E}
30
- `}}p([o.n({type:Boolean,reflect:!0})],r.prototype,"open");p([o.n({reflect:!0})],r.prototype,"placement");p([o.n({type:Boolean,reflect:!0})],r.prototype,"tip");p([s.e("#tip")],r.prototype,"tipElement");exports.LuzmoPopover=r;
@@ -1,33 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- "use strict";const t=require("./base-CBCg3yyw.cjs"),c=require("./query-BL-TJj7K.cjs"),g=require("./if-defined-C9YGdo33.cjs"),d=require("./sized-mixin-CPxE5C96.cjs"),f=(i,r)=>{if(i)return null;const o=r.assignedNodes().reduce((s,e)=>e.textContent?s+e.textContent:s,"");return o?o.trim():null},p="@media (forced-colors: active){:host{--highcontrast-progress-circle-fill-border-color: Highlight;--highcontrast-progress-circle-fill-border-color-over-background: Highlight}.track{--progress-circle-track-border-style: double}}:host{position:var(--luzmo-progress-circle-position, relative);direction:ltr;display:inline-block;position:relative;transform:translateZ(0)}:host,.track{inline-size:var(--luzmo-progress-circle-size, var(--progress-circle-size, 32px));block-size:var(--luzmo-progress-circle-size, var(--progress-circle-size, 32px))}.track{box-sizing:border-box;border-style:var(--highcontrast-progress-circle-track-border-style, var(--luzmo-progress-circle-track-border-style, var(--progress-circle-track-border-style, solid)));border-width:var(--luzmo-progress-circle-thickness, var(--progress-circle-thickness, 2px));border-radius:var(--luzmo-progress-circle-size, var(--progress-circle-size, 32px));border-color:var(--luzmo-progress-circle-track-border-color, var(--luzmo-border-color))}.fills{inline-size:100%;block-size:100%;position:absolute;inset-block-start:0;inset-inline-start:0}.fill{box-sizing:border-box;inline-size:var(--luzmo-progress-circle-size, var(--progress-circle-size, 32px));block-size:var(--luzmo-progress-circle-size, var(--progress-circle-size, 32px));border-style:solid;border-width:var(--luzmo-progress-circle-thickness, var(--progress-circle-thickness, 3px));border-radius:var(--luzmo-progress-circle-size, var(--progress-circle-size, 32px));border-color:var(--highcontrast-progress-circle-fill-border-color, var(--luzmo-progress-circle-fill-border-color, var(--luzmo-primary)))}:host([static-color=black]) .track{border-color:var(--luzmo-progress-circle-track-border-color-over-background, rgba(0, 0, 0, .25))}:host([static-color=black]) .fill{border-color:var(--highcontrast-progress-circle-fill-border-color-over-background, var(--luzmo-progress-circle-fill-border-color-over-background, rgb(0, 0, 0)))}:host([static-color=white]) .track{border-color:var(--luzmo-progress-circle-track-border-color-over-background, rgba(255, 255, 255, .15))}:host([static-color=white]) .fill{border-color:var(--highcontrast-progress-circle-fill-border-color-over-background, var(--luzmo-progress-circle-fill-border-color-over-background, rgb(255, 255, 255)))}.fill-mask1,.fill-mask2{inline-size:50%;block-size:100%;transform-origin:100%;position:absolute;overflow:hidden;transform:rotate(180deg)}.fill-sub-mask1,.fill-sub-mask2{inline-size:100%;block-size:100%;transform-origin:100%;overflow:hidden;transform:rotate(-180deg)}.fill-mask2{transform:rotate(0)}:host([indeterminate]) .fills{will-change:transform;transform-origin:center;animation:1s cubic-bezier(.25,.78,.48,.89) infinite luzmo-fills-rotate;transform:translateZ(0)}:host([indeterminate]) .fill-sub-mask1{will-change:transform;animation:1s linear infinite luzmo-fill-mask-1;transform:translateZ(0)}:host([indeterminate]) .fill-sub-mask2{will-change:transform;animation:1s linear infinite luzmo-fill-mask-2;transform:translateZ(0)}.fill-submask-2{animation:1s linear infinite luzmo-fill-mask-2}@keyframes luzmo-fill-mask-1{0%{transform:rotate(90deg)}1.69%{transform:rotate(72.3deg)}3.39%{transform:rotate(55.5deg)}5.08%{transform:rotate(40.3deg)}6.78%{transform:rotate(25deg)}8.47%{transform:rotate(10.6deg)}10.17%{transform:rotate(0)}11.86%{transform:rotate(0)}13.56%{transform:rotate(0)}15.25%{transform:rotate(0)}16.95%{transform:rotate(0)}18.64%{transform:rotate(0)}20.34%{transform:rotate(0)}22.03%{transform:rotate(0)}23.73%{transform:rotate(0)}25.42%{transform:rotate(0)}27.12%{transform:rotate(0)}28.81%{transform:rotate(0)}30.51%{transform:rotate(0)}32.2%{transform:rotate(0)}33.9%{transform:rotate(0)}35.59%{transform:rotate(0)}37.29%{transform:rotate(0)}38.98%{transform:rotate(0)}40.68%{transform:rotate(0)}42.37%{transform:rotate(5.3deg)}44.07%{transform:rotate(13.4deg)}45.76%{transform:rotate(20.6deg)}47.46%{transform:rotate(29deg)}49.15%{transform:rotate(36.5deg)}50.85%{transform:rotate(42.6deg)}52.54%{transform:rotate(48.8deg)}54.24%{transform:rotate(54.2deg)}55.93%{transform:rotate(59.4deg)}57.63%{transform:rotate(63.2deg)}59.32%{transform:rotate(67.2deg)}61.02%{transform:rotate(70.8deg)}62.71%{transform:rotate(73.8deg)}64.41%{transform:rotate(76.2deg)}66.1%{transform:rotate(78.7deg)}67.8%{transform:rotate(80.6deg)}69.49%{transform:rotate(82.6deg)}71.19%{transform:rotate(83.7deg)}72.88%{transform:rotate(85deg)}74.58%{transform:rotate(86.3deg)}76.27%{transform:rotate(87deg)}77.97%{transform:rotate(87.7deg)}79.66%{transform:rotate(88.3deg)}81.36%{transform:rotate(88.6deg)}83.05%{transform:rotate(89.2deg)}84.75%{transform:rotate(89.2deg)}86.44%{transform:rotate(89.5deg)}88.14%{transform:rotate(89.9deg)}89.83%{transform:rotate(89.7deg)}91.53%{transform:rotate(90.1deg)}93.22%{transform:rotate(90.2deg)}94.92%{transform:rotate(90.1deg)}96.61%{transform:rotate(90deg)}98.31%{transform:rotate(89.8deg)}to{transform:rotate(90deg)}}@keyframes luzmo-fill-mask-2{0%{transform:rotate(180deg)}1.69%{transform:rotate(180deg)}3.39%{transform:rotate(180deg)}5.08%{transform:rotate(180deg)}6.78%{transform:rotate(180deg)}8.47%{transform:rotate(180deg)}10.17%{transform:rotate(179.2deg)}11.86%{transform:rotate(164deg)}13.56%{transform:rotate(151.8deg)}15.25%{transform:rotate(140.8deg)}16.95%{transform:rotate(130.3deg)}18.64%{transform:rotate(120.4deg)}20.34%{transform:rotate(110.8deg)}22.03%{transform:rotate(101.6deg)}23.73%{transform:rotate(93.5deg)}25.42%{transform:rotate(85.4deg)}27.12%{transform:rotate(78.1deg)}28.81%{transform:rotate(71.2deg)}30.51%{transform:rotate(89.1deg)}32.2%{transform:rotate(105.5deg)}33.9%{transform:rotate(121.3deg)}35.59%{transform:rotate(135.5deg)}37.29%{transform:rotate(148.4deg)}38.98%{transform:rotate(161deg)}40.68%{transform:rotate(173.5deg)}42.37%{transform:rotate(180deg)}44.07%{transform:rotate(180deg)}45.76%{transform:rotate(180deg)}47.46%{transform:rotate(180deg)}49.15%{transform:rotate(180deg)}50.85%{transform:rotate(180deg)}52.54%{transform:rotate(180deg)}54.24%{transform:rotate(180deg)}55.93%{transform:rotate(180deg)}57.63%{transform:rotate(180deg)}59.32%{transform:rotate(180deg)}61.02%{transform:rotate(180deg)}62.71%{transform:rotate(180deg)}64.41%{transform:rotate(180deg)}66.1%{transform:rotate(180deg)}67.8%{transform:rotate(180deg)}69.49%{transform:rotate(180deg)}71.19%{transform:rotate(180deg)}72.88%{transform:rotate(180deg)}74.58%{transform:rotate(180deg)}76.27%{transform:rotate(180deg)}77.97%{transform:rotate(180deg)}79.66%{transform:rotate(180deg)}81.36%{transform:rotate(180deg)}83.05%{transform:rotate(180deg)}84.75%{transform:rotate(180deg)}86.44%{transform:rotate(180deg)}88.14%{transform:rotate(180deg)}89.83%{transform:rotate(180deg)}91.53%{transform:rotate(180deg)}93.22%{transform:rotate(180deg)}94.92%{transform:rotate(180deg)}96.61%{transform:rotate(180deg)}98.31%{transform:rotate(180deg)}to{transform:rotate(180deg)}}@keyframes luzmo-fills-rotate{0%{transform:rotate(-90deg)}to{transform:rotate(270deg)}}:host([size=s]){--progress-circle-size: 16px;--progress-circle-thickness: 2px}:host([size=l]){--progress-circle-size: 48px;--progress-circle-thickness: 3px}:host([size=xl]){--progress-circle-size: 64px;--progress-circle-thickness: 4px}:host{block-size:var(--luzmo-progress-circle-size, var(--parent-element-progress-circle-size));inline-size:var(--luzmo-progress-circle-size, var(--parent-element-progress-circle-size));--progress-circle-size: inherit;--parent-element-progress-circle-size: inherit;--parent-element-progress-circle-size: var(--progress-circle-size, 32px)}:host([size=s]){--parent-element-progress-circle-size: var(--progress-circle-size, 16px)}:host([size=l]){--parent-element-progress-circle-size: var(--progress-circle-size, 48px)}:host([size=xl]){--parent-element-progress-circle-size: var(--progress-circle-size, 64px)}slot{display:none}.track,.fill{block-size:var(--luzmo-progress-circle-size, var(--parent-element-progress-circle-size));border-radius:var(--luzmo-progress-circle-size, var(--parent-element-progress-circle-size));inline-size:var(--luzmo-progress-circle-size, var(--parent-element-progress-circle-size))}:host([indeterminate]) .fills,:host([indeterminate]) .fill-sub-mask1,:host([indeterminate]) .fill-sub-mask2{animation-duration:var(--luzmo-progress-circle-animation-duration, 1s)}";var u=Object.defineProperty,l=(i,r,o,s)=>{for(var e=void 0,n=i.length-1,m;n>=0;n--)(m=i[n])&&(e=m(r,o,e)||e);return e&&u(r,o,e),e};class a extends d.SizedMixin(t.LuzmoElement,{validSizes:["s","m","l","xl"]}){constructor(){super(...arguments),this.indeterminate=!1,this.label="",this.progress=0}static get styles(){return[t.r(p)]}makeRotation(r){return this.indeterminate?void 0:`transform: rotate(${r}deg);`}render(){const r=[this.makeRotation(-180+3.6*Math.min(this.progress,50)),this.makeRotation(-180+3.6*Math.max(this.progress-50,0))],o=["mask1","mask2"];return t.x`
19
- <slot @slotchange=${this.handleSlotchange}></slot>
20
- <div class="track"></div>
21
- <div class="fills">
22
- ${o.map((s,e)=>t.x`
23
- <div class="fill-${s}">
24
- <div
25
- class="fill-sub-${s}"
26
- style=${g.o(r[e])}
27
- >
28
- <div class="fill"></div>
29
- </div>
30
- </div>
31
- `)}
32
- </div>
33
- `}handleSlotchange(){const r=f(this.label,this.slotEl);r&&(this.label=r)}firstUpdated(r){super.firstUpdated(r),this.hasAttribute("role")||this.setAttribute("role","progressbar")}updated(r){super.updated(r),!this.indeterminate&&r.has("progress")?this.setAttribute("aria-valuenow",""+this.progress):this.hasAttribute("aria-valuenow")&&this.removeAttribute("aria-valuenow"),r.has("label")&&(this.label.length>0?this.setAttribute("aria-label",this.label):r.get("label")===this.getAttribute("aria-label")&&this.removeAttribute("aria-label"))}}l([t.n({type:Boolean,reflect:!0})],a.prototype,"indeterminate");l([t.n({type:String})],a.prototype,"label");l([t.n({reflect:!0,attribute:"static-color"})],a.prototype,"staticColor");l([t.n({type:Number})],a.prototype,"progress");l([c.e("slot")],a.prototype,"slotEl");exports.LuzmoProgressCircle=a;
@@ -1,22 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- "use strict";const u=require("./base-BjTwmyRF.cjs");/**
19
- * @license
20
- * Copyright 2017 Google LLC
21
- * SPDX-License-Identifier: BSD-3-Clause
22
- */function a(i,l){return(r,s,c)=>{const o=n=>{var e;return((e=n.renderRoot)==null?void 0:e.querySelector(i))??null};if(l){const{get:n,set:e}=typeof s=="object"?r:c??(()=>{const t=Symbol();return{get(){return this[t]},set(h){this[t]=h}}})();return u.e(r,s,{get(){let t=n.call(this);return t===void 0&&(t=o(this),(t!==null||this.hasUpdated)&&e.call(this,t)),t}})}return u.e(r,s,{get(){return o(this)}})}}exports.e=a;
@@ -1,51 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- import { e as i } from "./base-D76d76ww.js";
19
- /**
20
- * @license
21
- * Copyright 2017 Google LLC
22
- * SPDX-License-Identifier: BSD-3-Clause
23
- */
24
- function d(l, u) {
25
- return (r, o, c) => {
26
- const s = (n) => {
27
- var e;
28
- return ((e = n.renderRoot) == null ? void 0 : e.querySelector(l)) ?? null;
29
- };
30
- if (u) {
31
- const { get: n, set: e } = typeof o == "object" ? r : c ?? (() => {
32
- const t = Symbol();
33
- return { get() {
34
- return this[t];
35
- }, set(h) {
36
- this[t] = h;
37
- } };
38
- })();
39
- return i(r, o, { get() {
40
- let t = n.call(this);
41
- return t === void 0 && (t = s(this), (t !== null || this.hasUpdated) && e.call(this, t)), t;
42
- } });
43
- }
44
- return i(r, o, { get() {
45
- return s(this);
46
- } });
47
- };
48
- }
49
- export {
50
- d as e
51
- };
@@ -1,36 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- import { e as u } from "./base-D76d76ww.js";
19
- /**
20
- * @license
21
- * Copyright 2021 Google LLC
22
- * SPDX-License-Identifier: BSD-3-Clause
23
- */
24
- function d(t) {
25
- return (c, i) => {
26
- const { slot: r, selector: o } = t ?? {}, l = "slot" + (r ? `[name=${r}]` : ":not([name])");
27
- return u(c, i, { get() {
28
- var s;
29
- const e = (s = this.renderRoot) == null ? void 0 : s.querySelector(l), n = (e == null ? void 0 : e.assignedElements(t)) ?? [];
30
- return o === void 0 ? n : n.filter((m) => m.matches(o));
31
- } });
32
- };
33
- }
34
- export {
35
- d as o
36
- };