solid-ui 3.1.3-5 → 3.1.3-7
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/_virtual/~icons/lucide/chevron-down.cjs.js +1 -1
- package/dist/_virtual/~icons/lucide/chevron-down.esm.js +1 -0
- package/dist/_virtual/~icons/lucide/circle-user.cjs.js +1 -1
- package/dist/_virtual/~icons/lucide/circle-user.esm.js +1 -0
- package/dist/_virtual/~icons/lucide/log-in.cjs.js +1 -1
- package/dist/_virtual/~icons/lucide/log-in.esm.js +1 -0
- package/dist/_virtual/~icons/lucide/log-out.cjs.js +1 -1
- package/dist/_virtual/~icons/lucide/log-out.esm.js +1 -0
- package/dist/_virtual/~icons/lucide/user.cjs.js +1 -1
- package/dist/_virtual/~icons/lucide/user.esm.js +1 -0
- package/dist/_virtual/~icons/lucide/x.cjs.js +1 -1
- package/dist/_virtual/~icons/lucide/x.esm.js +1 -0
- package/dist/_virtual/~icons/svg-spinners/180-ring.cjs.js +1 -1
- package/dist/_virtual/~icons/svg-spinners/180-ring.esm.js +1 -0
- package/dist/acl/access-controller.cjs.js +1 -1
- package/dist/acl/access-controller.cjs.js.map +1 -1
- package/dist/acl/access-controller.esm.js.map +1 -1
- package/dist/acl/access-groups.cjs.js.map +1 -1
- package/dist/acl/access-groups.esm.js.map +1 -1
- package/dist/acl/acl-control.cjs.js +1 -1
- package/dist/acl/acl-control.cjs.js.map +1 -1
- package/dist/acl/acl-control.esm.js +1 -1
- package/dist/acl/acl-control.esm.js.map +1 -1
- package/dist/acl/acl.cjs.js.map +1 -1
- package/dist/acl/acl.esm.js.map +1 -1
- package/dist/acl/add-agent-buttons.cjs.js.map +1 -1
- package/dist/acl/add-agent-buttons.esm.js.map +1 -1
- package/dist/chat/bookmarks.cjs.js +1 -1
- package/dist/chat/bookmarks.cjs.js.map +1 -1
- package/dist/chat/bookmarks.esm.js +1 -1
- package/dist/chat/bookmarks.esm.js.map +1 -1
- package/dist/chat/chatLogic.cjs.js.map +1 -1
- package/dist/chat/chatLogic.esm.js.map +1 -1
- package/dist/chat/dateFolder.cjs.js +1 -1
- package/dist/chat/dateFolder.cjs.js.map +1 -1
- package/dist/chat/dateFolder.esm.js +1 -1
- package/dist/chat/dateFolder.esm.js.map +1 -1
- package/dist/chat/infinite.cjs.js +1 -1
- package/dist/chat/infinite.cjs.js.map +1 -1
- package/dist/chat/infinite.esm.js +1 -1
- package/dist/chat/infinite.esm.js.map +1 -1
- package/dist/chat/keys.cjs.js +1 -1
- package/dist/chat/keys.cjs.js.map +1 -1
- package/dist/chat/keys.esm.js +1 -1
- package/dist/chat/keys.esm.js.map +1 -1
- package/dist/chat/message.cjs.js +1 -1
- package/dist/chat/message.cjs.js.map +1 -1
- package/dist/chat/message.esm.js +24 -24
- package/dist/chat/message.esm.js.map +1 -1
- package/dist/chat/messageTools.cjs.js.map +1 -1
- package/dist/chat/messageTools.esm.js.map +1 -1
- package/dist/chat/signature.cjs.js +1 -1
- package/dist/chat/signature.cjs.js.map +1 -1
- package/dist/chat/signature.esm.js +1 -1
- package/dist/chunks/{menu-items-DKKcQrb6.js → DialogProvider-Bt65G0Tk.js} +157 -56
- package/dist/chunks/DialogProvider-Bt65G0Tk.js.map +1 -0
- package/dist/chunks/{account-B4BktCv0.js → account-BZ2rYQhV.js} +23 -26
- package/dist/chunks/account-BZ2rYQhV.js.map +1 -0
- package/dist/chunks/{auth-BPQUXz9Q.js → auth-RHyQ2iIl.js} +32 -29
- package/dist/chunks/auth-RHyQ2iIl.js.map +1 -0
- package/dist/chunks/{avatar-B5DCduCy.js → avatar-Jx8xm2Op.js} +8 -8
- package/dist/chunks/avatar-Jx8xm2Op.js.map +1 -0
- package/dist/chunks/{button-GHRF3psH.js → button-0s0lZdxm.js} +7 -7
- package/dist/chunks/{button-GHRF3psH.js.map → button-0s0lZdxm.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/chunk.K442ELDU-TtQSV9g1.js +1516 -0
- package/dist/chunks/chunk.K442ELDU-TtQSV9g1.js.map +1 -0
- package/dist/chunks/combobox-Cxi8xUMn.js +473 -0
- package/dist/chunks/combobox-Cxi8xUMn.js.map +1 -0
- package/dist/chunks/{combobox-option-CW1ZwMC7.js → combobox-option-DiR3VpyT.js} +4 -4
- package/dist/chunks/{combobox-option-CW1ZwMC7.js.map → combobox-option-DiR3VpyT.js.map} +1 -1
- package/dist/chunks/{components-Dlw2zOvI.js → components-C1LEhsaK.js} +85 -21
- package/dist/chunks/components-C1LEhsaK.js.map +1 -0
- package/dist/chunks/{create-context-IPEkU7ze.js → context-uE5jJlS0.js} +8 -4
- package/dist/chunks/context-uE5jJlS0.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-BAzrHJ8w.js} +106 -64
- package/dist/chunks/dialog-BAzrHJ8w.js.map +1 -0
- package/dist/chunks/{dialog-content-C8VhHg5G.js → dialog-content-fdJrkCyB.js} +3 -3
- package/dist/chunks/{dialog-content-C8VhHg5G.js.map → dialog-content-fdJrkCyB.js.map} +1 -1
- package/dist/chunks/{dialog-footer-CtHFoTZS.js → dialog-footer-Bs_p2Nn9.js} +3 -3
- package/dist/chunks/{dialog-footer-CtHFoTZS.js.map → dialog-footer-Bs_p2Nn9.js.map} +1 -1
- package/dist/chunks/{dialog-header-D9jjujFf.js → dialog-header-CWIAAoDo.js} +3 -3
- package/dist/chunks/{dialog-header-D9jjujFf.js.map → dialog-header-CWIAAoDo.js.map} +1 -1
- package/dist/chunks/{dialogs-root-C4igEIk0.js → dialogs-root-Cv932Aqm.js} +10 -9
- package/dist/chunks/dialogs-root-Cv932Aqm.js.map +1 -0
- package/dist/chunks/{footer-CS8u8ycB.js → footer-D64T6XLO.js} +8 -8
- package/dist/chunks/{footer-CS8u8ycB.js.map → footer-D64T6XLO.js.map} +1 -1
- package/dist/chunks/{guard-BIc50Lps.js → guard-CjUBGVDk.js} +5 -5
- package/dist/chunks/{guard-BIc50Lps.js.map → guard-CjUBGVDk.js.map} +1 -1
- package/dist/chunks/{header-0TLBh_PG.js → header-COBaJDdB.js} +41 -41
- package/dist/chunks/{header-0TLBh_PG.js.map → header-COBaJDdB.js.map} +1 -1
- package/dist/chunks/{headerFooterHelpers-5LYv-0Rt.js → headerFooterHelpers-7O_ln1QD.js} +2 -2
- package/dist/chunks/{headerFooterHelpers-5LYv-0Rt.js.map → headerFooterHelpers-7O_ln1QD.js.map} +1 -1
- package/dist/chunks/{combobox-eju-wypA.js → input-BF224Jid.js} +114 -113
- package/dist/chunks/input-BF224Jid.js.map +1 -0
- package/dist/chunks/{jsonld-DZG2v1pE.js → jsonld-DRZuoyoU.js} +54 -54
- package/dist/chunks/{jsonld-DZG2v1pE.js.map → jsonld-DRZuoyoU.js.map} +1 -1
- package/dist/chunks/{lit-CC2G_f_C.js → lit-C4H1jI4q.js} +110 -95
- package/dist/chunks/lit-C4H1jI4q.js.map +1 -0
- package/dist/chunks/{login-button-BKp1-O2q.js → login-button-DPeMi00d.js} +10 -7
- package/dist/chunks/login-button-DPeMi00d.js.map +1 -0
- package/dist/chunks/{logout-button-DlU-q-o5.js → logout-button-CbiLE7jO.js} +10 -7
- package/dist/chunks/logout-button-CbiLE7jO.js.map +1 -0
- package/dist/chunks/menu-DNcuV-1J.js +1741 -0
- package/dist/chunks/menu-DNcuV-1J.js.map +1 -0
- package/dist/chunks/{menu-item-DoTy3MUu.js → menu-item-Ck0l-uEI.js} +69 -55
- package/dist/chunks/menu-item-Ck0l-uEI.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-C4eSzopG.js} +7 -7
- package/dist/chunks/{provider-uRz_fGWb.js.map → provider-C4eSzopG.js.map} +1 -1
- package/dist/chunks/select-D8dW53pr.js +292 -0
- package/dist/chunks/select-D8dW53pr.js.map +1 -0
- package/dist/chunks/select-option-B-6ULCpQ.js +195 -0
- package/dist/chunks/select-option-B-6ULCpQ.js.map +1 -0
- package/dist/chunks/{signup-button-BC4LmOXx.js → signup-button-BfIxbpwa.js} +10 -7
- package/dist/chunks/signup-button-BfIxbpwa.js.map +1 -0
- package/dist/chunks/{solid-logic.esm-7q6hmfIF.js → solid-logic.esm-T70qfHAr.js} +2521 -2504
- package/dist/chunks/solid-logic.esm-T70qfHAr.js.map +1 -0
- package/dist/chunks/{src-f1UXhE9W.js → src-Bx4GAnWq.js} +16 -17
- package/dist/chunks/{src-f1UXhE9W.js.map → src-Bx4GAnWq.js.map} +1 -1
- package/dist/components/account/Account.cjs.js +9 -11
- 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 +8 -11
- package/dist/components/account/Account.esm.js.map +1 -1
- package/dist/components/account/Account.styles.cjs.js +1 -1
- package/dist/components/account/Account.styles.cjs.js.map +1 -1
- package/dist/components/account/Account.styles.esm.js +1 -1
- package/dist/components/account/Account.styles.esm.js.map +1 -1
- package/dist/components/account/index.cjs.js +1 -1
- package/dist/components/account/index.esm.js +1 -1
- package/dist/components/account.js +1 -1
- package/dist/components/avatar/Avatar.cjs.js +1 -1
- package/dist/components/avatar/Avatar.cjs.js.map +1 -1
- package/dist/components/avatar/Avatar.esm.js +1 -1
- package/dist/components/avatar/Avatar.styles.cjs.js +1 -1
- package/dist/components/avatar/Avatar.styles.cjs.js.map +1 -1
- package/dist/components/avatar/Avatar.styles.esm.js +1 -1
- package/dist/components/avatar/Avatar.styles.esm.js.map +1 -1
- package/dist/components/avatar/index.cjs.js +1 -1
- package/dist/components/avatar/index.esm.js +1 -1
- package/dist/components/avatar.js +1 -1
- package/dist/components/button/Button.cjs.js +1 -1
- package/dist/components/button/Button.cjs.js.map +1 -1
- package/dist/components/button/Button.esm.js +1 -1
- package/dist/components/button/Button.esm.js.map +1 -1
- package/dist/components/button/index.cjs.js +1 -1
- package/dist/components/button/index.esm.js +3 -3
- package/dist/components/button.js +1 -1
- package/dist/components/combobox/Combobox.cjs.js +56 -15
- package/dist/components/combobox/Combobox.cjs.js.map +1 -1
- package/dist/components/combobox/Combobox.d.ts +27 -6
- package/dist/components/combobox/Combobox.d.ts.map +1 -1
- package/dist/components/combobox/Combobox.esm.js +257 -87
- package/dist/components/combobox/Combobox.esm.js.map +1 -1
- package/dist/components/combobox/Combobox.styles.cjs.js +1 -1
- package/dist/components/combobox/Combobox.styles.cjs.js.map +1 -1
- package/dist/components/combobox/Combobox.styles.esm.js +1 -1
- package/dist/components/combobox/Combobox.styles.esm.js.map +1 -1
- package/dist/components/combobox/index.cjs.js +1 -1
- package/dist/components/combobox/index.esm.js +1 -1
- package/dist/components/combobox-option/ComboboxOption.cjs.js +1 -1
- package/dist/components/combobox-option/ComboboxOption.cjs.js.map +1 -1
- package/dist/components/combobox-option/ComboboxOption.esm.js +1 -1
- package/dist/components/combobox-option/index.cjs.js +1 -1
- package/dist/components/combobox-option/index.esm.js +1 -1
- package/dist/components/combobox-option.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/dialog/Dialog.cjs.js +2 -2
- 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 +60 -61
- package/dist/components/dialog/Dialog.esm.js.map +1 -1
- package/dist/components/dialog/index.cjs.js +1 -1
- package/dist/components/dialog/index.esm.js +1 -1
- package/dist/components/dialog-content/DialogContent.cjs.js +1 -1
- package/dist/components/dialog-content/DialogContent.cjs.js.map +1 -1
- package/dist/components/dialog-content/DialogContent.esm.js +1 -1
- package/dist/components/dialog-content/DialogContent.esm.js.map +1 -1
- package/dist/components/dialog-content/index.cjs.js +1 -1
- package/dist/components/dialog-content/index.esm.js +1 -1
- package/dist/components/dialog-content.js +1 -1
- package/dist/components/dialog-footer/DialogFooter.cjs.js +1 -1
- package/dist/components/dialog-footer/DialogFooter.cjs.js.map +1 -1
- package/dist/components/dialog-footer/DialogFooter.esm.js +1 -1
- package/dist/components/dialog-footer/DialogFooter.esm.js.map +1 -1
- package/dist/components/dialog-footer/index.cjs.js +1 -1
- package/dist/components/dialog-footer/index.esm.js +1 -1
- package/dist/components/dialog-footer.js +1 -1
- package/dist/components/dialog-header/DialogHeader.cjs.js +1 -1
- package/dist/components/dialog-header/DialogHeader.cjs.js.map +1 -1
- package/dist/components/dialog-header/DialogHeader.esm.js +1 -1
- package/dist/components/dialog-header/DialogHeader.esm.js.map +1 -1
- package/dist/components/dialog-header/index.cjs.js +1 -1
- package/dist/components/dialog-header/index.esm.js +1 -1
- package/dist/components/dialog-header.js +1 -1
- package/dist/components/dialog-provider/DialogProvider.cjs.js +1 -1
- package/dist/components/dialog-provider/DialogProvider.cjs.js.map +1 -1
- package/dist/components/dialog-provider/DialogProvider.esm.js +2 -2
- package/dist/components/dialog-provider/DialogProvider.esm.js.map +1 -1
- package/dist/components/dialog-provider/index.cjs.js +1 -1
- package/dist/components/dialog-provider/index.esm.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 +2 -2
- 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 +5 -3
- package/dist/components/dialogs-root/DialogsRoot.esm.js.map +1 -1
- package/dist/components/dialogs-root/index.cjs.js +1 -1
- package/dist/components/dialogs-root/index.esm.js +1 -1
- package/dist/components/dialogs-root.js +1 -1
- package/dist/components/footer.js +1 -1
- package/dist/components/guard/Guard.cjs.js +1 -1
- package/dist/components/guard/Guard.cjs.js.map +1 -1
- package/dist/components/guard/Guard.esm.js +1 -1
- package/dist/components/guard/index.cjs.js +1 -1
- package/dist/components/guard/index.esm.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 +5 -2
- package/dist/components/login-button/LoginButton.esm.js.map +1 -1
- package/dist/components/login-button/index.cjs.js +1 -1
- package/dist/components/login-button/index.esm.js +1 -1
- package/dist/components/login-button.js +1 -1
- package/dist/components/login-modal/LoginModal.cjs.js +1 -1
- package/dist/components/login-modal/LoginModal.cjs.js.map +1 -1
- package/dist/components/login-modal/LoginModal.esm.js +1 -1
- package/dist/components/login-modal/index.cjs.js +1 -1
- package/dist/components/login-modal/index.esm.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 +5 -2
- package/dist/components/logout-button/LogoutButton.esm.js.map +1 -1
- package/dist/components/logout-button/index.cjs.js +1 -1
- package/dist/components/logout-button/index.esm.js +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/index.cjs.js +1 -1
- package/dist/components/menu/index.esm.js +1 -1
- 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/index.cjs.js +1 -1
- package/dist/components/menu-item/index.esm.js +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/Provider.cjs.js +1 -1
- package/dist/components/provider/Provider.cjs.js.map +1 -1
- package/dist/components/provider/Provider.esm.js +1 -1
- package/dist/components/provider/index.cjs.js +1 -1
- package/dist/components/provider/index.esm.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 +5 -2
- package/dist/components/signup-button/SignupButton.esm.js.map +1 -1
- package/dist/components/signup-button/index.cjs.js +1 -1
- package/dist/components/signup-button/index.esm.js +1 -1
- package/dist/components/signup-button.js +1 -1
- package/dist/components.js +24 -23
- package/dist/create/create.cjs.js.map +1 -1
- package/dist/create/create.esm.js.map +1 -1
- package/dist/create/index.cjs.js.map +1 -1
- package/dist/footer/index.cjs.js +1 -1
- package/dist/footer/index.esm.js +1 -1
- package/dist/header/index.cjs.js +1 -1
- package/dist/header/index.cjs.js.map +1 -1
- package/dist/header/index.esm.js +1 -1
- package/dist/header/index.esm.js.map +1 -1
- 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 +7 -9
- package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
- package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
- package/dist/lib/auth/context.cjs.js.map +1 -1
- package/dist/lib/auth/index.cjs.js +1 -1
- package/dist/lib/auth/index.esm.js +5 -4
- package/dist/lib/components/ids.cjs.js.map +1 -1
- package/dist/lib/components/ids.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 +7 -3
- 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 +30 -0
- package/dist/lib/components/traits/InputTrait.d.ts.map +1 -0
- package/dist/lib/components/traits/InputTrait.esm.js +45 -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 +3 -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 +17 -6
- package/dist/lib/components/web-component/WebComponent.esm.js.map +1 -1
- package/dist/lib/components/web-component/WebComponent.styles.cjs.js.map +1 -1
- package/dist/lib/components/web-component/WebComponent.styles.esm.js.map +1 -1
- package/dist/lib/components/web-component/index.cjs.js +1 -1
- package/dist/lib/components/web-component/index.esm.js +2 -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 +6 -5
- package/dist/lib/log.cjs.js +1 -1
- package/dist/lib/log.cjs.js.map +1 -1
- package/dist/lib/log.esm.js +1 -1
- package/dist/lib/log.esm.js.map +1 -1
- package/dist/lib/messageArea.cjs.js.map +1 -1
- package/dist/lib/messageArea.esm.js.map +1 -1
- package/dist/lib/ns.cjs.js.map +1 -1
- package/dist/lib/pad.cjs.js +1 -1
- package/dist/lib/pad.cjs.js.map +1 -1
- package/dist/lib/pad.esm.js +1 -1
- package/dist/lib/pad.esm.js.map +1 -1
- package/dist/lib/participation.cjs.js.map +1 -1
- package/dist/lib/participation.esm.js.map +1 -1
- package/dist/lib/preferences.cjs.js +1 -1
- package/dist/lib/preferences.cjs.js.map +1 -1
- package/dist/lib/preferences.esm.js +1 -1
- package/dist/lib/preferences.esm.js.map +1 -1
- package/dist/lib/table.cjs.js.map +1 -1
- package/dist/lib/table.esm.js.map +1 -1
- package/dist/lib/tabs.cjs.js +1 -1
- package/dist/lib/tabs.cjs.js.map +1 -1
- package/dist/lib/tabs.esm.js +1 -1
- package/dist/lib/tabs.esm.js.map +1 -1
- package/dist/loader.js +7 -9
- package/dist/login/login.cjs.js +1 -1
- package/dist/login/login.cjs.js.map +1 -1
- package/dist/login/login.esm.js +1 -1
- package/dist/login/login.esm.js.map +1 -1
- package/dist/matrix/index.cjs.js.map +1 -1
- package/dist/matrix/matrix.cjs.js.map +1 -1
- package/dist/matrix/matrix.esm.js.map +1 -1
- package/dist/media/media-capture.cjs.js.map +1 -1
- package/dist/media/media-capture.esm.js.map +1 -1
- package/dist/signup/signup.cjs.js.map +1 -1
- package/dist/signup/signup.esm.js.map +1 -1
- package/dist/solid-ui.js +1053 -446
- package/dist/solid-ui.min.js +1053 -446
- package/dist/solid-ui.min.js.map +1 -1
- package/dist/theme.css +1 -1
- package/dist/utils/headerFooterHelpers.cjs.js.map +1 -1
- package/dist/utils/headerFooterHelpers.esm.js.map +1 -1
- package/dist/utils/index.cjs.js +2 -2
- package/dist/utils/index.cjs.js.map +1 -1
- package/dist/utils/index.esm.js +1 -1
- package/dist/utils/index.esm.js.map +1 -1
- package/dist/utils/keyHelpers/accessData.cjs.js +1 -1
- package/dist/utils/keyHelpers/accessData.cjs.js.map +1 -1
- package/dist/utils/keyHelpers/accessData.esm.js +1 -1
- package/dist/utils/keyHelpers/accessData.esm.js.map +1 -1
- package/dist/utils/keyHelpers/acl.cjs.js.map +1 -1
- package/dist/utils/keyHelpers/acl.esm.js.map +1 -1
- package/dist/utils/keyHelpers/otherHelpers.cjs.js.map +1 -1
- package/dist/utils/keyHelpers/otherHelpers.esm.js.map +1 -1
- package/dist/utils/label.cjs.js.map +1 -1
- package/dist/utils/label.esm.js.map +1 -1
- package/dist/v2/components/auth/loginButton/LoginButton.cjs.js.map +1 -1
- package/dist/v2/components/auth/loginButton/LoginButton.esm.js.map +1 -1
- package/dist/v2/components/auth/loginButton/downArrow.cjs.js.map +1 -1
- package/dist/v2/components/auth/loginButton/index.cjs.js +1 -1
- package/dist/v2/components/auth/loginButton/index.esm.js +1 -0
- package/dist/v2/components/auth/signupButton/index.cjs.js +1 -1
- package/dist/v2/components/auth/signupButton/index.esm.js +1 -0
- package/dist/v2/components/layout/footer/index.cjs.js +1 -1
- package/dist/v2/components/layout/footer/index.esm.js +1 -0
- package/dist/v2/components/layout/header/Header.cjs.js.map +1 -1
- package/dist/v2/components/layout/header/Header.esm.js.map +1 -1
- package/dist/v2/components/layout/header/index.cjs.js +1 -1
- package/dist/v2/components/layout/header/index.esm.js +1 -0
- package/dist/v2/components/media/photoCapture/PhotoCapture.cjs.js.map +1 -1
- package/dist/v2/components/media/photoCapture/PhotoCapture.esm.js.map +1 -1
- package/dist/v2/components/media/photoCapture/index.cjs.js +1 -1
- package/dist/v2/components/media/photoCapture/index.esm.js +1 -0
- package/dist/widgets/buttons/iconLinks.cjs.js.map +1 -1
- package/dist/widgets/buttons/iconLinks.esm.js.map +1 -1
- package/dist/widgets/buttons.cjs.js.map +1 -1
- package/dist/widgets/buttons.esm.js.map +1 -1
- package/dist/widgets/dragAndDrop.cjs.js.map +1 -1
- package/dist/widgets/dragAndDrop.esm.js.map +1 -1
- package/dist/widgets/error.cjs.js.map +1 -1
- package/dist/widgets/error.esm.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteField.esm.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompletePicker.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompletePicker.esm.js.map +1 -1
- package/dist/widgets/forms/autocomplete/language.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/language.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/language.esm.js +1 -1
- package/dist/widgets/forms/autocomplete/language.esm.js.map +1 -1
- package/dist/widgets/forms/autocomplete/publicData.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/publicData.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/publicData.esm.js +1 -1
- package/dist/widgets/forms/autocomplete/publicData.esm.js.map +1 -1
- package/dist/widgets/forms/basic.cjs.js.map +1 -1
- package/dist/widgets/forms/basic.esm.js.map +1 -1
- package/dist/widgets/forms/fieldFunction.cjs.js.map +1 -1
- package/dist/widgets/forms/fieldParams.cjs.js.map +1 -1
- package/dist/widgets/forms/fieldParams.esm.js.map +1 -1
- package/dist/widgets/forms/formStyle.cjs.js.map +1 -1
- package/dist/widgets/forms/formStyle.esm.js.map +1 -1
- package/dist/widgets/forms.cjs.js +1 -1
- package/dist/widgets/forms.cjs.js.map +1 -1
- package/dist/widgets/forms.esm.js +1 -1
- package/dist/widgets/forms.esm.js.map +1 -1
- package/dist/widgets/index.cjs.js +1 -1
- package/dist/widgets/index.esm.js +65 -65
- package/dist/widgets/multiSelect.cjs.js.map +1 -1
- package/dist/widgets/multiSelect.esm.js.map +1 -1
- package/dist/widgets/peoplePicker.cjs.js.map +1 -1
- package/dist/widgets/peoplePicker.esm.js.map +1 -1
- package/dist/widgets/widgetHelpers.cjs.js.map +1 -1
- package/dist/widgets/widgetHelpers.esm.js.map +1 -1
- package/package.json +9 -10
- 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/avatar-B5DCduCy.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/lit-CC2G_f_C.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/chunks/solid-logic.esm-7q6hmfIF.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/solid-ui.js.map +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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.cjs.js","names":["html","property","query","state","generateId","WebComponent","customElement","styles","_classDecs","_Combobox","_Combobox2","_A","WeakMap","_B","_C","_D","_E","_ref","_labelDecs","type","String","reflect","_valueDecs","_popoverElementDecs","_inputElementDecs","_filterDecs","_Combobox3","Combobox","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_label","_init_value","_init_popoverElement","_init_inputElement","_init_filter","_defineProperty","_classPrivateFieldGet","label","v","_classPrivateFieldSet","value","popoverElement","inputElement","filter","render","options","getOptions","option","toLowerCase","includes","inputId","onInputKeyDown","onInputClick","onInputChange","map","onOptionClick","querySelectorAll","Array","from","setValue","getInternals","setFormValue","dispatchEvent","InputEvent","bubbles","composed","e","key","preventDefault","showPopover","matches","form","requestSubmit","hidePopover","c","_initClass","_applyDecs","_Class","_identity","default"],"sources":["../../../src/components/combobox/Combobox.ts"],"sourcesContent":["import { html } from 'lit'\nimport { property, query, state } from 'lit/decorators.js'\nimport { generateId, WebComponent, customElement } from '@/lib/components'\nimport ComboboxOption from '@/components/combobox-option/ComboboxOption'\n\nimport '~icons/lucide/chevron-down'\n\nimport styles from './Combobox.styles.css'\n\n@customElement('solid-ui-combobox')\nexport default class Combobox extends WebComponent {\n static styles = styles\n static formAssociated = true\n\n @property({ type: String, reflect: true })\n accessor label = ''\n\n @property({ type: String })\n accessor value = ''\n\n @query('[popover]')\n private accessor popoverElement: HTMLDivElement | null = null\n\n @query('input')\n private accessor inputElement: HTMLInputElement | null = null\n\n @state()\n private accessor filter = ''\n\n private inputId = `combobox-${generateId()}`\n\n protected render () {\n const options = this.getOptions().filter(option => option.toLowerCase().includes(this.filter))\n\n return html`\n ${this.label ? html`<label for=\"${this.inputId}\">${this.label}</label>` : ''}\n <div class=\"input-wrapper\">\n <input\n id=\"${this.inputId}\"\n .value=${this.value}\n type=\"text\"\n @keydown=${this.onInputKeyDown}\n @click=${this.onInputClick}\n @input=${this.onInputChange}\n />\n <icon-lucide-chevron-down></icon-lucide-chevron-down>\n </div>\n <div role=\"listbox\" aria-labelledby=\"${this.inputId}\" popover>\n ${options.map(option => html`<div role=\"option\" aria-selected=\"false\" @click=${() => this.onOptionClick(option)}>${option}</div>`)}\n </div>\n `\n }\n\n private getOptions (): string[] {\n const options = this.querySelectorAll<ComboboxOption>('solid-ui-combobox-option')\n\n return Array.from(options).map(option => option.value)\n }\n\n private setValue (value: string) {\n this.filter = value.toLowerCase()\n this.value = value\n\n this.getInternals().setFormValue(value)\n this.dispatchEvent(new InputEvent('input', { bubbles: true, composed: true }))\n }\n\n private onInputKeyDown (e: KeyboardEvent) {\n switch (e.key) {\n case 'ArrowDown':\n e.preventDefault()\n this.popoverElement?.showPopover()\n break\n case 'Enter':\n if (!this.popoverElement?.matches(':popover-open')) {\n e.preventDefault()\n\n this.getInternals().form?.requestSubmit()\n }\n break\n }\n }\n\n private onInputClick (e: MouseEvent) {\n e.preventDefault()\n\n this.popoverElement?.showPopover()\n }\n\n private onInputChange () {\n this.setValue(this.inputElement?.value ?? '')\n }\n\n private onOptionClick (option: string) {\n this.setValue(option)\n\n this.popoverElement?.hidePopover()\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Combobox.cjs.js","names":["customElement","WebComponent","html","nothing","property","query","state","InputTrait","styles","_classDecs","_Combobox","_Combobox2","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_ref","_labelDecs","type","String","reflect","_nameDecs","_valueDecs","_placeholderDecs","_requiredDecs","Boolean","_inputElementDecs","_filterDecs","_openDecs","_activeIndexDecs","_Combobox3","Combobox","_classPrivateFieldGet","label","v","_classPrivateFieldSet","name","value","placeholder","required","inputElement","filter","open","activeIndex","constructor","_classPrivateFieldInitSpec","_initProto","_init_label","_init_name","_init_value","_init_placeholder","_init_required","_init_inputElement","_init_filter","_init_open","_init_activeIndex","_defineProperty","event","path","composedPath","includes","hide","inputTrait","addTrait","getInputElement","getInternals","onValueChanged","toLowerCase","options","getFilteredOptions","length","getInitialActiveIndex","listboxId","inputId","disconnectedCallback","removeOpenListeners","render","activeOption","undefined","activeDescendant","getOptionId","accessibleName","renderLabel","onAnchorMouseDown","labelId","onInputKeyDown","onInputFocus","onInput","onListboxMouseUp","map","option","index","setActiveIndex","getOptions","querySelectorAll","Array","from","textContent","selectedIndex","findIndex","getNextIndex","currentIndex","direction","show","filteredOptions","focusLast","addOpenListeners","requestAnimationFrame","scrollActiveOptionIntoView","selectOption","setValue","focus","preventScroll","shadowRoot","querySelector","scrollIntoView","block","openListenersAttached","document","addEventListener","handleDocumentFocusIn","handleDocumentMouseDown","root","getRootNode","removeEventListener","preventDefault","openPopupFromKey","key","onSubmit","stopPropagation","target","HTMLElement","optionElement","closest","optionId","id","Number","parseInt","replace","e","c","_initClass","_applyDecs","_Class","_identity","default"],"sources":["../../../src/components/combobox/Combobox.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\nimport { property, query, state } from 'lit/decorators.js'\nimport InputTrait from '@/lib/components/traits/InputTrait'\nimport type ComboboxOption from '@/components/combobox-option/ComboboxOption'\n\nimport '~icons/lucide/chevron-down'\nimport '@awesome.me/webawesome/dist/components/popup/popup.js'\n\nimport styles from './Combobox.styles.css'\n\ntype ComboboxOptionData = { value: string; label: string }\n\n@customElement('solid-ui-combobox')\nexport default class Combobox extends WebComponent {\n static styles = styles\n static formAssociated = true\n\n @property({ type: String, reflect: true })\n accessor label = ''\n\n @property({ type: String, reflect: true })\n accessor name = ''\n\n @property({ type: String })\n accessor value = ''\n\n @property({ type: String, reflect: true })\n accessor placeholder = ''\n\n @property({ type: Boolean, reflect: true })\n accessor required = false\n\n @query('input')\n private accessor inputElement: HTMLInputElement | null = null\n\n @state()\n private accessor filter = ''\n\n @state()\n private accessor open = false\n\n @state()\n private accessor activeIndex = -1\n\n private inputTrait: InputTrait\n private openListenersAttached = false\n private readonly listboxId: string\n\n constructor () {\n super()\n\n this.inputTrait = this.addTrait(\n new InputTrait(this, {\n getInputElement: () => this.inputElement,\n getInternals: () => this.getInternals(),\n onValueChanged: (value) => {\n this.filter = value.toLowerCase()\n\n const options = this.getFilteredOptions()\n\n if (options.length === 0) {\n this.hide()\n return\n }\n\n if (this.open) {\n this.activeIndex = this.getInitialActiveIndex(options)\n }\n },\n })\n )\n\n this.listboxId = `listbox-${this.inputTrait.inputId}`\n }\n\n disconnectedCallback () {\n super.disconnectedCallback()\n\n this.removeOpenListeners()\n }\n\n protected render () {\n const options = this.getFilteredOptions()\n const activeOption =\n this.open && this.activeIndex >= 0 ? options[this.activeIndex] : undefined\n const activeDescendant =\n activeOption !== undefined ? this.getOptionId(this.activeIndex) : undefined\n const accessibleName = this.placeholder || 'Combobox'\n\n return html`\n ${this.inputTrait.renderLabel()}\n <wa-popup\n placement=\"bottom\"\n flip\n shift\n sync=\"width\"\n auto-size=\"vertical\"\n auto-size-padding=\"10\"\n ?active=${this.open}\n >\n <div class=\"input-wrapper\" slot=\"anchor\" @mousedown=${this.onAnchorMouseDown}>\n <input\n id=\"${this.inputTrait.inputId}\"\n type=\"text\"\n name=${this.name}\n placeholder=${this.placeholder}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n aria-expanded=${this.open ? 'true' : 'false'}\n aria-controls=${this.listboxId}\n aria-activedescendant=${activeDescendant ?? nothing}\n aria-labelledby=${this.label ? this.inputTrait.labelId : nothing}\n aria-label=${this.label ? nothing : accessibleName}\n aria-required=${this.required ? 'true' : nothing}\n autocomplete=\"off\"\n spellcheck=\"false\"\n ?required=${this.required}\n .value=${this.value}\n @keydown=${this.onInputKeyDown}\n @focus=${this.onInputFocus}\n @input=${() => this.inputTrait.onInput()}\n />\n <icon-lucide-chevron-down></icon-lucide-chevron-down>\n </div>\n <div\n id=${this.listboxId}\n class=\"listbox\"\n role=\"listbox\"\n aria-orientation=\"vertical\"\n aria-labelledby=${this.label ? this.inputTrait.labelId : nothing}\n aria-label=${this.label ? nothing : accessibleName}\n ?hidden=${!this.open}\n @mouseup=${this.onListboxMouseUp}\n >\n ${options.map(\n (option, index) =>\n html`<div\n id=${this.getOptionId(index)}\n role=\"option\"\n aria-selected=${this.open && index === this.activeIndex\n ? 'true'\n : 'false'}\n data-active=${index === this.activeIndex || nothing}\n @mousemove=${() => this.setActiveIndex(index)}\n >\n ${option.label}\n </div>`\n )}\n </div>\n </wa-popup>\n `\n }\n\n private getFilteredOptions (): ComboboxOptionData[] {\n return this.getOptions().filter((option) =>\n option.label.toLowerCase().includes(this.filter)\n )\n }\n\n private getOptions (): ComboboxOptionData[] {\n const options = this.querySelectorAll<ComboboxOption>(\n 'solid-ui-combobox-option'\n )\n\n return Array.from(options).map((option) => ({\n value: option.value,\n label: option.textContent ?? '',\n }))\n }\n\n private getOptionId (index: number): string {\n return `${this.listboxId}-option-${index}`\n }\n\n private getInitialActiveIndex (options: ComboboxOptionData[]): number {\n const selectedIndex = options.findIndex((option) => option.value === this.value)\n\n if (selectedIndex >= 0) {\n return selectedIndex\n }\n\n return options.length > 0 ? 0 : -1\n }\n\n private getNextIndex (\n currentIndex: number,\n options: ComboboxOptionData[],\n direction: 1 | -1\n ): number {\n if (options.length === 0) {\n return -1\n }\n\n return (currentIndex + direction + options.length) % options.length\n }\n\n private setActiveIndex (index: number) {\n this.activeIndex = index\n }\n\n private show (options?: { focusLast?: boolean }) {\n if (this.open) {\n return\n }\n\n const filteredOptions = this.getFilteredOptions()\n\n if (filteredOptions.length === 0) {\n return\n }\n\n this.open = true\n this.activeIndex = options?.focusLast\n ? filteredOptions.length - 1\n : this.getInitialActiveIndex(filteredOptions)\n this.addOpenListeners()\n\n requestAnimationFrame(() => this.scrollActiveOptionIntoView())\n }\n\n private hide () {\n if (!this.open) {\n return\n }\n\n this.open = false\n this.activeIndex = -1\n this.removeOpenListeners()\n }\n\n private selectOption (value: string) {\n this.inputTrait.setValue(value)\n this.hide()\n this.inputElement?.focus({ preventScroll: true })\n }\n\n private scrollActiveOptionIntoView () {\n if (this.activeIndex < 0) {\n return\n }\n\n this.shadowRoot\n ?.querySelector(`#${this.getOptionId(this.activeIndex)}`)\n ?.scrollIntoView({ block: 'nearest' })\n }\n\n private addOpenListeners () {\n if (this.openListenersAttached) {\n return\n }\n\n document.addEventListener('focusin', this.handleDocumentFocusIn)\n document.addEventListener('mousedown', this.handleDocumentMouseDown)\n\n const root = this.getRootNode()\n\n if (root !== document) {\n root.addEventListener('focusin', this.handleDocumentFocusIn)\n }\n\n this.openListenersAttached = true\n }\n\n private removeOpenListeners () {\n if (!this.openListenersAttached) {\n return\n }\n\n document.removeEventListener('focusin', this.handleDocumentFocusIn)\n document.removeEventListener('mousedown', this.handleDocumentMouseDown)\n\n const root = this.getRootNode()\n\n if (root !== document) {\n root.removeEventListener('focusin', this.handleDocumentFocusIn)\n }\n\n this.openListenersAttached = false\n }\n\n private handleDocumentFocusIn = (event: Event) => {\n const path = event.composedPath()\n\n if (!path.includes(this)) {\n this.hide()\n }\n }\n\n private handleDocumentMouseDown = (event: MouseEvent) => {\n const path = event.composedPath()\n\n if (!path.includes(this)) {\n this.hide()\n }\n }\n\n private onAnchorMouseDown (event: MouseEvent) {\n event.preventDefault()\n this.inputElement?.focus({ preventScroll: true })\n }\n\n private onInputFocus () {\n this.show()\n }\n\n private openPopupFromKey (focusLast: boolean) {\n if (!this.open) {\n this.show({ focusLast })\n }\n }\n\n private onInputKeyDown (event: KeyboardEvent) {\n const options = this.getFilteredOptions()\n\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault()\n\n if (!this.open) {\n this.openPopupFromKey(false)\n } else {\n this.activeIndex = this.getNextIndex(this.activeIndex, options, 1)\n this.scrollActiveOptionIntoView()\n }\n break\n case 'ArrowUp':\n event.preventDefault()\n\n if (!this.open) {\n this.openPopupFromKey(true)\n } else {\n this.activeIndex = this.getNextIndex(this.activeIndex, options, -1)\n this.scrollActiveOptionIntoView()\n }\n break\n case 'Enter':\n if (this.open && this.activeIndex >= 0 && options[this.activeIndex]) {\n event.preventDefault()\n this.selectOption(options[this.activeIndex].value)\n } else if (!this.open) {\n event.preventDefault()\n this.inputTrait.onSubmit()\n }\n break\n case 'Escape':\n if (this.open) {\n event.preventDefault()\n event.stopPropagation()\n this.hide()\n this.inputElement?.focus({ preventScroll: true })\n }\n break\n case 'Tab':\n this.hide()\n break\n }\n }\n\n private onListboxMouseUp (event: MouseEvent) {\n if (!(event.target instanceof HTMLElement)) {\n return\n }\n\n const optionElement = event.target.closest('[role=\"option\"]')\n\n if (!optionElement) {\n return\n }\n\n const optionId = optionElement.id\n const index = Number.parseInt(optionId.replace(`${this.listboxId}-option-`, ''), 10)\n const option = this.getFilteredOptions()[index]\n\n if (option) {\n this.selectOption(option.value)\n }\n }\n}\n"],"mappings":"+jJAS0CS,EAAA,CAIzCT,EAAAA,cAAc,mBAAmB,CAAC,EAAA,IAAAU,EAAA,IAAAC,GAAAC,EAAA,IAAAC,QAAAC,EAAA,IAAAD,QAAAE,EAAA,IAAAF,QAAAG,EAAA,IAAAH,QAAAI,EAAA,IAAAJ,QAAAK,EAAA,IAAAL,QAAAM,EAAA,IAAAN,QAAAO,EAAA,IAAAP,QAAAQ,EAAA,IAAAR,QAAAS,GAAAC,GAAAA,EAAAA,EAAAA,SAAAA,CAKvB,CAAEC,KAAMC,OAAQC,QAAS,EAAK,CAAC,EAACC,GAAAA,EAAAA,EAAAA,SAAAA,CAGhC,CAAEH,KAAMC,OAAQC,QAAS,EAAK,CAAC,EAACE,GAAAA,EAAAA,EAAAA,SAAAA,CAGhC,CAAEJ,KAAMC,MAAO,CAAC,EAACI,GAAAA,EAAAA,EAAAA,SAAAA,CAGjB,CAAEL,KAAMC,OAAQC,QAAS,EAAK,CAAC,EAACI,GAAAA,EAAAA,EAAAA,SAAAA,CAGhC,CAAEN,KAAMO,QAASL,QAAS,EAAK,CAAC,EAACM,GAAAA,EAAAA,EAAAA,MAAAA,CAGpC,OAAO,EAACC,GAAAA,EAAAA,EAAAA,MAAAA,CAGR,EAACC,GAAAA,EAAAA,EAAAA,MAAAA,CAGD,EAACC,GAAAA,EAAAA,EAAAA,MAAAA,CAGD,EAAC,SAAAC,EA7BV,cACsCnC,EAAAA,OAAa,CAAA,IAAAqB,IAAA,CAAA,OAAAgB,EAAA1B,EAAA,IAAA,CAAA,CAAA,IAKxC2B,MAAKC,EAAA,CAAAC,EAAA7B,EAAA,KAAA4B,CAAA,CAAA,CAAA,IAGLE,MAAI,CAAA,OAAAJ,EAAAxB,EAAA,IAAA,CAAA,CAAA,IAAJ4B,KAAIF,EAAA,CAAAC,EAAA3B,EAAA,KAAA0B,CAAA,CAAA,CAAA,IAGJG,OAAK,CAAA,OAAAL,EAAAvB,EAAA,IAAA,CAAA,CAAA,IAAL4B,MAAKH,EAAA,CAAAC,EAAA1B,EAAA,KAAAyB,CAAA,CAAA,CAAA,IAGLI,aAAW,CAAA,OAAAN,EAAAtB,EAAA,IAAA,CAAA,CAAA,IAAX4B,YAAWJ,EAAA,CAAAC,EAAAzB,EAAA,KAAAwB,CAAA,CAAA,CAAA,IAGXK,UAAQ,CAAA,OAAAP,EAAArB,EAAA,IAAA,CAAA,CAAA,IAAR4B,SAAQL,EAAA,CAAAC,EAAAxB,EAAA,KAAAuB,CAAA,CAAA,CAAA,IAGAM,cAAY,CAAA,OAAAR,EAAApB,EAAA,IAAA,CAAA,CAAA,IAAZ4B,aAAYN,EAAA,CAAAC,EAAAvB,EAAA,KAAAsB,CAAA,CAAA,CAAA,IAGZO,QAAM,CAAA,OAAAT,EAAAnB,EAAA,IAAA,CAAA,CAAA,IAAN4B,OAAMP,EAAA,CAAAC,EAAAtB,EAAA,KAAAqB,CAAA,CAAA,CAAA,IAGNQ,MAAI,CAAA,OAAAV,EAAAlB,EAAA,IAAA,CAAA,CAAA,IAAJ4B,KAAIR,EAAA,CAAAC,EAAArB,EAAA,KAAAoB,CAAA,CAAA,CAAA,IAGJS,aAAW,CAAA,OAAAX,EAAAjB,EAAA,IAAA,CAAA,CAAA,IAAX4B,YAAWT,EAAA,CAAAC,EAAApB,EAAA,KAAAmB,CAAA,CAAA,CAM5BU,aAAe,CACb,MAAM,EAACC,EAAA,KAAAvC,GAAAwC,EAAA,IAAA,EAAAC,EAAA,KA/BQ,EAAE,EAAA,EAAAF,EAAA,KAAArC,EAAAwC,EAAA,KAGH,EAAE,CAAA,EAAAH,EAAA,KAAApC,EAAAwC,EAAA,KAGD,EAAE,CAAA,EAAAJ,EAAA,KAAAnC,EAAAwC,EAAA,KAGI,EAAE,CAAA,EAAAL,EAAA,KAAAlC,EAAAwC,EAAA,KAGL,EAAK,CAAA,EAAAN,EAAA,KAAAjC,EAAAwC,EAAA,KAGgC,IAAI,CAAA,EAAAP,EAAA,KAAAhC,EAAAwC,EAAA,KAGnC,EAAE,CAAA,EAAAR,EAAA,KAAA/B,EAAAwC,EAAA,KAGJ,EAAK,CAAA,EAAAT,EAAA,KAAA9B,EAAAwC,EAAA,KAGE,EAAE,CAAA,EAAAC,EAAA,KAAA,aAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,wBAGD,EAAK,EAAAA,EAAA,KAAA,YAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,wBA4OJC,GAAiB,CACnCA,EAAME,aAEdD,CAAAA,CAAKE,SAAS,IAAI,GACrB,KAAKC,KAAK,CAEd,CAAC,EAAAL,EAAA,KAAA,0BAEkCC,GAAsB,CAC1CA,EAAME,aAEdD,CAAAA,CAAKE,SAAS,IAAI,GACrB,KAAKC,KAAK,CAEd,CAAC,EApPC,KAAKC,WAAa,KAAKC,SACrB,IAAI9D,EAAAA,QAAW,KAAM,CACnB+D,oBAAuB,KAAKxB,aAC5ByB,iBAAoB,KAAKA,aAAa,EACtCC,eAAiB7B,GAAU,CACzB,KAAKI,OAASJ,EAAM8B,YAAY,EAEhC,IAAMC,EAAU,KAAKC,mBAAmB,EAExC,GAAID,EAAQE,SAAW,EAAG,CACxB,KAAKT,KAAK,EACV,MACF,CAEI,KAAKnB,OACP,KAAKC,YAAc,KAAK4B,sBAAsBH,CAAO,EAEzD,CACF,CAAC,CACH,EAEA,KAAKI,UAAY,WAAW,KAAKV,WAAWW,SAC9C,CAEAC,sBAAwB,CACtB,MAAMA,qBAAqB,EAE3B,KAAKC,oBAAoB,CAC3B,CAEUC,QAAU,CAClB,IAAMR,EAAU,KAAKC,mBAAmB,EAGlCU,GADJ,KAAKrC,MAAQ,KAAKC,aAAe,EAAIyB,EAAQ,KAAKzB,aAAemC,IAAAA,MAEhDA,IAAAA,GAAiDA,IAAAA,GAArC,KAAKE,YAAY,KAAKrC,WAAW,EAC1DsC,EAAiB,KAAK3C,aAAe,WAE3C,MAAO1C,GAAAA,IAAI;QACP,KAAKkE,WAAWoB,YAAY,EAAC;;;;;;;;kBAQnB,KAAKxC,KAAI;;8DAEmC,KAAKyC,kBAAiB;;kBAElE,KAAKrB,WAAWW,QAAO;;mBAEtB,KAAKrC,KAAI;0BACF,KAAKE,YAAW;;;;4BAId,KAAKI,KAAO,OAAS,QAAO;4BAC5B,KAAK8B,UAAS;oCACNO,GAAoBlF,EAAAA,QAAO;8BACjC,KAAKoC,MAAQ,KAAK6B,WAAWsB,QAAUvF,EAAAA,QAAO;yBACnD,KAAKoC,MAAQpC,EAAAA,QAAUoF,EAAc;4BAClC,KAAK1C,SAAW,OAAS1C,EAAAA,QAAO;;;wBAGpC,KAAK0C,SAAQ;qBAChB,KAAKF,MAAK;uBACR,KAAKgD,eAAc;qBACrB,KAAKC,aAAY;yBACX,KAAKxB,WAAWyB,QAAQ,EAAC;;;;;eAKrC,KAAKf,UAAS;;;;4BAID,KAAKvC,MAAQ,KAAK6B,WAAWsB,QAAUvF,EAAAA,QAAO;uBACnD,KAAKoC,MAAQpC,EAAAA,QAAUoF,EAAc;oBACxC,CAAC,KAAKvC,KAAI;qBACT,KAAK8C,iBAAgB;;YAE9BpB,EAAQqB,KACPC,EAAQC,IACP/F,EAAAA,IAAI;qBACG,KAAKoF,YAAYW,CAAK,EAAC;;gCAEZ,KAAKjD,MAAQiD,IAAU,KAAKhD,YACxC,OACA,QAAO;8BACGgD,IAAU,KAAKhD,aAAe9C,EAAAA,QAAO;iCAChC,KAAK+F,eAAeD,CAAK,EAAC;;kBAE3CD,EAAOzD,MAAK;qBAEpB,EAAC;;;KAIT,CAEQoC,oBAA4C,CAClD,OAAO,KAAKwB,WAAW,CAAC,CAACpD,OAAQiD,GAC/BA,EAAOzD,MAAMkC,YAAY,CAAC,CAACP,SAAS,KAAKnB,MAAM,CACjD,CACF,CAEQoD,YAAoC,CAC1C,IAAMzB,EAAU,KAAK0B,iBACnB,0BACF,EAEA,OAAOC,MAAMC,KAAK5B,CAAO,CAAC,CAACqB,IAAKC,IAAY,CAC1CrD,MAAOqD,EAAOrD,MACdJ,MAAOyD,EAAOO,aAAe,EAC/B,EAAE,CACJ,CAEQjB,YAAaW,EAAuB,CAC1C,MAAO,GAAG,KAAKnB,UAAS,UAAWmB,GACrC,CAEQpB,sBAAuBH,EAAuC,CACpE,IAAM8B,EAAgB9B,EAAQ+B,UAAWT,GAAWA,EAAOrD,QAAU,KAAKA,KAAK,EAM/E,OAJI6D,GAAiB,EACZA,EAGF9B,EAAQE,OAAS,EAAI,EAAI,EAClC,CAEQ8B,aACNC,EACAjC,EACAkC,EACQ,CAKR,OAJIlC,EAAQE,SAAW,EACd,IAGD+B,EAAeC,EAAYlC,EAAQE,QAAUF,EAAQE,MAC/D,CAEQsB,eAAgBD,EAAe,CACrC,KAAKhD,YAAcgD,CACrB,CAEQY,KAAMnC,EAAmC,CAC/C,GAAI,KAAK1B,KACP,OAGF,IAAM8D,EAAkB,KAAKnC,mBAAmB,EAE5CmC,EAAgBlC,SAAW,IAI/B,KAAK5B,KAAO,GACZ,KAAKC,YAAcyB,GAASqC,UACxBD,EAAgBlC,OAAS,EACzB,KAAKC,sBAAsBiC,CAAe,EAC9C,KAAKE,iBAAiB,EAEtBC,0BAA4B,KAAKC,2BAA2B,CAAC,EAC/D,CAEQ/C,MAAQ,CACT,KAAKnB,OAIV,KAAKA,KAAO,GACZ,KAAKC,YAAc,GACnB,KAAKgC,oBAAoB,EAC3B,CAEQkC,aAAcxE,EAAe,CACnC,KAAKyB,WAAWgD,SAASzE,CAAK,EAC9B,KAAKwB,KAAK,EACV,KAAKrB,cAAcuE,MAAM,CAAEC,cAAe,EAAK,CAAC,CAClD,CAEQJ,4BAA8B,CAChC,KAAKjE,YAAc,GAIvB,KAAKsE,YACDC,cAAc,IAAI,KAAKlC,YAAY,KAAKrC,WAAW,GAAG,CAAC,EACvDwE,eAAe,CAAEC,MAAO,SAAU,CAAC,CACzC,CAEQV,kBAAoB,CAC1B,GAAI,KAAKW,sBACP,OAGFC,SAASC,iBAAiB,UAAW,KAAKC,qBAAqB,EAC/DF,SAASC,iBAAiB,YAAa,KAAKE,uBAAuB,EAEnE,IAAMC,EAAO,KAAKC,YAAY,EAE1BD,IAASJ,UACXI,EAAKH,iBAAiB,UAAW,KAAKC,qBAAqB,EAG7D,KAAKH,sBAAwB,EAC/B,CAEQ1C,qBAAuB,CAC7B,GAAI,CAAC,KAAK0C,sBACR,OAGFC,SAASM,oBAAoB,UAAW,KAAKJ,qBAAqB,EAClEF,SAASM,oBAAoB,YAAa,KAAKH,uBAAuB,EAEtE,IAAMC,EAAO,KAAKC,YAAY,EAE1BD,IAASJ,UACXI,EAAKE,oBAAoB,UAAW,KAAKJ,qBAAqB,EAGhE,KAAKH,sBAAwB,EAC/B,CAkBQlC,kBAAmB1B,EAAmB,CAC5CA,EAAMoE,eAAe,EACrB,KAAKrF,cAAcuE,MAAM,CAAEC,cAAe,EAAK,CAAC,CAClD,CAEQ1B,cAAgB,CACtB,KAAKiB,KAAK,CACZ,CAEQuB,iBAAkBrB,EAAoB,CACvC,KAAK/D,MACR,KAAK6D,KAAK,CAAEE,WAAU,CAAC,CAE3B,CAEQpB,eAAgB5B,EAAsB,CAC5C,IAAMW,EAAU,KAAKC,mBAAmB,EAExC,OAAQZ,EAAMsE,IAAd,CACE,IAAK,YACHtE,EAAMoE,eAAe,EAEhB,KAAKnF,MAGR,KAAKC,YAAc,KAAKyD,aAAa,KAAKzD,YAAayB,EAAS,CAAC,EACjE,KAAKwC,2BAA2B,GAHhC,KAAKkB,iBAAiB,EAAK,EAK7B,MACF,IAAK,UACHrE,EAAMoE,eAAe,EAEhB,KAAKnF,MAGR,KAAKC,YAAc,KAAKyD,aAAa,KAAKzD,YAAayB,EAAS,EAAE,EAClE,KAAKwC,2BAA2B,GAHhC,KAAKkB,iBAAiB,EAAI,EAK5B,MACF,IAAK,QACC,KAAKpF,MAAQ,KAAKC,aAAe,GAAKyB,EAAQ,KAAKzB,cACrDc,EAAMoE,eAAe,EACrB,KAAKhB,aAAazC,EAAQ,KAAKzB,YAAY,CAACN,KAAK,GACvC,KAAKK,OACfe,EAAMoE,eAAe,EACrB,KAAK/D,WAAWkE,SAAS,GAE3B,MACF,IAAK,SACC,KAAKtF,OACPe,EAAMoE,eAAe,EACrBpE,EAAMwE,gBAAgB,EACtB,KAAKpE,KAAK,EACV,KAAKrB,cAAcuE,MAAM,CAAEC,cAAe,EAAK,CAAC,GAElD,MACF,IAAK,MACH,KAAKnD,KAAK,EACV,KACJ,CACF,CAEQ2B,iBAAkB/B,EAAmB,CAC3C,GAAI,EAAEA,EAAMyE,kBAAkBC,aAC5B,OAGF,IAAMC,EAAgB3E,EAAMyE,OAAOG,QAAQ,iBAAiB,EAE5D,GAAI,CAACD,EACH,OAGF,IAAME,EAAWF,EAAcG,GACzB5C,EAAQ6C,OAAOC,SAASH,EAASI,QAAQ,GAAG,KAAKlE,UAAS,UAAY,EAAE,EAAG,EAAE,EAC7EkB,EAAS,KAAKrB,mBAAmB,CAAC,CAACsB,GAErCD,GACF,KAAKmB,aAAanB,EAAOrD,KAAK,CAElC,CACF,EAAC,CAAAsG,EAAA,CAAA5F,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAT,GAAA8F,EAAA,CAAAxI,EAAAyI,IAAAC,EAAAhH,EAAA,CAAA,CAAAb,EAAA,EAAA,OAAA,EAAA,CAAAI,EAAA,EAAA,MAAA,EAAA,CAAAC,EAAA,EAAA,OAAA,EAAA,CAAAC,EAAA,EAAA,aAAA,EAAA,CAAAC,EAAA,EAAA,UAAA,EAAA,CAAAE,EAAA,EAAA,cAAA,EAAA,CAAAC,EAAA,EAAA,QAAA,EAAA,CAAAC,EAAA,EAAA,MAAA,EAAA,CAAAC,EAAA,EAAA,aAAA,CAAA,EAAA1B,EAAA,EAAA,IAAA,GA7WqCR,EAAAA,OAAY,EAAAmC,GAAAiH,EAAA,cAAAC,CAAA,CAAApG,aAAA,CAAA,MAAAxC,CAAA,EAAAoD,EAAA,KAAA,SAChCtD,EAAAA,OAAM,EAAAsD,EAAA,KAAA,iBACE,EAAI,EAAAqF,EAAA,CAAA,CAAA,EAAArF,EAAAuF,EAAA1I,EAAA,IAAA,EAAA,EAAA0I"}
|
|
@@ -3,17 +3,38 @@ export default class Combobox extends WebComponent {
|
|
|
3
3
|
static styles: import('lit').CSSResult;
|
|
4
4
|
static formAssociated: boolean;
|
|
5
5
|
accessor label: string;
|
|
6
|
+
accessor name: string;
|
|
6
7
|
accessor value: string;
|
|
7
|
-
|
|
8
|
+
accessor placeholder: string;
|
|
9
|
+
accessor required: boolean;
|
|
8
10
|
private accessor inputElement;
|
|
9
11
|
private accessor filter;
|
|
10
|
-
private
|
|
12
|
+
private accessor open;
|
|
13
|
+
private accessor activeIndex;
|
|
14
|
+
private inputTrait;
|
|
15
|
+
private openListenersAttached;
|
|
16
|
+
private readonly listboxId;
|
|
17
|
+
constructor();
|
|
18
|
+
disconnectedCallback(): void;
|
|
11
19
|
protected render(): import('lit-html').TemplateResult<1>;
|
|
20
|
+
private getFilteredOptions;
|
|
12
21
|
private getOptions;
|
|
13
|
-
private
|
|
22
|
+
private getOptionId;
|
|
23
|
+
private getInitialActiveIndex;
|
|
24
|
+
private getNextIndex;
|
|
25
|
+
private setActiveIndex;
|
|
26
|
+
private show;
|
|
27
|
+
private hide;
|
|
28
|
+
private selectOption;
|
|
29
|
+
private scrollActiveOptionIntoView;
|
|
30
|
+
private addOpenListeners;
|
|
31
|
+
private removeOpenListeners;
|
|
32
|
+
private handleDocumentFocusIn;
|
|
33
|
+
private handleDocumentMouseDown;
|
|
34
|
+
private onAnchorMouseDown;
|
|
35
|
+
private onInputFocus;
|
|
36
|
+
private openPopupFromKey;
|
|
14
37
|
private onInputKeyDown;
|
|
15
|
-
private
|
|
16
|
-
private onInputChange;
|
|
17
|
-
private onOptionClick;
|
|
38
|
+
private onListboxMouseUp;
|
|
18
39
|
}
|
|
19
40
|
//# sourceMappingURL=Combobox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/Combobox.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/Combobox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAM9D,OAAO,4BAA4B,CAAA;AACnC,OAAO,uDAAuD,CAAA;AAO9D,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,YAAY;IAChD,MAAM,CAAC,MAAM,0BAAS;IACtB,MAAM,CAAC,cAAc,UAAO;IAG5B,QAAQ,CAAC,KAAK,SAAK;IAGnB,QAAQ,CAAC,IAAI,SAAK;IAGlB,QAAQ,CAAC,KAAK,SAAK;IAGnB,QAAQ,CAAC,WAAW,SAAK;IAGzB,QAAQ,CAAC,QAAQ,UAAQ;IAGzB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgC;IAG7D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAK;IAG5B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAQ;IAG7B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAK;IAEjC,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,qBAAqB,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;;IA6BlC,oBAAoB;IAMpB,SAAS,CAAC,MAAM;IAyEhB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,IAAI;IAoBZ,OAAO,CAAC,IAAI;IAUZ,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,0BAA0B;IAUlC,OAAO,CAAC,gBAAgB;IAiBxB,OAAO,CAAC,mBAAmB;IAiB3B,OAAO,CAAC,qBAAqB,CAM5B;IAED,OAAO,CAAC,uBAAuB,CAM9B;IAED,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,cAAc;IA+CtB,OAAO,CAAC,gBAAgB;CAmBzB"}
|
|
@@ -1,38 +1,39 @@
|
|
|
1
1
|
import { customElement as e } from "../../lib/components/decorators.esm.js";
|
|
2
|
-
import
|
|
3
|
-
import n from "../../lib/components/
|
|
2
|
+
import t from "../../lib/components/web-component/WebComponent.esm.js";
|
|
3
|
+
import n from "../../lib/components/traits/InputTrait.esm.js";
|
|
4
4
|
import "../../lib/components/index.esm.js";
|
|
5
5
|
import "../../_virtual/~icons/lucide/chevron-down.esm.js";
|
|
6
6
|
import r from "./Combobox.styles.esm.js";
|
|
7
|
-
import { html as i } from "lit";
|
|
8
|
-
import { property as
|
|
7
|
+
import { html as i, nothing as a } from "lit";
|
|
8
|
+
import { property as o, query as s, state as c } from "lit/decorators.js";
|
|
9
|
+
import "@awesome.me/webawesome/dist/components/popup/popup.js";
|
|
9
10
|
//#region src/components/combobox/Combobox.ts
|
|
10
|
-
var
|
|
11
|
-
function
|
|
12
|
-
|
|
11
|
+
var l, u, d, f, p, m, h, g, _, v, y, b, x, S, C, w, T, E, D, O, k, A, j, M, N, P, F, I, L, R, z, B, V, H;
|
|
12
|
+
function U(e, t, n) {
|
|
13
|
+
W(e, t), t.set(e, n);
|
|
13
14
|
}
|
|
14
|
-
function
|
|
15
|
+
function W(e, t) {
|
|
15
16
|
if (t.has(e)) throw TypeError("Cannot initialize the same private elements twice on an object");
|
|
16
17
|
}
|
|
17
|
-
function
|
|
18
|
-
return e.set(
|
|
18
|
+
function G(e, t, n) {
|
|
19
|
+
return e.set(q(e, t), n), n;
|
|
19
20
|
}
|
|
20
|
-
function
|
|
21
|
-
return e.get(
|
|
21
|
+
function K(e, t) {
|
|
22
|
+
return e.get(q(e, t));
|
|
22
23
|
}
|
|
23
|
-
function
|
|
24
|
+
function q(e, t, n) {
|
|
24
25
|
if (typeof e == "function" ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
|
|
25
26
|
throw TypeError("Private element is not present on this object");
|
|
26
27
|
}
|
|
27
|
-
function
|
|
28
|
-
return (t =
|
|
28
|
+
function J(e, t, n) {
|
|
29
|
+
return (t = X(t)) in e ? Object.defineProperty(e, t, {
|
|
29
30
|
value: n,
|
|
30
31
|
enumerable: !0,
|
|
31
32
|
configurable: !0,
|
|
32
33
|
writable: !0
|
|
33
34
|
}) : e[t] = n, e;
|
|
34
35
|
}
|
|
35
|
-
function
|
|
36
|
+
function Y(e, t, n, r, i, a) {
|
|
36
37
|
function o(e, t, n) {
|
|
37
38
|
return function(r, i) {
|
|
38
39
|
return n && n(r), e[t].call(r, i);
|
|
@@ -55,13 +56,13 @@ function I(e, t, n, r, i, a) {
|
|
|
55
56
|
n || Array.isArray(_) || (_ = [_]);
|
|
56
57
|
var b = {}, x = [], S = i === 3 ? "get" : i === 4 || p ? "set" : "value";
|
|
57
58
|
d ? (f || p ? b = {
|
|
58
|
-
get:
|
|
59
|
+
get: Q(function() {
|
|
59
60
|
return v(this);
|
|
60
61
|
}, r, "get"),
|
|
61
62
|
set: function(e) {
|
|
62
63
|
t[4](this, e);
|
|
63
64
|
}
|
|
64
|
-
} : b[S] = v, f ||
|
|
65
|
+
} : b[S] = v, f || Q(b[S], r, i === 2 ? "" : S)) : f || (b = Object.getOwnPropertyDescriptor(e, r));
|
|
65
66
|
}
|
|
66
67
|
for (var C = e, w = _.length - 1; w >= 0; w -= n ? 2 : 1) {
|
|
67
68
|
var T = _[w], E = n ? _[w - 1] : void 0, D = {}, O = {
|
|
@@ -121,7 +122,7 @@ function I(e, t, n, r, i, a) {
|
|
|
121
122
|
if (arguments.length >= 6) var d = a[Symbol.metadata || Symbol.for("Symbol.metadata")];
|
|
122
123
|
var f = Object.create(d ?? null), p = function(e, t, n, r) {
|
|
123
124
|
var i, a, o = [], c = function(t) {
|
|
124
|
-
return
|
|
125
|
+
return ee(t) === e;
|
|
125
126
|
}, u = /* @__PURE__ */ new Map();
|
|
126
127
|
function d(e) {
|
|
127
128
|
e && o.push(s.bind(null, e));
|
|
@@ -135,7 +136,7 @@ function I(e, t, n, r, i, a) {
|
|
|
135
136
|
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);
|
|
136
137
|
u.set(b, !(m > 2) || m);
|
|
137
138
|
}
|
|
138
|
-
l(v ? e : e.prototype, p, _, g ? "#" + h :
|
|
139
|
+
l(v ? e : e.prototype, p, _, g ? "#" + h : X(h), m, r, v ? a ||= [] : i ||= [], o, v, g, y, m === 1, v && g ? c : n);
|
|
139
140
|
}
|
|
140
141
|
}
|
|
141
142
|
return d(i), d(a), o;
|
|
@@ -148,11 +149,11 @@ function I(e, t, n, r, i, a) {
|
|
|
148
149
|
}
|
|
149
150
|
};
|
|
150
151
|
}
|
|
151
|
-
function
|
|
152
|
-
var t =
|
|
152
|
+
function X(e) {
|
|
153
|
+
var t = Z(e, "string");
|
|
153
154
|
return typeof t == "symbol" ? t : t + "";
|
|
154
155
|
}
|
|
155
|
-
function
|
|
156
|
+
function Z(e, t) {
|
|
156
157
|
if (typeof e != "object" || !e) return e;
|
|
157
158
|
var n = e[Symbol.toPrimitive];
|
|
158
159
|
if (n !== void 0) {
|
|
@@ -162,7 +163,7 @@ function R(e, t) {
|
|
|
162
163
|
}
|
|
163
164
|
return (t === "string" ? String : Number)(e);
|
|
164
165
|
}
|
|
165
|
-
function
|
|
166
|
+
function Q(e, t, n) {
|
|
166
167
|
typeof t == "symbol" && (t = (t = t.description) ? "[" + t + "]" : "");
|
|
167
168
|
try {
|
|
168
169
|
Object.defineProperty(e, "name", {
|
|
@@ -172,133 +173,302 @@ function z(e, t, n) {
|
|
|
172
173
|
} catch {}
|
|
173
174
|
return e;
|
|
174
175
|
}
|
|
175
|
-
function
|
|
176
|
+
function ee(e) {
|
|
176
177
|
if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (e === null ? "null" : typeof e));
|
|
177
178
|
return e;
|
|
178
179
|
}
|
|
179
|
-
function
|
|
180
|
+
function te(e) {
|
|
180
181
|
return e;
|
|
181
182
|
}
|
|
182
|
-
|
|
183
|
-
var
|
|
184
|
-
new (
|
|
183
|
+
S = [e("solid-ui-combobox")];
|
|
184
|
+
var $;
|
|
185
|
+
new (V = (d = /*#__PURE__*/ new WeakMap(), f = /*#__PURE__*/ new WeakMap(), p = /*#__PURE__*/ new WeakMap(), m = /*#__PURE__*/ new WeakMap(), h = /*#__PURE__*/ new WeakMap(), g = /*#__PURE__*/ new WeakMap(), _ = /*#__PURE__*/ new WeakMap(), v = /*#__PURE__*/ new WeakMap(), y = /*#__PURE__*/ new WeakMap(), H = (C = o({
|
|
185
186
|
type: String,
|
|
186
187
|
reflect: !0
|
|
187
|
-
}),
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
188
|
+
}), T = o({
|
|
189
|
+
type: String,
|
|
190
|
+
reflect: !0
|
|
191
|
+
}), D = o({ type: String }), k = o({
|
|
192
|
+
type: String,
|
|
193
|
+
reflect: !0
|
|
194
|
+
}), j = o({
|
|
195
|
+
type: Boolean,
|
|
196
|
+
reflect: !0
|
|
197
|
+
}), N = s("input"), F = c(), L = c(), z = c(), "label"), u = class extends t {
|
|
198
|
+
get [H]() {
|
|
199
|
+
return K(d, this);
|
|
193
200
|
}
|
|
194
201
|
set label(e) {
|
|
195
|
-
|
|
202
|
+
G(d, this, e);
|
|
203
|
+
}
|
|
204
|
+
get name() {
|
|
205
|
+
return K(f, this);
|
|
206
|
+
}
|
|
207
|
+
set name(e) {
|
|
208
|
+
G(f, this, e);
|
|
196
209
|
}
|
|
197
210
|
get value() {
|
|
198
|
-
return
|
|
211
|
+
return K(p, this);
|
|
199
212
|
}
|
|
200
213
|
set value(e) {
|
|
201
|
-
|
|
214
|
+
G(p, this, e);
|
|
215
|
+
}
|
|
216
|
+
get placeholder() {
|
|
217
|
+
return K(m, this);
|
|
218
|
+
}
|
|
219
|
+
set placeholder(e) {
|
|
220
|
+
G(m, this, e);
|
|
202
221
|
}
|
|
203
|
-
get
|
|
204
|
-
return
|
|
222
|
+
get required() {
|
|
223
|
+
return K(h, this);
|
|
205
224
|
}
|
|
206
|
-
set
|
|
207
|
-
|
|
225
|
+
set required(e) {
|
|
226
|
+
G(h, this, e);
|
|
208
227
|
}
|
|
209
228
|
get inputElement() {
|
|
210
|
-
return
|
|
229
|
+
return K(g, this);
|
|
211
230
|
}
|
|
212
231
|
set inputElement(e) {
|
|
213
|
-
|
|
232
|
+
G(g, this, e);
|
|
214
233
|
}
|
|
215
234
|
get filter() {
|
|
216
|
-
return
|
|
235
|
+
return K(_, this);
|
|
217
236
|
}
|
|
218
237
|
set filter(e) {
|
|
219
|
-
|
|
238
|
+
G(_, this, e);
|
|
239
|
+
}
|
|
240
|
+
get open() {
|
|
241
|
+
return K(v, this);
|
|
242
|
+
}
|
|
243
|
+
set open(e) {
|
|
244
|
+
G(v, this, e);
|
|
245
|
+
}
|
|
246
|
+
get activeIndex() {
|
|
247
|
+
return K(y, this);
|
|
248
|
+
}
|
|
249
|
+
set activeIndex(e) {
|
|
250
|
+
G(y, this, e);
|
|
251
|
+
}
|
|
252
|
+
constructor() {
|
|
253
|
+
super(), U(this, d, (b(this), w(this, ""))), U(this, f, E(this, "")), U(this, p, O(this, "")), U(this, m, A(this, "")), U(this, h, M(this, !1)), U(this, g, P(this, null)), U(this, _, I(this, "")), U(this, v, R(this, !1)), U(this, y, B(this, -1)), J(this, "inputTrait", void 0), J(this, "openListenersAttached", !1), J(this, "listboxId", void 0), J(this, "handleDocumentFocusIn", (e) => {
|
|
254
|
+
e.composedPath().includes(this) || this.hide();
|
|
255
|
+
}), J(this, "handleDocumentMouseDown", (e) => {
|
|
256
|
+
e.composedPath().includes(this) || this.hide();
|
|
257
|
+
}), this.inputTrait = this.addTrait(new n(this, {
|
|
258
|
+
getInputElement: () => this.inputElement,
|
|
259
|
+
getInternals: () => this.getInternals(),
|
|
260
|
+
onValueChanged: (e) => {
|
|
261
|
+
this.filter = e.toLowerCase();
|
|
262
|
+
let t = this.getFilteredOptions();
|
|
263
|
+
if (t.length === 0) {
|
|
264
|
+
this.hide();
|
|
265
|
+
return;
|
|
266
|
+
}
|
|
267
|
+
this.open && (this.activeIndex = this.getInitialActiveIndex(t));
|
|
268
|
+
}
|
|
269
|
+
})), this.listboxId = `listbox-${this.inputTrait.inputId}`;
|
|
270
|
+
}
|
|
271
|
+
disconnectedCallback() {
|
|
272
|
+
super.disconnectedCallback(), this.removeOpenListeners();
|
|
220
273
|
}
|
|
221
274
|
render() {
|
|
222
|
-
let e = this.
|
|
275
|
+
let e = this.getFilteredOptions(), t = (this.open && this.activeIndex >= 0 ? e[this.activeIndex] : void 0) === void 0 ? void 0 : this.getOptionId(this.activeIndex), n = this.placeholder || "Combobox";
|
|
223
276
|
return i`
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
277
|
+
${this.inputTrait.renderLabel()}
|
|
278
|
+
<wa-popup
|
|
279
|
+
placement="bottom"
|
|
280
|
+
flip
|
|
281
|
+
shift
|
|
282
|
+
sync="width"
|
|
283
|
+
auto-size="vertical"
|
|
284
|
+
auto-size-padding="10"
|
|
285
|
+
?active=${this.open}
|
|
286
|
+
>
|
|
287
|
+
<div class="input-wrapper" slot="anchor" @mousedown=${this.onAnchorMouseDown}>
|
|
288
|
+
<input
|
|
289
|
+
id="${this.inputTrait.inputId}"
|
|
290
|
+
type="text"
|
|
291
|
+
name=${this.name}
|
|
292
|
+
placeholder=${this.placeholder}
|
|
293
|
+
role="combobox"
|
|
294
|
+
aria-autocomplete="list"
|
|
295
|
+
aria-haspopup="listbox"
|
|
296
|
+
aria-expanded=${this.open ? "true" : "false"}
|
|
297
|
+
aria-controls=${this.listboxId}
|
|
298
|
+
aria-activedescendant=${t ?? a}
|
|
299
|
+
aria-labelledby=${this.label ? this.inputTrait.labelId : a}
|
|
300
|
+
aria-label=${this.label ? a : n}
|
|
301
|
+
aria-required=${this.required ? "true" : a}
|
|
302
|
+
autocomplete="off"
|
|
303
|
+
spellcheck="false"
|
|
304
|
+
?required=${this.required}
|
|
305
|
+
.value=${this.value}
|
|
306
|
+
@keydown=${this.onInputKeyDown}
|
|
307
|
+
@focus=${this.onInputFocus}
|
|
308
|
+
@input=${() => this.inputTrait.onInput()}
|
|
309
|
+
/>
|
|
310
|
+
<icon-lucide-chevron-down></icon-lucide-chevron-down>
|
|
235
311
|
</div>
|
|
236
|
-
<div
|
|
237
|
-
|
|
312
|
+
<div
|
|
313
|
+
id=${this.listboxId}
|
|
314
|
+
class="listbox"
|
|
315
|
+
role="listbox"
|
|
316
|
+
aria-orientation="vertical"
|
|
317
|
+
aria-labelledby=${this.label ? this.inputTrait.labelId : a}
|
|
318
|
+
aria-label=${this.label ? a : n}
|
|
319
|
+
?hidden=${!this.open}
|
|
320
|
+
@mouseup=${this.onListboxMouseUp}
|
|
321
|
+
>
|
|
322
|
+
${e.map((e, t) => i`<div
|
|
323
|
+
id=${this.getOptionId(t)}
|
|
324
|
+
role="option"
|
|
325
|
+
aria-selected=${this.open && t === this.activeIndex ? "true" : "false"}
|
|
326
|
+
data-active=${t === this.activeIndex || a}
|
|
327
|
+
@mousemove=${() => this.setActiveIndex(t)}
|
|
328
|
+
>
|
|
329
|
+
${e.label}
|
|
330
|
+
</div>`)}
|
|
238
331
|
</div>
|
|
332
|
+
</wa-popup>
|
|
239
333
|
`;
|
|
240
334
|
}
|
|
335
|
+
getFilteredOptions() {
|
|
336
|
+
return this.getOptions().filter((e) => e.label.toLowerCase().includes(this.filter));
|
|
337
|
+
}
|
|
241
338
|
getOptions() {
|
|
242
339
|
let e = this.querySelectorAll("solid-ui-combobox-option");
|
|
243
|
-
return Array.from(e).map((e) =>
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
this.filter = e.toLowerCase(), this.value = e, this.getInternals().setFormValue(e), this.dispatchEvent(new InputEvent("input", {
|
|
247
|
-
bubbles: !0,
|
|
248
|
-
composed: !0
|
|
340
|
+
return Array.from(e).map((e) => ({
|
|
341
|
+
value: e.value,
|
|
342
|
+
label: e.textContent ?? ""
|
|
249
343
|
}));
|
|
250
344
|
}
|
|
345
|
+
getOptionId(e) {
|
|
346
|
+
return `${this.listboxId}-option-${e}`;
|
|
347
|
+
}
|
|
348
|
+
getInitialActiveIndex(e) {
|
|
349
|
+
let t = e.findIndex((e) => e.value === this.value);
|
|
350
|
+
return t >= 0 ? t : e.length > 0 ? 0 : -1;
|
|
351
|
+
}
|
|
352
|
+
getNextIndex(e, t, n) {
|
|
353
|
+
return t.length === 0 ? -1 : (e + n + t.length) % t.length;
|
|
354
|
+
}
|
|
355
|
+
setActiveIndex(e) {
|
|
356
|
+
this.activeIndex = e;
|
|
357
|
+
}
|
|
358
|
+
show(e) {
|
|
359
|
+
if (this.open) return;
|
|
360
|
+
let t = this.getFilteredOptions();
|
|
361
|
+
t.length !== 0 && (this.open = !0, this.activeIndex = e?.focusLast ? t.length - 1 : this.getInitialActiveIndex(t), this.addOpenListeners(), requestAnimationFrame(() => this.scrollActiveOptionIntoView()));
|
|
362
|
+
}
|
|
363
|
+
hide() {
|
|
364
|
+
this.open && (this.open = !1, this.activeIndex = -1, this.removeOpenListeners());
|
|
365
|
+
}
|
|
366
|
+
selectOption(e) {
|
|
367
|
+
this.inputTrait.setValue(e), this.hide(), this.inputElement?.focus({ preventScroll: !0 });
|
|
368
|
+
}
|
|
369
|
+
scrollActiveOptionIntoView() {
|
|
370
|
+
this.activeIndex < 0 || this.shadowRoot?.querySelector(`#${this.getOptionId(this.activeIndex)}`)?.scrollIntoView({ block: "nearest" });
|
|
371
|
+
}
|
|
372
|
+
addOpenListeners() {
|
|
373
|
+
if (this.openListenersAttached) return;
|
|
374
|
+
document.addEventListener("focusin", this.handleDocumentFocusIn), document.addEventListener("mousedown", this.handleDocumentMouseDown);
|
|
375
|
+
let e = this.getRootNode();
|
|
376
|
+
e !== document && e.addEventListener("focusin", this.handleDocumentFocusIn), this.openListenersAttached = !0;
|
|
377
|
+
}
|
|
378
|
+
removeOpenListeners() {
|
|
379
|
+
if (!this.openListenersAttached) return;
|
|
380
|
+
document.removeEventListener("focusin", this.handleDocumentFocusIn), document.removeEventListener("mousedown", this.handleDocumentMouseDown);
|
|
381
|
+
let e = this.getRootNode();
|
|
382
|
+
e !== document && e.removeEventListener("focusin", this.handleDocumentFocusIn), this.openListenersAttached = !1;
|
|
383
|
+
}
|
|
384
|
+
onAnchorMouseDown(e) {
|
|
385
|
+
e.preventDefault(), this.inputElement?.focus({ preventScroll: !0 });
|
|
386
|
+
}
|
|
387
|
+
onInputFocus() {
|
|
388
|
+
this.show();
|
|
389
|
+
}
|
|
390
|
+
openPopupFromKey(e) {
|
|
391
|
+
this.open || this.show({ focusLast: e });
|
|
392
|
+
}
|
|
251
393
|
onInputKeyDown(e) {
|
|
394
|
+
let t = this.getFilteredOptions();
|
|
252
395
|
switch (e.key) {
|
|
253
396
|
case "ArrowDown":
|
|
254
|
-
e.preventDefault(), this.
|
|
397
|
+
e.preventDefault(), this.open ? (this.activeIndex = this.getNextIndex(this.activeIndex, t, 1), this.scrollActiveOptionIntoView()) : this.openPopupFromKey(!1);
|
|
398
|
+
break;
|
|
399
|
+
case "ArrowUp":
|
|
400
|
+
e.preventDefault(), this.open ? (this.activeIndex = this.getNextIndex(this.activeIndex, t, -1), this.scrollActiveOptionIntoView()) : this.openPopupFromKey(!0);
|
|
255
401
|
break;
|
|
256
402
|
case "Enter":
|
|
257
|
-
this.
|
|
403
|
+
this.open && this.activeIndex >= 0 && t[this.activeIndex] ? (e.preventDefault(), this.selectOption(t[this.activeIndex].value)) : this.open || (e.preventDefault(), this.inputTrait.onSubmit());
|
|
404
|
+
break;
|
|
405
|
+
case "Escape":
|
|
406
|
+
this.open && (e.preventDefault(), e.stopPropagation(), this.hide(), this.inputElement?.focus({ preventScroll: !0 }));
|
|
407
|
+
break;
|
|
408
|
+
case "Tab":
|
|
409
|
+
this.hide();
|
|
258
410
|
break;
|
|
259
411
|
}
|
|
260
412
|
}
|
|
261
|
-
|
|
262
|
-
e.
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
onOptionClick(e) {
|
|
268
|
-
this.setValue(e), this.popoverElement?.hidePopover();
|
|
413
|
+
onListboxMouseUp(e) {
|
|
414
|
+
if (!(e.target instanceof HTMLElement)) return;
|
|
415
|
+
let t = e.target.closest("[role=\"option\"]");
|
|
416
|
+
if (!t) return;
|
|
417
|
+
let n = t.id, r = Number.parseInt(n.replace(`${this.listboxId}-option-`, ""), 10), i = this.getFilteredOptions()[r];
|
|
418
|
+
i && this.selectOption(i.value);
|
|
269
419
|
}
|
|
270
|
-
}, {e: [
|
|
420
|
+
}, {e: [w, E, O, A, M, P, I, R, B, b], c: [$, x]} = Y(u, [
|
|
271
421
|
[
|
|
272
|
-
|
|
422
|
+
C,
|
|
273
423
|
1,
|
|
274
424
|
"label"
|
|
275
425
|
],
|
|
276
426
|
[
|
|
277
|
-
|
|
427
|
+
T,
|
|
428
|
+
1,
|
|
429
|
+
"name"
|
|
430
|
+
],
|
|
431
|
+
[
|
|
432
|
+
D,
|
|
278
433
|
1,
|
|
279
434
|
"value"
|
|
280
435
|
],
|
|
281
436
|
[
|
|
282
|
-
|
|
437
|
+
k,
|
|
438
|
+
1,
|
|
439
|
+
"placeholder"
|
|
440
|
+
],
|
|
441
|
+
[
|
|
442
|
+
j,
|
|
283
443
|
1,
|
|
284
|
-
"
|
|
444
|
+
"required"
|
|
285
445
|
],
|
|
286
446
|
[
|
|
287
|
-
|
|
447
|
+
N,
|
|
288
448
|
1,
|
|
289
449
|
"inputElement"
|
|
290
450
|
],
|
|
291
451
|
[
|
|
292
|
-
|
|
452
|
+
F,
|
|
293
453
|
1,
|
|
294
454
|
"filter"
|
|
455
|
+
],
|
|
456
|
+
[
|
|
457
|
+
L,
|
|
458
|
+
1,
|
|
459
|
+
"open"
|
|
460
|
+
],
|
|
461
|
+
[
|
|
462
|
+
z,
|
|
463
|
+
1,
|
|
464
|
+
"activeIndex"
|
|
295
465
|
]
|
|
296
|
-
],
|
|
466
|
+
], S, 0, void 0, t), u), l = class extends te {
|
|
297
467
|
constructor() {
|
|
298
|
-
super(
|
|
468
|
+
super($), J(this, "styles", r), J(this, "formAssociated", !0), x();
|
|
299
469
|
}
|
|
300
|
-
},
|
|
470
|
+
}, J(l, V, void 0), l)();
|
|
301
471
|
//#endregion
|
|
302
|
-
export {
|
|
472
|
+
export { $ as default };
|
|
303
473
|
|
|
304
474
|
//# sourceMappingURL=Combobox.esm.js.map
|