solid-ui 3.1.3-4 → 3.1.3-6
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.
- package/dist/chunks/{menu-items-DKKcQrb6.js → DialogProvider-DphduSXG.js} +157 -56
- package/dist/chunks/DialogProvider-DphduSXG.js.map +1 -0
- package/dist/chunks/{account-BUAN8dcJ.js → account-CFhrB0LO.js} +23 -26
- package/dist/chunks/account-CFhrB0LO.js.map +1 -0
- package/dist/chunks/{auth-C5d3nG1T.js → auth-Cpf3HYqF.js} +32 -29
- package/dist/chunks/auth-Cpf3HYqF.js.map +1 -0
- package/dist/chunks/{avatar-CsuCQCRu.js → avatar-D281qln0.js} +8 -8
- package/dist/chunks/{avatar-CsuCQCRu.js.map → avatar-D281qln0.js.map} +1 -1
- package/dist/chunks/{button-GHRF3psH.js → button-DbKYu6-r.js} +7 -7
- package/dist/chunks/{button-GHRF3psH.js.map → button-DbKYu6-r.js.map} +1 -1
- package/dist/chunks/chevron-down-ujxRg3MD.js +10 -0
- package/dist/chunks/chevron-down-ujxRg3MD.js.map +1 -0
- package/dist/chunks/{combobox-eju-wypA.js → combobox-Dtgc8qqO.js} +135 -91
- package/dist/chunks/combobox-Dtgc8qqO.js.map +1 -0
- package/dist/chunks/{combobox-option-CW1ZwMC7.js → combobox-option-Ck0mu4Gc.js} +4 -4
- package/dist/chunks/{combobox-option-CW1ZwMC7.js.map → combobox-option-Ck0mu4Gc.js.map} +1 -1
- package/dist/chunks/{components-Dlw2zOvI.js → components-BlEGdx4i.js} +83 -15
- package/dist/chunks/components-BlEGdx4i.js.map +1 -0
- package/dist/chunks/{create-context-IPEkU7ze.js → context-DJ_8r7Oc.js} +8 -4
- package/dist/chunks/context-DJ_8r7Oc.js.map +1 -0
- package/dist/chunks/{decorators-CJJL4XBH.js → decorators-BiCkPd_3.js} +28 -35
- package/dist/chunks/decorators-BiCkPd_3.js.map +1 -0
- package/dist/chunks/{dialog-DmDA1aY8.js → dialog-DlBtmOm6.js} +105 -63
- package/dist/chunks/dialog-DlBtmOm6.js.map +1 -0
- package/dist/chunks/{dialog-content-C8VhHg5G.js → dialog-content-CMeH_BD7.js} +3 -3
- package/dist/chunks/{dialog-content-C8VhHg5G.js.map → dialog-content-CMeH_BD7.js.map} +1 -1
- package/dist/chunks/{dialog-footer-CtHFoTZS.js → dialog-footer-D0zzIMlx.js} +3 -3
- package/dist/chunks/{dialog-footer-CtHFoTZS.js.map → dialog-footer-D0zzIMlx.js.map} +1 -1
- package/dist/chunks/{dialog-header-D9jjujFf.js → dialog-header-DeC1iiLD.js} +3 -3
- package/dist/chunks/{dialog-header-D9jjujFf.js.map → dialog-header-DeC1iiLD.js.map} +1 -1
- package/dist/chunks/{dialogs-root-C4igEIk0.js → dialogs-root-BcUcRuAt.js} +10 -9
- package/dist/chunks/dialogs-root-BcUcRuAt.js.map +1 -0
- package/dist/chunks/{footer-CS8u8ycB.js → footer-Bxe4WPgl.js} +6 -6
- package/dist/chunks/{footer-CS8u8ycB.js.map → footer-Bxe4WPgl.js.map} +1 -1
- package/dist/chunks/{guard-CiRf-2tc.js → guard-Da3znlJI.js} +5 -5
- package/dist/chunks/{guard-CiRf-2tc.js.map → guard-Da3znlJI.js.map} +1 -1
- package/dist/chunks/{header-hptVqz21.js → header-Bqd2CEK3.js} +40 -40
- package/dist/chunks/{header-hptVqz21.js.map → header-Bqd2CEK3.js.map} +1 -1
- package/dist/chunks/input-Bkzi4zSV.js +311 -0
- package/dist/chunks/input-Bkzi4zSV.js.map +1 -0
- package/dist/chunks/{lit-CC2G_f_C.js → lit-C4H1jI4q.js} +110 -95
- package/dist/chunks/{lit-CC2G_f_C.js.map → lit-C4H1jI4q.js.map} +1 -1
- package/dist/chunks/{login-button-D3M_rY5D.js → login-button-C603hM0G.js} +10 -7
- package/dist/chunks/login-button-C603hM0G.js.map +1 -0
- package/dist/chunks/{logout-button-ChD3v11m.js → logout-button-Cxzpq-C3.js} +10 -7
- package/dist/chunks/logout-button-Cxzpq-C3.js.map +1 -0
- package/dist/chunks/menu-aQiqq1ET.js +3251 -0
- package/dist/chunks/menu-aQiqq1ET.js.map +1 -0
- package/dist/chunks/{menu-item-DoTy3MUu.js → menu-item-DBy4o-M4.js} +69 -55
- package/dist/chunks/menu-item-DBy4o-M4.js.map +1 -0
- package/dist/chunks/{photo-capture-COoxZRW_.js → photo-capture-tiBsdSbA.js} +20 -20
- package/dist/chunks/{photo-capture-COoxZRW_.js.map → photo-capture-tiBsdSbA.js.map} +1 -1
- package/dist/chunks/{provider-C7cgeyP2.js → provider-DZmdgerD.js} +7 -7
- package/dist/chunks/{provider-C7cgeyP2.js.map → provider-DZmdgerD.js.map} +1 -1
- package/dist/chunks/select-option-hd_d1RNj.js +195 -0
- package/dist/chunks/select-option-hd_d1RNj.js.map +1 -0
- package/dist/chunks/select-wczAzbZF.js +292 -0
- package/dist/chunks/select-wczAzbZF.js.map +1 -0
- package/dist/chunks/{signup-button-BE5-JSwt.js → signup-button-CsRaOUI4.js} +10 -7
- package/dist/chunks/signup-button-CsRaOUI4.js.map +1 -0
- package/dist/chunks/{src-Dk9GB6DL.js → src-BOU-JwWx.js} +3 -4
- package/dist/chunks/{src-Dk9GB6DL.js.map → src-BOU-JwWx.js.map} +1 -1
- package/dist/components/account/Account.cjs.js +8 -10
- package/dist/components/account/Account.cjs.js.map +1 -1
- package/dist/components/account/Account.d.ts.map +1 -1
- package/dist/components/account/Account.esm.js +7 -10
- package/dist/components/account/Account.esm.js.map +1 -1
- package/dist/components/account.js +1 -1
- package/dist/components/avatar.js +1 -1
- package/dist/components/button.js +1 -1
- package/dist/components/combobox/Combobox.cjs.js +26 -17
- package/dist/components/combobox/Combobox.cjs.js.map +1 -1
- package/dist/components/combobox/Combobox.d.ts +5 -3
- package/dist/components/combobox/Combobox.d.ts.map +1 -1
- package/dist/components/combobox/Combobox.esm.js +130 -79
- package/dist/components/combobox/Combobox.esm.js.map +1 -1
- package/dist/components/combobox-option.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/dialog/Dialog.cjs.js +1 -1
- package/dist/components/dialog/Dialog.cjs.js.map +1 -1
- package/dist/components/dialog/Dialog.d.ts +3 -1
- package/dist/components/dialog/Dialog.d.ts.map +1 -1
- package/dist/components/dialog/Dialog.esm.js +59 -60
- package/dist/components/dialog/Dialog.esm.js.map +1 -1
- package/dist/components/dialog-content.js +1 -1
- package/dist/components/dialog-footer.js +1 -1
- package/dist/components/dialog-header.js +1 -1
- package/dist/components/dialog-provider.js +1 -1
- package/dist/components/dialog.js +1 -1
- package/dist/components/dialogs-root/DialogsRoot.cjs.js +1 -1
- package/dist/components/dialogs-root/DialogsRoot.cjs.js.map +1 -1
- package/dist/components/dialogs-root/DialogsRoot.d.ts.map +1 -1
- package/dist/components/dialogs-root/DialogsRoot.esm.js +4 -2
- package/dist/components/dialogs-root/DialogsRoot.esm.js.map +1 -1
- package/dist/components/dialogs-root.js +1 -1
- package/dist/components/footer.js +1 -1
- package/dist/components/guard.js +1 -1
- package/dist/components/header.js +1 -1
- package/dist/components/index.cjs.js +1 -1
- package/dist/components/index.esm.js +2 -1
- package/dist/components/input/Input.cjs.js +17 -0
- package/dist/components/input/Input.cjs.js.map +1 -0
- package/dist/components/input/Input.d.ts +17 -0
- package/dist/components/input/Input.d.ts.map +1 -0
- package/dist/{chunks/menu-DCsLCND4.js → components/input/Input.esm.js} +157 -96
- package/dist/components/input/Input.esm.js.map +1 -0
- package/dist/components/input/Input.stories.d.ts +43 -0
- package/dist/components/input/Input.stories.d.ts.map +1 -0
- package/dist/components/input/Input.styles.cjs.js +2 -0
- package/dist/components/input/Input.styles.cjs.js.map +1 -0
- package/dist/components/input/Input.styles.esm.js +7 -0
- package/dist/components/input/Input.styles.esm.js.map +1 -0
- package/dist/components/input/index.cjs.js +2 -0
- package/dist/components/input/index.cjs.js.map +1 -0
- package/dist/components/input/index.d.ts +4 -0
- package/dist/components/input/index.d.ts.map +1 -0
- package/dist/components/input/index.esm.js +7 -0
- package/dist/components/input/index.esm.js.map +1 -0
- package/dist/components/input.js +2 -0
- package/dist/components/login-button/LoginButton.cjs.js +1 -1
- package/dist/components/login-button/LoginButton.cjs.js.map +1 -1
- package/dist/components/login-button/LoginButton.d.ts +1 -0
- package/dist/components/login-button/LoginButton.d.ts.map +1 -1
- package/dist/components/login-button/LoginButton.esm.js +4 -1
- package/dist/components/login-button/LoginButton.esm.js.map +1 -1
- package/dist/components/login-button.js +1 -1
- package/dist/components/login-modal.js +1 -1
- package/dist/components/logout-button/LogoutButton.cjs.js +1 -1
- package/dist/components/logout-button/LogoutButton.cjs.js.map +1 -1
- package/dist/components/logout-button/LogoutButton.d.ts +1 -0
- package/dist/components/logout-button/LogoutButton.d.ts.map +1 -1
- package/dist/components/logout-button/LogoutButton.esm.js +4 -1
- package/dist/components/logout-button/LogoutButton.esm.js.map +1 -1
- package/dist/components/logout-button.js +1 -1
- package/dist/components/menu/Menu.cjs.js +13 -8
- package/dist/components/menu/Menu.cjs.js.map +1 -1
- package/dist/components/menu/Menu.d.ts +13 -8
- package/dist/components/menu/Menu.d.ts.map +1 -1
- package/dist/components/menu/Menu.esm.js +132 -88
- package/dist/components/menu/Menu.esm.js.map +1 -1
- package/dist/components/menu/Menu.stories.d.ts.map +1 -1
- package/dist/components/menu/Menu.styles.cjs.js +2 -0
- package/dist/components/menu/Menu.styles.cjs.js.map +1 -0
- package/dist/components/menu/Menu.styles.esm.js +7 -0
- package/dist/components/menu/Menu.styles.esm.js.map +1 -0
- package/dist/components/menu-item/MenuItem.cjs.js +5 -7
- package/dist/components/menu-item/MenuItem.cjs.js.map +1 -1
- package/dist/components/menu-item/MenuItem.d.ts +2 -0
- package/dist/components/menu-item/MenuItem.d.ts.map +1 -1
- package/dist/components/menu-item/MenuItem.esm.js +61 -47
- package/dist/components/menu-item/MenuItem.esm.js.map +1 -1
- package/dist/components/menu-item/MenuItem.styles.cjs.js +1 -1
- package/dist/components/menu-item/MenuItem.styles.cjs.js.map +1 -1
- package/dist/components/menu-item/MenuItem.styles.esm.js +1 -1
- package/dist/components/menu-item/MenuItem.styles.esm.js.map +1 -1
- package/dist/components/menu-item.js +1 -1
- package/dist/components/menu.js +1 -1
- package/dist/components/photo-capture.js +1 -1
- package/dist/components/provider.js +1 -1
- package/dist/components/select/Select.cjs.js +21 -0
- package/dist/components/select/Select.cjs.js.map +1 -0
- package/dist/components/select/Select.d.ts +15 -0
- package/dist/components/select/Select.d.ts.map +1 -0
- package/dist/components/{menu-items/MenuItems.esm.js → select/Select.esm.js} +140 -65
- package/dist/components/select/Select.esm.js.map +1 -0
- package/dist/components/select/Select.stories.d.ts +27 -0
- package/dist/components/select/Select.stories.d.ts.map +1 -0
- package/dist/components/select/Select.styles.cjs.js +2 -0
- package/dist/components/select/Select.styles.cjs.js.map +1 -0
- package/dist/components/select/Select.styles.esm.js +7 -0
- package/dist/components/select/Select.styles.esm.js.map +1 -0
- package/dist/components/select/index.cjs.js +2 -1
- package/dist/components/select/index.cjs.js.map +1 -0
- package/dist/components/select/index.d.ts +3 -1
- package/dist/components/select/index.d.ts.map +1 -1
- package/dist/components/select/index.esm.js +7 -3
- package/dist/components/select/index.esm.js.map +1 -0
- package/dist/components/select-option/SelectOption.cjs.js +2 -0
- package/dist/components/select-option/SelectOption.cjs.js.map +1 -0
- package/dist/components/select-option/SelectOption.d.ts +6 -0
- package/dist/components/select-option/SelectOption.d.ts.map +1 -0
- package/dist/components/select-option/SelectOption.esm.js +194 -0
- package/dist/components/select-option/SelectOption.esm.js.map +1 -0
- package/dist/components/select-option/index.cjs.js +2 -0
- package/dist/components/select-option/index.cjs.js.map +1 -0
- package/dist/components/select-option/index.d.ts +4 -0
- package/dist/components/select-option/index.d.ts.map +1 -0
- package/dist/components/select-option/index.esm.js +7 -0
- package/dist/components/select-option/index.esm.js.map +1 -0
- package/dist/components/select-option.js +2 -0
- package/dist/components/select.js +2 -2
- package/dist/components/signup-button/SignupButton.cjs.js +1 -1
- package/dist/components/signup-button/SignupButton.cjs.js.map +1 -1
- package/dist/components/signup-button/SignupButton.d.ts +1 -0
- package/dist/components/signup-button/SignupButton.d.ts.map +1 -1
- package/dist/components/signup-button/SignupButton.esm.js +4 -1
- package/dist/components/signup-button/SignupButton.esm.js.map +1 -1
- package/dist/components/signup-button.js +1 -1
- package/dist/components.js +24 -23
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +13 -13
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +6 -8
- package/dist/lib/auth/NoopAuth.cjs.js +1 -1
- package/dist/lib/auth/NoopAuth.cjs.js.map +1 -1
- package/dist/lib/auth/NoopAuth.esm.js +1 -1
- package/dist/lib/auth/NoopAuth.esm.js.map +1 -1
- package/dist/lib/components/index.cjs.js +1 -1
- package/dist/lib/components/index.d.ts +1 -0
- package/dist/lib/components/index.d.ts.map +1 -1
- package/dist/lib/components/index.esm.js +4 -1
- package/dist/lib/components/traits/DialogTrait.cjs.js +2 -0
- package/dist/lib/components/traits/DialogTrait.cjs.js.map +1 -0
- package/dist/lib/components/traits/DialogTrait.d.ts +13 -0
- package/dist/lib/components/traits/DialogTrait.d.ts.map +1 -0
- package/dist/lib/components/traits/DialogTrait.esm.js +16 -0
- package/dist/lib/components/traits/DialogTrait.esm.js.map +1 -0
- package/dist/lib/components/traits/InputTrait.cjs.js +2 -0
- package/dist/lib/components/traits/InputTrait.cjs.js.map +1 -0
- package/dist/lib/components/traits/InputTrait.d.ts +29 -0
- package/dist/lib/components/traits/InputTrait.d.ts.map +1 -0
- package/dist/lib/components/traits/InputTrait.esm.js +44 -0
- package/dist/lib/components/traits/InputTrait.esm.js.map +1 -0
- package/dist/lib/components/traits/WebComponentTrait.d.ts +11 -0
- package/dist/lib/components/traits/WebComponentTrait.d.ts.map +1 -0
- package/dist/lib/components/traits/index.cjs.js +1 -0
- package/dist/lib/components/traits/index.d.ts +6 -0
- package/dist/lib/components/traits/index.d.ts.map +1 -0
- package/dist/lib/components/traits/index.esm.js +2 -0
- package/dist/lib/components/web-component/WebComponent.cjs.js +1 -1
- package/dist/lib/components/web-component/WebComponent.cjs.js.map +1 -1
- package/dist/lib/components/web-component/WebComponent.d.ts +7 -0
- package/dist/lib/components/web-component/WebComponent.d.ts.map +1 -1
- package/dist/lib/components/web-component/WebComponent.esm.js +16 -0
- package/dist/lib/components/web-component/WebComponent.esm.js.map +1 -1
- package/dist/lib/dialogs/Dialog.cjs.js +1 -1
- package/dist/lib/dialogs/Dialog.cjs.js.map +1 -1
- package/dist/lib/dialogs/Dialog.d.ts +6 -1
- package/dist/lib/dialogs/Dialog.d.ts.map +1 -1
- package/dist/lib/dialogs/Dialog.esm.js +6 -2
- package/dist/lib/dialogs/Dialog.esm.js.map +1 -1
- package/dist/lib/dialogs/context.cjs.js +1 -1
- package/dist/lib/dialogs/context.cjs.js.map +1 -1
- package/dist/lib/dialogs/context.d.ts +3 -0
- package/dist/lib/dialogs/context.d.ts.map +1 -1
- package/dist/lib/dialogs/context.esm.js +4 -3
- package/dist/lib/dialogs/context.esm.js.map +1 -1
- package/dist/lib/dialogs/events/close-dialog.cjs.js +1 -1
- package/dist/lib/dialogs/events/close-dialog.cjs.js.map +1 -1
- package/dist/lib/dialogs/events/close-dialog.d.ts +2 -1
- package/dist/lib/dialogs/events/close-dialog.d.ts.map +1 -1
- package/dist/lib/dialogs/events/close-dialog.esm.js +3 -2
- package/dist/lib/dialogs/events/close-dialog.esm.js.map +1 -1
- package/dist/lib/dialogs/helpers.cjs.js +1 -1
- package/dist/lib/dialogs/helpers.cjs.js.map +1 -1
- package/dist/lib/dialogs/helpers.d.ts +2 -1
- package/dist/lib/dialogs/helpers.d.ts.map +1 -1
- package/dist/lib/dialogs/helpers.esm.js +3 -3
- package/dist/lib/dialogs/helpers.esm.js.map +1 -1
- package/dist/lib/dialogs/index.cjs.js +1 -1
- package/dist/lib/dialogs/index.esm.js +1 -1
- package/dist/loader.js +6 -8
- package/dist/solid-ui.js +1022 -447
- package/dist/solid-ui.js.map +1 -1
- package/dist/solid-ui.min.js +1022 -447
- package/dist/solid-ui.min.js.map +1 -1
- package/dist/theme.css +1 -1
- package/package.json +3 -2
- package/dist/chunks/DialogProvider-BbWGIFN5.js +0 -211
- package/dist/chunks/DialogProvider-BbWGIFN5.js.map +0 -1
- package/dist/chunks/account-BUAN8dcJ.js.map +0 -1
- package/dist/chunks/auth-C5d3nG1T.js.map +0 -1
- package/dist/chunks/close-dialog-qpl1X44Q.js +0 -14
- package/dist/chunks/close-dialog-qpl1X44Q.js.map +0 -1
- package/dist/chunks/combobox-eju-wypA.js.map +0 -1
- package/dist/chunks/components-Dlw2zOvI.js.map +0 -1
- package/dist/chunks/consume-BefsVEGX.js +0 -49
- package/dist/chunks/consume-BefsVEGX.js.map +0 -1
- package/dist/chunks/context-ChcZyr30.js +0 -7
- package/dist/chunks/context-ChcZyr30.js.map +0 -1
- package/dist/chunks/context-ImtIQIYP.js +0 -7
- package/dist/chunks/context-ImtIQIYP.js.map +0 -1
- package/dist/chunks/create-context-IPEkU7ze.js.map +0 -1
- package/dist/chunks/decorators-CJJL4XBH.js.map +0 -1
- package/dist/chunks/dialog-DmDA1aY8.js.map +0 -1
- package/dist/chunks/dialogs-root-C4igEIk0.js.map +0 -1
- package/dist/chunks/login-button-D3M_rY5D.js.map +0 -1
- package/dist/chunks/logout-button-ChD3v11m.js.map +0 -1
- package/dist/chunks/menu-DCsLCND4.js.map +0 -1
- package/dist/chunks/menu-item-DoTy3MUu.js.map +0 -1
- package/dist/chunks/menu-items-DKKcQrb6.js.map +0 -1
- package/dist/chunks/provide-CqCWUUfi.js +0 -113
- package/dist/chunks/provide-CqCWUUfi.js.map +0 -1
- package/dist/chunks/select-bVnWqF4c.js +0 -560
- package/dist/chunks/select-bVnWqF4c.js.map +0 -1
- package/dist/chunks/signup-button-BE5-JSwt.js.map +0 -1
- package/dist/components/menu-items/MenuItems.cjs.js +0 -6
- package/dist/components/menu-items/MenuItems.cjs.js.map +0 -1
- package/dist/components/menu-items/MenuItems.d.ts +0 -8
- package/dist/components/menu-items/MenuItems.d.ts.map +0 -1
- package/dist/components/menu-items/MenuItems.esm.js.map +0 -1
- package/dist/components/menu-items/MenuItems.styles.cjs.js +0 -2
- package/dist/components/menu-items/MenuItems.styles.cjs.js.map +0 -1
- package/dist/components/menu-items/MenuItems.styles.esm.js +0 -7
- package/dist/components/menu-items/MenuItems.styles.esm.js.map +0 -1
- package/dist/components/menu-items/index.cjs.js +0 -2
- package/dist/components/menu-items/index.cjs.js.map +0 -1
- package/dist/components/menu-items/index.d.ts +0 -4
- package/dist/components/menu-items/index.d.ts.map +0 -1
- package/dist/components/menu-items/index.esm.js +0 -7
- package/dist/components/menu-items/index.esm.js.map +0 -1
- package/dist/components/menu-items.js +0 -2
- package/dist/lib/menus/context.cjs.js +0 -2
- package/dist/lib/menus/context.cjs.js.map +0 -1
- package/dist/lib/menus/context.d.ts +0 -7
- package/dist/lib/menus/context.d.ts.map +0 -1
- package/dist/lib/menus/context.esm.js +0 -7
- package/dist/lib/menus/context.esm.js.map +0 -1
- package/dist/lib/menus/index.cjs.js +0 -1
- package/dist/lib/menus/index.d.ts +0 -2
- package/dist/lib/menus/index.d.ts.map +0 -1
- package/dist/lib/menus/index.esm.js +0 -1
- package/dist/v2/components/forms/select/Select.cjs.js +0 -225
- package/dist/v2/components/forms/select/Select.cjs.js.map +0 -1
- package/dist/v2/components/forms/select/Select.esm.js +0 -394
- package/dist/v2/components/forms/select/Select.esm.js.map +0 -1
- package/dist/v2/components/forms/select/index.cjs.js +0 -2
- package/dist/v2/components/forms/select/index.cjs.js.map +0 -1
- package/dist/v2/components/forms/select/index.esm.js +0 -7
- package/dist/v2/components/forms/select/index.esm.js.map +0 -1
- package/dist/v2/components/forms/shared/downArrow.cjs.js +0 -9
- package/dist/v2/components/forms/shared/downArrow.cjs.js.map +0 -1
- package/dist/v2/components/forms/shared/downArrow.esm.js +0 -14
- package/dist/v2/components/forms/shared/downArrow.esm.js.map +0 -1
- package/dist/v2/components/forms/shared/keyboard.cjs.js +0 -2
- package/dist/v2/components/forms/shared/keyboard.cjs.js.map +0 -1
- package/dist/v2/components/forms/shared/keyboard.esm.js +0 -34
- package/dist/v2/components/forms/shared/keyboard.esm.js.map +0 -1
- package/dist/v2/components/forms/shared/listboxStyles.cjs.js +0 -95
- package/dist/v2/components/forms/shared/listboxStyles.cjs.js.map +0 -1
- package/dist/v2/components/forms/shared/listboxStyles.esm.js +0 -100
- package/dist/v2/components/forms/shared/listboxStyles.esm.js.map +0 -1
- package/dist/v2/components/forms/shared/listboxTemplate.cjs.js +0 -24
- package/dist/v2/components/forms/shared/listboxTemplate.cjs.js.map +0 -1
- package/dist/v2/components/forms/shared/listboxTemplate.esm.js +0 -37
- package/dist/v2/components/forms/shared/listboxTemplate.esm.js.map +0 -1
|
@@ -1,394 +0,0 @@
|
|
|
1
|
-
import { downArrowIcon as e } from "../shared/downArrow.esm.js";
|
|
2
|
-
import { renderListbox as t } from "../shared/listboxTemplate.esm.js";
|
|
3
|
-
import { listboxStyles as n } from "../shared/listboxStyles.esm.js";
|
|
4
|
-
import { findOptionIndexByValue as r, getFirstEnabledIndex as i, getLastEnabledIndex as a, getListboxActionFromKey as o, getNextEnabledIndex as s } from "../shared/keyboard.esm.js";
|
|
5
|
-
import { LitElement as c, css as l, html as u } from "lit";
|
|
6
|
-
import { render as d } from "lit/html.js";
|
|
7
|
-
//#region src/v2/components/forms/select/Select.ts
|
|
8
|
-
var f = class f extends c {
|
|
9
|
-
static _nextId = 0;
|
|
10
|
-
_popupPortalHost = null;
|
|
11
|
-
_popupPortalRoot = null;
|
|
12
|
-
_popupPortalContainer = null;
|
|
13
|
-
_handleDocumentPointerDown = (e) => {
|
|
14
|
-
let t = e.target;
|
|
15
|
-
if (!this._popupOpen || !(t instanceof Node)) return;
|
|
16
|
-
let n = "composedPath" in e ? e.composedPath() : [];
|
|
17
|
-
n.includes(this) || this._popupPortalHost && n.includes(this._popupPortalHost) || this._popupPortalRoot && n.includes(this._popupPortalRoot) || this.contains(t) || this._closePopup();
|
|
18
|
-
};
|
|
19
|
-
_handleViewportChange = () => {
|
|
20
|
-
this._popupOpen && this._updatePopupPosition();
|
|
21
|
-
};
|
|
22
|
-
static properties = {
|
|
23
|
-
label: {
|
|
24
|
-
type: String,
|
|
25
|
-
reflect: !0
|
|
26
|
-
},
|
|
27
|
-
theme: {
|
|
28
|
-
type: String,
|
|
29
|
-
reflect: !0
|
|
30
|
-
},
|
|
31
|
-
options: {
|
|
32
|
-
type: Array,
|
|
33
|
-
attribute: !1
|
|
34
|
-
},
|
|
35
|
-
layout: {
|
|
36
|
-
type: String,
|
|
37
|
-
reflect: !0
|
|
38
|
-
},
|
|
39
|
-
value: {
|
|
40
|
-
type: String,
|
|
41
|
-
reflect: !0
|
|
42
|
-
},
|
|
43
|
-
_popupOpen: { state: !0 },
|
|
44
|
-
_activeIndex: { state: !0 }
|
|
45
|
-
};
|
|
46
|
-
static styles = [n, l`
|
|
47
|
-
:host {
|
|
48
|
-
/* default theme */
|
|
49
|
-
display: block;
|
|
50
|
-
width: 100%;
|
|
51
|
-
min-width: 0;
|
|
52
|
-
max-width: 100%;
|
|
53
|
-
position: relative;
|
|
54
|
-
z-index: var(--select-z-index, 400);
|
|
55
|
-
box-sizing: border-box;
|
|
56
|
-
--select-open-z-index: 1000;
|
|
57
|
-
--select-popup-z-index: 1001;
|
|
58
|
-
--select-popup-background: var(--color-background, #f8f9fb);
|
|
59
|
-
--select-trigger-background: var(--color-background, #f8f9fb);
|
|
60
|
-
--select-trigger-toggle-hover-background: var(
|
|
61
|
-
--color-header-menu-item-hover,
|
|
62
|
-
#e6dcff
|
|
63
|
-
);
|
|
64
|
-
--input-background: var(--color-background, #f8f9fb);
|
|
65
|
-
--input-text: var(--color-text, #1a1a1a);
|
|
66
|
-
--input-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));
|
|
67
|
-
--label-color: var(--grey-purple-700, #1a1a1a);
|
|
68
|
-
--placeholder-color: var(--grey-purple-700, #5e546d);
|
|
69
|
-
--select-trigger-text: var(--input-text);
|
|
70
|
-
--popup-background: var(--select-popup-background);
|
|
71
|
-
--popup-text: var(--color-text, #1a1a1a);
|
|
72
|
-
--popup-border: var(--color-border, #e5e7eb);
|
|
73
|
-
--popup-shadow: var(
|
|
74
|
-
--box-shadow-sm,
|
|
75
|
-
0 1px 4px rgba(124, 77, 255, 0.12)
|
|
76
|
-
);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
:host([theme='dark']) {
|
|
80
|
-
display: block;
|
|
81
|
-
width: 100%;
|
|
82
|
-
min-width: 0;
|
|
83
|
-
max-width: 100%;
|
|
84
|
-
position: relative;
|
|
85
|
-
z-index: var(--select-z-index, 900);
|
|
86
|
-
box-sizing: border-box;
|
|
87
|
-
--select-open-z-index: 1000;
|
|
88
|
-
--select-popup-z-index: 1001;
|
|
89
|
-
--select-popup-background: var(--color-background, #1a1a1a);
|
|
90
|
-
--select-trigger-background: var(--color-background, #1a1a1a);
|
|
91
|
-
--select-trigger-toggle-hover-background: var(
|
|
92
|
-
--color-header-menu-item-hover,
|
|
93
|
-
#e6dcff
|
|
94
|
-
);
|
|
95
|
-
--input-background: var(--color-background, #1a1a1a);
|
|
96
|
-
--input-text: var(--color-text, #f8f9fb);
|
|
97
|
-
--input-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));
|
|
98
|
-
--label-color: var(--grey-purple-700, #f8f9fb);
|
|
99
|
-
--placeholder-color: var(--grey-purple-700, #c7bfd3);
|
|
100
|
-
--select-trigger-text: var(--input-text);
|
|
101
|
-
--popup-background: var(--select-popup-background);
|
|
102
|
-
--popup-text: var(--color-text, #f8f9fb);
|
|
103
|
-
--popup-border: var(--color-border, #e5e7eb);
|
|
104
|
-
--popup-shadow: var(
|
|
105
|
-
--box-shadow-sm,
|
|
106
|
-
0 1px 4px rgba(124, 77, 255, 0.12)
|
|
107
|
-
);
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
:host([popup-open]) {
|
|
111
|
-
z-index: var(--select-open-z-index);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
.select-field-row {
|
|
115
|
-
display: flex;
|
|
116
|
-
flex-direction: row;
|
|
117
|
-
position: relative;
|
|
118
|
-
width: 100%;
|
|
119
|
-
min-width: 0;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
.select-trigger {
|
|
123
|
-
display: block;
|
|
124
|
-
position: relative;
|
|
125
|
-
width: 100%;
|
|
126
|
-
min-width: 0;
|
|
127
|
-
min-height: var(--select-trigger-height, var(--min-touch-target, 44px));
|
|
128
|
-
height: var(--select-trigger-height, var(--min-touch-target, 44px));
|
|
129
|
-
padding: var(--spacing-xxs, 0.3125rem)
|
|
130
|
-
calc(26px + (var(--select-trigger-inline-padding, var(--spacing-2xs, 0.625rem)) * 2) + 6px)
|
|
131
|
-
var(--spacing-xxs, 0.3125rem)
|
|
132
|
-
var(--select-trigger-inline-padding, var(--spacing-2xs, 0.625rem));
|
|
133
|
-
border-radius: var(--border-radius-base, 0.3125rem);
|
|
134
|
-
background: var(--select-trigger-background);
|
|
135
|
-
border: 1px solid var(--input-border);
|
|
136
|
-
color: var(--select-trigger-text);
|
|
137
|
-
cursor: pointer;
|
|
138
|
-
appearance: none;
|
|
139
|
-
-webkit-appearance: none;
|
|
140
|
-
font-family: inherit;
|
|
141
|
-
font-size: var(--font-size-sm, 0.875rem);
|
|
142
|
-
font-weight: var(--font-weight-md, 500);
|
|
143
|
-
line-height: normal;
|
|
144
|
-
text-align: left;
|
|
145
|
-
white-space: nowrap;
|
|
146
|
-
text-decoration: none;
|
|
147
|
-
box-sizing: border-box;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
.select-trigger:focus-visible {
|
|
151
|
-
outline: 2px solid var(--color-focus-ring, var(--color-primary, #7C4DFF));
|
|
152
|
-
outline-offset: 2px;
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
.select-trigger-label {
|
|
156
|
-
display: block;
|
|
157
|
-
text-align: left;
|
|
158
|
-
overflow: hidden;
|
|
159
|
-
text-overflow: ellipsis;
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
.select-trigger-toggle {
|
|
163
|
-
position: absolute;
|
|
164
|
-
right: 6px;
|
|
165
|
-
top: 50%;
|
|
166
|
-
transform: translateY(-50%);
|
|
167
|
-
display: flex;
|
|
168
|
-
align-items: center;
|
|
169
|
-
justify-content: center;
|
|
170
|
-
width: 26px;
|
|
171
|
-
height: 26px;
|
|
172
|
-
padding: 0;
|
|
173
|
-
border: none;
|
|
174
|
-
background: transparent;
|
|
175
|
-
cursor: pointer;
|
|
176
|
-
border-radius: var(--border-radius-base, 0.3125rem);
|
|
177
|
-
flex-shrink: 0;
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
.select-trigger-toggle:hover {
|
|
181
|
-
background: var(
|
|
182
|
-
--select-trigger-toggle-hover-background,
|
|
183
|
-
var(--color-header-menu-item-hover, #e6dcff)
|
|
184
|
-
);
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
.select-field-row:focus-within .select-trigger-toggle {
|
|
188
|
-
background: var(
|
|
189
|
-
--select-trigger-toggle-hover-background,
|
|
190
|
-
var(--color-header-menu-item-hover, #e6dcff)
|
|
191
|
-
);
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
.select-trigger-icon {
|
|
195
|
-
display: inline-flex;
|
|
196
|
-
flex: 0 0 auto;
|
|
197
|
-
align-items: center;
|
|
198
|
-
justify-content: center;
|
|
199
|
-
width: 0.75rem;
|
|
200
|
-
height: 0.4375rem;
|
|
201
|
-
pointer-events: none;
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
.select-trigger-icon svg {
|
|
205
|
-
width: 100%;
|
|
206
|
-
height: 100%;
|
|
207
|
-
display: block;
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
.select-options-section {
|
|
211
|
-
position: relative;
|
|
212
|
-
background: var(--popup-background);
|
|
213
|
-
border-radius: inherit;
|
|
214
|
-
isolation: isolate;
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
.popup-box {
|
|
218
|
-
position: absolute;
|
|
219
|
-
top: 0;
|
|
220
|
-
left: 0;
|
|
221
|
-
width: 100%;
|
|
222
|
-
min-width: 100%;
|
|
223
|
-
background: var(--popup-background);
|
|
224
|
-
opacity: 1;
|
|
225
|
-
overflow: hidden;
|
|
226
|
-
color: var(--popup-text);
|
|
227
|
-
box-shadow: var(--popup-shadow);
|
|
228
|
-
border: 1px solid var(--popup-border);
|
|
229
|
-
border-radius: var(--border-radius-md, 0.5rem);
|
|
230
|
-
box-sizing: border-box;
|
|
231
|
-
isolation: isolate;
|
|
232
|
-
z-index: var(--select-popup-z-index);
|
|
233
|
-
}
|
|
234
|
-
`];
|
|
235
|
-
_listboxId = `solid-ui-select-listbox-${f._nextId++}`;
|
|
236
|
-
constructor() {
|
|
237
|
-
super(), this.label = "Select an option", this.theme = "light", this.options = [], this.layout = "desktop", this.value = "", this._popupOpen = !1, this._activeIndex = -1;
|
|
238
|
-
}
|
|
239
|
-
connectedCallback() {
|
|
240
|
-
super.connectedCallback(), document.addEventListener("pointerdown", this._handleDocumentPointerDown), window.addEventListener("resize", this._handleViewportChange), window.addEventListener("scroll", this._handleViewportChange, !0);
|
|
241
|
-
}
|
|
242
|
-
disconnectedCallback() {
|
|
243
|
-
this._detachPopupPortal(), document.removeEventListener("pointerdown", this._handleDocumentPointerDown), window.removeEventListener("resize", this._handleViewportChange), window.removeEventListener("scroll", this._handleViewportChange, !0), super.disconnectedCallback();
|
|
244
|
-
}
|
|
245
|
-
updated() {
|
|
246
|
-
this.toggleAttribute("popup-open", this._popupOpen), this._popupOpen ? (this._updatePopupPosition(), this._popupPortalRoot && d(this._renderPopup(), this._popupPortalRoot)) : this._popupPortalRoot && d(null, this._popupPortalRoot);
|
|
247
|
-
}
|
|
248
|
-
_getPopupPortalContainer() {
|
|
249
|
-
return this.closest("dialog[open]") || document.body;
|
|
250
|
-
}
|
|
251
|
-
_ensurePopupPortal() {
|
|
252
|
-
let e = this._getPopupPortalContainer();
|
|
253
|
-
if (this._popupPortalHost && this._popupPortalRoot && this._popupPortalContainer === e) return;
|
|
254
|
-
this._detachPopupPortal(), this._popupPortalHost = document.createElement("div"), this._popupPortalHost.setAttribute("data-solid-ui-select-portal", ""), this._popupPortalHost.style.position = "fixed", this._popupPortalHost.style.inset = "0 auto auto 0", this._popupPortalHost.style.zIndex = "2147483647", this._popupPortalHost.style.pointerEvents = "none", this._popupPortalHost.style.boxSizing = "border-box", this._popupPortalRoot = this._popupPortalHost.attachShadow({ mode: "open" });
|
|
255
|
-
let t = (Array.isArray(f.styles) ? f.styles : [f.styles]).map((e) => e?.styleSheet).filter((e) => !!e);
|
|
256
|
-
t.length > 0 && (this._popupPortalRoot.adoptedStyleSheets = t), e.appendChild(this._popupPortalHost), this._popupPortalContainer = e;
|
|
257
|
-
}
|
|
258
|
-
_detachPopupPortal() {
|
|
259
|
-
this._popupPortalRoot && d(null, this._popupPortalRoot), this._popupPortalHost?.parentNode && this._popupPortalHost.parentNode.removeChild(this._popupPortalHost), this._popupPortalHost = null, this._popupPortalRoot = null, this._popupPortalContainer = null;
|
|
260
|
-
}
|
|
261
|
-
_updatePopupPosition() {
|
|
262
|
-
this._ensurePopupPortal();
|
|
263
|
-
let e = this.getBoundingClientRect(), t = Math.min(288, Math.max(120, window.innerHeight - e.bottom - 12));
|
|
264
|
-
this._popupPortalHost && (this._popupPortalHost.style.top = `${Math.round(e.bottom + 2)}px`, this._popupPortalHost.style.left = `${Math.round(e.left)}px`, this._popupPortalHost.style.width = `${Math.round(e.width)}px`, this._popupPortalHost.style.maxHeight = `${Math.round(t)}px`, this._popupPortalHost.style.height = "0px");
|
|
265
|
-
}
|
|
266
|
-
_closePopup() {
|
|
267
|
-
this._popupOpen = !1, this._activeIndex = -1, this._popupPortalRoot && d(null, this._popupPortalRoot);
|
|
268
|
-
}
|
|
269
|
-
_getSelectedIndex() {
|
|
270
|
-
return r(this.options, this.value);
|
|
271
|
-
}
|
|
272
|
-
_getSelectedOption() {
|
|
273
|
-
let e = this._getSelectedIndex();
|
|
274
|
-
return e >= 0 ? this.options[e] : this.options[0];
|
|
275
|
-
}
|
|
276
|
-
_getDisplayedOptions() {
|
|
277
|
-
let e = this._getSelectedOption();
|
|
278
|
-
return e ? [e, ...this.options.filter((t) => t.value !== e.value)] : this.options;
|
|
279
|
-
}
|
|
280
|
-
_getActiveOption() {
|
|
281
|
-
let e = this._getDisplayedOptions();
|
|
282
|
-
if (!(this._activeIndex < 0)) return e[this._activeIndex];
|
|
283
|
-
}
|
|
284
|
-
_selectValueFromDropdown(e) {
|
|
285
|
-
this.value = e, this.dispatchEvent(new CustomEvent("change", {
|
|
286
|
-
detail: { value: e },
|
|
287
|
-
bubbles: !0,
|
|
288
|
-
composed: !0
|
|
289
|
-
})), this._closePopup();
|
|
290
|
-
}
|
|
291
|
-
_selectActiveOption() {
|
|
292
|
-
let e = this._getActiveOption();
|
|
293
|
-
e && !e.disabled && this._selectValueFromDropdown(e.value);
|
|
294
|
-
}
|
|
295
|
-
_openPopup() {
|
|
296
|
-
let e = this._getDisplayedOptions();
|
|
297
|
-
this._popupOpen = !0, this._updatePopupPosition(), this._activeIndex = r(e, this.value), this._activeIndex < 0 && (this._activeIndex = i(e));
|
|
298
|
-
}
|
|
299
|
-
_handleTriggerKeydown(e) {
|
|
300
|
-
let t = this._getDisplayedOptions(), n = o(e.key);
|
|
301
|
-
if (n !== "none") switch (e.preventDefault(), n) {
|
|
302
|
-
case "close":
|
|
303
|
-
this._closePopup();
|
|
304
|
-
break;
|
|
305
|
-
case "first":
|
|
306
|
-
this._popupOpen || this._openPopup(), this._activeIndex = i(t);
|
|
307
|
-
break;
|
|
308
|
-
case "last":
|
|
309
|
-
this._popupOpen || this._openPopup(), this._activeIndex = a(t);
|
|
310
|
-
break;
|
|
311
|
-
case "next":
|
|
312
|
-
if (!this._popupOpen) {
|
|
313
|
-
this._openPopup();
|
|
314
|
-
break;
|
|
315
|
-
}
|
|
316
|
-
this._activeIndex = s(this._activeIndex, t, 1);
|
|
317
|
-
break;
|
|
318
|
-
case "previous":
|
|
319
|
-
if (!this._popupOpen) {
|
|
320
|
-
this._openPopup();
|
|
321
|
-
break;
|
|
322
|
-
}
|
|
323
|
-
this._activeIndex = s(this._activeIndex, t, -1);
|
|
324
|
-
break;
|
|
325
|
-
case "select":
|
|
326
|
-
if (!this._popupOpen) {
|
|
327
|
-
this._openPopup();
|
|
328
|
-
break;
|
|
329
|
-
}
|
|
330
|
-
this._selectActiveOption();
|
|
331
|
-
break;
|
|
332
|
-
default: break;
|
|
333
|
-
}
|
|
334
|
-
}
|
|
335
|
-
_getOptionId(e, t) {
|
|
336
|
-
return `${this._listboxId}-option-${t}-${e.value}`;
|
|
337
|
-
}
|
|
338
|
-
_renderPopup() {
|
|
339
|
-
let e = this._getDisplayedOptions();
|
|
340
|
-
return u`
|
|
341
|
-
<div class="popup-box" part="popup-box" style="pointer-events: auto; max-height: inherit; overflow: auto;">
|
|
342
|
-
<div class="select-options-section">
|
|
343
|
-
${t({
|
|
344
|
-
selectedOption: this._getSelectedOption(),
|
|
345
|
-
activeOption: this._getActiveOption(),
|
|
346
|
-
options: e,
|
|
347
|
-
listboxId: this._listboxId,
|
|
348
|
-
getOptionId: (e, t) => this._getOptionId(e, t),
|
|
349
|
-
onOptionSelect: (e) => this._selectValueFromDropdown(e.value)
|
|
350
|
-
})}
|
|
351
|
-
</div>
|
|
352
|
-
</div>
|
|
353
|
-
`;
|
|
354
|
-
}
|
|
355
|
-
render() {
|
|
356
|
-
let t = this._getSelectedOption(), n = this._getActiveOption(), r = t?.label ?? this.label, i = this._popupOpen && n ? this._getOptionId(n, this._activeIndex) : void 0;
|
|
357
|
-
return u`
|
|
358
|
-
<div class="select-field-row">
|
|
359
|
-
<button
|
|
360
|
-
class="select-trigger"
|
|
361
|
-
type="button"
|
|
362
|
-
aria-haspopup="listbox"
|
|
363
|
-
aria-expanded="${this._popupOpen}"
|
|
364
|
-
aria-controls="${this._listboxId}"
|
|
365
|
-
aria-activedescendant="${i ?? ""}"
|
|
366
|
-
part="select-trigger"
|
|
367
|
-
@click="${() => this._popupOpen ? this._closePopup() : this._openPopup()}"
|
|
368
|
-
@keydown="${this._handleTriggerKeydown}"
|
|
369
|
-
>
|
|
370
|
-
<span class="select-trigger-label" part="trigger-label"
|
|
371
|
-
>${r}</span
|
|
372
|
-
>
|
|
373
|
-
<span class="select-trigger-toggle" part="trigger-toggle">
|
|
374
|
-
<span class="select-trigger-icon" part="trigger-icon" aria-hidden="true"
|
|
375
|
-
>${e}</span
|
|
376
|
-
>
|
|
377
|
-
</span>
|
|
378
|
-
</button>
|
|
379
|
-
</div>
|
|
380
|
-
|
|
381
|
-
<div
|
|
382
|
-
class="select-root"
|
|
383
|
-
aria-label="Select a value"
|
|
384
|
-
@click="${(e) => {
|
|
385
|
-
e.target === e.currentTarget && this._closePopup();
|
|
386
|
-
}}"
|
|
387
|
-
></div>
|
|
388
|
-
`;
|
|
389
|
-
}
|
|
390
|
-
};
|
|
391
|
-
//#endregion
|
|
392
|
-
export { f as Select };
|
|
393
|
-
|
|
394
|
-
//# sourceMappingURL=Select.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Select.esm.js","names":[],"sources":["../../../../../src/v2/components/forms/select/Select.ts"],"sourcesContent":["import { css, html, LitElement } from 'lit'\nimport { render as renderPortal } from 'lit/html.js'\nimport { downArrowIcon } from '../shared/downArrow'\nimport { renderListbox } from '../shared/listboxTemplate'\nimport { SelectOption } from '../shared/optionTypes'\nimport { listboxStyles } from '../shared/listboxStyles'\nimport {\n findOptionIndexByValue,\n getFirstEnabledIndex,\n getLastEnabledIndex,\n getListboxActionFromKey,\n getNextEnabledIndex\n} from '../shared/keyboard'\n\n/* The following keyboard navigation and ARIA support for Select\n were generated by AI Model: GPT-5.4 */\n/* Prompt: can you wire up the keyboard interactions and aria attributes for Select */\nexport class Select extends LitElement {\n private static _nextId = 0\n private _popupPortalHost: HTMLDivElement | null = null\n private _popupPortalRoot: ShadowRoot | null = null\n private _popupPortalContainer: Element | null = null\n private readonly _handleDocumentPointerDown = (event: Event) => {\n const eventTarget = event.target\n\n if (!this._popupOpen || !(eventTarget instanceof Node)) {\n return\n }\n\n const eventPath =\n 'composedPath' in event\n ? (\n event as Event & { composedPath: () => EventTarget[] }\n ).composedPath()\n : []\n\n if (eventPath.includes(this)) {\n return\n }\n\n if (\n (this._popupPortalHost && eventPath.includes(this._popupPortalHost)) ||\n (this._popupPortalRoot && eventPath.includes(this._popupPortalRoot))\n ) {\n return\n }\n\n if (!this.contains(eventTarget)) {\n this._closePopup()\n }\n }\n\n private readonly _handleViewportChange = () => {\n if (!this._popupOpen) return\n this._updatePopupPosition()\n }\n\n static properties = {\n label: { type: String, reflect: true },\n theme: { type: String, reflect: true },\n options: { type: Array, attribute: false },\n layout: { type: String, reflect: true },\n value: { type: String, reflect: true },\n _popupOpen: { state: true },\n _activeIndex: { state: true }\n }\n\n static styles = [\n listboxStyles,\n css`\n :host {\n /* default theme */\n display: block;\n width: 100%;\n min-width: 0;\n max-width: 100%;\n position: relative;\n z-index: var(--select-z-index, 400);\n box-sizing: border-box;\n --select-open-z-index: 1000;\n --select-popup-z-index: 1001;\n --select-popup-background: var(--color-background, #f8f9fb);\n --select-trigger-background: var(--color-background, #f8f9fb);\n --select-trigger-toggle-hover-background: var(\n --color-header-menu-item-hover,\n #e6dcff\n );\n --input-background: var(--color-background, #f8f9fb);\n --input-text: var(--color-text, #1a1a1a);\n --input-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));\n --label-color: var(--grey-purple-700, #1a1a1a);\n --placeholder-color: var(--grey-purple-700, #5e546d);\n --select-trigger-text: var(--input-text);\n --popup-background: var(--select-popup-background);\n --popup-text: var(--color-text, #1a1a1a);\n --popup-border: var(--color-border, #e5e7eb);\n --popup-shadow: var(\n --box-shadow-sm,\n 0 1px 4px rgba(124, 77, 255, 0.12)\n );\n }\n\n :host([theme='dark']) {\n display: block;\n width: 100%;\n min-width: 0;\n max-width: 100%;\n position: relative;\n z-index: var(--select-z-index, 900);\n box-sizing: border-box;\n --select-open-z-index: 1000;\n --select-popup-z-index: 1001;\n --select-popup-background: var(--color-background, #1a1a1a);\n --select-trigger-background: var(--color-background, #1a1a1a);\n --select-trigger-toggle-hover-background: var(\n --color-header-menu-item-hover,\n #e6dcff\n );\n --input-background: var(--color-background, #1a1a1a);\n --input-text: var(--color-text, #f8f9fb);\n --input-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));\n --label-color: var(--grey-purple-700, #f8f9fb);\n --placeholder-color: var(--grey-purple-700, #c7bfd3);\n --select-trigger-text: var(--input-text);\n --popup-background: var(--select-popup-background);\n --popup-text: var(--color-text, #f8f9fb);\n --popup-border: var(--color-border, #e5e7eb);\n --popup-shadow: var(\n --box-shadow-sm,\n 0 1px 4px rgba(124, 77, 255, 0.12)\n );\n }\n\n :host([popup-open]) {\n z-index: var(--select-open-z-index);\n }\n\n .select-field-row {\n display: flex;\n flex-direction: row;\n position: relative;\n width: 100%;\n min-width: 0;\n }\n\n .select-trigger {\n display: block;\n position: relative;\n width: 100%;\n min-width: 0;\n min-height: var(--select-trigger-height, var(--min-touch-target, 44px));\n height: var(--select-trigger-height, var(--min-touch-target, 44px));\n padding: var(--spacing-xxs, 0.3125rem)\n calc(26px + (var(--select-trigger-inline-padding, var(--spacing-2xs, 0.625rem)) * 2) + 6px)\n var(--spacing-xxs, 0.3125rem)\n var(--select-trigger-inline-padding, var(--spacing-2xs, 0.625rem));\n border-radius: var(--border-radius-base, 0.3125rem);\n background: var(--select-trigger-background);\n border: 1px solid var(--input-border);\n color: var(--select-trigger-text);\n cursor: pointer;\n appearance: none;\n -webkit-appearance: none;\n font-family: inherit;\n font-size: var(--font-size-sm, 0.875rem);\n font-weight: var(--font-weight-md, 500);\n line-height: normal;\n text-align: left;\n white-space: nowrap;\n text-decoration: none;\n box-sizing: border-box;\n }\n\n .select-trigger:focus-visible {\n outline: 2px solid var(--color-focus-ring, var(--color-primary, #7C4DFF));\n outline-offset: 2px;\n }\n\n .select-trigger-label {\n display: block;\n text-align: left;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .select-trigger-toggle {\n position: absolute;\n right: 6px;\n top: 50%;\n transform: translateY(-50%);\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n padding: 0;\n border: none;\n background: transparent;\n cursor: pointer;\n border-radius: var(--border-radius-base, 0.3125rem);\n flex-shrink: 0;\n }\n\n .select-trigger-toggle:hover {\n background: var(\n --select-trigger-toggle-hover-background,\n var(--color-header-menu-item-hover, #e6dcff)\n );\n }\n\n .select-field-row:focus-within .select-trigger-toggle {\n background: var(\n --select-trigger-toggle-hover-background,\n var(--color-header-menu-item-hover, #e6dcff)\n );\n }\n\n .select-trigger-icon {\n display: inline-flex;\n flex: 0 0 auto;\n align-items: center;\n justify-content: center;\n width: 0.75rem;\n height: 0.4375rem;\n pointer-events: none;\n }\n\n .select-trigger-icon svg {\n width: 100%;\n height: 100%;\n display: block;\n }\n\n .select-options-section {\n position: relative;\n background: var(--popup-background);\n border-radius: inherit;\n isolation: isolate;\n }\n\n .popup-box {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n min-width: 100%;\n background: var(--popup-background);\n opacity: 1;\n overflow: hidden;\n color: var(--popup-text);\n box-shadow: var(--popup-shadow);\n border: 1px solid var(--popup-border);\n border-radius: var(--border-radius-md, 0.5rem);\n box-sizing: border-box;\n isolation: isolate;\n z-index: var(--select-popup-z-index);\n }\n `\n ]\n\n declare label: string\n declare theme: 'light' | 'dark'\n declare options: Array<SelectOption>\n declare layout: 'desktop' | 'mobile'\n declare value: string\n declare _popupOpen: boolean\n declare _activeIndex: number\n\n private readonly _listboxId = `solid-ui-select-listbox-${Select._nextId++}`\n\n constructor () {\n super()\n this.label = 'Select an option'\n this.theme = 'light'\n this.options = []\n this.layout = 'desktop'\n this.value = ''\n this._popupOpen = false\n this._activeIndex = -1\n }\n\n connectedCallback () {\n super.connectedCallback()\n document.addEventListener('pointerdown', this._handleDocumentPointerDown)\n window.addEventListener('resize', this._handleViewportChange)\n window.addEventListener('scroll', this._handleViewportChange, true)\n }\n\n disconnectedCallback () {\n this._detachPopupPortal()\n document.removeEventListener('pointerdown', this._handleDocumentPointerDown)\n window.removeEventListener('resize', this._handleViewportChange)\n window.removeEventListener('scroll', this._handleViewportChange, true)\n super.disconnectedCallback()\n }\n\n protected updated () {\n this.toggleAttribute('popup-open', this._popupOpen)\n\n if (this._popupOpen) {\n this._updatePopupPosition()\n if (this._popupPortalRoot) {\n renderPortal(this._renderPopup(), this._popupPortalRoot)\n }\n } else if (this._popupPortalRoot) {\n renderPortal(null, this._popupPortalRoot)\n }\n }\n\n private _getPopupPortalContainer () {\n return this.closest('dialog[open]') || document.body\n }\n\n private _ensurePopupPortal () {\n const nextContainer = this._getPopupPortalContainer()\n\n if (\n this._popupPortalHost &&\n this._popupPortalRoot &&\n this._popupPortalContainer === nextContainer\n ) {\n return\n }\n\n this._detachPopupPortal()\n\n this._popupPortalHost = document.createElement('div')\n this._popupPortalHost.setAttribute('data-solid-ui-select-portal', '')\n this._popupPortalHost.style.position = 'fixed'\n this._popupPortalHost.style.inset = '0 auto auto 0'\n this._popupPortalHost.style.zIndex = '2147483647'\n this._popupPortalHost.style.pointerEvents = 'none'\n this._popupPortalHost.style.boxSizing = 'border-box'\n\n this._popupPortalRoot = this._popupPortalHost.attachShadow({ mode: 'open' })\n const styleSheets = (Array.isArray(Select.styles) ? Select.styles : [Select.styles])\n .map((style) => style?.styleSheet)\n .filter((styleSheet): styleSheet is CSSStyleSheet => Boolean(styleSheet))\n\n if (styleSheets.length > 0) {\n this._popupPortalRoot.adoptedStyleSheets = styleSheets\n }\n\n nextContainer.appendChild(this._popupPortalHost)\n this._popupPortalContainer = nextContainer\n }\n\n private _detachPopupPortal () {\n if (this._popupPortalRoot) {\n renderPortal(null, this._popupPortalRoot)\n }\n\n if (this._popupPortalHost?.parentNode) {\n this._popupPortalHost.parentNode.removeChild(this._popupPortalHost)\n }\n\n this._popupPortalHost = null\n this._popupPortalRoot = null\n this._popupPortalContainer = null\n }\n\n private _updatePopupPosition () {\n this._ensurePopupPortal()\n\n const rect = this.getBoundingClientRect()\n const maxHeight = Math.min(288, Math.max(120, window.innerHeight - rect.bottom - 12))\n\n if (this._popupPortalHost) {\n this._popupPortalHost.style.top = `${Math.round(rect.bottom + 2)}px`\n this._popupPortalHost.style.left = `${Math.round(rect.left)}px`\n this._popupPortalHost.style.width = `${Math.round(rect.width)}px`\n this._popupPortalHost.style.maxHeight = `${Math.round(maxHeight)}px`\n this._popupPortalHost.style.height = '0px'\n }\n }\n\n private _closePopup () {\n this._popupOpen = false\n this._activeIndex = -1\n\n if (this._popupPortalRoot) {\n renderPortal(null, this._popupPortalRoot)\n }\n }\n\n private _getSelectedIndex () {\n return findOptionIndexByValue(this.options, this.value)\n }\n\n private _getSelectedOption () {\n const selectedIndex = this._getSelectedIndex()\n\n if (selectedIndex >= 0) {\n return this.options[selectedIndex]\n }\n\n return this.options[0]\n }\n\n private _getDisplayedOptions () {\n const selectedOption = this._getSelectedOption()\n\n if (!selectedOption) {\n return this.options\n }\n\n return [\n selectedOption,\n ...this.options.filter((option) => option.value !== selectedOption.value)\n ]\n }\n\n private _getActiveOption () {\n const popupOptions = this._getDisplayedOptions()\n\n if (this._activeIndex < 0) {\n return undefined\n }\n\n return popupOptions[this._activeIndex]\n }\n\n private _selectValueFromDropdown (uri: string) {\n this.value = uri\n this.dispatchEvent(\n new CustomEvent('change', {\n detail: { value: uri },\n bubbles: true,\n composed: true\n })\n )\n this._closePopup()\n }\n\n private _selectActiveOption () {\n const activeOption = this._getActiveOption()\n\n if (activeOption && !activeOption.disabled) {\n this._selectValueFromDropdown(activeOption.value)\n }\n }\n\n private _openPopup () {\n const popupOptions = this._getDisplayedOptions()\n\n this._popupOpen = true\n this._updatePopupPosition()\n this._activeIndex = findOptionIndexByValue(popupOptions, this.value)\n\n if (this._activeIndex < 0) {\n this._activeIndex = getFirstEnabledIndex(popupOptions)\n }\n }\n\n private _handleTriggerKeydown (event: KeyboardEvent) {\n const popupOptions = this._getDisplayedOptions()\n const action = getListboxActionFromKey(event.key)\n\n if (action === 'none') {\n return\n }\n\n event.preventDefault()\n\n switch (action) {\n case 'close':\n this._closePopup()\n break\n case 'first':\n if (!this._popupOpen) {\n this._openPopup()\n }\n this._activeIndex = getFirstEnabledIndex(popupOptions)\n break\n case 'last':\n if (!this._popupOpen) {\n this._openPopup()\n }\n this._activeIndex = getLastEnabledIndex(popupOptions)\n break\n case 'next':\n if (!this._popupOpen) {\n this._openPopup()\n break\n }\n this._activeIndex = getNextEnabledIndex(\n this._activeIndex,\n popupOptions,\n 1\n )\n break\n case 'previous':\n if (!this._popupOpen) {\n this._openPopup()\n break\n }\n this._activeIndex = getNextEnabledIndex(\n this._activeIndex,\n popupOptions,\n -1\n )\n break\n case 'select':\n if (!this._popupOpen) {\n this._openPopup()\n break\n }\n this._selectActiveOption()\n break\n default:\n break\n }\n }\n\n private _getOptionId (option: SelectOption, index: number) {\n return `${this._listboxId}-option-${index}-${option.value}`\n }\n\n private _renderPopup () {\n const popupOptions = this._getDisplayedOptions()\n const selectedOption = this._getSelectedOption()\n const activeOption = this._getActiveOption()\n\n return html`\n <div class=\"popup-box\" part=\"popup-box\" style=\"pointer-events: auto; max-height: inherit; overflow: auto;\">\n <div class=\"select-options-section\">\n ${renderListbox({\n selectedOption,\n activeOption,\n options: popupOptions,\n listboxId: this._listboxId,\n getOptionId: (option, index) => this._getOptionId(option, index),\n onOptionSelect: (option) =>\n this._selectValueFromDropdown(option.value)\n })}\n </div>\n </div>\n `\n }\n\n render () {\n const selectedOption = this._getSelectedOption()\n const activeOption = this._getActiveOption()\n const triggerLabel = selectedOption?.label ?? this.label\n const activeDescendant =\n this._popupOpen && activeOption\n ? this._getOptionId(activeOption, this._activeIndex)\n : undefined\n\n return html`\n <div class=\"select-field-row\">\n <button\n class=\"select-trigger\"\n type=\"button\"\n aria-haspopup=\"listbox\"\n aria-expanded=\"${this._popupOpen}\"\n aria-controls=\"${this._listboxId}\"\n aria-activedescendant=\"${activeDescendant ?? ''}\"\n part=\"select-trigger\"\n @click=\"${() => this._popupOpen ? this._closePopup() : this._openPopup()}\"\n @keydown=\"${this._handleTriggerKeydown}\"\n >\n <span class=\"select-trigger-label\" part=\"trigger-label\"\n >${triggerLabel}</span\n >\n <span class=\"select-trigger-toggle\" part=\"trigger-toggle\">\n <span class=\"select-trigger-icon\" part=\"trigger-icon\" aria-hidden=\"true\"\n >${downArrowIcon}</span\n >\n </span>\n </button>\n </div>\n\n <div\n class=\"select-root\"\n aria-label=\"Select a value\"\n @click=\"${(e: MouseEvent) => {\n if (e.target === e.currentTarget) this._closePopup()\n }}\"\n ></div>\n `\n }\n}\n"],"mappings":";;;;;;;AAiBA,IAAa,IAAb,MAAa,UAAe,EAAW;CACrC,OAAe,UAAU;CACzB,mBAAkD;CAClD,mBAA8C;CAC9C,wBAAgD;CAChD,8BAA+C,MAAiB;EAC9D,IAAM,IAAc,EAAM;EAE1B,IAAI,CAAC,KAAK,cAAc,EAAE,aAAuB,OAC/C;EAGF,IAAM,IACJ,kBAAkB,IAEZ,EACA,aAAa,IACf,CAAC;EAEH,EAAU,SAAS,IAAI,KAKxB,KAAK,oBAAoB,EAAU,SAAS,KAAK,gBAAgB,KACjE,KAAK,oBAAoB,EAAU,SAAS,KAAK,gBAAgB,KAK/D,KAAK,SAAS,CAAW,KAC5B,KAAK,YAAY;CAErB;CAEA,8BAA+C;EACxC,KAAK,cACV,KAAK,qBAAqB;CAC5B;CAEA,OAAO,aAAa;EAClB,OAAO;GAAE,MAAM;GAAQ,SAAS;EAAK;EACrC,OAAO;GAAE,MAAM;GAAQ,SAAS;EAAK;EACrC,SAAS;GAAE,MAAM;GAAO,WAAW;EAAM;EACzC,QAAQ;GAAE,MAAM;GAAQ,SAAS;EAAK;EACtC,OAAO;GAAE,MAAM;GAAQ,SAAS;EAAK;EACrC,YAAY,EAAE,OAAO,GAAK;EAC1B,cAAc,EAAE,OAAO,GAAK;CAC9B;CAEA,OAAO,SAAS,CACd,GACA,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6LL;CAUA,aAA8B,2BAA2B,EAAO;CAEhE,cAAe;EAQb,AAPA,MAAM,GACN,KAAK,QAAQ,oBACb,KAAK,QAAQ,SACb,KAAK,UAAU,CAAC,GAChB,KAAK,SAAS,WACd,KAAK,QAAQ,IACb,KAAK,aAAa,IAClB,KAAK,eAAe;CACtB;CAEA,oBAAqB;EAInB,AAHA,MAAM,kBAAkB,GACxB,SAAS,iBAAiB,eAAe,KAAK,0BAA0B,GACxE,OAAO,iBAAiB,UAAU,KAAK,qBAAqB,GAC5D,OAAO,iBAAiB,UAAU,KAAK,uBAAuB,EAAI;CACpE;CAEA,uBAAwB;EAKtB,AAJA,KAAK,mBAAmB,GACxB,SAAS,oBAAoB,eAAe,KAAK,0BAA0B,GAC3E,OAAO,oBAAoB,UAAU,KAAK,qBAAqB,GAC/D,OAAO,oBAAoB,UAAU,KAAK,uBAAuB,EAAI,GACrE,MAAM,qBAAqB;CAC7B;CAEA,UAAqB;EAGnB,AAFA,KAAK,gBAAgB,cAAc,KAAK,UAAU,GAE9C,KAAK,cACP,KAAK,qBAAqB,GACtB,KAAK,oBACP,EAAa,KAAK,aAAa,GAAG,KAAK,gBAAgB,KAEhD,KAAK,oBACd,EAAa,MAAM,KAAK,gBAAgB;CAE5C;CAEA,2BAAoC;EAClC,OAAO,KAAK,QAAQ,cAAc,KAAK,SAAS;CAClD;CAEA,qBAA8B;EAC5B,IAAM,IAAgB,KAAK,yBAAyB;EAEpD,IACE,KAAK,oBACL,KAAK,oBACL,KAAK,0BAA0B,GAE/B;EAaF,AAVA,KAAK,mBAAmB,GAExB,KAAK,mBAAmB,SAAS,cAAc,KAAK,GACpD,KAAK,iBAAiB,aAAa,+BAA+B,EAAE,GACpE,KAAK,iBAAiB,MAAM,WAAW,SACvC,KAAK,iBAAiB,MAAM,QAAQ,iBACpC,KAAK,iBAAiB,MAAM,SAAS,cACrC,KAAK,iBAAiB,MAAM,gBAAgB,QAC5C,KAAK,iBAAiB,MAAM,YAAY,cAExC,KAAK,mBAAmB,KAAK,iBAAiB,aAAa,EAAE,MAAM,OAAO,CAAC;EAC3E,IAAM,KAAe,MAAM,QAAQ,EAAO,MAAM,IAAI,EAAO,SAAS,CAAC,EAAO,MAAM,GAC/E,KAAK,MAAU,GAAO,UAAU,EAChC,QAAQ,MAA4C,EAAQ,CAAW;EAO1E,AALI,EAAY,SAAS,MACvB,KAAK,iBAAiB,qBAAqB,IAG7C,EAAc,YAAY,KAAK,gBAAgB,GAC/C,KAAK,wBAAwB;CAC/B;CAEA,qBAA8B;EAW5B,AAVI,KAAK,oBACP,EAAa,MAAM,KAAK,gBAAgB,GAGtC,KAAK,kBAAkB,cACzB,KAAK,iBAAiB,WAAW,YAAY,KAAK,gBAAgB,GAGpE,KAAK,mBAAmB,MACxB,KAAK,mBAAmB,MACxB,KAAK,wBAAwB;CAC/B;CAEA,uBAAgC;EAC9B,KAAK,mBAAmB;EAExB,IAAM,IAAO,KAAK,sBAAsB,GAClC,IAAY,KAAK,IAAI,KAAK,KAAK,IAAI,KAAK,OAAO,cAAc,EAAK,SAAS,EAAE,CAAC;EAEpF,AAAI,KAAK,qBACP,KAAK,iBAAiB,MAAM,MAAM,GAAG,KAAK,MAAM,EAAK,SAAS,CAAC,EAAE,KACjE,KAAK,iBAAiB,MAAM,OAAO,GAAG,KAAK,MAAM,EAAK,IAAI,EAAE,KAC5D,KAAK,iBAAiB,MAAM,QAAQ,GAAG,KAAK,MAAM,EAAK,KAAK,EAAE,KAC9D,KAAK,iBAAiB,MAAM,YAAY,GAAG,KAAK,MAAM,CAAS,EAAE,KACjE,KAAK,iBAAiB,MAAM,SAAS;CAEzC;CAEA,cAAuB;EAIrB,AAHA,KAAK,aAAa,IAClB,KAAK,eAAe,IAEhB,KAAK,oBACP,EAAa,MAAM,KAAK,gBAAgB;CAE5C;CAEA,oBAA6B;EAC3B,OAAO,EAAuB,KAAK,SAAS,KAAK,KAAK;CACxD;CAEA,qBAA8B;EAC5B,IAAM,IAAgB,KAAK,kBAAkB;EAM7C,OAJI,KAAiB,IACZ,KAAK,QAAQ,KAGf,KAAK,QAAQ;CACtB;CAEA,uBAAgC;EAC9B,IAAM,IAAiB,KAAK,mBAAmB;EAM/C,OAJK,IAIE,CACL,GACA,GAAG,KAAK,QAAQ,QAAQ,MAAW,EAAO,UAAU,EAAe,KAAK,CAC1E,IANS,KAAK;CAOhB;CAEA,mBAA4B;EAC1B,IAAM,IAAe,KAAK,qBAAqB;EAE3C,WAAK,eAAe,IAIxB,OAAO,EAAa,KAAK;CAC3B;CAEA,yBAAkC,GAAa;EAS7C,AARA,KAAK,QAAQ,GACb,KAAK,cACH,IAAI,YAAY,UAAU;GACxB,QAAQ,EAAE,OAAO,EAAI;GACrB,SAAS;GACT,UAAU;EACZ,CAAC,CACH,GACA,KAAK,YAAY;CACnB;CAEA,sBAA+B;EAC7B,IAAM,IAAe,KAAK,iBAAiB;EAE3C,AAAI,KAAgB,CAAC,EAAa,YAChC,KAAK,yBAAyB,EAAa,KAAK;CAEpD;CAEA,aAAsB;EACpB,IAAM,IAAe,KAAK,qBAAqB;EAM/C,AAJA,KAAK,aAAa,IAClB,KAAK,qBAAqB,GAC1B,KAAK,eAAe,EAAuB,GAAc,KAAK,KAAK,GAE/D,KAAK,eAAe,MACtB,KAAK,eAAe,EAAqB,CAAY;CAEzD;CAEA,sBAA+B,GAAsB;EACnD,IAAM,IAAe,KAAK,qBAAqB,GACzC,IAAS,EAAwB,EAAM,GAAG;EAE5C,UAAW,QAMf,QAFA,EAAM,eAAe,GAEb,GAAR;GACE,KAAK;IACH,KAAK,YAAY;IACjB;GACF,KAAK;IAIH,AAHK,KAAK,cACR,KAAK,WAAW,GAElB,KAAK,eAAe,EAAqB,CAAY;IACrD;GACF,KAAK;IAIH,AAHK,KAAK,cACR,KAAK,WAAW,GAElB,KAAK,eAAe,EAAoB,CAAY;IACpD;GACF,KAAK;IACH,IAAI,CAAC,KAAK,YAAY;KACpB,KAAK,WAAW;KAChB;IACF;IACA,KAAK,eAAe,EAClB,KAAK,cACL,GACA,CACF;IACA;GACF,KAAK;IACH,IAAI,CAAC,KAAK,YAAY;KACpB,KAAK,WAAW;KAChB;IACF;IACA,KAAK,eAAe,EAClB,KAAK,cACL,GACA,EACF;IACA;GACF,KAAK;IACH,IAAI,CAAC,KAAK,YAAY;KACpB,KAAK,WAAW;KAChB;IACF;IACA,KAAK,oBAAoB;IACzB;GACF,SACE;EACJ;CACF;CAEA,aAAsB,GAAsB,GAAe;EACzD,OAAO,GAAG,KAAK,WAAW,UAAU,EAAM,GAAG,EAAO;CACtD;CAEA,eAAwB;EACtB,IAAM,IAAe,KAAK,qBAAqB;EAI/C,OAAO,CAAI;;;YAGH,EAAc;GACd,gBAPe,KAAK,mBAOpB;GACA,cAPa,KAAK,iBAOlB;GACA,SAAS;GACT,WAAW,KAAK;GAChB,cAAc,GAAQ,MAAU,KAAK,aAAa,GAAQ,CAAK;GAC/D,iBAAiB,MACf,KAAK,yBAAyB,EAAO,KAAK;EAC9C,CAAC,EAAE;;;;CAIX;CAEA,SAAU;EACR,IAAM,IAAiB,KAAK,mBAAmB,GACzC,IAAe,KAAK,iBAAiB,GACrC,IAAe,GAAgB,SAAS,KAAK,OAC7C,IACJ,KAAK,cAAc,IACf,KAAK,aAAa,GAAc,KAAK,YAAY,IACjD,KAAA;EAEN,OAAO,CAAI;;;;;;2BAMY,KAAK,WAAW;2BAChB,KAAK,WAAW;mCACR,KAAoB,GAAG;;0BAEhC,KAAK,aAAa,KAAK,YAAY,IAAI,KAAK,WAAW,EAAE;sBAC7D,KAAK,sBAAsB;;;eAGlC,EAAa;;;;iBAIX,EAAc;;;;;;;;;mBASZ,MAAkB;GAC3B,AAAI,EAAE,WAAW,EAAE,iBAAe,KAAK,YAAY;EACrD,EAAE;;;CAGR;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","names":[],"sources":["../../../../../src/v2/components/forms/select/index.ts"],"sourcesContent":["import { Select } from './Select'\n\nexport { Select }\n\nconst SELECT_TAG_NAME = 'solid-ui-select'\n\nif (!customElements.get(SELECT_TAG_NAME)) {\n customElements.define(SELECT_TAG_NAME, Select)\n}\n"],"mappings":"mCAIA,IAAM,EAAkB,kBAEnB,eAAe,IAAI,CAAe,GACrC,eAAe,OAAO,EAAiB,EAAA,MAAM"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","names":[],"sources":["../../../../../src/v2/components/forms/select/index.ts"],"sourcesContent":["import { Select } from './Select'\n\nexport { Select }\n\nconst SELECT_TAG_NAME = 'solid-ui-select'\n\nif (!customElements.get(SELECT_TAG_NAME)) {\n customElements.define(SELECT_TAG_NAME, Select)\n}\n"],"mappings":";;AAIA,IAAM,IAAkB;AAEnB,eAAe,IAAI,CAAe,KACrC,eAAe,OAAO,GAAiB,CAAM"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
var e=require("lit-html").html`
|
|
2
|
-
<svg xmlns="http://www.w3.org/2000/svg"
|
|
3
|
-
viewBox="0 0 12 7"
|
|
4
|
-
fill="none"
|
|
5
|
-
>
|
|
6
|
-
<path d="M0.679688 0.678955L5.50729 5.50656L10.3349 0.678955" stroke="#6A7282" stroke-width="1.35776" stroke-linecap="round" stroke-linejoin="round"/>
|
|
7
|
-
</svg>
|
|
8
|
-
`;exports.downArrowIcon=e;
|
|
9
|
-
//# sourceMappingURL=downArrow.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"downArrow.cjs.js","names":[],"sources":["../../../../../src/v2/components/forms/shared/downArrow.ts"],"sourcesContent":["import { html } from 'lit-html'\n\nexport const downArrowIcon = html`\n <svg xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 12 7\"\n fill=\"none\"\n >\n <path d=\"M0.679688 0.678955L5.50729 5.50656L10.3349 0.678955\" stroke=\"#6A7282\" stroke-width=\"1.35776\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n`\n"],"mappings":"AAEA,IAAa,EAAgB,kBAAA,EAAA,IAAI"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { html as e } from "lit-html";
|
|
2
|
-
//#region src/v2/components/forms/shared/downArrow.ts
|
|
3
|
-
var t = e`
|
|
4
|
-
<svg xmlns="http://www.w3.org/2000/svg"
|
|
5
|
-
viewBox="0 0 12 7"
|
|
6
|
-
fill="none"
|
|
7
|
-
>
|
|
8
|
-
<path d="M0.679688 0.678955L5.50729 5.50656L10.3349 0.678955" stroke="#6A7282" stroke-width="1.35776" stroke-linecap="round" stroke-linejoin="round"/>
|
|
9
|
-
</svg>
|
|
10
|
-
`;
|
|
11
|
-
//#endregion
|
|
12
|
-
export { t as downArrowIcon };
|
|
13
|
-
|
|
14
|
-
//# sourceMappingURL=downArrow.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"downArrow.esm.js","names":[],"sources":["../../../../../src/v2/components/forms/shared/downArrow.ts"],"sourcesContent":["import { html } from 'lit-html'\n\nexport const downArrowIcon = html`\n <svg xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 12 7\"\n fill=\"none\"\n >\n <path d=\"M0.679688 0.678955L5.50729 5.50656L10.3349 0.678955\" stroke=\"#6A7282\" stroke-width=\"1.35776\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n`\n"],"mappings":";;AAEA,IAAa,IAAgB,CAAI"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
function e(e,t,n){if(!t.length||t.every(e=>e.disabled))return-1;let r=t.length,i=e;do i=(i+n+r)%r;while(t[i].disabled);return i}function t(t){return t.length?e(-1,t,1):-1}function n(t){return t.length?e(t.length,t,-1):-1}function r(e,t){return t===void 0?-1:e.findIndex(e=>e.value===t)}function i(e){switch(e){case`ArrowDown`:return`next`;case`ArrowUp`:return`previous`;case`Home`:return`first`;case`End`:return`last`;case`Enter`:case` `:return`select`;case`Escape`:return`close`;default:return`none`}}exports.findOptionIndexByValue=r,exports.getFirstEnabledIndex=t,exports.getLastEnabledIndex=n,exports.getListboxActionFromKey=i,exports.getNextEnabledIndex=e;
|
|
2
|
-
//# sourceMappingURL=keyboard.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard.cjs.js","names":[],"sources":["../../../../../src/v2/components/forms/shared/keyboard.ts"],"sourcesContent":["import { SelectOption } from './optionTypes'\n\n/* Move up or down, skip disabled options */\nexport function getNextEnabledIndex (\n currentIndex: number,\n options: SelectOption[],\n direction: 1 | -1\n): number {\n if (!options.length) {\n return -1\n }\n\n if (options.every(option => option.disabled)) {\n return -1\n }\n\n const optionsCount = options.length\n let nextIndex = currentIndex\n\n do {\n nextIndex = (nextIndex + direction + optionsCount) % optionsCount\n } while (options[nextIndex].disabled)\n\n return nextIndex\n}\n\n/* Handle 'Home' and 'End' keys and initial highlight */\nexport function getFirstEnabledIndex (options: SelectOption[]): number {\n if (!options.length) {\n return -1\n }\n\n return getNextEnabledIndex(-1, options, 1)\n}\n\nexport function getLastEnabledIndex (options: SelectOption[]): number {\n if (!options.length) {\n return -1\n }\n\n return getNextEnabledIndex(options.length, options, -1)\n}\n\n/* Sync current value to active index */\nexport function findOptionIndexByValue (\n options: SelectOption[],\n value?: string\n): number {\n if (value === undefined) {\n return -1\n }\n return options.findIndex(option => option.value === value)\n}\n\n/* Map keyboard events to actions */\nexport function getListboxActionFromKey (key: string):\n | 'open'\n | 'close'\n | 'next'\n | 'previous'\n | 'first'\n | 'last'\n | 'select'\n | 'none' {\n switch (key) {\n case 'ArrowDown':\n return 'next'\n case 'ArrowUp':\n return 'previous'\n case 'Home':\n return 'first'\n case 'End':\n return 'last'\n case 'Enter':\n case ' ':\n return 'select'\n case 'Escape':\n return 'close'\n default:\n return 'none'\n }\n}\n"],"mappings":"AAGA,SAAgB,EACd,EACA,EACA,EACQ,CAKR,GAJI,CAAC,EAAQ,QAIT,EAAQ,MAAM,GAAU,EAAO,QAAQ,EACzC,MAAO,GAGT,IAAM,EAAe,EAAQ,OACzB,EAAY,EAEhB,EACE,IAAa,EAAY,EAAY,GAAgB,QAC9C,EAAQ,GAAW,UAE5B,OAAO,CACT,CAGA,SAAgB,EAAsB,EAAiC,CAKrE,OAJK,EAAQ,OAIN,EAAoB,GAAI,EAAS,CAAC,EAHhC,EAIX,CAEA,SAAgB,EAAqB,EAAiC,CAKpE,OAJK,EAAQ,OAIN,EAAoB,EAAQ,OAAQ,EAAS,EAAE,EAH7C,EAIX,CAGA,SAAgB,EACd,EACA,EACQ,CAIR,OAHI,IAAU,IAAA,GACL,GAEF,EAAQ,UAAU,GAAU,EAAO,QAAU,CAAK,CAC3D,CAGA,SAAgB,EAAyB,EAQ9B,CACT,OAAQ,EAAR,CACE,IAAK,YACH,MAAO,OACT,IAAK,UACH,MAAO,WACT,IAAK,OACH,MAAO,QACT,IAAK,MACH,MAAO,OACT,IAAK,QACL,IAAK,IACH,MAAO,SACT,IAAK,SACH,MAAO,QACT,QACE,MAAO,MACX,CACF"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
//#region src/v2/components/forms/shared/keyboard.ts
|
|
2
|
-
function e(e, t, n) {
|
|
3
|
-
if (!t.length || t.every((e) => e.disabled)) return -1;
|
|
4
|
-
let r = t.length, i = e;
|
|
5
|
-
do
|
|
6
|
-
i = (i + n + r) % r;
|
|
7
|
-
while (t[i].disabled);
|
|
8
|
-
return i;
|
|
9
|
-
}
|
|
10
|
-
function t(t) {
|
|
11
|
-
return t.length ? e(-1, t, 1) : -1;
|
|
12
|
-
}
|
|
13
|
-
function n(t) {
|
|
14
|
-
return t.length ? e(t.length, t, -1) : -1;
|
|
15
|
-
}
|
|
16
|
-
function r(e, t) {
|
|
17
|
-
return t === void 0 ? -1 : e.findIndex((e) => e.value === t);
|
|
18
|
-
}
|
|
19
|
-
function i(e) {
|
|
20
|
-
switch (e) {
|
|
21
|
-
case "ArrowDown": return "next";
|
|
22
|
-
case "ArrowUp": return "previous";
|
|
23
|
-
case "Home": return "first";
|
|
24
|
-
case "End": return "last";
|
|
25
|
-
case "Enter":
|
|
26
|
-
case " ": return "select";
|
|
27
|
-
case "Escape": return "close";
|
|
28
|
-
default: return "none";
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
//#endregion
|
|
32
|
-
export { r as findOptionIndexByValue, t as getFirstEnabledIndex, n as getLastEnabledIndex, i as getListboxActionFromKey, e as getNextEnabledIndex };
|
|
33
|
-
|
|
34
|
-
//# sourceMappingURL=keyboard.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard.esm.js","names":[],"sources":["../../../../../src/v2/components/forms/shared/keyboard.ts"],"sourcesContent":["import { SelectOption } from './optionTypes'\n\n/* Move up or down, skip disabled options */\nexport function getNextEnabledIndex (\n currentIndex: number,\n options: SelectOption[],\n direction: 1 | -1\n): number {\n if (!options.length) {\n return -1\n }\n\n if (options.every(option => option.disabled)) {\n return -1\n }\n\n const optionsCount = options.length\n let nextIndex = currentIndex\n\n do {\n nextIndex = (nextIndex + direction + optionsCount) % optionsCount\n } while (options[nextIndex].disabled)\n\n return nextIndex\n}\n\n/* Handle 'Home' and 'End' keys and initial highlight */\nexport function getFirstEnabledIndex (options: SelectOption[]): number {\n if (!options.length) {\n return -1\n }\n\n return getNextEnabledIndex(-1, options, 1)\n}\n\nexport function getLastEnabledIndex (options: SelectOption[]): number {\n if (!options.length) {\n return -1\n }\n\n return getNextEnabledIndex(options.length, options, -1)\n}\n\n/* Sync current value to active index */\nexport function findOptionIndexByValue (\n options: SelectOption[],\n value?: string\n): number {\n if (value === undefined) {\n return -1\n }\n return options.findIndex(option => option.value === value)\n}\n\n/* Map keyboard events to actions */\nexport function getListboxActionFromKey (key: string):\n | 'open'\n | 'close'\n | 'next'\n | 'previous'\n | 'first'\n | 'last'\n | 'select'\n | 'none' {\n switch (key) {\n case 'ArrowDown':\n return 'next'\n case 'ArrowUp':\n return 'previous'\n case 'Home':\n return 'first'\n case 'End':\n return 'last'\n case 'Enter':\n case ' ':\n return 'select'\n case 'Escape':\n return 'close'\n default:\n return 'none'\n }\n}\n"],"mappings":";AAGA,SAAgB,EACd,GACA,GACA,GACQ;CAKR,IAJI,CAAC,EAAQ,UAIT,EAAQ,OAAM,MAAU,EAAO,QAAQ,GACzC,OAAO;CAGT,IAAM,IAAe,EAAQ,QACzB,IAAY;CAEhB;EACE,KAAa,IAAY,IAAY,KAAgB;QAC9C,EAAQ,GAAW;CAE5B,OAAO;AACT;AAGA,SAAgB,EAAsB,GAAiC;CAKrE,OAJK,EAAQ,SAIN,EAAoB,IAAI,GAAS,CAAC,IAHhC;AAIX;AAEA,SAAgB,EAAqB,GAAiC;CAKpE,OAJK,EAAQ,SAIN,EAAoB,EAAQ,QAAQ,GAAS,EAAE,IAH7C;AAIX;AAGA,SAAgB,EACd,GACA,GACQ;CAIR,OAHI,MAAU,KAAA,IACL,KAEF,EAAQ,WAAU,MAAU,EAAO,UAAU,CAAK;AAC3D;AAGA,SAAgB,EAAyB,GAQ9B;CACT,QAAQ,GAAR;EACE,KAAK,aACH,OAAO;EACT,KAAK,WACH,OAAO;EACT,KAAK,QACH,OAAO;EACT,KAAK,OACH,OAAO;EACT,KAAK;EACL,KAAK,KACH,OAAO;EACT,KAAK,UACH,OAAO;EACT,SACE,OAAO;CACX;AACF"}
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
var e=require("lit").css`
|
|
2
|
-
:host { /* default theme */
|
|
3
|
-
--input-background: var(--color-background, #F8F9FB);
|
|
4
|
-
--item-text: var(--color-text-heading, #000000);
|
|
5
|
-
--item-selected-text: var(--color-primary, #7c4dff);
|
|
6
|
-
--item-hover-background: var(--color-header-menu-item-hover, #e6dcff);
|
|
7
|
-
--item-selected-background: var(--color-header-menu-item-selected, #cbb9ff);
|
|
8
|
-
--listbox-z-index: 1;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
:host([theme='dark']) {
|
|
12
|
-
--input-background: var(--color-background, #1A1A1A);
|
|
13
|
-
--item-text: var(--color-text-heading, #F8F9FB);
|
|
14
|
-
--item-selected-text: var(--color-primary, #7c4dff);
|
|
15
|
-
--item-hover-background: var(--color-header-menu-item-hover, #e6dcff);
|
|
16
|
-
--item-selected-background: var(--color-header-menu-item-selected, #cbb9ff);
|
|
17
|
-
--listbox-z-index: 1;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.listbox {
|
|
21
|
-
position: relative;
|
|
22
|
-
top: 0;
|
|
23
|
-
left: 0;
|
|
24
|
-
right: 0;
|
|
25
|
-
display: flex;
|
|
26
|
-
flex-direction: column;
|
|
27
|
-
gap: 0.0625rem;
|
|
28
|
-
margin: 0;
|
|
29
|
-
padding: 0;
|
|
30
|
-
list-style: none;
|
|
31
|
-
border: none;
|
|
32
|
-
border-radius: inherit;
|
|
33
|
-
background: var(--input-background);
|
|
34
|
-
background-color: var(--input-background);
|
|
35
|
-
opacity: 1;
|
|
36
|
-
overflow: hidden;
|
|
37
|
-
padding: 0.25rem;
|
|
38
|
-
z-index: var(--listbox-z-index);
|
|
39
|
-
box-shadow: 0 4px 12px rgba(124, 77, 255, 0.12);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
.listbox-item {
|
|
43
|
-
display: flex;
|
|
44
|
-
align-items: center;
|
|
45
|
-
gap: var(--spacing-2xs, 0.625rem);
|
|
46
|
-
width: 100%;
|
|
47
|
-
min-height: calc(var(--font-size-sm, 0.875rem) + 1rem);
|
|
48
|
-
padding: 0.5rem var(--spacing-xs, 0.75rem);
|
|
49
|
-
border: none;
|
|
50
|
-
border-radius: var(--border-radius-sm, 0.2rem);
|
|
51
|
-
background: transparent;
|
|
52
|
-
color: var(--item-text);
|
|
53
|
-
cursor: pointer;
|
|
54
|
-
font: inherit;
|
|
55
|
-
font-size: var(--font-size-sm, 0.875rem);
|
|
56
|
-
font-weight: var(--font-weight-normal, 400);
|
|
57
|
-
line-height: normal;
|
|
58
|
-
text-align: left;
|
|
59
|
-
text-decoration: none;
|
|
60
|
-
box-sizing: border-box;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
.listbox-item:hover {
|
|
64
|
-
background: var(--item-hover-background);
|
|
65
|
-
border-radius: var(--border-radius-sm, 0.2rem);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
.listbox-item:focus {
|
|
69
|
-
background: var(--item-hover-background);
|
|
70
|
-
border-radius: var(--border-radius-sm, 0.2rem);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
.listbox-item-active {
|
|
74
|
-
background: var(--item-selected-background);
|
|
75
|
-
color: var(--item-selected-text);
|
|
76
|
-
border-radius: var(--border-radius-sm, 0.2rem);
|
|
77
|
-
outline: none;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.listbox-item-active:hover,
|
|
81
|
-
.listbox-item-active:focus {
|
|
82
|
-
color: var(--item-text);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
.listbox-item-disabled {
|
|
86
|
-
opacity: 0.55;
|
|
87
|
-
cursor: not-allowed;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
.listbox-item-disabled:hover {
|
|
91
|
-
background: transparent;
|
|
92
|
-
border-radius: 0;
|
|
93
|
-
}
|
|
94
|
-
`;exports.listboxStyles=e;
|
|
95
|
-
//# sourceMappingURL=listboxStyles.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"listboxStyles.cjs.js","names":[],"sources":["../../../../../src/v2/components/forms/shared/listboxStyles.ts"],"sourcesContent":["import { css } from 'lit'\n\nexport const listboxStyles = css`\n :host { /* default theme */\n --input-background: var(--color-background, #F8F9FB);\n --item-text: var(--color-text-heading, #000000);\n --item-selected-text: var(--color-primary, #7c4dff);\n --item-hover-background: var(--color-header-menu-item-hover, #e6dcff);\n --item-selected-background: var(--color-header-menu-item-selected, #cbb9ff);\n --listbox-z-index: 1;\n }\n\n :host([theme='dark']) {\n --input-background: var(--color-background, #1A1A1A);\n --item-text: var(--color-text-heading, #F8F9FB);\n --item-selected-text: var(--color-primary, #7c4dff);\n --item-hover-background: var(--color-header-menu-item-hover, #e6dcff);\n --item-selected-background: var(--color-header-menu-item-selected, #cbb9ff);\n --listbox-z-index: 1;\n }\n\n .listbox {\n position: relative;\n top: 0;\n left: 0;\n right: 0;\n display: flex;\n flex-direction: column;\n gap: 0.0625rem;\n margin: 0;\n padding: 0;\n list-style: none;\n border: none;\n border-radius: inherit;\n background: var(--input-background);\n background-color: var(--input-background);\n opacity: 1;\n overflow: hidden;\n padding: 0.25rem;\n z-index: var(--listbox-z-index);\n box-shadow: 0 4px 12px rgba(124, 77, 255, 0.12);\n }\n\n .listbox-item {\n display: flex;\n align-items: center;\n gap: var(--spacing-2xs, 0.625rem);\n width: 100%;\n min-height: calc(var(--font-size-sm, 0.875rem) + 1rem);\n padding: 0.5rem var(--spacing-xs, 0.75rem);\n border: none;\n border-radius: var(--border-radius-sm, 0.2rem);\n background: transparent;\n color: var(--item-text);\n cursor: pointer;\n font: inherit;\n font-size: var(--font-size-sm, 0.875rem);\n font-weight: var(--font-weight-normal, 400);\n line-height: normal;\n text-align: left;\n text-decoration: none;\n box-sizing: border-box;\n }\n\n .listbox-item:hover {\n background: var(--item-hover-background);\n border-radius: var(--border-radius-sm, 0.2rem);\n }\n\n .listbox-item:focus {\n background: var(--item-hover-background);\n border-radius: var(--border-radius-sm, 0.2rem);\n }\n\n .listbox-item-active {\n background: var(--item-selected-background);\n color: var(--item-selected-text);\n border-radius: var(--border-radius-sm, 0.2rem);\n outline: none;\n }\n\n .listbox-item-active:hover,\n .listbox-item-active:focus {\n color: var(--item-text);\n }\n\n .listbox-item-disabled {\n opacity: 0.55;\n cursor: not-allowed;\n }\n\n .listbox-item-disabled:hover {\n background: transparent;\n border-radius: 0;\n }\n`\n"],"mappings":"AAEA,IAAa,EAAgB,aAAA,EAAA,GAAG"}
|