monobill-mintui 0.6.612 → 0.6.613
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/README.md +76 -302
- package/bin/component-dependencies.json +131 -0
- package/bin/mint-ui.js +446 -0
- package/dist/alert.css +3 -0
- package/dist/back-button.css +3 -0
- package/dist/bottom-navigation.css +3 -0
- package/dist/button.css +3 -0
- package/dist/card.css +3 -0
- package/dist/chart.css +3 -0
- package/dist/checkbox.css +3 -0
- package/dist/chip.css +3 -0
- package/dist/choice.css +3 -0
- package/dist/clickable.css +3 -0
- package/dist/collapsible.css +3 -0
- package/dist/components/alert/Alert.d.ts +1 -32
- package/dist/components/alert/Alert.d.ts.map +10 -1
- package/dist/components/alert/browser.js +167 -0
- package/dist/components/alert/index.cjs +1 -0
- package/dist/components/alert/index.d.ts +1 -3
- package/dist/components/alert/index.d.ts.map +10 -1
- package/dist/components/alert/index.js +155 -0
- package/dist/components/back-button/BackButton.d.ts +1 -18
- package/dist/components/back-button/BackButton.d.ts.map +10 -1
- package/dist/components/back-button/browser.js +241 -0
- package/dist/components/back-button/index.cjs +1 -0
- package/dist/components/back-button/index.d.ts +1 -3
- package/dist/components/back-button/index.d.ts.map +10 -1
- package/dist/components/back-button/index.js +229 -0
- package/dist/components/bottom-navigation/BottomNavigation.d.ts +1 -10
- package/dist/components/bottom-navigation/BottomNavigation.d.ts.map +10 -1
- package/dist/components/bottom-navigation/browser.js +97 -0
- package/dist/components/bottom-navigation/index.cjs +1 -0
- package/dist/components/bottom-navigation/index.d.ts +2 -5
- package/dist/components/bottom-navigation/index.d.ts.map +10 -1
- package/dist/components/bottom-navigation/index.js +85 -0
- package/dist/components/button/Button.d.ts +1 -57
- package/dist/components/button/Button.d.ts.map +10 -1
- package/dist/components/button/browser.js +18 -0
- package/dist/components/button/index.cjs +1 -0
- package/dist/components/button/index.d.ts +1 -3
- package/dist/components/button/index.d.ts.map +10 -1
- package/dist/components/button/index.js +6 -0
- package/dist/components/card/Card.d.ts +1 -17
- package/dist/components/card/Card.d.ts.map +10 -1
- package/dist/components/card/browser.js +25 -0
- package/dist/components/card/index.cjs +1 -0
- package/dist/components/card/index.d.ts +1 -3
- package/dist/components/card/index.d.ts.map +10 -1
- package/dist/components/card/index.js +13 -0
- package/dist/components/chart/Chart.d.ts +1 -291
- package/dist/components/chart/Chart.d.ts.map +10 -1
- package/dist/components/chart/browser.js +1331 -0
- package/dist/components/chart/index.cjs +37 -0
- package/dist/components/chart/index.d.ts +1 -3
- package/dist/components/chart/index.d.ts.map +10 -1
- package/dist/components/chart/index.js +1319 -0
- package/dist/components/checkbox/Checkbox.d.ts +1 -41
- package/dist/components/checkbox/Checkbox.d.ts.map +10 -1
- package/dist/components/checkbox/browser.js +162 -0
- package/dist/components/checkbox/index.cjs +1 -0
- package/dist/components/checkbox/index.d.ts +1 -3
- package/dist/components/checkbox/index.d.ts.map +10 -1
- package/dist/components/checkbox/index.js +150 -0
- package/dist/components/chip/Chip.d.ts +1 -16
- package/dist/components/chip/Chip.d.ts.map +10 -1
- package/dist/components/chip/browser.js +17 -0
- package/dist/components/chip/index.cjs +1 -0
- package/dist/components/chip/index.d.ts +1 -3
- package/dist/components/chip/index.d.ts.map +10 -1
- package/dist/components/chip/index.js +5 -0
- package/dist/components/choice/Choice.d.ts +1 -27
- package/dist/components/choice/Choice.d.ts.map +10 -1
- package/dist/components/choice/browser.js +272 -0
- package/dist/components/choice/index.cjs +1 -0
- package/dist/components/choice/index.d.ts +1 -5
- package/dist/components/choice/index.d.ts.map +10 -1
- package/dist/components/choice/index.js +260 -0
- package/dist/components/chunks/button-B0Yt0MX1.js +380 -0
- package/dist/components/chunks/button-BlbLHMts.js +1 -0
- package/dist/components/chunks/caret-down-BN9cl4o4.js +1 -0
- package/dist/components/chunks/caret-down-Ch6IfR7r.js +9 -0
- package/dist/components/chunks/caret-right-CDUwqoen.js +1 -0
- package/dist/components/chunks/caret-right-CVOgr4nk.js +9 -0
- package/dist/components/chunks/caret-up-3XCuTXSE.js +1 -0
- package/dist/components/chunks/caret-up-D_6oa7o1.js +9 -0
- package/dist/components/chunks/chip-B04bJM4r.js +1 -0
- package/dist/components/chunks/chip-B9whjEvW.js +54 -0
- package/dist/components/chunks/close-5tYlQdkk.js +1 -0
- package/dist/components/chunks/close-Dg6U0IjZ.js +10 -0
- package/dist/components/chunks/icon-C0OLmjDY.js +1 -0
- package/dist/components/chunks/icon-CyzR9aVl.js +1 -0
- package/dist/components/chunks/icon-dG8sLTBn.js +27 -0
- package/dist/components/chunks/icon-gQAtsERy.js +1324 -0
- package/dist/components/chunks/input-8bbXzpa5.js +334 -0
- package/dist/components/chunks/input-BoiREc6Y.js +1 -0
- package/dist/components/chunks/link-BxhPnVaz.js +1 -0
- package/dist/components/chunks/link-DKgtBYK6.js +38 -0
- package/dist/components/chunks/modal-B8gNdwEl.js +153 -0
- package/dist/components/chunks/modal-WYWvk2lZ.js +1 -0
- package/dist/components/chunks/popover-BeaGf_JC.js +1 -0
- package/dist/components/chunks/popover-gviDCspV.js +188 -0
- package/dist/components/chunks/register-element-BFYmIynH.js +53 -0
- package/dist/components/chunks/register-element-tCL_F1YI.js +1 -0
- package/dist/components/chunks/search-ANUKQi0r.js +9 -0
- package/dist/components/chunks/search-B3egXuw4.js +1 -0
- package/dist/components/chunks/spinner-BsaFHuS6.js +108 -0
- package/dist/components/chunks/spinner-DbTohC6i.js +63 -0
- package/dist/components/chunks/stack-D1uh4L79.js +1 -0
- package/dist/components/chunks/stack-DyQfjPDh.js +53 -0
- package/dist/components/chunks/table-BgboosRK.js +65 -0
- package/dist/components/chunks/table-DDUNUwGd.js +1 -0
- package/dist/components/chunks/text-BHkEs8U5.js +67 -0
- package/dist/components/chunks/text-BmHZbBMo.js +1 -0
- package/dist/components/clickable/Clickable.d.ts +1 -14
- package/dist/components/clickable/Clickable.d.ts.map +10 -1
- package/dist/components/clickable/browser.js +78 -0
- package/dist/components/clickable/index.cjs +1 -0
- package/dist/components/clickable/index.d.ts +1 -3
- package/dist/components/clickable/index.d.ts.map +10 -1
- package/dist/components/clickable/index.js +66 -0
- package/dist/components/collapsible/Collapsible.d.ts +1 -28
- package/dist/components/collapsible/Collapsible.d.ts.map +10 -1
- package/dist/components/collapsible/browser.js +170 -0
- package/dist/components/collapsible/index.cjs +1 -0
- package/dist/components/collapsible/index.d.ts +1 -3
- package/dist/components/collapsible/index.d.ts.map +10 -1
- package/dist/components/collapsible/index.js +158 -0
- package/dist/components/confirm-action/ConfirmAction.d.ts +1 -27
- package/dist/components/confirm-action/ConfirmAction.d.ts.map +10 -1
- package/dist/components/confirm-action/browser.js +130 -0
- package/dist/components/confirm-action/index.cjs +1 -0
- package/dist/components/confirm-action/index.d.ts +2 -3
- package/dist/components/confirm-action/index.d.ts.map +10 -1
- package/dist/components/confirm-action/index.js +118 -0
- package/dist/components/date-picker/DatePicker.d.ts +1 -130
- package/dist/components/date-picker/DatePicker.d.ts.map +10 -1
- package/dist/components/date-picker/browser.js +1288 -0
- package/dist/components/date-picker/index.cjs +1 -0
- package/dist/components/date-picker/index.d.ts +1 -3
- package/dist/components/date-picker/index.d.ts.map +10 -1
- package/dist/components/date-picker/index.js +1276 -0
- package/dist/components/dropzone/Dropzone.d.ts +1 -59
- package/dist/components/dropzone/Dropzone.d.ts.map +10 -1
- package/dist/components/dropzone/browser.js +355 -0
- package/dist/components/dropzone/index.cjs +1 -0
- package/dist/components/dropzone/index.d.ts +1 -3
- package/dist/components/dropzone/index.d.ts.map +10 -1
- package/dist/components/dropzone/index.js +343 -0
- package/dist/components/form/Form.d.ts +1 -133
- package/dist/components/form/Form.d.ts.map +10 -1
- package/dist/components/form/browser.js +1002 -0
- package/dist/components/form/index.cjs +1 -0
- package/dist/components/form/index.d.ts +1 -3
- package/dist/components/form/index.d.ts.map +10 -1
- package/dist/components/form/index.js +990 -0
- package/dist/components/grid/Grid.d.ts +1 -16
- package/dist/components/grid/Grid.d.ts.map +10 -1
- package/dist/components/grid/browser.js +24 -0
- package/dist/components/grid/index.cjs +1 -0
- package/dist/components/grid/index.d.ts +1 -3
- package/dist/components/grid/index.d.ts.map +10 -1
- package/dist/components/grid/index.js +12 -0
- package/dist/components/icon/Icon.d.ts +1 -16
- package/dist/components/icon/Icon.d.ts.map +10 -1
- package/dist/components/icon/browser.js +16 -0
- package/dist/components/icon/index.cjs +1 -0
- package/dist/components/icon/index.d.ts +2 -3
- package/dist/components/icon/index.d.ts.map +10 -1
- package/dist/components/icon/index.js +4 -0
- package/dist/components/input/Input.d.ts +1 -68
- package/dist/components/input/Input.d.ts.map +10 -1
- package/dist/components/input/browser.js +17 -0
- package/dist/components/input/index.cjs +1 -0
- package/dist/components/input/index.d.ts +1 -3
- package/dist/components/input/index.d.ts.map +10 -1
- package/dist/components/input/index.js +5 -0
- package/dist/components/link/Link.d.ts +1 -16
- package/dist/components/link/Link.d.ts.map +10 -1
- package/dist/components/link/browser.js +16 -0
- package/dist/components/link/index.cjs +1 -0
- package/dist/components/link/index.d.ts +1 -3
- package/dist/components/link/index.d.ts.map +10 -1
- package/dist/components/link/index.js +4 -0
- package/dist/components/modal/Modal.d.ts +1 -38
- package/dist/components/modal/Modal.d.ts.map +10 -1
- package/dist/components/modal/browser.js +21 -0
- package/dist/components/modal/index.cjs +1 -0
- package/dist/components/modal/index.d.ts +1 -3
- package/dist/components/modal/index.d.ts.map +10 -1
- package/dist/components/modal/index.js +9 -0
- package/dist/components/navigation/Navigation.d.ts +1 -0
- package/dist/components/navigation/Navigation.d.ts.map +10 -0
- package/dist/components/navigation/browser.js +198 -0
- package/dist/components/navigation/index.cjs +1 -0
- package/dist/components/navigation/index.d.ts +1 -0
- package/dist/components/navigation/index.d.ts.map +10 -0
- package/dist/components/navigation/index.js +186 -0
- package/dist/components/off-canvas/OffCanvas.d.ts +1 -46
- package/dist/components/off-canvas/OffCanvas.d.ts.map +10 -1
- package/dist/components/off-canvas/browser.js +192 -0
- package/dist/components/off-canvas/index.cjs +1 -0
- package/dist/components/off-canvas/index.d.ts +1 -3
- package/dist/components/off-canvas/index.d.ts.map +10 -1
- package/dist/components/off-canvas/index.js +180 -0
- package/dist/components/page/Page.d.ts +1 -37
- package/dist/components/page/Page.d.ts.map +10 -1
- package/dist/components/page/browser.js +74 -0
- package/dist/components/page/index.cjs +16 -0
- package/dist/components/page/index.d.ts +1 -3
- package/dist/components/page/index.d.ts.map +10 -1
- package/dist/components/page/index.js +62 -0
- package/dist/components/popover/Popover.d.ts +1 -64
- package/dist/components/popover/Popover.d.ts.map +10 -1
- package/dist/components/popover/browser.js +17 -0
- package/dist/components/popover/index.cjs +1 -0
- package/dist/components/popover/index.d.ts +1 -3
- package/dist/components/popover/index.d.ts.map +10 -1
- package/dist/components/popover/index.js +5 -0
- package/dist/components/resource-table/ResourceTable.d.ts +1 -327
- package/dist/components/resource-table/ResourceTable.d.ts.map +10 -1
- package/dist/components/resource-table/browser.js +1457 -0
- package/dist/components/resource-table/index.cjs +2 -0
- package/dist/components/resource-table/index.d.ts +1 -4
- package/dist/components/resource-table/index.d.ts.map +10 -1
- package/dist/components/resource-table/index.js +1445 -0
- package/dist/components/search/Search.d.ts +1 -151
- package/dist/components/search/Search.d.ts.map +10 -1
- package/dist/components/search/browser.js +681 -0
- package/dist/components/search/index.cjs +1 -0
- package/dist/components/search/index.d.ts +1 -3
- package/dist/components/search/index.d.ts.map +10 -1
- package/dist/components/search/index.js +669 -0
- package/dist/components/select/Select.d.ts +1 -37
- package/dist/components/select/Select.d.ts.map +10 -1
- package/dist/components/select/browser.js +285 -0
- package/dist/components/select/index.cjs +1 -0
- package/dist/components/select/index.d.ts +1 -3
- package/dist/components/select/index.d.ts.map +10 -1
- package/dist/components/select/index.js +273 -0
- package/dist/components/side-navigation/SideNavigation.d.ts +1 -52
- package/dist/components/side-navigation/SideNavigation.d.ts.map +10 -1
- package/dist/components/side-navigation/browser.js +466 -0
- package/dist/components/side-navigation/index.cjs +1 -0
- package/dist/components/side-navigation/index.d.ts +5 -8
- package/dist/components/side-navigation/index.d.ts.map +10 -1
- package/dist/components/side-navigation/index.js +454 -0
- package/dist/components/sortable/Sortable.d.ts +1 -62
- package/dist/components/sortable/Sortable.d.ts.map +10 -1
- package/dist/components/sortable/browser.js +340 -0
- package/dist/components/sortable/index.cjs +1 -0
- package/dist/components/sortable/index.d.ts +1 -3
- package/dist/components/sortable/index.d.ts.map +10 -1
- package/dist/components/sortable/index.js +328 -0
- package/dist/components/spinner/Spinner.d.ts +1 -13
- package/dist/components/spinner/Spinner.d.ts.map +10 -1
- package/dist/components/spinner/browser.js +16 -0
- package/dist/components/spinner/index.cjs +1 -0
- package/dist/components/spinner/index.d.ts +1 -3
- package/dist/components/spinner/index.d.ts.map +10 -1
- package/dist/components/spinner/index.js +4 -0
- package/dist/components/stack/Stack.d.ts +1 -23
- package/dist/components/stack/Stack.d.ts.map +10 -1
- package/dist/components/stack/browser.js +16 -0
- package/dist/components/stack/index.cjs +1 -0
- package/dist/components/stack/index.d.ts +1 -3
- package/dist/components/stack/index.d.ts.map +10 -1
- package/dist/components/stack/index.js +4 -0
- package/dist/components/switch/Switch.d.ts +1 -33
- package/dist/components/switch/Switch.d.ts.map +10 -1
- package/dist/components/switch/browser.js +203 -0
- package/dist/components/switch/index.cjs +1 -0
- package/dist/components/switch/index.d.ts +1 -3
- package/dist/components/switch/index.d.ts.map +10 -1
- package/dist/components/switch/index.js +191 -0
- package/dist/components/table/Table.d.ts +1 -11
- package/dist/components/table/Table.d.ts.map +10 -1
- package/dist/components/table/browser.js +16 -0
- package/dist/components/table/index.cjs +1 -0
- package/dist/components/table/index.d.ts +1 -3
- package/dist/components/table/index.d.ts.map +10 -1
- package/dist/components/table/index.js +4 -0
- package/dist/components/tabs/Tabs.d.ts +1 -20
- package/dist/components/tabs/Tabs.d.ts.map +10 -1
- package/dist/components/tabs/browser.js +251 -0
- package/dist/components/tabs/index.cjs +1 -0
- package/dist/components/tabs/index.d.ts +4 -9
- package/dist/components/tabs/index.d.ts.map +10 -1
- package/dist/components/tabs/index.js +239 -0
- package/dist/components/tags/Tags.d.ts +1 -82
- package/dist/components/tags/Tags.d.ts.map +10 -1
- package/dist/components/tags/browser.js +416 -0
- package/dist/components/tags/index.cjs +1 -0
- package/dist/components/tags/index.d.ts +1 -3
- package/dist/components/tags/index.d.ts.map +10 -1
- package/dist/components/tags/index.js +404 -0
- package/dist/components/text/Text.d.ts +1 -25
- package/dist/components/text/Text.d.ts.map +10 -1
- package/dist/components/text/browser.js +16 -0
- package/dist/components/text/index.cjs +1 -0
- package/dist/components/text/index.d.ts +1 -3
- package/dist/components/text/index.d.ts.map +10 -1
- package/dist/components/text/index.js +4 -0
- package/dist/components/time-picker/TimePicker.d.ts +1 -61
- package/dist/components/time-picker/TimePicker.d.ts.map +10 -1
- package/dist/components/time-picker/browser.js +366 -0
- package/dist/components/time-picker/index.cjs +1 -0
- package/dist/components/time-picker/index.d.ts +1 -3
- package/dist/components/time-picker/index.d.ts.map +10 -1
- package/dist/components/time-picker/index.js +354 -0
- package/dist/components/toast/Toast.d.ts +1 -21
- package/dist/components/toast/Toast.d.ts.map +10 -1
- package/dist/components/toast/browser.js +147 -0
- package/dist/components/toast/index.cjs +3 -0
- package/dist/components/toast/index.d.ts +3 -3
- package/dist/components/toast/index.d.ts.map +10 -1
- package/dist/components/toast/index.js +135 -0
- package/dist/confirm-action.css +3 -0
- package/dist/date-picker.css +3 -0
- package/dist/dropzone.css +3 -0
- package/dist/form.css +3 -0
- package/dist/grid.css +3 -0
- package/dist/icon.css +3 -0
- package/dist/icons/ai.svg +5 -6
- package/dist/icons/bank.svg +1 -1
- package/dist/icons/barcode.svg +1 -1
- package/dist/icons/basket.svg +1 -1
- package/dist/icons/building.svg +1 -1
- package/dist/icons/buildings.svg +1 -1
- package/dist/icons/calendar.svg +1 -1
- package/dist/icons/cash.svg +3 -0
- package/dist/icons/check.svg +1 -1
- package/dist/icons/close.svg +1 -1
- package/dist/icons/coupon.svg +3 -0
- package/dist/icons/delivery-location.svg +3 -0
- package/dist/icons/desktop.svg +3 -0
- package/dist/icons/dollar-sign.svg +1 -1
- package/dist/icons/edit.svg +1 -1
- package/dist/icons/gift.svg +3 -0
- package/dist/icons/grip-lines.svg +2 -2
- package/dist/icons/heart.svg +3 -0
- package/dist/icons/installments.svg +3 -0
- package/dist/icons/inventory.svg +3 -0
- package/dist/icons/invoice.svg +3 -0
- package/dist/icons/loyalty-points.svg +3 -0
- package/dist/icons/membership.svg +3 -0
- package/dist/icons/mobile.svg +3 -0
- package/dist/icons/order-tracking.svg +7 -0
- package/dist/icons/out-of-stock.svg +3 -0
- package/dist/icons/package.svg +3 -0
- package/dist/icons/percent-discount.svg +3 -0
- package/dist/icons/pickup.svg +3 -0
- package/dist/icons/plus.svg +1 -1
- package/dist/icons/price-label.svg +3 -0
- package/dist/icons/product-review.svg +3 -0
- package/dist/icons/receipt.svg +3 -0
- package/dist/icons/refund.svg +3 -0
- package/dist/icons/remove.svg +1 -1
- package/dist/icons/return.svg +3 -0
- package/dist/icons/sale-burst.svg +3 -0
- package/dist/icons/secure-checkout.svg +3 -0
- package/dist/icons/shopping-bag.svg +3 -0
- package/dist/icons/shopping-cart.svg +3 -0
- package/dist/icons/storefront.svg +3 -0
- package/dist/icons/support.svg +3 -0
- package/dist/icons/tablet.svg +3 -0
- package/dist/icons/wallet.svg +3 -0
- package/dist/icons/warehouse.svg +3 -0
- package/dist/index.cjs +83 -79
- package/dist/index.css +253 -0
- package/dist/index.d.ts +94 -91
- package/dist/index.d.ts.map +10 -1
- package/dist/index.js +10695 -10239
- package/dist/input.css +3 -0
- package/dist/link.css +3 -0
- package/dist/mintui-elements.d.ts +156 -0
- package/dist/mintui-elements.d.ts.map +10 -0
- package/dist/modal.css +3 -0
- package/dist/navigation.css +3 -0
- package/dist/off-canvas.css +3 -0
- package/dist/page.css +3 -0
- package/dist/popover.css +3 -0
- package/dist/resource-table.css +3 -0
- package/dist/search.css +3 -0
- package/dist/select.css +3 -0
- package/dist/side-navigation.css +3 -0
- package/dist/sortable.css +3 -0
- package/dist/spinner.css +3 -0
- package/dist/stack.css +3 -0
- package/dist/switch.css +3 -0
- package/dist/table.css +3 -0
- package/dist/tabs.css +3 -0
- package/dist/tags.css +3 -0
- package/dist/text.css +3 -0
- package/dist/theme.css +101 -0
- package/dist/time-picker.css +3 -0
- package/dist/toast.css +3 -0
- package/package.json +379 -30
- package/dist/components/bottom-navigation/BottomNavItem.d.ts +0 -14
- package/dist/components/bottom-navigation/BottomNavItem.d.ts.map +0 -1
- package/dist/components/choice/ChoiceOption.d.ts +0 -30
- package/dist/components/choice/ChoiceOption.d.ts.map +0 -1
- package/dist/components/confirm-action/ConfirmActionApi.d.ts +0 -17
- package/dist/components/confirm-action/ConfirmActionApi.d.ts.map +0 -1
- package/dist/components/icon/build-icons.d.ts +0 -2
- package/dist/components/icon/build-icons.d.ts.map +0 -1
- package/dist/components/icon/icons/ai.d.ts +0 -3
- package/dist/components/icon/icons/ai.d.ts.map +0 -1
- package/dist/components/icon/icons/archive.d.ts +0 -3
- package/dist/components/icon/icons/archive.d.ts.map +0 -1
- package/dist/components/icon/icons/arrow-down.d.ts +0 -3
- package/dist/components/icon/icons/arrow-down.d.ts.map +0 -1
- package/dist/components/icon/icons/arrow-left.d.ts +0 -3
- package/dist/components/icon/icons/arrow-left.d.ts.map +0 -1
- package/dist/components/icon/icons/arrow-right.d.ts +0 -3
- package/dist/components/icon/icons/arrow-right.d.ts.map +0 -1
- package/dist/components/icon/icons/arrow-up.d.ts +0 -3
- package/dist/components/icon/icons/arrow-up.d.ts.map +0 -1
- package/dist/components/icon/icons/attach.d.ts +0 -3
- package/dist/components/icon/icons/attach.d.ts.map +0 -1
- package/dist/components/icon/icons/bank.d.ts +0 -3
- package/dist/components/icon/icons/bank.d.ts.map +0 -1
- package/dist/components/icon/icons/barcode.d.ts +0 -3
- package/dist/components/icon/icons/barcode.d.ts.map +0 -1
- package/dist/components/icon/icons/basket.d.ts +0 -3
- package/dist/components/icon/icons/basket.d.ts.map +0 -1
- package/dist/components/icon/icons/bookmark.d.ts +0 -3
- package/dist/components/icon/icons/bookmark.d.ts.map +0 -1
- package/dist/components/icon/icons/building.d.ts +0 -3
- package/dist/components/icon/icons/building.d.ts.map +0 -1
- package/dist/components/icon/icons/buildings.d.ts +0 -3
- package/dist/components/icon/icons/buildings.d.ts.map +0 -1
- package/dist/components/icon/icons/bullhorn.d.ts +0 -3
- package/dist/components/icon/icons/bullhorn.d.ts.map +0 -1
- package/dist/components/icon/icons/calendar-day.d.ts +0 -3
- package/dist/components/icon/icons/calendar-day.d.ts.map +0 -1
- package/dist/components/icon/icons/calendar-empty.d.ts +0 -3
- package/dist/components/icon/icons/calendar-empty.d.ts.map +0 -1
- package/dist/components/icon/icons/calendar-week.d.ts +0 -3
- package/dist/components/icon/icons/calendar-week.d.ts.map +0 -1
- package/dist/components/icon/icons/calendar.d.ts +0 -3
- package/dist/components/icon/icons/calendar.d.ts.map +0 -1
- package/dist/components/icon/icons/caret-down.d.ts +0 -3
- package/dist/components/icon/icons/caret-down.d.ts.map +0 -1
- package/dist/components/icon/icons/caret-left.d.ts +0 -3
- package/dist/components/icon/icons/caret-left.d.ts.map +0 -1
- package/dist/components/icon/icons/caret-right.d.ts +0 -3
- package/dist/components/icon/icons/caret-right.d.ts.map +0 -1
- package/dist/components/icon/icons/caret-up.d.ts +0 -3
- package/dist/components/icon/icons/caret-up.d.ts.map +0 -1
- package/dist/components/icon/icons/chart-bar.d.ts +0 -3
- package/dist/components/icon/icons/chart-bar.d.ts.map +0 -1
- package/dist/components/icon/icons/chart-line.d.ts +0 -3
- package/dist/components/icon/icons/chart-line.d.ts.map +0 -1
- package/dist/components/icon/icons/chat.d.ts +0 -3
- package/dist/components/icon/icons/chat.d.ts.map +0 -1
- package/dist/components/icon/icons/check.d.ts +0 -3
- package/dist/components/icon/icons/check.d.ts.map +0 -1
- package/dist/components/icon/icons/clock.d.ts +0 -3
- package/dist/components/icon/icons/clock.d.ts.map +0 -1
- package/dist/components/icon/icons/close.d.ts +0 -3
- package/dist/components/icon/icons/close.d.ts.map +0 -1
- package/dist/components/icon/icons/copy.d.ts +0 -3
- package/dist/components/icon/icons/copy.d.ts.map +0 -1
- package/dist/components/icon/icons/credit-card.d.ts +0 -3
- package/dist/components/icon/icons/credit-card.d.ts.map +0 -1
- package/dist/components/icon/icons/delete.d.ts +0 -3
- package/dist/components/icon/icons/delete.d.ts.map +0 -1
- package/dist/components/icon/icons/desktop-screen.d.ts +0 -3
- package/dist/components/icon/icons/desktop-screen.d.ts.map +0 -1
- package/dist/components/icon/icons/documentation.d.ts +0 -3
- package/dist/components/icon/icons/documentation.d.ts.map +0 -1
- package/dist/components/icon/icons/dollar-sign.d.ts +0 -3
- package/dist/components/icon/icons/dollar-sign.d.ts.map +0 -1
- package/dist/components/icon/icons/download.d.ts +0 -3
- package/dist/components/icon/icons/download.d.ts.map +0 -1
- package/dist/components/icon/icons/duplicate.d.ts +0 -3
- package/dist/components/icon/icons/duplicate.d.ts.map +0 -1
- package/dist/components/icon/icons/edit.d.ts +0 -3
- package/dist/components/icon/icons/edit.d.ts.map +0 -1
- package/dist/components/icon/icons/ellipsis.d.ts +0 -3
- package/dist/components/icon/icons/ellipsis.d.ts.map +0 -1
- package/dist/components/icon/icons/error.d.ts +0 -3
- package/dist/components/icon/icons/error.d.ts.map +0 -1
- package/dist/components/icon/icons/external-link.d.ts +0 -3
- package/dist/components/icon/icons/external-link.d.ts.map +0 -1
- package/dist/components/icon/icons/eye.d.ts +0 -3
- package/dist/components/icon/icons/eye.d.ts.map +0 -1
- package/dist/components/icon/icons/file.d.ts +0 -3
- package/dist/components/icon/icons/file.d.ts.map +0 -1
- package/dist/components/icon/icons/filter.d.ts +0 -3
- package/dist/components/icon/icons/filter.d.ts.map +0 -1
- package/dist/components/icon/icons/folder.d.ts +0 -3
- package/dist/components/icon/icons/folder.d.ts.map +0 -1
- package/dist/components/icon/icons/gavel.d.ts +0 -3
- package/dist/components/icon/icons/gavel.d.ts.map +0 -1
- package/dist/components/icon/icons/globe.d.ts +0 -3
- package/dist/components/icon/icons/globe.d.ts.map +0 -1
- package/dist/components/icon/icons/grid.d.ts +0 -3
- package/dist/components/icon/icons/grid.d.ts.map +0 -1
- package/dist/components/icon/icons/grip-lines.d.ts +0 -3
- package/dist/components/icon/icons/grip-lines.d.ts.map +0 -1
- package/dist/components/icon/icons/help.d.ts +0 -3
- package/dist/components/icon/icons/help.d.ts.map +0 -1
- package/dist/components/icon/icons/home.d.ts +0 -3
- package/dist/components/icon/icons/home.d.ts.map +0 -1
- package/dist/components/icon/icons/image.d.ts +0 -3
- package/dist/components/icon/icons/image.d.ts.map +0 -1
- package/dist/components/icon/icons/index.cjs +0 -34
- package/dist/components/icon/icons/index.d.ts +0 -92
- package/dist/components/icon/icons/index.d.ts.map +0 -1
- package/dist/components/icon/icons/index.js +0 -752
- package/dist/components/icon/icons/info.d.ts +0 -3
- package/dist/components/icon/icons/info.d.ts.map +0 -1
- package/dist/components/icon/icons/language.d.ts +0 -3
- package/dist/components/icon/icons/language.d.ts.map +0 -1
- package/dist/components/icon/icons/line-chart.d.ts +0 -3
- package/dist/components/icon/icons/line-chart.d.ts.map +0 -1
- package/dist/components/icon/icons/link.d.ts +0 -3
- package/dist/components/icon/icons/link.d.ts.map +0 -1
- package/dist/components/icon/icons/list.d.ts +0 -3
- package/dist/components/icon/icons/list.d.ts.map +0 -1
- package/dist/components/icon/icons/location.d.ts +0 -3
- package/dist/components/icon/icons/location.d.ts.map +0 -1
- package/dist/components/icon/icons/lock.d.ts +0 -3
- package/dist/components/icon/icons/lock.d.ts.map +0 -1
- package/dist/components/icon/icons/login.d.ts +0 -3
- package/dist/components/icon/icons/login.d.ts.map +0 -1
- package/dist/components/icon/icons/logout.d.ts +0 -3
- package/dist/components/icon/icons/logout.d.ts.map +0 -1
- package/dist/components/icon/icons/mail.d.ts +0 -3
- package/dist/components/icon/icons/mail.d.ts.map +0 -1
- package/dist/components/icon/icons/map.d.ts +0 -3
- package/dist/components/icon/icons/map.d.ts.map +0 -1
- package/dist/components/icon/icons/menu.d.ts +0 -3
- package/dist/components/icon/icons/menu.d.ts.map +0 -1
- package/dist/components/icon/icons/moon.d.ts +0 -3
- package/dist/components/icon/icons/moon.d.ts.map +0 -1
- package/dist/components/icon/icons/notifications.d.ts +0 -3
- package/dist/components/icon/icons/notifications.d.ts.map +0 -1
- package/dist/components/icon/icons/paste.d.ts +0 -3
- package/dist/components/icon/icons/paste.d.ts.map +0 -1
- package/dist/components/icon/icons/pin.d.ts +0 -3
- package/dist/components/icon/icons/pin.d.ts.map +0 -1
- package/dist/components/icon/icons/plus.d.ts +0 -3
- package/dist/components/icon/icons/plus.d.ts.map +0 -1
- package/dist/components/icon/icons/print.d.ts +0 -3
- package/dist/components/icon/icons/print.d.ts.map +0 -1
- package/dist/components/icon/icons/refresh.d.ts +0 -3
- package/dist/components/icon/icons/refresh.d.ts.map +0 -1
- package/dist/components/icon/icons/remove.d.ts +0 -3
- package/dist/components/icon/icons/remove.d.ts.map +0 -1
- package/dist/components/icon/icons/save.d.ts +0 -3
- package/dist/components/icon/icons/save.d.ts.map +0 -1
- package/dist/components/icon/icons/search.d.ts +0 -3
- package/dist/components/icon/icons/search.d.ts.map +0 -1
- package/dist/components/icon/icons/settings.d.ts +0 -3
- package/dist/components/icon/icons/settings.d.ts.map +0 -1
- package/dist/components/icon/icons/share.d.ts +0 -3
- package/dist/components/icon/icons/share.d.ts.map +0 -1
- package/dist/components/icon/icons/sort-arrows.d.ts +0 -3
- package/dist/components/icon/icons/sort-arrows.d.ts.map +0 -1
- package/dist/components/icon/icons/sort.d.ts +0 -3
- package/dist/components/icon/icons/sort.d.ts.map +0 -1
- package/dist/components/icon/icons/star.d.ts +0 -3
- package/dist/components/icon/icons/star.d.ts.map +0 -1
- package/dist/components/icon/icons/success.d.ts +0 -3
- package/dist/components/icon/icons/success.d.ts.map +0 -1
- package/dist/components/icon/icons/sun.d.ts +0 -3
- package/dist/components/icon/icons/sun.d.ts.map +0 -1
- package/dist/components/icon/icons/table.d.ts +0 -3
- package/dist/components/icon/icons/table.d.ts.map +0 -1
- package/dist/components/icon/icons/tag.d.ts +0 -3
- package/dist/components/icon/icons/tag.d.ts.map +0 -1
- package/dist/components/icon/icons/trash.d.ts +0 -3
- package/dist/components/icon/icons/trash.d.ts.map +0 -1
- package/dist/components/icon/icons/truck.d.ts +0 -3
- package/dist/components/icon/icons/truck.d.ts.map +0 -1
- package/dist/components/icon/icons/unlock.d.ts +0 -3
- package/dist/components/icon/icons/unlock.d.ts.map +0 -1
- package/dist/components/icon/icons/upload.d.ts +0 -3
- package/dist/components/icon/icons/upload.d.ts.map +0 -1
- package/dist/components/icon/icons/user-add.d.ts +0 -3
- package/dist/components/icon/icons/user-add.d.ts.map +0 -1
- package/dist/components/icon/icons/user.d.ts +0 -3
- package/dist/components/icon/icons/user.d.ts.map +0 -1
- package/dist/components/icon/icons/users.d.ts +0 -3
- package/dist/components/icon/icons/users.d.ts.map +0 -1
- package/dist/components/icon/icons/video.d.ts +0 -3
- package/dist/components/icon/icons/video.d.ts.map +0 -1
- package/dist/components/icon/icons/warning.d.ts +0 -3
- package/dist/components/icon/icons/warning.d.ts.map +0 -1
- package/dist/components/icon/registry.d.ts +0 -15
- package/dist/components/icon/registry.d.ts.map +0 -1
- package/dist/components/resource-table/ResourceTableContextMenu.d.ts +0 -40
- package/dist/components/resource-table/ResourceTableContextMenu.d.ts.map +0 -1
- package/dist/components/side-navigation/SideNavigationActionHeader.d.ts +0 -2
- package/dist/components/side-navigation/SideNavigationActionHeader.d.ts.map +0 -1
- package/dist/components/side-navigation/SideNavigationActionLinks.d.ts +0 -9
- package/dist/components/side-navigation/SideNavigationActionLinks.d.ts.map +0 -1
- package/dist/components/side-navigation/SideNavigationActionMenu.d.ts +0 -26
- package/dist/components/side-navigation/SideNavigationActionMenu.d.ts.map +0 -1
- package/dist/components/side-navigation/SideNavigationLink.d.ts +0 -38
- package/dist/components/side-navigation/SideNavigationLink.d.ts.map +0 -1
- package/dist/components/side-navigation/SideNavigationLinks.d.ts +0 -38
- package/dist/components/side-navigation/SideNavigationLinks.d.ts.map +0 -1
- package/dist/components/tabs/Tab.d.ts +0 -19
- package/dist/components/tabs/Tab.d.ts.map +0 -1
- package/dist/components/tabs/TabContent.d.ts +0 -13
- package/dist/components/tabs/TabContent.d.ts.map +0 -1
- package/dist/components/tabs/TabList.d.ts +0 -12
- package/dist/components/tabs/TabList.d.ts.map +0 -1
- package/dist/components/toast/ToastApi.d.ts +0 -21
- package/dist/components/toast/ToastApi.d.ts.map +0 -1
- package/dist/components/top-navigation/TopNavigation.d.ts +0 -65
- package/dist/components/top-navigation/TopNavigation.d.ts.map +0 -1
- package/dist/components/top-navigation/index.d.ts +0 -4
- package/dist/components/top-navigation/index.d.ts.map +0 -1
- package/dist/icons/truck.svg +0 -13
- package/dist/search-CM-OgatF.js +0 -179
- package/dist/search-C_vLUsm7.cjs +0 -1
- package/dist/styles.css +0 -3
- package/tailwind.preset.cjs +0 -75
- package/tailwind.preset.js +0 -97
|
@@ -1,37 +1 @@
|
|
|
1
|
-
|
|
2
|
-
declare class MintSelect extends HTMLElement {
|
|
3
|
-
static get observedAttributes(): string[];
|
|
4
|
-
private static _lightDomOptionHideStylesInjected;
|
|
5
|
-
private static _ensureLightDomOptionHideStyles;
|
|
6
|
-
private _select;
|
|
7
|
-
private _wrapper;
|
|
8
|
-
private _caretUpIcon;
|
|
9
|
-
private _caretDownIcon;
|
|
10
|
-
private _changeHandler;
|
|
11
|
-
private _optionObserver;
|
|
12
|
-
private _childrenObserver;
|
|
13
|
-
private _hostOptionsObserverRaf;
|
|
14
|
-
constructor();
|
|
15
|
-
connectedCallback(): void;
|
|
16
|
-
disconnectedCallback(): void;
|
|
17
|
-
isLoading(): boolean;
|
|
18
|
-
attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
|
|
19
|
-
getName(): string;
|
|
20
|
-
getValue(): string;
|
|
21
|
-
setValue(value: any): void;
|
|
22
|
-
get value(): string;
|
|
23
|
-
set value(newValue: any);
|
|
24
|
-
isDisabled(): boolean;
|
|
25
|
-
isMultiple(): boolean;
|
|
26
|
-
hasError(): boolean;
|
|
27
|
-
getErrorMessage(): string;
|
|
28
|
-
getId(): string;
|
|
29
|
-
getLabel(): string;
|
|
30
|
-
getInfo(): string;
|
|
31
|
-
getSelectClasses(): string;
|
|
32
|
-
render(): void;
|
|
33
|
-
private _renderSkeleton;
|
|
34
|
-
private _renderErrorState;
|
|
35
|
-
}
|
|
36
|
-
export default MintSelect;
|
|
37
|
-
//# sourceMappingURL=Select.d.ts.map
|
|
1
|
+
export { MintSelect as default, MintSelect } from '../../mintui-elements'
|
|
@@ -1 +1,10 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "Select.d.ts",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"Select.d.ts"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": "AAAA"
|
|
10
|
+
}
|
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
|
|
2
|
+
const __mintLoadStyle = (key, url) => {
|
|
3
|
+
if (typeof document === 'undefined') return
|
|
4
|
+
const href = new URL(url, import.meta.url).href
|
|
5
|
+
if ([...document.querySelectorAll('link[rel="stylesheet"]')].some(link => link.href === href)) return
|
|
6
|
+
if (document.querySelector('style[data-mint-ui-style="' + key + '"]') || document.querySelector('link[data-mint-ui-style="' + key + '"]')) return
|
|
7
|
+
const link = document.createElement('link')
|
|
8
|
+
link.rel = 'stylesheet'
|
|
9
|
+
link.href = href
|
|
10
|
+
link.dataset.mintUiStyle = key
|
|
11
|
+
document.head.append(link)
|
|
12
|
+
}
|
|
13
|
+
__mintLoadStyle('theme', '../../theme.css')
|
|
14
|
+
__mintLoadStyle('icon', '../../icon.css')
|
|
15
|
+
__mintLoadStyle('select', '../../select.css')
|
|
16
|
+
import "../chunks/icon-gQAtsERy.js";
|
|
17
|
+
import { t as e } from "../chunks/register-element-BFYmIynH.js";
|
|
18
|
+
import "../chunks/icon-C0OLmjDY.js";
|
|
19
|
+
import "../chunks/caret-up-D_6oa7o1.js";
|
|
20
|
+
import "../chunks/caret-down-Ch6IfR7r.js";
|
|
21
|
+
//#region src/components/select/Select.ts
|
|
22
|
+
var t = "data-mint-select-part", n = class extends HTMLElement {
|
|
23
|
+
static get observedAttributes() {
|
|
24
|
+
return [
|
|
25
|
+
"name",
|
|
26
|
+
"value",
|
|
27
|
+
"disabled",
|
|
28
|
+
"id",
|
|
29
|
+
"required",
|
|
30
|
+
"label",
|
|
31
|
+
"info",
|
|
32
|
+
"error",
|
|
33
|
+
"error-message",
|
|
34
|
+
"multiple",
|
|
35
|
+
"loading",
|
|
36
|
+
"aria-label",
|
|
37
|
+
"aria-labelledby",
|
|
38
|
+
"aria-describedby"
|
|
39
|
+
];
|
|
40
|
+
}
|
|
41
|
+
constructor() {
|
|
42
|
+
super(), this._select = null, this._wrapper = null, this._caretUpIcon = null, this._caretDownIcon = null, this._changeHandler = null, this._optionObserver = null, this._childrenObserver = null, this._hostOptionsObserverRaf = null, this._generatedControlId = `mint-select-${Math.random().toString(36).slice(2, 10)}`;
|
|
43
|
+
}
|
|
44
|
+
connectedCallback() {
|
|
45
|
+
this.classList.add("mint-select-host"), this.getLabel() || console.error("mint-select: The \"label\" attribute is required. Please provide a label for the select."), this.render(), this._childrenObserver && this._childrenObserver.disconnect(), this._childrenObserver = new MutationObserver((e) => {
|
|
46
|
+
if (e.some((e) => {
|
|
47
|
+
let t = e.target;
|
|
48
|
+
if (this._select && (t === this._select || this._select.contains(t))) return !1;
|
|
49
|
+
let n = Array.from(e.addedNodes).some((e) => e.nodeType === Node.ELEMENT_NODE && (e.tagName === "OPTION" || e.tagName === "OPTGROUP")) || Array.from(e.removedNodes).some((e) => e.nodeType === Node.ELEMENT_NODE && (e.tagName === "OPTION" || e.tagName === "OPTGROUP")), r = e.type === "attributes" && e.target.nodeType === Node.ELEMENT_NODE && (e.target.tagName === "OPTION" || e.target.tagName === "OPTGROUP");
|
|
50
|
+
return n || r;
|
|
51
|
+
})) {
|
|
52
|
+
if (this._hostOptionsObserverRaf !== null) return;
|
|
53
|
+
this._hostOptionsObserverRaf = requestAnimationFrame(() => {
|
|
54
|
+
this._hostOptionsObserverRaf = null, this.isConnected && this.render();
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
}), this._childrenObserver.observe(this, {
|
|
58
|
+
childList: !0,
|
|
59
|
+
subtree: !0,
|
|
60
|
+
attributes: !0,
|
|
61
|
+
attributeFilter: [
|
|
62
|
+
"value",
|
|
63
|
+
"selected",
|
|
64
|
+
"disabled"
|
|
65
|
+
]
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
disconnectedCallback() {
|
|
69
|
+
this._select && this._changeHandler && (this._select.removeEventListener("change", this._changeHandler), this._changeHandler = null), this._optionObserver &&= (this._optionObserver.disconnect(), null), this._childrenObserver &&= (this._childrenObserver.disconnect(), null), this._hostOptionsObserverRaf !== null && (cancelAnimationFrame(this._hostOptionsObserverRaf), this._hostOptionsObserverRaf = null);
|
|
70
|
+
}
|
|
71
|
+
isLoading() {
|
|
72
|
+
let e = this.getAttribute("loading");
|
|
73
|
+
return e !== null && e !== "false";
|
|
74
|
+
}
|
|
75
|
+
attributeChangedCallback(e, t, n) {
|
|
76
|
+
if (t !== n) {
|
|
77
|
+
if (e === "error" || e === "error-message") {
|
|
78
|
+
this._renderErrorState(), this._select && (this._select.className = this.getSelectClasses(), this._select.setAttribute("aria-invalid", this.hasError() ? "true" : "false"), this._syncSelectAccessibility());
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
if (e === "loading") {
|
|
82
|
+
this.render();
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
if (e === "value") {
|
|
86
|
+
if (this._select) if (this.isMultiple()) {
|
|
87
|
+
let e = [];
|
|
88
|
+
try {
|
|
89
|
+
let t = n ? JSON.parse(n) : [];
|
|
90
|
+
e = Array.isArray(t) ? t.map((e) => String(e)) : [];
|
|
91
|
+
} catch {
|
|
92
|
+
e = n ? [String(n)] : [];
|
|
93
|
+
}
|
|
94
|
+
Array.from(this._select.options).forEach((t) => {
|
|
95
|
+
t.selected = e.includes(t.value);
|
|
96
|
+
});
|
|
97
|
+
} else this._select.value = n || "";
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
this.render();
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
getName() {
|
|
104
|
+
return this.getAttribute("name") || "";
|
|
105
|
+
}
|
|
106
|
+
getValue() {
|
|
107
|
+
if (this.isMultiple() && this._select) {
|
|
108
|
+
let e = Array.from(this._select.selectedOptions).map((e) => e.value);
|
|
109
|
+
return JSON.stringify(e);
|
|
110
|
+
}
|
|
111
|
+
return this.hasAttribute("value") ? this.getAttribute("value") || "" : this._select ? this._select.value : "";
|
|
112
|
+
}
|
|
113
|
+
setValue(e) {
|
|
114
|
+
if (this.isMultiple()) {
|
|
115
|
+
let t = Array.isArray(e) ? e.map((e) => String(e)) : e == null || e === "" ? [] : [String(e)];
|
|
116
|
+
this.setAttribute("value", JSON.stringify(t)), this._select && Array.from(this._select.options).forEach((e) => {
|
|
117
|
+
e.selected = t.includes(e.value);
|
|
118
|
+
});
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
let t = e == null ? "" : String(e);
|
|
122
|
+
this.setAttribute("value", t), this._select && (this._select.value = t);
|
|
123
|
+
}
|
|
124
|
+
get value() {
|
|
125
|
+
try {
|
|
126
|
+
return this.getValue() || "";
|
|
127
|
+
} catch {
|
|
128
|
+
return "";
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
set value(e) {
|
|
132
|
+
try {
|
|
133
|
+
if (this.isMultiple()) {
|
|
134
|
+
this.setValue(e);
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
let t = e || "";
|
|
138
|
+
(this.getAttribute("value") || "") !== t && this.setAttribute("value", t), this._select && requestAnimationFrame(() => {
|
|
139
|
+
this._select && (t === "" || Array.from(this._select.options).some((e) => e.value === t)) && this._select.value !== t && (this._select.value = t);
|
|
140
|
+
});
|
|
141
|
+
} catch {}
|
|
142
|
+
}
|
|
143
|
+
isDisabled() {
|
|
144
|
+
let e = this.getAttribute("disabled");
|
|
145
|
+
return e !== null && e !== "false";
|
|
146
|
+
}
|
|
147
|
+
isMultiple() {
|
|
148
|
+
let e = this.getAttribute("multiple");
|
|
149
|
+
return e !== null && e !== "false";
|
|
150
|
+
}
|
|
151
|
+
isRequired() {
|
|
152
|
+
let e = this.getAttribute("required");
|
|
153
|
+
return e !== null && e !== "false";
|
|
154
|
+
}
|
|
155
|
+
hasError() {
|
|
156
|
+
return this.getAttribute("error") === "true";
|
|
157
|
+
}
|
|
158
|
+
getErrorMessage() {
|
|
159
|
+
return this.getAttribute("error-message") || "";
|
|
160
|
+
}
|
|
161
|
+
getId() {
|
|
162
|
+
return this.getAttribute("id") || "";
|
|
163
|
+
}
|
|
164
|
+
getLabel() {
|
|
165
|
+
return this.getAttribute("label") || "";
|
|
166
|
+
}
|
|
167
|
+
getInfo() {
|
|
168
|
+
return this.getAttribute("info") || "";
|
|
169
|
+
}
|
|
170
|
+
getSelectClasses() {
|
|
171
|
+
return [
|
|
172
|
+
"mint-select-control",
|
|
173
|
+
this.isMultiple() ? "is-multiple" : "",
|
|
174
|
+
this.hasError() ? "has-error" : ""
|
|
175
|
+
].filter(Boolean).join(" ");
|
|
176
|
+
}
|
|
177
|
+
render() {
|
|
178
|
+
this._hostOptionsObserverRaf !== null && (cancelAnimationFrame(this._hostOptionsObserverRaf), this._hostOptionsObserverRaf = null);
|
|
179
|
+
let e = this.isLoading(), n = this.isMultiple(), r = this.getValue(), i = [];
|
|
180
|
+
this._select && Array.from(this._select.children).forEach((e) => {
|
|
181
|
+
(e.tagName === "OPTION" || e.tagName === "OPTGROUP") && i.push(e.cloneNode(!0));
|
|
182
|
+
}), Array.from(this.children).forEach((e) => {
|
|
183
|
+
e instanceof HTMLElement && e.hasAttribute(t) && e.remove();
|
|
184
|
+
}), this._wrapper = null, this._select = null;
|
|
185
|
+
let a = Array.from(this.children).filter((e) => e.tagName === "OPTION" || e.tagName === "OPTGROUP").map((e) => e.cloneNode(!0)), o = this.getLabel(), s = this.getInfo(), c = this.getId() || this._generatedControlId, l = this.getName(), u = this.isDisabled(), d = this.hasError();
|
|
186
|
+
if (o) {
|
|
187
|
+
let e = document.createElement("label");
|
|
188
|
+
e.setAttribute(t, "label"), e.className = "mint-select-label", c && e.setAttribute("for", c);
|
|
189
|
+
let n = document.createTextNode(o);
|
|
190
|
+
e.appendChild(n), this.appendChild(e);
|
|
191
|
+
}
|
|
192
|
+
this._wrapper = document.createElement("div"), this._wrapper.setAttribute(t, "wrapper"), this._wrapper.className = "mint-select-control-wrap", this.appendChild(this._wrapper), this._select = document.createElement("select"), this._select.className = this.getSelectClasses(), c && (this._select.id = c), l && (this._select.name = l), u && (this._select.disabled = !0), this._select.required = this.isRequired(), n && (this._select.multiple = !0), this._select.setAttribute("aria-invalid", d ? "true" : "false");
|
|
193
|
+
let f = this.getAttribute("aria-label")?.trim(), p = this.getAttribute("aria-labelledby")?.trim();
|
|
194
|
+
p ? this._select.setAttribute("aria-labelledby", p) : o ? this._select.removeAttribute("aria-label") : this._select.setAttribute("aria-label", f || "Select an option");
|
|
195
|
+
let m = a.length > 0 ? a : i;
|
|
196
|
+
if (m.length > 0 && m.forEach((e) => {
|
|
197
|
+
this._select.appendChild(e);
|
|
198
|
+
}), this._select.options.length === 0) {
|
|
199
|
+
let e = document.createElement("option");
|
|
200
|
+
e.value = "", e.textContent = "Select an option", e.disabled = !0, e.selected = !0, this._select.appendChild(e);
|
|
201
|
+
}
|
|
202
|
+
if (n) {
|
|
203
|
+
let e = [];
|
|
204
|
+
try {
|
|
205
|
+
let t = r ? JSON.parse(r) : [];
|
|
206
|
+
e = Array.isArray(t) ? t.map((e) => String(e)) : [];
|
|
207
|
+
} catch {
|
|
208
|
+
e = r ? [String(r)] : [];
|
|
209
|
+
}
|
|
210
|
+
Array.from(this._select.options).forEach((t) => {
|
|
211
|
+
t.selected = e.includes(t.value);
|
|
212
|
+
});
|
|
213
|
+
} else this._select.value = r || "";
|
|
214
|
+
if (this._changeHandler && this._select && this._select.removeEventListener("change", this._changeHandler), this._changeHandler = (e) => {
|
|
215
|
+
let t = e.target, r = n ? Array.from(t.selectedOptions).map((e) => e.value) : t.value, i = n ? JSON.stringify(r) : String(r || "");
|
|
216
|
+
(this.getAttribute("value") || "") !== i && (i ? this.setAttribute("value", i) : this.removeAttribute("value"));
|
|
217
|
+
let a = new Event("input", {
|
|
218
|
+
bubbles: !0,
|
|
219
|
+
cancelable: !0,
|
|
220
|
+
composed: !0
|
|
221
|
+
});
|
|
222
|
+
this.dispatchEvent(a), this.dispatchEvent(new CustomEvent("input", {
|
|
223
|
+
detail: { value: r },
|
|
224
|
+
bubbles: !0,
|
|
225
|
+
cancelable: !0,
|
|
226
|
+
composed: !0
|
|
227
|
+
})), this.dispatchEvent(new CustomEvent("change", {
|
|
228
|
+
detail: { value: r },
|
|
229
|
+
bubbles: !0,
|
|
230
|
+
cancelable: !0,
|
|
231
|
+
composed: !0
|
|
232
|
+
}));
|
|
233
|
+
}, this._select.addEventListener("change", this._changeHandler), this._optionObserver && this._optionObserver.disconnect(), this._optionObserver = new MutationObserver(() => {
|
|
234
|
+
let e = this.getAttribute("value") || this.value || "";
|
|
235
|
+
this._select && e && requestAnimationFrame(() => {
|
|
236
|
+
if (this._select) if (n) {
|
|
237
|
+
let t = [];
|
|
238
|
+
try {
|
|
239
|
+
let n = JSON.parse(e);
|
|
240
|
+
t = Array.isArray(n) ? n.map((e) => String(e)) : [];
|
|
241
|
+
} catch {
|
|
242
|
+
t = [String(e)];
|
|
243
|
+
}
|
|
244
|
+
Array.from(this._select.options).forEach((e) => {
|
|
245
|
+
e.selected = t.includes(e.value);
|
|
246
|
+
});
|
|
247
|
+
} else Array.from(this._select.options).some((t) => t.value === e) && this._select.value !== e && (this._select.value = e);
|
|
248
|
+
});
|
|
249
|
+
}), this._optionObserver.observe(this._select, {
|
|
250
|
+
childList: !0,
|
|
251
|
+
subtree: !0
|
|
252
|
+
}), this._wrapper.appendChild(this._select), n) this._caretUpIcon = null, this._caretDownIcon = null;
|
|
253
|
+
else {
|
|
254
|
+
let e = document.createElement("div");
|
|
255
|
+
e.className = "mint-select-caret", this._caretUpIcon = document.createElement("mint-icon"), this._caretUpIcon.setAttribute("name", "caret-up"), this._caretUpIcon.className = "mint-select-caret-up", this._caretUpIcon.setAttribute("aria-hidden", "true"), e.appendChild(this._caretUpIcon), this._caretDownIcon = document.createElement("mint-icon"), this._caretDownIcon.setAttribute("name", "caret-down"), this._caretDownIcon.className = "mint-select-caret-down", this._caretDownIcon.setAttribute("aria-hidden", "true"), e.appendChild(this._caretDownIcon), this._wrapper.appendChild(e);
|
|
256
|
+
}
|
|
257
|
+
if (s) {
|
|
258
|
+
let e = document.createElement("div");
|
|
259
|
+
e.setAttribute(t, "info"), e.className = "mint-select-info", e.textContent = s, this.appendChild(e);
|
|
260
|
+
}
|
|
261
|
+
this._renderErrorState(), this._syncSelectAccessibility(), this._renderSkeleton(e);
|
|
262
|
+
}
|
|
263
|
+
_renderSkeleton(e) {
|
|
264
|
+
let t = this.querySelector(".mint-select-skeleton-container"), n = this._wrapper;
|
|
265
|
+
if (e) {
|
|
266
|
+
t || (t = document.createElement("div"), t.className = "mint-select-skeleton-container", t.setAttribute("aria-hidden", "true"), n ? n.appendChild(t) : this.appendChild(t));
|
|
267
|
+
let e = t.querySelector(".mint-select-skeleton");
|
|
268
|
+
e || (e = document.createElement("div"), t.appendChild(e));
|
|
269
|
+
let r = this.isMultiple();
|
|
270
|
+
e.classList.toggle("is-multiple", r), e.style.height = r ? "5rem" : "2rem", t.style.display = "block", this._select && (this._select.style.opacity = "0", this._select.style.pointerEvents = "none", this._select.setAttribute("aria-busy", "true"));
|
|
271
|
+
} else t && (t.style.display = "none"), this._select && (this._select.style.opacity = "1", this._select.style.pointerEvents = "auto", this._select.removeAttribute("aria-busy"));
|
|
272
|
+
}
|
|
273
|
+
_renderErrorState() {
|
|
274
|
+
let e = this.hasError(), n = this.getErrorMessage(), r = this.querySelector(".mint-select-error");
|
|
275
|
+
e && n ? (r ? r.hasAttribute(t) || r.setAttribute(t, "error") : (r = document.createElement("div"), r.setAttribute(t, "error"), r.className = "mint-select-error", this.appendChild(r)), r.textContent = n) : r && r.remove();
|
|
276
|
+
}
|
|
277
|
+
_syncSelectAccessibility() {
|
|
278
|
+
if (!this._select) return;
|
|
279
|
+
let e = this._select.id || this._generatedControlId, n = (this.getAttribute("aria-describedby") || "").split(/\s+/).filter(Boolean), r = this.querySelector(`[${t}="info"]`), i = this.querySelector(".mint-select-error");
|
|
280
|
+
r && (r.id = `${e}-info`, n.push(r.id)), i && (i.id = `${e}-error`, n.push(i.id)), n.length ? this._select.setAttribute("aria-describedby", Array.from(new Set(n)).join(" ")) : this._select.removeAttribute("aria-describedby");
|
|
281
|
+
}
|
|
282
|
+
};
|
|
283
|
+
customElements.get("mint-select") || e("mint-select", n);
|
|
284
|
+
//#endregion
|
|
285
|
+
export { n as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require(`../chunks/icon-dG8sLTBn.js`);const e=require(`../chunks/register-element-tCL_F1YI.js`);require(`../chunks/icon-CyzR9aVl.js`),require(`../chunks/caret-up-3XCuTXSE.js`),require(`../chunks/caret-down-BN9cl4o4.js`);var t=`data-mint-select-part`,n=class extends HTMLElement{static get observedAttributes(){return[`name`,`value`,`disabled`,`id`,`required`,`label`,`info`,`error`,`error-message`,`multiple`,`loading`,`aria-label`,`aria-labelledby`,`aria-describedby`]}constructor(){super(),this._select=null,this._wrapper=null,this._caretUpIcon=null,this._caretDownIcon=null,this._changeHandler=null,this._optionObserver=null,this._childrenObserver=null,this._hostOptionsObserverRaf=null,this._generatedControlId=`mint-select-${Math.random().toString(36).slice(2,10)}`}connectedCallback(){this.classList.add(`mint-select-host`),this.getLabel()||console.error(`mint-select: The "label" attribute is required. Please provide a label for the select.`),this.render(),this._childrenObserver&&this._childrenObserver.disconnect(),this._childrenObserver=new MutationObserver(e=>{if(e.some(e=>{let t=e.target;if(this._select&&(t===this._select||this._select.contains(t)))return!1;let n=Array.from(e.addedNodes).some(e=>e.nodeType===Node.ELEMENT_NODE&&(e.tagName===`OPTION`||e.tagName===`OPTGROUP`))||Array.from(e.removedNodes).some(e=>e.nodeType===Node.ELEMENT_NODE&&(e.tagName===`OPTION`||e.tagName===`OPTGROUP`)),r=e.type===`attributes`&&e.target.nodeType===Node.ELEMENT_NODE&&(e.target.tagName===`OPTION`||e.target.tagName===`OPTGROUP`);return n||r})){if(this._hostOptionsObserverRaf!==null)return;this._hostOptionsObserverRaf=requestAnimationFrame(()=>{this._hostOptionsObserverRaf=null,this.isConnected&&this.render()})}}),this._childrenObserver.observe(this,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`value`,`selected`,`disabled`]})}disconnectedCallback(){this._select&&this._changeHandler&&(this._select.removeEventListener(`change`,this._changeHandler),this._changeHandler=null),this._optionObserver&&=(this._optionObserver.disconnect(),null),this._childrenObserver&&=(this._childrenObserver.disconnect(),null),this._hostOptionsObserverRaf!==null&&(cancelAnimationFrame(this._hostOptionsObserverRaf),this._hostOptionsObserverRaf=null)}isLoading(){let e=this.getAttribute(`loading`);return e!==null&&e!==`false`}attributeChangedCallback(e,t,n){if(t!==n){if(e===`error`||e===`error-message`){this._renderErrorState(),this._select&&(this._select.className=this.getSelectClasses(),this._select.setAttribute(`aria-invalid`,this.hasError()?`true`:`false`),this._syncSelectAccessibility());return}if(e===`loading`){this.render();return}if(e===`value`){if(this._select)if(this.isMultiple()){let e=[];try{let t=n?JSON.parse(n):[];e=Array.isArray(t)?t.map(e=>String(e)):[]}catch{e=n?[String(n)]:[]}Array.from(this._select.options).forEach(t=>{t.selected=e.includes(t.value)})}else this._select.value=n||``;return}this.render()}}getName(){return this.getAttribute(`name`)||``}getValue(){if(this.isMultiple()&&this._select){let e=Array.from(this._select.selectedOptions).map(e=>e.value);return JSON.stringify(e)}return this.hasAttribute(`value`)?this.getAttribute(`value`)||``:this._select?this._select.value:``}setValue(e){if(this.isMultiple()){let t=Array.isArray(e)?e.map(e=>String(e)):e==null||e===``?[]:[String(e)];this.setAttribute(`value`,JSON.stringify(t)),this._select&&Array.from(this._select.options).forEach(e=>{e.selected=t.includes(e.value)});return}let t=e==null?``:String(e);this.setAttribute(`value`,t),this._select&&(this._select.value=t)}get value(){try{return this.getValue()||``}catch{return``}}set value(e){try{if(this.isMultiple()){this.setValue(e);return}let t=e||``;(this.getAttribute(`value`)||``)!==t&&this.setAttribute(`value`,t),this._select&&requestAnimationFrame(()=>{this._select&&(t===``||Array.from(this._select.options).some(e=>e.value===t))&&this._select.value!==t&&(this._select.value=t)})}catch{}}isDisabled(){let e=this.getAttribute(`disabled`);return e!==null&&e!==`false`}isMultiple(){let e=this.getAttribute(`multiple`);return e!==null&&e!==`false`}isRequired(){let e=this.getAttribute(`required`);return e!==null&&e!==`false`}hasError(){return this.getAttribute(`error`)===`true`}getErrorMessage(){return this.getAttribute(`error-message`)||``}getId(){return this.getAttribute(`id`)||``}getLabel(){return this.getAttribute(`label`)||``}getInfo(){return this.getAttribute(`info`)||``}getSelectClasses(){return[`mint-select-control`,this.isMultiple()?`is-multiple`:``,this.hasError()?`has-error`:``].filter(Boolean).join(` `)}render(){this._hostOptionsObserverRaf!==null&&(cancelAnimationFrame(this._hostOptionsObserverRaf),this._hostOptionsObserverRaf=null);let e=this.isLoading(),n=this.isMultiple(),r=this.getValue(),i=[];this._select&&Array.from(this._select.children).forEach(e=>{(e.tagName===`OPTION`||e.tagName===`OPTGROUP`)&&i.push(e.cloneNode(!0))}),Array.from(this.children).forEach(e=>{e instanceof HTMLElement&&e.hasAttribute(t)&&e.remove()}),this._wrapper=null,this._select=null;let a=Array.from(this.children).filter(e=>e.tagName===`OPTION`||e.tagName===`OPTGROUP`).map(e=>e.cloneNode(!0)),o=this.getLabel(),s=this.getInfo(),c=this.getId()||this._generatedControlId,l=this.getName(),u=this.isDisabled(),d=this.hasError();if(o){let e=document.createElement(`label`);e.setAttribute(t,`label`),e.className=`mint-select-label`,c&&e.setAttribute(`for`,c);let n=document.createTextNode(o);e.appendChild(n),this.appendChild(e)}this._wrapper=document.createElement(`div`),this._wrapper.setAttribute(t,`wrapper`),this._wrapper.className=`mint-select-control-wrap`,this.appendChild(this._wrapper),this._select=document.createElement(`select`),this._select.className=this.getSelectClasses(),c&&(this._select.id=c),l&&(this._select.name=l),u&&(this._select.disabled=!0),this._select.required=this.isRequired(),n&&(this._select.multiple=!0),this._select.setAttribute(`aria-invalid`,d?`true`:`false`);let f=this.getAttribute(`aria-label`)?.trim(),p=this.getAttribute(`aria-labelledby`)?.trim();p?this._select.setAttribute(`aria-labelledby`,p):o?this._select.removeAttribute(`aria-label`):this._select.setAttribute(`aria-label`,f||`Select an option`);let m=a.length>0?a:i;if(m.length>0&&m.forEach(e=>{this._select.appendChild(e)}),this._select.options.length===0){let e=document.createElement(`option`);e.value=``,e.textContent=`Select an option`,e.disabled=!0,e.selected=!0,this._select.appendChild(e)}if(n){let e=[];try{let t=r?JSON.parse(r):[];e=Array.isArray(t)?t.map(e=>String(e)):[]}catch{e=r?[String(r)]:[]}Array.from(this._select.options).forEach(t=>{t.selected=e.includes(t.value)})}else this._select.value=r||``;if(this._changeHandler&&this._select&&this._select.removeEventListener(`change`,this._changeHandler),this._changeHandler=e=>{let t=e.target,r=n?Array.from(t.selectedOptions).map(e=>e.value):t.value,i=n?JSON.stringify(r):String(r||``);(this.getAttribute(`value`)||``)!==i&&(i?this.setAttribute(`value`,i):this.removeAttribute(`value`));let a=new Event(`input`,{bubbles:!0,cancelable:!0,composed:!0});this.dispatchEvent(a),this.dispatchEvent(new CustomEvent(`input`,{detail:{value:r},bubbles:!0,cancelable:!0,composed:!0})),this.dispatchEvent(new CustomEvent(`change`,{detail:{value:r},bubbles:!0,cancelable:!0,composed:!0}))},this._select.addEventListener(`change`,this._changeHandler),this._optionObserver&&this._optionObserver.disconnect(),this._optionObserver=new MutationObserver(()=>{let e=this.getAttribute(`value`)||this.value||``;this._select&&e&&requestAnimationFrame(()=>{if(this._select)if(n){let t=[];try{let n=JSON.parse(e);t=Array.isArray(n)?n.map(e=>String(e)):[]}catch{t=[String(e)]}Array.from(this._select.options).forEach(e=>{e.selected=t.includes(e.value)})}else Array.from(this._select.options).some(t=>t.value===e)&&this._select.value!==e&&(this._select.value=e)})}),this._optionObserver.observe(this._select,{childList:!0,subtree:!0}),this._wrapper.appendChild(this._select),n)this._caretUpIcon=null,this._caretDownIcon=null;else{let e=document.createElement(`div`);e.className=`mint-select-caret`,this._caretUpIcon=document.createElement(`mint-icon`),this._caretUpIcon.setAttribute(`name`,`caret-up`),this._caretUpIcon.className=`mint-select-caret-up`,this._caretUpIcon.setAttribute(`aria-hidden`,`true`),e.appendChild(this._caretUpIcon),this._caretDownIcon=document.createElement(`mint-icon`),this._caretDownIcon.setAttribute(`name`,`caret-down`),this._caretDownIcon.className=`mint-select-caret-down`,this._caretDownIcon.setAttribute(`aria-hidden`,`true`),e.appendChild(this._caretDownIcon),this._wrapper.appendChild(e)}if(s){let e=document.createElement(`div`);e.setAttribute(t,`info`),e.className=`mint-select-info`,e.textContent=s,this.appendChild(e)}this._renderErrorState(),this._syncSelectAccessibility(),this._renderSkeleton(e)}_renderSkeleton(e){let t=this.querySelector(`.mint-select-skeleton-container`),n=this._wrapper;if(e){t||(t=document.createElement(`div`),t.className=`mint-select-skeleton-container`,t.setAttribute(`aria-hidden`,`true`),n?n.appendChild(t):this.appendChild(t));let e=t.querySelector(`.mint-select-skeleton`);e||(e=document.createElement(`div`),t.appendChild(e));let r=this.isMultiple();e.classList.toggle(`is-multiple`,r),e.style.height=r?`5rem`:`2rem`,t.style.display=`block`,this._select&&(this._select.style.opacity=`0`,this._select.style.pointerEvents=`none`,this._select.setAttribute(`aria-busy`,`true`))}else t&&(t.style.display=`none`),this._select&&(this._select.style.opacity=`1`,this._select.style.pointerEvents=`auto`,this._select.removeAttribute(`aria-busy`))}_renderErrorState(){let e=this.hasError(),n=this.getErrorMessage(),r=this.querySelector(`.mint-select-error`);e&&n?(r?r.hasAttribute(t)||r.setAttribute(t,`error`):(r=document.createElement(`div`),r.setAttribute(t,`error`),r.className=`mint-select-error`,this.appendChild(r)),r.textContent=n):r&&r.remove()}_syncSelectAccessibility(){if(!this._select)return;let e=this._select.id||this._generatedControlId,n=(this.getAttribute(`aria-describedby`)||``).split(/\s+/).filter(Boolean),r=this.querySelector(`[${t}="info"]`),i=this.querySelector(`.mint-select-error`);r&&(r.id=`${e}-info`,n.push(r.id)),i&&(i.id=`${e}-error`,n.push(i.id)),n.length?this._select.setAttribute(`aria-describedby`,Array.from(new Set(n)).join(` `)):this._select.removeAttribute(`aria-describedby`)}};customElements.get(`mint-select`)||e.t(`mint-select`,n),module.exports=n;
|
|
@@ -1 +1,10 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "index.d.ts",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"index.d.ts"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": "AAAA"
|
|
10
|
+
}
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
import '../../theme.css'
|
|
2
|
+
import '../../icon.css'
|
|
3
|
+
import '../../select.css'
|
|
4
|
+
import "../chunks/icon-gQAtsERy.js";
|
|
5
|
+
import { t as e } from "../chunks/register-element-BFYmIynH.js";
|
|
6
|
+
import "../chunks/icon-C0OLmjDY.js";
|
|
7
|
+
import "../chunks/caret-up-D_6oa7o1.js";
|
|
8
|
+
import "../chunks/caret-down-Ch6IfR7r.js";
|
|
9
|
+
//#region src/components/select/Select.ts
|
|
10
|
+
var t = "data-mint-select-part", n = class extends HTMLElement {
|
|
11
|
+
static get observedAttributes() {
|
|
12
|
+
return [
|
|
13
|
+
"name",
|
|
14
|
+
"value",
|
|
15
|
+
"disabled",
|
|
16
|
+
"id",
|
|
17
|
+
"required",
|
|
18
|
+
"label",
|
|
19
|
+
"info",
|
|
20
|
+
"error",
|
|
21
|
+
"error-message",
|
|
22
|
+
"multiple",
|
|
23
|
+
"loading",
|
|
24
|
+
"aria-label",
|
|
25
|
+
"aria-labelledby",
|
|
26
|
+
"aria-describedby"
|
|
27
|
+
];
|
|
28
|
+
}
|
|
29
|
+
constructor() {
|
|
30
|
+
super(), this._select = null, this._wrapper = null, this._caretUpIcon = null, this._caretDownIcon = null, this._changeHandler = null, this._optionObserver = null, this._childrenObserver = null, this._hostOptionsObserverRaf = null, this._generatedControlId = `mint-select-${Math.random().toString(36).slice(2, 10)}`;
|
|
31
|
+
}
|
|
32
|
+
connectedCallback() {
|
|
33
|
+
this.classList.add("mint-select-host"), this.getLabel() || console.error("mint-select: The \"label\" attribute is required. Please provide a label for the select."), this.render(), this._childrenObserver && this._childrenObserver.disconnect(), this._childrenObserver = new MutationObserver((e) => {
|
|
34
|
+
if (e.some((e) => {
|
|
35
|
+
let t = e.target;
|
|
36
|
+
if (this._select && (t === this._select || this._select.contains(t))) return !1;
|
|
37
|
+
let n = Array.from(e.addedNodes).some((e) => e.nodeType === Node.ELEMENT_NODE && (e.tagName === "OPTION" || e.tagName === "OPTGROUP")) || Array.from(e.removedNodes).some((e) => e.nodeType === Node.ELEMENT_NODE && (e.tagName === "OPTION" || e.tagName === "OPTGROUP")), r = e.type === "attributes" && e.target.nodeType === Node.ELEMENT_NODE && (e.target.tagName === "OPTION" || e.target.tagName === "OPTGROUP");
|
|
38
|
+
return n || r;
|
|
39
|
+
})) {
|
|
40
|
+
if (this._hostOptionsObserverRaf !== null) return;
|
|
41
|
+
this._hostOptionsObserverRaf = requestAnimationFrame(() => {
|
|
42
|
+
this._hostOptionsObserverRaf = null, this.isConnected && this.render();
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}), this._childrenObserver.observe(this, {
|
|
46
|
+
childList: !0,
|
|
47
|
+
subtree: !0,
|
|
48
|
+
attributes: !0,
|
|
49
|
+
attributeFilter: [
|
|
50
|
+
"value",
|
|
51
|
+
"selected",
|
|
52
|
+
"disabled"
|
|
53
|
+
]
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
disconnectedCallback() {
|
|
57
|
+
this._select && this._changeHandler && (this._select.removeEventListener("change", this._changeHandler), this._changeHandler = null), this._optionObserver &&= (this._optionObserver.disconnect(), null), this._childrenObserver &&= (this._childrenObserver.disconnect(), null), this._hostOptionsObserverRaf !== null && (cancelAnimationFrame(this._hostOptionsObserverRaf), this._hostOptionsObserverRaf = null);
|
|
58
|
+
}
|
|
59
|
+
isLoading() {
|
|
60
|
+
let e = this.getAttribute("loading");
|
|
61
|
+
return e !== null && e !== "false";
|
|
62
|
+
}
|
|
63
|
+
attributeChangedCallback(e, t, n) {
|
|
64
|
+
if (t !== n) {
|
|
65
|
+
if (e === "error" || e === "error-message") {
|
|
66
|
+
this._renderErrorState(), this._select && (this._select.className = this.getSelectClasses(), this._select.setAttribute("aria-invalid", this.hasError() ? "true" : "false"), this._syncSelectAccessibility());
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (e === "loading") {
|
|
70
|
+
this.render();
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (e === "value") {
|
|
74
|
+
if (this._select) if (this.isMultiple()) {
|
|
75
|
+
let e = [];
|
|
76
|
+
try {
|
|
77
|
+
let t = n ? JSON.parse(n) : [];
|
|
78
|
+
e = Array.isArray(t) ? t.map((e) => String(e)) : [];
|
|
79
|
+
} catch {
|
|
80
|
+
e = n ? [String(n)] : [];
|
|
81
|
+
}
|
|
82
|
+
Array.from(this._select.options).forEach((t) => {
|
|
83
|
+
t.selected = e.includes(t.value);
|
|
84
|
+
});
|
|
85
|
+
} else this._select.value = n || "";
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
this.render();
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
getName() {
|
|
92
|
+
return this.getAttribute("name") || "";
|
|
93
|
+
}
|
|
94
|
+
getValue() {
|
|
95
|
+
if (this.isMultiple() && this._select) {
|
|
96
|
+
let e = Array.from(this._select.selectedOptions).map((e) => e.value);
|
|
97
|
+
return JSON.stringify(e);
|
|
98
|
+
}
|
|
99
|
+
return this.hasAttribute("value") ? this.getAttribute("value") || "" : this._select ? this._select.value : "";
|
|
100
|
+
}
|
|
101
|
+
setValue(e) {
|
|
102
|
+
if (this.isMultiple()) {
|
|
103
|
+
let t = Array.isArray(e) ? e.map((e) => String(e)) : e == null || e === "" ? [] : [String(e)];
|
|
104
|
+
this.setAttribute("value", JSON.stringify(t)), this._select && Array.from(this._select.options).forEach((e) => {
|
|
105
|
+
e.selected = t.includes(e.value);
|
|
106
|
+
});
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
let t = e == null ? "" : String(e);
|
|
110
|
+
this.setAttribute("value", t), this._select && (this._select.value = t);
|
|
111
|
+
}
|
|
112
|
+
get value() {
|
|
113
|
+
try {
|
|
114
|
+
return this.getValue() || "";
|
|
115
|
+
} catch {
|
|
116
|
+
return "";
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
set value(e) {
|
|
120
|
+
try {
|
|
121
|
+
if (this.isMultiple()) {
|
|
122
|
+
this.setValue(e);
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
let t = e || "";
|
|
126
|
+
(this.getAttribute("value") || "") !== t && this.setAttribute("value", t), this._select && requestAnimationFrame(() => {
|
|
127
|
+
this._select && (t === "" || Array.from(this._select.options).some((e) => e.value === t)) && this._select.value !== t && (this._select.value = t);
|
|
128
|
+
});
|
|
129
|
+
} catch {}
|
|
130
|
+
}
|
|
131
|
+
isDisabled() {
|
|
132
|
+
let e = this.getAttribute("disabled");
|
|
133
|
+
return e !== null && e !== "false";
|
|
134
|
+
}
|
|
135
|
+
isMultiple() {
|
|
136
|
+
let e = this.getAttribute("multiple");
|
|
137
|
+
return e !== null && e !== "false";
|
|
138
|
+
}
|
|
139
|
+
isRequired() {
|
|
140
|
+
let e = this.getAttribute("required");
|
|
141
|
+
return e !== null && e !== "false";
|
|
142
|
+
}
|
|
143
|
+
hasError() {
|
|
144
|
+
return this.getAttribute("error") === "true";
|
|
145
|
+
}
|
|
146
|
+
getErrorMessage() {
|
|
147
|
+
return this.getAttribute("error-message") || "";
|
|
148
|
+
}
|
|
149
|
+
getId() {
|
|
150
|
+
return this.getAttribute("id") || "";
|
|
151
|
+
}
|
|
152
|
+
getLabel() {
|
|
153
|
+
return this.getAttribute("label") || "";
|
|
154
|
+
}
|
|
155
|
+
getInfo() {
|
|
156
|
+
return this.getAttribute("info") || "";
|
|
157
|
+
}
|
|
158
|
+
getSelectClasses() {
|
|
159
|
+
return [
|
|
160
|
+
"mint-select-control",
|
|
161
|
+
this.isMultiple() ? "is-multiple" : "",
|
|
162
|
+
this.hasError() ? "has-error" : ""
|
|
163
|
+
].filter(Boolean).join(" ");
|
|
164
|
+
}
|
|
165
|
+
render() {
|
|
166
|
+
this._hostOptionsObserverRaf !== null && (cancelAnimationFrame(this._hostOptionsObserverRaf), this._hostOptionsObserverRaf = null);
|
|
167
|
+
let e = this.isLoading(), n = this.isMultiple(), r = this.getValue(), i = [];
|
|
168
|
+
this._select && Array.from(this._select.children).forEach((e) => {
|
|
169
|
+
(e.tagName === "OPTION" || e.tagName === "OPTGROUP") && i.push(e.cloneNode(!0));
|
|
170
|
+
}), Array.from(this.children).forEach((e) => {
|
|
171
|
+
e instanceof HTMLElement && e.hasAttribute(t) && e.remove();
|
|
172
|
+
}), this._wrapper = null, this._select = null;
|
|
173
|
+
let a = Array.from(this.children).filter((e) => e.tagName === "OPTION" || e.tagName === "OPTGROUP").map((e) => e.cloneNode(!0)), o = this.getLabel(), s = this.getInfo(), c = this.getId() || this._generatedControlId, l = this.getName(), u = this.isDisabled(), d = this.hasError();
|
|
174
|
+
if (o) {
|
|
175
|
+
let e = document.createElement("label");
|
|
176
|
+
e.setAttribute(t, "label"), e.className = "mint-select-label", c && e.setAttribute("for", c);
|
|
177
|
+
let n = document.createTextNode(o);
|
|
178
|
+
e.appendChild(n), this.appendChild(e);
|
|
179
|
+
}
|
|
180
|
+
this._wrapper = document.createElement("div"), this._wrapper.setAttribute(t, "wrapper"), this._wrapper.className = "mint-select-control-wrap", this.appendChild(this._wrapper), this._select = document.createElement("select"), this._select.className = this.getSelectClasses(), c && (this._select.id = c), l && (this._select.name = l), u && (this._select.disabled = !0), this._select.required = this.isRequired(), n && (this._select.multiple = !0), this._select.setAttribute("aria-invalid", d ? "true" : "false");
|
|
181
|
+
let f = this.getAttribute("aria-label")?.trim(), p = this.getAttribute("aria-labelledby")?.trim();
|
|
182
|
+
p ? this._select.setAttribute("aria-labelledby", p) : o ? this._select.removeAttribute("aria-label") : this._select.setAttribute("aria-label", f || "Select an option");
|
|
183
|
+
let m = a.length > 0 ? a : i;
|
|
184
|
+
if (m.length > 0 && m.forEach((e) => {
|
|
185
|
+
this._select.appendChild(e);
|
|
186
|
+
}), this._select.options.length === 0) {
|
|
187
|
+
let e = document.createElement("option");
|
|
188
|
+
e.value = "", e.textContent = "Select an option", e.disabled = !0, e.selected = !0, this._select.appendChild(e);
|
|
189
|
+
}
|
|
190
|
+
if (n) {
|
|
191
|
+
let e = [];
|
|
192
|
+
try {
|
|
193
|
+
let t = r ? JSON.parse(r) : [];
|
|
194
|
+
e = Array.isArray(t) ? t.map((e) => String(e)) : [];
|
|
195
|
+
} catch {
|
|
196
|
+
e = r ? [String(r)] : [];
|
|
197
|
+
}
|
|
198
|
+
Array.from(this._select.options).forEach((t) => {
|
|
199
|
+
t.selected = e.includes(t.value);
|
|
200
|
+
});
|
|
201
|
+
} else this._select.value = r || "";
|
|
202
|
+
if (this._changeHandler && this._select && this._select.removeEventListener("change", this._changeHandler), this._changeHandler = (e) => {
|
|
203
|
+
let t = e.target, r = n ? Array.from(t.selectedOptions).map((e) => e.value) : t.value, i = n ? JSON.stringify(r) : String(r || "");
|
|
204
|
+
(this.getAttribute("value") || "") !== i && (i ? this.setAttribute("value", i) : this.removeAttribute("value"));
|
|
205
|
+
let a = new Event("input", {
|
|
206
|
+
bubbles: !0,
|
|
207
|
+
cancelable: !0,
|
|
208
|
+
composed: !0
|
|
209
|
+
});
|
|
210
|
+
this.dispatchEvent(a), this.dispatchEvent(new CustomEvent("input", {
|
|
211
|
+
detail: { value: r },
|
|
212
|
+
bubbles: !0,
|
|
213
|
+
cancelable: !0,
|
|
214
|
+
composed: !0
|
|
215
|
+
})), this.dispatchEvent(new CustomEvent("change", {
|
|
216
|
+
detail: { value: r },
|
|
217
|
+
bubbles: !0,
|
|
218
|
+
cancelable: !0,
|
|
219
|
+
composed: !0
|
|
220
|
+
}));
|
|
221
|
+
}, this._select.addEventListener("change", this._changeHandler), this._optionObserver && this._optionObserver.disconnect(), this._optionObserver = new MutationObserver(() => {
|
|
222
|
+
let e = this.getAttribute("value") || this.value || "";
|
|
223
|
+
this._select && e && requestAnimationFrame(() => {
|
|
224
|
+
if (this._select) if (n) {
|
|
225
|
+
let t = [];
|
|
226
|
+
try {
|
|
227
|
+
let n = JSON.parse(e);
|
|
228
|
+
t = Array.isArray(n) ? n.map((e) => String(e)) : [];
|
|
229
|
+
} catch {
|
|
230
|
+
t = [String(e)];
|
|
231
|
+
}
|
|
232
|
+
Array.from(this._select.options).forEach((e) => {
|
|
233
|
+
e.selected = t.includes(e.value);
|
|
234
|
+
});
|
|
235
|
+
} else Array.from(this._select.options).some((t) => t.value === e) && this._select.value !== e && (this._select.value = e);
|
|
236
|
+
});
|
|
237
|
+
}), this._optionObserver.observe(this._select, {
|
|
238
|
+
childList: !0,
|
|
239
|
+
subtree: !0
|
|
240
|
+
}), this._wrapper.appendChild(this._select), n) this._caretUpIcon = null, this._caretDownIcon = null;
|
|
241
|
+
else {
|
|
242
|
+
let e = document.createElement("div");
|
|
243
|
+
e.className = "mint-select-caret", this._caretUpIcon = document.createElement("mint-icon"), this._caretUpIcon.setAttribute("name", "caret-up"), this._caretUpIcon.className = "mint-select-caret-up", this._caretUpIcon.setAttribute("aria-hidden", "true"), e.appendChild(this._caretUpIcon), this._caretDownIcon = document.createElement("mint-icon"), this._caretDownIcon.setAttribute("name", "caret-down"), this._caretDownIcon.className = "mint-select-caret-down", this._caretDownIcon.setAttribute("aria-hidden", "true"), e.appendChild(this._caretDownIcon), this._wrapper.appendChild(e);
|
|
244
|
+
}
|
|
245
|
+
if (s) {
|
|
246
|
+
let e = document.createElement("div");
|
|
247
|
+
e.setAttribute(t, "info"), e.className = "mint-select-info", e.textContent = s, this.appendChild(e);
|
|
248
|
+
}
|
|
249
|
+
this._renderErrorState(), this._syncSelectAccessibility(), this._renderSkeleton(e);
|
|
250
|
+
}
|
|
251
|
+
_renderSkeleton(e) {
|
|
252
|
+
let t = this.querySelector(".mint-select-skeleton-container"), n = this._wrapper;
|
|
253
|
+
if (e) {
|
|
254
|
+
t || (t = document.createElement("div"), t.className = "mint-select-skeleton-container", t.setAttribute("aria-hidden", "true"), n ? n.appendChild(t) : this.appendChild(t));
|
|
255
|
+
let e = t.querySelector(".mint-select-skeleton");
|
|
256
|
+
e || (e = document.createElement("div"), t.appendChild(e));
|
|
257
|
+
let r = this.isMultiple();
|
|
258
|
+
e.classList.toggle("is-multiple", r), e.style.height = r ? "5rem" : "2rem", t.style.display = "block", this._select && (this._select.style.opacity = "0", this._select.style.pointerEvents = "none", this._select.setAttribute("aria-busy", "true"));
|
|
259
|
+
} else t && (t.style.display = "none"), this._select && (this._select.style.opacity = "1", this._select.style.pointerEvents = "auto", this._select.removeAttribute("aria-busy"));
|
|
260
|
+
}
|
|
261
|
+
_renderErrorState() {
|
|
262
|
+
let e = this.hasError(), n = this.getErrorMessage(), r = this.querySelector(".mint-select-error");
|
|
263
|
+
e && n ? (r ? r.hasAttribute(t) || r.setAttribute(t, "error") : (r = document.createElement("div"), r.setAttribute(t, "error"), r.className = "mint-select-error", this.appendChild(r)), r.textContent = n) : r && r.remove();
|
|
264
|
+
}
|
|
265
|
+
_syncSelectAccessibility() {
|
|
266
|
+
if (!this._select) return;
|
|
267
|
+
let e = this._select.id || this._generatedControlId, n = (this.getAttribute("aria-describedby") || "").split(/\s+/).filter(Boolean), r = this.querySelector(`[${t}="info"]`), i = this.querySelector(".mint-select-error");
|
|
268
|
+
r && (r.id = `${e}-info`, n.push(r.id)), i && (i.id = `${e}-error`, n.push(i.id)), n.length ? this._select.setAttribute("aria-describedby", Array.from(new Set(n)).join(" ")) : this._select.removeAttribute("aria-describedby");
|
|
269
|
+
}
|
|
270
|
+
};
|
|
271
|
+
customElements.get("mint-select") || e("mint-select", n);
|
|
272
|
+
//#endregion
|
|
273
|
+
export { n as default };
|