solid-ui 3.1.3-5 → 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-B4BktCv0.js → account-CFhrB0LO.js} +23 -26
- package/dist/chunks/account-CFhrB0LO.js.map +1 -0
- package/dist/chunks/{auth-BPQUXz9Q.js → auth-Cpf3HYqF.js} +31 -28
- package/dist/chunks/auth-Cpf3HYqF.js.map +1 -0
- package/dist/chunks/{avatar-B5DCduCy.js → avatar-D281qln0.js} +8 -8
- package/dist/chunks/{avatar-B5DCduCy.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-BIc50Lps.js → guard-Da3znlJI.js} +5 -5
- package/dist/chunks/{guard-BIc50Lps.js.map → guard-Da3znlJI.js.map} +1 -1
- package/dist/chunks/{header-0TLBh_PG.js → header-Bqd2CEK3.js} +40 -40
- package/dist/chunks/{header-0TLBh_PG.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-BKp1-O2q.js → login-button-C603hM0G.js} +10 -7
- package/dist/chunks/login-button-C603hM0G.js.map +1 -0
- package/dist/chunks/{logout-button-DlU-q-o5.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-uRz_fGWb.js → provider-DZmdgerD.js} +7 -7
- package/dist/chunks/{provider-uRz_fGWb.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-BC4LmOXx.js → signup-button-CsRaOUI4.js} +10 -7
- package/dist/chunks/signup-button-CsRaOUI4.js.map +1 -0
- package/dist/chunks/{src-f1UXhE9W.js → src-BOU-JwWx.js} +3 -4
- package/dist/chunks/{src-f1UXhE9W.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/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 +2 -1
- package/dist/chunks/DialogProvider-BbWGIFN5.js +0 -211
- package/dist/chunks/DialogProvider-BbWGIFN5.js.map +0 -1
- package/dist/chunks/account-B4BktCv0.js.map +0 -1
- package/dist/chunks/auth-BPQUXz9Q.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-BKp1-O2q.js.map +0 -1
- package/dist/chunks/logout-button-DlU-q-o5.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-BC4LmOXx.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,560 +0,0 @@
|
|
|
1
|
-
import { i as e, r as t, s as n, t as r } from "./lit-CC2G_f_C.js";
|
|
2
|
-
//#region src/v2/components/forms/shared/downArrow.ts
|
|
3
|
-
var i = 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
|
-
//#region src/v2/components/forms/shared/listboxTemplate.ts
|
|
13
|
-
function a(t) {
|
|
14
|
-
let { options: n, selectedOption: r, activeOption: i, listboxId: a, getOptionId: o, onOptionSelect: s } = t;
|
|
15
|
-
return e`
|
|
16
|
-
<ul
|
|
17
|
-
class="listbox"
|
|
18
|
-
id="${a ?? ""}"
|
|
19
|
-
part="listbox"
|
|
20
|
-
role="listbox"
|
|
21
|
-
aria-orientation="vertical"
|
|
22
|
-
>
|
|
23
|
-
${n.map((t, n) => {
|
|
24
|
-
let a = t.value === r?.value, c = t.value === i?.value;
|
|
25
|
-
return e`
|
|
26
|
-
<li
|
|
27
|
-
id="${o?.(t, n) ?? ""}"
|
|
28
|
-
class="listbox-item${a ? " listbox-item-selected" : ""}${c ? " listbox-item-active" : ""}${t.disabled ? " listbox-item-disabled" : ""}"
|
|
29
|
-
part="option${a ? " selected-option" : ""}${c ? " active-option" : ""}${t.disabled ? " disabled-option" : ""}"
|
|
30
|
-
role="option"
|
|
31
|
-
aria-selected="${a}"
|
|
32
|
-
aria-disabled="${t.disabled ? "true" : "false"}"
|
|
33
|
-
@click="${() => {
|
|
34
|
-
t.disabled || s(t);
|
|
35
|
-
}}"
|
|
36
|
-
>
|
|
37
|
-
${t.label}
|
|
38
|
-
</li>
|
|
39
|
-
`;
|
|
40
|
-
})}
|
|
41
|
-
</ul>
|
|
42
|
-
`;
|
|
43
|
-
}
|
|
44
|
-
//#endregion
|
|
45
|
-
//#region src/v2/components/forms/shared/listboxStyles.ts
|
|
46
|
-
var o = n`
|
|
47
|
-
:host { /* default theme */
|
|
48
|
-
--input-background: var(--color-background, #F8F9FB);
|
|
49
|
-
--item-text: var(--color-text-heading, #000000);
|
|
50
|
-
--item-selected-text: var(--color-primary, #7c4dff);
|
|
51
|
-
--item-hover-background: var(--color-header-menu-item-hover, #e6dcff);
|
|
52
|
-
--item-selected-background: var(--color-header-menu-item-selected, #cbb9ff);
|
|
53
|
-
--listbox-z-index: 1;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
:host([theme='dark']) {
|
|
57
|
-
--input-background: var(--color-background, #1A1A1A);
|
|
58
|
-
--item-text: var(--color-text-heading, #F8F9FB);
|
|
59
|
-
--item-selected-text: var(--color-primary, #7c4dff);
|
|
60
|
-
--item-hover-background: var(--color-header-menu-item-hover, #e6dcff);
|
|
61
|
-
--item-selected-background: var(--color-header-menu-item-selected, #cbb9ff);
|
|
62
|
-
--listbox-z-index: 1;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.listbox {
|
|
66
|
-
position: relative;
|
|
67
|
-
top: 0;
|
|
68
|
-
left: 0;
|
|
69
|
-
right: 0;
|
|
70
|
-
display: flex;
|
|
71
|
-
flex-direction: column;
|
|
72
|
-
gap: 0.0625rem;
|
|
73
|
-
margin: 0;
|
|
74
|
-
padding: 0;
|
|
75
|
-
list-style: none;
|
|
76
|
-
border: none;
|
|
77
|
-
border-radius: inherit;
|
|
78
|
-
background: var(--input-background);
|
|
79
|
-
background-color: var(--input-background);
|
|
80
|
-
opacity: 1;
|
|
81
|
-
overflow: hidden;
|
|
82
|
-
padding: 0.25rem;
|
|
83
|
-
z-index: var(--listbox-z-index);
|
|
84
|
-
box-shadow: 0 4px 12px rgba(124, 77, 255, 0.12);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
.listbox-item {
|
|
88
|
-
display: flex;
|
|
89
|
-
align-items: center;
|
|
90
|
-
gap: var(--spacing-2xs, 0.625rem);
|
|
91
|
-
width: 100%;
|
|
92
|
-
min-height: calc(var(--font-size-sm, 0.875rem) + 1rem);
|
|
93
|
-
padding: 0.5rem var(--spacing-xs, 0.75rem);
|
|
94
|
-
border: none;
|
|
95
|
-
border-radius: var(--border-radius-sm, 0.2rem);
|
|
96
|
-
background: transparent;
|
|
97
|
-
color: var(--item-text);
|
|
98
|
-
cursor: pointer;
|
|
99
|
-
font: inherit;
|
|
100
|
-
font-size: var(--font-size-sm, 0.875rem);
|
|
101
|
-
font-weight: var(--font-weight-normal, 400);
|
|
102
|
-
line-height: normal;
|
|
103
|
-
text-align: left;
|
|
104
|
-
text-decoration: none;
|
|
105
|
-
box-sizing: border-box;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
.listbox-item:hover {
|
|
109
|
-
background: var(--item-hover-background);
|
|
110
|
-
border-radius: var(--border-radius-sm, 0.2rem);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
.listbox-item:focus {
|
|
114
|
-
background: var(--item-hover-background);
|
|
115
|
-
border-radius: var(--border-radius-sm, 0.2rem);
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
.listbox-item-active {
|
|
119
|
-
background: var(--item-selected-background);
|
|
120
|
-
color: var(--item-selected-text);
|
|
121
|
-
border-radius: var(--border-radius-sm, 0.2rem);
|
|
122
|
-
outline: none;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
.listbox-item-active:hover,
|
|
126
|
-
.listbox-item-active:focus {
|
|
127
|
-
color: var(--item-text);
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
.listbox-item-disabled {
|
|
131
|
-
opacity: 0.55;
|
|
132
|
-
cursor: not-allowed;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
.listbox-item-disabled:hover {
|
|
136
|
-
background: transparent;
|
|
137
|
-
border-radius: 0;
|
|
138
|
-
}
|
|
139
|
-
`;
|
|
140
|
-
//#endregion
|
|
141
|
-
//#region src/v2/components/forms/shared/keyboard.ts
|
|
142
|
-
function s(e, t, n) {
|
|
143
|
-
if (!t.length || t.every((e) => e.disabled)) return -1;
|
|
144
|
-
let r = t.length, i = e;
|
|
145
|
-
do
|
|
146
|
-
i = (i + n + r) % r;
|
|
147
|
-
while (t[i].disabled);
|
|
148
|
-
return i;
|
|
149
|
-
}
|
|
150
|
-
function c(e) {
|
|
151
|
-
return e.length ? s(-1, e, 1) : -1;
|
|
152
|
-
}
|
|
153
|
-
function l(e) {
|
|
154
|
-
return e.length ? s(e.length, e, -1) : -1;
|
|
155
|
-
}
|
|
156
|
-
function u(e, t) {
|
|
157
|
-
return t === void 0 ? -1 : e.findIndex((e) => e.value === t);
|
|
158
|
-
}
|
|
159
|
-
function d(e) {
|
|
160
|
-
switch (e) {
|
|
161
|
-
case "ArrowDown": return "next";
|
|
162
|
-
case "ArrowUp": return "previous";
|
|
163
|
-
case "Home": return "first";
|
|
164
|
-
case "End": return "last";
|
|
165
|
-
case "Enter":
|
|
166
|
-
case " ": return "select";
|
|
167
|
-
case "Escape": return "close";
|
|
168
|
-
default: return "none";
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
//#endregion
|
|
172
|
-
//#region src/v2/components/forms/select/Select.ts
|
|
173
|
-
var f = class f extends r {
|
|
174
|
-
static _nextId = 0;
|
|
175
|
-
_popupPortalHost = null;
|
|
176
|
-
_popupPortalRoot = null;
|
|
177
|
-
_popupPortalContainer = null;
|
|
178
|
-
_handleDocumentPointerDown = (e) => {
|
|
179
|
-
let t = e.target;
|
|
180
|
-
if (!this._popupOpen || !(t instanceof Node)) return;
|
|
181
|
-
let n = "composedPath" in e ? e.composedPath() : [];
|
|
182
|
-
n.includes(this) || this._popupPortalHost && n.includes(this._popupPortalHost) || this._popupPortalRoot && n.includes(this._popupPortalRoot) || this.contains(t) || this._closePopup();
|
|
183
|
-
};
|
|
184
|
-
_handleViewportChange = () => {
|
|
185
|
-
this._popupOpen && this._updatePopupPosition();
|
|
186
|
-
};
|
|
187
|
-
static properties = {
|
|
188
|
-
label: {
|
|
189
|
-
type: String,
|
|
190
|
-
reflect: !0
|
|
191
|
-
},
|
|
192
|
-
theme: {
|
|
193
|
-
type: String,
|
|
194
|
-
reflect: !0
|
|
195
|
-
},
|
|
196
|
-
options: {
|
|
197
|
-
type: Array,
|
|
198
|
-
attribute: !1
|
|
199
|
-
},
|
|
200
|
-
layout: {
|
|
201
|
-
type: String,
|
|
202
|
-
reflect: !0
|
|
203
|
-
},
|
|
204
|
-
value: {
|
|
205
|
-
type: String,
|
|
206
|
-
reflect: !0
|
|
207
|
-
},
|
|
208
|
-
_popupOpen: { state: !0 },
|
|
209
|
-
_activeIndex: { state: !0 }
|
|
210
|
-
};
|
|
211
|
-
static styles = [o, n`
|
|
212
|
-
:host {
|
|
213
|
-
/* default theme */
|
|
214
|
-
display: block;
|
|
215
|
-
width: 100%;
|
|
216
|
-
min-width: 0;
|
|
217
|
-
max-width: 100%;
|
|
218
|
-
position: relative;
|
|
219
|
-
z-index: var(--select-z-index, 400);
|
|
220
|
-
box-sizing: border-box;
|
|
221
|
-
--select-open-z-index: 1000;
|
|
222
|
-
--select-popup-z-index: 1001;
|
|
223
|
-
--select-popup-background: var(--color-background, #f8f9fb);
|
|
224
|
-
--select-trigger-background: var(--color-background, #f8f9fb);
|
|
225
|
-
--select-trigger-toggle-hover-background: var(
|
|
226
|
-
--color-header-menu-item-hover,
|
|
227
|
-
#e6dcff
|
|
228
|
-
);
|
|
229
|
-
--input-background: var(--color-background, #f8f9fb);
|
|
230
|
-
--input-text: var(--color-text, #1a1a1a);
|
|
231
|
-
--input-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));
|
|
232
|
-
--label-color: var(--grey-purple-700, #1a1a1a);
|
|
233
|
-
--placeholder-color: var(--grey-purple-700, #5e546d);
|
|
234
|
-
--select-trigger-text: var(--input-text);
|
|
235
|
-
--popup-background: var(--select-popup-background);
|
|
236
|
-
--popup-text: var(--color-text, #1a1a1a);
|
|
237
|
-
--popup-border: var(--color-border, #e5e7eb);
|
|
238
|
-
--popup-shadow: var(
|
|
239
|
-
--box-shadow-sm,
|
|
240
|
-
0 1px 4px rgba(124, 77, 255, 0.12)
|
|
241
|
-
);
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
:host([theme='dark']) {
|
|
245
|
-
display: block;
|
|
246
|
-
width: 100%;
|
|
247
|
-
min-width: 0;
|
|
248
|
-
max-width: 100%;
|
|
249
|
-
position: relative;
|
|
250
|
-
z-index: var(--select-z-index, 900);
|
|
251
|
-
box-sizing: border-box;
|
|
252
|
-
--select-open-z-index: 1000;
|
|
253
|
-
--select-popup-z-index: 1001;
|
|
254
|
-
--select-popup-background: var(--color-background, #1a1a1a);
|
|
255
|
-
--select-trigger-background: var(--color-background, #1a1a1a);
|
|
256
|
-
--select-trigger-toggle-hover-background: var(
|
|
257
|
-
--color-header-menu-item-hover,
|
|
258
|
-
#e6dcff
|
|
259
|
-
);
|
|
260
|
-
--input-background: var(--color-background, #1a1a1a);
|
|
261
|
-
--input-text: var(--color-text, #f8f9fb);
|
|
262
|
-
--input-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));
|
|
263
|
-
--label-color: var(--grey-purple-700, #f8f9fb);
|
|
264
|
-
--placeholder-color: var(--grey-purple-700, #c7bfd3);
|
|
265
|
-
--select-trigger-text: var(--input-text);
|
|
266
|
-
--popup-background: var(--select-popup-background);
|
|
267
|
-
--popup-text: var(--color-text, #f8f9fb);
|
|
268
|
-
--popup-border: var(--color-border, #e5e7eb);
|
|
269
|
-
--popup-shadow: var(
|
|
270
|
-
--box-shadow-sm,
|
|
271
|
-
0 1px 4px rgba(124, 77, 255, 0.12)
|
|
272
|
-
);
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
:host([popup-open]) {
|
|
276
|
-
z-index: var(--select-open-z-index);
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
.select-field-row {
|
|
280
|
-
display: flex;
|
|
281
|
-
flex-direction: row;
|
|
282
|
-
position: relative;
|
|
283
|
-
width: 100%;
|
|
284
|
-
min-width: 0;
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
.select-trigger {
|
|
288
|
-
display: block;
|
|
289
|
-
position: relative;
|
|
290
|
-
width: 100%;
|
|
291
|
-
min-width: 0;
|
|
292
|
-
min-height: var(--select-trigger-height, var(--min-touch-target, 44px));
|
|
293
|
-
height: var(--select-trigger-height, var(--min-touch-target, 44px));
|
|
294
|
-
padding: var(--spacing-xxs, 0.3125rem)
|
|
295
|
-
calc(26px + (var(--select-trigger-inline-padding, var(--spacing-2xs, 0.625rem)) * 2) + 6px)
|
|
296
|
-
var(--spacing-xxs, 0.3125rem)
|
|
297
|
-
var(--select-trigger-inline-padding, var(--spacing-2xs, 0.625rem));
|
|
298
|
-
border-radius: var(--border-radius-base, 0.3125rem);
|
|
299
|
-
background: var(--select-trigger-background);
|
|
300
|
-
border: 1px solid var(--input-border);
|
|
301
|
-
color: var(--select-trigger-text);
|
|
302
|
-
cursor: pointer;
|
|
303
|
-
appearance: none;
|
|
304
|
-
-webkit-appearance: none;
|
|
305
|
-
font-family: inherit;
|
|
306
|
-
font-size: var(--font-size-sm, 0.875rem);
|
|
307
|
-
font-weight: var(--font-weight-md, 500);
|
|
308
|
-
line-height: normal;
|
|
309
|
-
text-align: left;
|
|
310
|
-
white-space: nowrap;
|
|
311
|
-
text-decoration: none;
|
|
312
|
-
box-sizing: border-box;
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
.select-trigger:focus-visible {
|
|
316
|
-
outline: 2px solid var(--color-focus-ring, var(--color-primary, #7C4DFF));
|
|
317
|
-
outline-offset: 2px;
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
.select-trigger-label {
|
|
321
|
-
display: block;
|
|
322
|
-
text-align: left;
|
|
323
|
-
overflow: hidden;
|
|
324
|
-
text-overflow: ellipsis;
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
.select-trigger-toggle {
|
|
328
|
-
position: absolute;
|
|
329
|
-
right: 6px;
|
|
330
|
-
top: 50%;
|
|
331
|
-
transform: translateY(-50%);
|
|
332
|
-
display: flex;
|
|
333
|
-
align-items: center;
|
|
334
|
-
justify-content: center;
|
|
335
|
-
width: 26px;
|
|
336
|
-
height: 26px;
|
|
337
|
-
padding: 0;
|
|
338
|
-
border: none;
|
|
339
|
-
background: transparent;
|
|
340
|
-
cursor: pointer;
|
|
341
|
-
border-radius: var(--border-radius-base, 0.3125rem);
|
|
342
|
-
flex-shrink: 0;
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
.select-trigger-toggle:hover {
|
|
346
|
-
background: var(
|
|
347
|
-
--select-trigger-toggle-hover-background,
|
|
348
|
-
var(--color-header-menu-item-hover, #e6dcff)
|
|
349
|
-
);
|
|
350
|
-
}
|
|
351
|
-
|
|
352
|
-
.select-field-row:focus-within .select-trigger-toggle {
|
|
353
|
-
background: var(
|
|
354
|
-
--select-trigger-toggle-hover-background,
|
|
355
|
-
var(--color-header-menu-item-hover, #e6dcff)
|
|
356
|
-
);
|
|
357
|
-
}
|
|
358
|
-
|
|
359
|
-
.select-trigger-icon {
|
|
360
|
-
display: inline-flex;
|
|
361
|
-
flex: 0 0 auto;
|
|
362
|
-
align-items: center;
|
|
363
|
-
justify-content: center;
|
|
364
|
-
width: 0.75rem;
|
|
365
|
-
height: 0.4375rem;
|
|
366
|
-
pointer-events: none;
|
|
367
|
-
}
|
|
368
|
-
|
|
369
|
-
.select-trigger-icon svg {
|
|
370
|
-
width: 100%;
|
|
371
|
-
height: 100%;
|
|
372
|
-
display: block;
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
.select-options-section {
|
|
376
|
-
position: relative;
|
|
377
|
-
background: var(--popup-background);
|
|
378
|
-
border-radius: inherit;
|
|
379
|
-
isolation: isolate;
|
|
380
|
-
}
|
|
381
|
-
|
|
382
|
-
.popup-box {
|
|
383
|
-
position: absolute;
|
|
384
|
-
top: 0;
|
|
385
|
-
left: 0;
|
|
386
|
-
width: 100%;
|
|
387
|
-
min-width: 100%;
|
|
388
|
-
background: var(--popup-background);
|
|
389
|
-
opacity: 1;
|
|
390
|
-
overflow: hidden;
|
|
391
|
-
color: var(--popup-text);
|
|
392
|
-
box-shadow: var(--popup-shadow);
|
|
393
|
-
border: 1px solid var(--popup-border);
|
|
394
|
-
border-radius: var(--border-radius-md, 0.5rem);
|
|
395
|
-
box-sizing: border-box;
|
|
396
|
-
isolation: isolate;
|
|
397
|
-
z-index: var(--select-popup-z-index);
|
|
398
|
-
}
|
|
399
|
-
`];
|
|
400
|
-
_listboxId = `solid-ui-select-listbox-${f._nextId++}`;
|
|
401
|
-
constructor() {
|
|
402
|
-
super(), this.label = "Select an option", this.theme = "light", this.options = [], this.layout = "desktop", this.value = "", this._popupOpen = !1, this._activeIndex = -1;
|
|
403
|
-
}
|
|
404
|
-
connectedCallback() {
|
|
405
|
-
super.connectedCallback(), document.addEventListener("pointerdown", this._handleDocumentPointerDown), window.addEventListener("resize", this._handleViewportChange), window.addEventListener("scroll", this._handleViewportChange, !0);
|
|
406
|
-
}
|
|
407
|
-
disconnectedCallback() {
|
|
408
|
-
this._detachPopupPortal(), document.removeEventListener("pointerdown", this._handleDocumentPointerDown), window.removeEventListener("resize", this._handleViewportChange), window.removeEventListener("scroll", this._handleViewportChange, !0), super.disconnectedCallback();
|
|
409
|
-
}
|
|
410
|
-
updated() {
|
|
411
|
-
this.toggleAttribute("popup-open", this._popupOpen), this._popupOpen ? (this._updatePopupPosition(), this._popupPortalRoot && t(this._renderPopup(), this._popupPortalRoot)) : this._popupPortalRoot && t(null, this._popupPortalRoot);
|
|
412
|
-
}
|
|
413
|
-
_getPopupPortalContainer() {
|
|
414
|
-
return this.closest("dialog[open]") || document.body;
|
|
415
|
-
}
|
|
416
|
-
_ensurePopupPortal() {
|
|
417
|
-
let e = this._getPopupPortalContainer();
|
|
418
|
-
if (this._popupPortalHost && this._popupPortalRoot && this._popupPortalContainer === e) return;
|
|
419
|
-
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" });
|
|
420
|
-
let t = (Array.isArray(f.styles) ? f.styles : [f.styles]).map((e) => e?.styleSheet).filter((e) => !!e);
|
|
421
|
-
t.length > 0 && (this._popupPortalRoot.adoptedStyleSheets = t), e.appendChild(this._popupPortalHost), this._popupPortalContainer = e;
|
|
422
|
-
}
|
|
423
|
-
_detachPopupPortal() {
|
|
424
|
-
this._popupPortalRoot && t(null, this._popupPortalRoot), this._popupPortalHost?.parentNode && this._popupPortalHost.parentNode.removeChild(this._popupPortalHost), this._popupPortalHost = null, this._popupPortalRoot = null, this._popupPortalContainer = null;
|
|
425
|
-
}
|
|
426
|
-
_updatePopupPosition() {
|
|
427
|
-
this._ensurePopupPortal();
|
|
428
|
-
let e = this.getBoundingClientRect(), t = Math.min(288, Math.max(120, window.innerHeight - e.bottom - 12));
|
|
429
|
-
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");
|
|
430
|
-
}
|
|
431
|
-
_closePopup() {
|
|
432
|
-
this._popupOpen = !1, this._activeIndex = -1, this._popupPortalRoot && t(null, this._popupPortalRoot);
|
|
433
|
-
}
|
|
434
|
-
_getSelectedIndex() {
|
|
435
|
-
return u(this.options, this.value);
|
|
436
|
-
}
|
|
437
|
-
_getSelectedOption() {
|
|
438
|
-
let e = this._getSelectedIndex();
|
|
439
|
-
return e >= 0 ? this.options[e] : this.options[0];
|
|
440
|
-
}
|
|
441
|
-
_getDisplayedOptions() {
|
|
442
|
-
let e = this._getSelectedOption();
|
|
443
|
-
return e ? [e, ...this.options.filter((t) => t.value !== e.value)] : this.options;
|
|
444
|
-
}
|
|
445
|
-
_getActiveOption() {
|
|
446
|
-
let e = this._getDisplayedOptions();
|
|
447
|
-
if (!(this._activeIndex < 0)) return e[this._activeIndex];
|
|
448
|
-
}
|
|
449
|
-
_selectValueFromDropdown(e) {
|
|
450
|
-
this.value = e, this.dispatchEvent(new CustomEvent("change", {
|
|
451
|
-
detail: { value: e },
|
|
452
|
-
bubbles: !0,
|
|
453
|
-
composed: !0
|
|
454
|
-
})), this._closePopup();
|
|
455
|
-
}
|
|
456
|
-
_selectActiveOption() {
|
|
457
|
-
let e = this._getActiveOption();
|
|
458
|
-
e && !e.disabled && this._selectValueFromDropdown(e.value);
|
|
459
|
-
}
|
|
460
|
-
_openPopup() {
|
|
461
|
-
let e = this._getDisplayedOptions();
|
|
462
|
-
this._popupOpen = !0, this._updatePopupPosition(), this._activeIndex = u(e, this.value), this._activeIndex < 0 && (this._activeIndex = c(e));
|
|
463
|
-
}
|
|
464
|
-
_handleTriggerKeydown(e) {
|
|
465
|
-
let t = this._getDisplayedOptions(), n = d(e.key);
|
|
466
|
-
if (n !== "none") switch (e.preventDefault(), n) {
|
|
467
|
-
case "close":
|
|
468
|
-
this._closePopup();
|
|
469
|
-
break;
|
|
470
|
-
case "first":
|
|
471
|
-
this._popupOpen || this._openPopup(), this._activeIndex = c(t);
|
|
472
|
-
break;
|
|
473
|
-
case "last":
|
|
474
|
-
this._popupOpen || this._openPopup(), this._activeIndex = l(t);
|
|
475
|
-
break;
|
|
476
|
-
case "next":
|
|
477
|
-
if (!this._popupOpen) {
|
|
478
|
-
this._openPopup();
|
|
479
|
-
break;
|
|
480
|
-
}
|
|
481
|
-
this._activeIndex = s(this._activeIndex, t, 1);
|
|
482
|
-
break;
|
|
483
|
-
case "previous":
|
|
484
|
-
if (!this._popupOpen) {
|
|
485
|
-
this._openPopup();
|
|
486
|
-
break;
|
|
487
|
-
}
|
|
488
|
-
this._activeIndex = s(this._activeIndex, t, -1);
|
|
489
|
-
break;
|
|
490
|
-
case "select":
|
|
491
|
-
if (!this._popupOpen) {
|
|
492
|
-
this._openPopup();
|
|
493
|
-
break;
|
|
494
|
-
}
|
|
495
|
-
this._selectActiveOption();
|
|
496
|
-
break;
|
|
497
|
-
default: break;
|
|
498
|
-
}
|
|
499
|
-
}
|
|
500
|
-
_getOptionId(e, t) {
|
|
501
|
-
return `${this._listboxId}-option-${t}-${e.value}`;
|
|
502
|
-
}
|
|
503
|
-
_renderPopup() {
|
|
504
|
-
let t = this._getDisplayedOptions();
|
|
505
|
-
return e`
|
|
506
|
-
<div class="popup-box" part="popup-box" style="pointer-events: auto; max-height: inherit; overflow: auto;">
|
|
507
|
-
<div class="select-options-section">
|
|
508
|
-
${a({
|
|
509
|
-
selectedOption: this._getSelectedOption(),
|
|
510
|
-
activeOption: this._getActiveOption(),
|
|
511
|
-
options: t,
|
|
512
|
-
listboxId: this._listboxId,
|
|
513
|
-
getOptionId: (e, t) => this._getOptionId(e, t),
|
|
514
|
-
onOptionSelect: (e) => this._selectValueFromDropdown(e.value)
|
|
515
|
-
})}
|
|
516
|
-
</div>
|
|
517
|
-
</div>
|
|
518
|
-
`;
|
|
519
|
-
}
|
|
520
|
-
render() {
|
|
521
|
-
let t = this._getSelectedOption(), n = this._getActiveOption(), r = t?.label ?? this.label, a = this._popupOpen && n ? this._getOptionId(n, this._activeIndex) : void 0;
|
|
522
|
-
return e`
|
|
523
|
-
<div class="select-field-row">
|
|
524
|
-
<button
|
|
525
|
-
class="select-trigger"
|
|
526
|
-
type="button"
|
|
527
|
-
aria-haspopup="listbox"
|
|
528
|
-
aria-expanded="${this._popupOpen}"
|
|
529
|
-
aria-controls="${this._listboxId}"
|
|
530
|
-
aria-activedescendant="${a ?? ""}"
|
|
531
|
-
part="select-trigger"
|
|
532
|
-
@click="${() => this._popupOpen ? this._closePopup() : this._openPopup()}"
|
|
533
|
-
@keydown="${this._handleTriggerKeydown}"
|
|
534
|
-
>
|
|
535
|
-
<span class="select-trigger-label" part="trigger-label"
|
|
536
|
-
>${r}</span
|
|
537
|
-
>
|
|
538
|
-
<span class="select-trigger-toggle" part="trigger-toggle">
|
|
539
|
-
<span class="select-trigger-icon" part="trigger-icon" aria-hidden="true"
|
|
540
|
-
>${i}</span
|
|
541
|
-
>
|
|
542
|
-
</span>
|
|
543
|
-
</button>
|
|
544
|
-
</div>
|
|
545
|
-
|
|
546
|
-
<div
|
|
547
|
-
class="select-root"
|
|
548
|
-
aria-label="Select a value"
|
|
549
|
-
@click="${(e) => {
|
|
550
|
-
e.target === e.currentTarget && this._closePopup();
|
|
551
|
-
}}"
|
|
552
|
-
></div>
|
|
553
|
-
`;
|
|
554
|
-
}
|
|
555
|
-
}, p = "solid-ui-select";
|
|
556
|
-
customElements.get(p) || customElements.define(p, f);
|
|
557
|
-
//#endregion
|
|
558
|
-
export { f as t };
|
|
559
|
-
|
|
560
|
-
//# sourceMappingURL=select-bVnWqF4c.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"select-bVnWqF4c.js","names":["html","downArrowIcon","html","renderListbox","args","options","selectedOption","activeOption","listboxId","getOptionId","onOptionSelect","map","option","index","isSelected","value","isActive","optionId","disabled","label","css","listboxStyles","getNextEnabledIndex","currentIndex","options","direction","length","every","option","disabled","optionsCount","nextIndex","getFirstEnabledIndex","getLastEnabledIndex","findOptionIndexByValue","value","undefined","findIndex","getListboxActionFromKey","key","css","html","LitElement","render","renderPortal","downArrowIcon","renderListbox","listboxStyles","findOptionIndexByValue","getFirstEnabledIndex","getLastEnabledIndex","getListboxActionFromKey","getNextEnabledIndex","Select","_nextId","_popupPortalHost","_popupPortalRoot","_popupPortalContainer","_handleDocumentPointerDown","event","eventTarget","target","_popupOpen","Node","eventPath","composedPath","includes","contains","_closePopup","_handleViewportChange","_updatePopupPosition","properties","label","type","String","reflect","theme","options","Array","attribute","layout","value","state","_activeIndex","styles","_listboxId","constructor","connectedCallback","document","addEventListener","window","disconnectedCallback","_detachPopupPortal","removeEventListener","updated","toggleAttribute","_renderPopup","_getPopupPortalContainer","closest","body","_ensurePopupPortal","nextContainer","createElement","setAttribute","style","position","inset","zIndex","pointerEvents","boxSizing","attachShadow","mode","styleSheets","isArray","map","styleSheet","filter","Boolean","length","adoptedStyleSheets","appendChild","parentNode","removeChild","rect","getBoundingClientRect","maxHeight","Math","min","max","innerHeight","bottom","top","round","left","width","height","_getSelectedIndex","_getSelectedOption","selectedIndex","_getDisplayedOptions","selectedOption","option","_getActiveOption","popupOptions","undefined","_selectValueFromDropdown","uri","dispatchEvent","CustomEvent","detail","bubbles","composed","_selectActiveOption","activeOption","disabled","_openPopup","_handleTriggerKeydown","action","key","preventDefault","_getOptionId","index","listboxId","getOptionId","onOptionSelect","triggerLabel","activeDescendant","e","currentTarget","Select","SELECT_TAG_NAME","customElements","get","define"],"sources":["../../src/v2/components/forms/shared/downArrow.ts","../../src/v2/components/forms/shared/listboxTemplate.ts","../../src/v2/components/forms/shared/listboxStyles.ts","../../src/v2/components/forms/shared/keyboard.ts","../../src/v2/components/forms/select/Select.ts","../../src/v2/components/forms/select/index.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","import { html } from 'lit'\nimport type { SelectOption } from './optionTypes'\n\nexport interface RenderListboxArgs {\n options: SelectOption[]\n selectedOption?: SelectOption\n activeOption?: SelectOption\n listboxId?: string\n getOptionId?: (option: SelectOption, index: number) => string\n onOptionSelect: (option: SelectOption) => void\n}\n\nexport function renderListbox (args: RenderListboxArgs) {\n const {\n options,\n selectedOption,\n activeOption,\n listboxId,\n getOptionId,\n onOptionSelect\n } = args\n\n return html`\n <ul\n class=\"listbox\"\n id=\"${listboxId ?? ''}\"\n part=\"listbox\"\n role=\"listbox\"\n aria-orientation=\"vertical\"\n >\n ${options.map((option, index) => {\n const isSelected = option.value === selectedOption?.value\n const isActive = option.value === activeOption?.value\n const optionId = getOptionId?.(option, index)\n\n return html`\n <li\n id=\"${optionId ?? ''}\"\n class=\"listbox-item${isSelected ? ' listbox-item-selected' : ''}${isActive ? ' listbox-item-active' : ''}${option.disabled ? ' listbox-item-disabled' : ''}\"\n part=\"option${isSelected ? ' selected-option' : ''}${isActive ? ' active-option' : ''}${option.disabled ? ' disabled-option' : ''}\"\n role=\"option\"\n aria-selected=\"${isSelected}\"\n aria-disabled=\"${option.disabled ? 'true' : 'false'}\"\n @click=\"${() => {\n if (!option.disabled) {\n onOptionSelect(option)\n }\n }}\"\n >\n ${option.label}\n </li>\n `\n })}\n </ul>\n `\n}\n","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","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","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","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":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signup-button-BC4LmOXx.js","names":["customElement","WebComponent","consume","html","authContext","DEFAULT_AUTH_CONTEXT","_classDecs","_SignupButton","_A","WeakMap","_ref","_authDecs","context","subscribe","SignupButton","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_auth","_classPrivateFieldGet","auth","v","_classPrivateFieldSet","render","onClick","e","preventDefault","signup","_SignupButton2","c","_initClass","_applyDecs","default","SignupButton"],"sources":["../../src/components/signup-button/SignupButton.ts","../../src/components/signup-button/index.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { consume } from '@lit/context'\nimport { html } from 'lit'\nimport { authContext, AuthContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\n\nimport '@/components/button'\n\n@customElement('solid-ui-signup-button')\nexport default class SignupButton extends WebComponent {\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n protected render () {\n return html`\n <slot name=\"trigger\" @click=${this.onClick}>\n <solid-ui-button>\n <slot>\n Sign Up\n </slot>\n </solid-ui-button>\n </slot>\n `\n }\n\n private onClick (e: MouseEvent) {\n e.preventDefault()\n\n this.auth.signup()\n }\n}\n","import SignupButton from './SignupButton'\n\nexport { SignupButton }\nexport default SignupButton\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAK4BM,IAAA,CAE3BN,EAAc,wBAAwB,CAAC;AAAA,IAAAO,GAAAC,kBAAA,IAAAC,QAAA;AAAAC,KAAAC,IAErCT,EAAQ;CAAEU,SAASR;CAAaS,WAAW;AAAK,CAAC,GAAC,SAoBpDgB,IAAAf,cArByCb,EAAa;CAAAc,YAAA,GAAAC,GAAA;EAAAC,AAAA,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAT,IAAAU,EAAA,IAAA,GAAAC,EAAA,MAEhBd,CAAoB,EAAA;CAAA;CAAA,KAAAK,KAAA;EAAA,OAAAU,EAAAZ,GAAA,IAAA;CAAA;CAAA,IAAxCa,KAAIC,GAAA;EAAAC,EAAAf,GAAA,MAAAc,CAAA;CAAA;CAEXE,SAAU;EAClB,OAAOrB,CAAI;oCACqB,KAAKsB,QAAO;;;;;;;;CAQ9C;CAEQA,QAASC,GAAe;EAG9B,AAFAA,EAAEC,eAAe,GAEjB,KAAKN,KAAKO,OAAO;CACnB;AACF,GAAC,CAAAF,GAAA,CAAAP,GAAAD,IAAAY,GAAA,CAAAvB,GAAAwB,MAAAC,EAAAH,GAAA,CAAA;CAAAlB;CAAA;CAAA;AAAA,CAAA,GAAAL,GAAA,GAAA,KAAA,GArByCL,CAAY,GAAA8B,EAAA;;;ACLtD,IAAA,IAAeG"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
const e=require("../../lib/components/decorators.cjs.js"),t=require("../../lib/components/web-component/WebComponent.cjs.js");require("../../lib/components/index.cjs.js");const n=require("../../lib/menus/context.cjs.js"),r=require("./MenuItems.styles.cjs.js");let i=require("@lit/context"),a=require("lit");var o,s,c,l,u,d,f,p,m,h;function g(e,t,n){_(e,t),t.set(e,n)}function _(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function v(e,t,n){return e.set(b(e,t),n),n}function y(e,t){return e.get(b(e,t))}function b(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function x(e,t,n){return(t=C(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function S(e,t,n,r,i,a){function o(e,t,n){return function(r,i){return n&&n(r),e[t].call(r,i)}}function s(e,t){for(var n=0;n<e.length;n++)e[n].call(t);return t}function c(e,t,n,r){if(typeof e!=`function`&&(r||e!==void 0))throw TypeError(t+` must `+(n||`be`)+` a function`+(r?``:` or undefined`));return e}function l(e,t,n,r,i,a,s,l,u,d,f,p,m){function h(e){if(!m(e))throw TypeError(`Attempted to access private element on non-instance`)}var g,_=t[0],v=t[3],y=!l;if(!y){n||Array.isArray(_)||(_=[_]);var b={},x=[],S=i===3?`get`:i===4||p?`set`:`value`;d?(f||p?b={get:T(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||T(b[S],r,i===2?``:S)):f||(b=Object.getOwnPropertyDescriptor(e,r))}for(var C=e,w=_.length-1;w>=0;w-=n?2:1){var E=_[w],D=n?_[w-1]:void 0,O={},k={kind:[`field`,`accessor`,`method`,`getter`,`setter`,`class`][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw Error(`attempted to call addInitializer after decoration was finished`);c(t,`An initializer`,`be`,!0),s.push(t)}.bind(null,O)};try{if(y)(g=c(E.call(D,C,k),`class decorators`,`return`))&&(C=g);else{var A,j;k.static=u,k.private=d,d?i===2?A=function(e){return h(e),b.value}:(i<4&&(A=o(b,`get`,h)),i!==3&&(j=o(b,`set`,h))):(A=function(e){return e[r]},(i<2||i===4)&&(j=function(e,t){e[r]=t}));var M=k.access={has:d?m.bind():function(e){return r in e}};if(A&&(M.get=A),j&&(M.set=j),C=E.call(D,p?{get:b.get,set:b.set}:b[S],k),p){if(typeof C==`object`&&C)(g=c(C.get,`accessor.get`))&&(b.get=g),(g=c(C.set,`accessor.set`))&&(b.set=g),(g=c(C.init,`accessor.init`))&&x.push(g);else if(C!==void 0)throw TypeError(`accessor decorators must return an object with get, set, or init properties or void 0`)}else c(C,(f?`field`:`method`)+` decorators`,`return`)&&(f?x.push(C):b[S]=C)}}finally{O.v=!0}}return(f||p)&&l.push(function(e,t){for(var n=x.length-1;n>=0;n--)t=x[n].call(e,t);return t}),f||y||(d?p?l.push(o(b,`get`),o(b,`set`)):l.push(i===2?b[S]:o.call.bind(b[S])):Object.defineProperty(e,r,b)),C}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for(`Symbol.metadata`),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var d=a[Symbol.metadata||Symbol.for(`Symbol.metadata`)];var f=Object.create(d??null),p=function(e,t,n,r){var i,a,o=[],c=function(t){return E(t)===e},u=new Map;function d(e){e&&o.push(s.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var m=p[1],h=p[2],g=p.length>3,_=16&m,v=!!(8&m),y=(m&=7)==0,b=h+`/`+v;if(!y&&!g){var x=u.get(b);if(!0===x||x===3&&m!==4||x===4&&m!==3)throw Error(`Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: `+h);u.set(b,!(m>2)||m)}l(v?e:e.prototype,p,_,g?`#`+h:C(h),m,r,v?a||=[]:i||=[],o,v,g,y,m===1,v&&g?c:n)}}return d(i),d(a),o}(e,t,i,f);return n.length||u(e,f),{e:p,get c(){var t=[];return n.length&&[u(l(e,[n],r,e.name,5,f,t),f),s.bind(null,t,e)]}}}function C(e){var t=w(e,`string`);return typeof t==`symbol`?t:t+``}function w(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function T(e,t,n){typeof t==`symbol`&&(t=(t=t.description)?`[`+t+`]`:``);try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+` `+t:t})}catch{}return e}function E(e){if(Object(e)!==e)throw TypeError(`right-hand side of 'in' should be an object, got `+(e===null?`null`:typeof e));return e}function D(e){return e}d=[e.customElement(`solid-ui-menu-items`)];var O;new(m=(c=new WeakMap,h=(f=(0,i.consume)({context:n.menuContext,subscribe:!0}),`context`),s=class extends t.default{constructor(...e){super(...e),g(this,c,(l(this),p(this)))}get[h](){return y(c,this)}set context(e){v(c,this,e)}connectedCallback(){super.connectedCallback(),this.setAttribute(`popover`,`auto`),this.setAttribute(`role`,`menu`),this.style.positionAnchor=`--menu-anchor`,this.context&&(this.id=`${this.context.id}-menu-items`)}render(){return a.html`
|
|
2
|
-
<div>
|
|
3
|
-
<slot></slot>
|
|
4
|
-
</div>
|
|
5
|
-
`}},{e:[p,l],c:[O,u]}=S(s,[[f,1,`context`]],d,0,void 0,t.default),s),o=class extends D{constructor(){super(O),x(this,`styles`,r.default),u()}},x(o,m,void 0),o),Object.defineProperty(exports,"_MenuItems",{enumerable:!0,get:function(){return O}});
|
|
6
|
-
//# sourceMappingURL=MenuItems.cjs.js.map
|