@nanoporetech-digital/components 1.15.6 → 2.0.0
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/CHANGELOG.md +43 -0
- package/dist/cjs/active-element-2f9bf0aa.js +21 -0
- package/dist/cjs/active-element-2f9bf0aa.js.map +1 -0
- package/dist/cjs/{algoliasearch.umd-0ccd70ce.js → algoliasearch.umd-4d15f5e0.js} +3 -3
- package/dist/cjs/{algoliasearch.umd-0ccd70ce.js.map → algoliasearch.umd-4d15f5e0.js.map} +1 -1
- package/dist/cjs/{dom-5f3fae1a.js → dom-52f9b8b7.js} +25 -6
- package/dist/cjs/dom-52f9b8b7.js.map +1 -0
- package/dist/cjs/form-control-3bc82e3e.js +80 -0
- package/dist/cjs/form-control-3bc82e3e.js.map +1 -0
- package/dist/cjs/{index-117f36a4.js → index-53d02e05.js} +12 -27
- package/dist/cjs/index-53d02e05.js.map +1 -0
- package/dist/cjs/index-cb62df44.js +12 -12
- package/dist/cjs/index.cjs.js +3 -3
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{modal-01eed1bf.js → modal-f09e431f.js} +2 -2
- package/dist/cjs/{modal-01eed1bf.js.map → modal-f09e431f.js.map} +1 -1
- package/dist/cjs/nano-accordion.cjs.entry.js +2 -4
- package/dist/cjs/nano-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-alert.cjs.entry.js +6 -6
- package/dist/cjs/nano-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-algolia-filter.cjs.entry.js +1 -1
- package/dist/cjs/nano-algolia-filter.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-algolia-input.cjs.entry.js +1 -1
- package/dist/cjs/nano-algolia.cjs.entry.js +9 -5
- package/dist/cjs/nano-algolia.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-aspect-ratio.cjs.entry.js +1 -1
- package/dist/cjs/nano-aspect-ratio.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-checkbox-group.cjs.entry.js +4 -1
- package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/nano-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-components.cjs.js +1 -1
- package/dist/cjs/nano-datalist_3.cjs.entry.js +776 -0
- package/dist/cjs/nano-datalist_3.cjs.entry.js.map +1 -0
- package/dist/cjs/nano-date-input.cjs.entry.js +9 -5
- package/dist/cjs/nano-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/{nano-date-picker_2.cjs.entry.js → nano-date-picker.cjs.entry.js} +2 -274
- package/dist/cjs/nano-date-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/nano-details.cjs.entry.js +2 -2
- package/dist/cjs/nano-details.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-dialog.cjs.entry.js +5 -5
- package/dist/cjs/nano-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-drawer.cjs.entry.js +5 -5
- package/dist/cjs/nano-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-dropdown.cjs.entry.js +307 -0
- package/dist/cjs/nano-dropdown.cjs.entry.js.map +1 -0
- package/dist/cjs/nano-file-upload.cjs.entry.js +1 -1
- package/dist/cjs/nano-file-upload.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-global-nav.cjs.entry.js +19 -24
- package/dist/cjs/nano-global-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-global-search-results.cjs.entry.js +200 -115
- package/dist/cjs/nano-global-search-results.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-grid_3.cjs.entry.js +15 -7
- package/dist/cjs/nano-grid_3.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-hero.cjs.entry.js +13 -5
- package/dist/cjs/nano-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-icon-button.cjs.entry.js +2 -2
- package/dist/cjs/nano-icon-button.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-icon.cjs.entry.js +1 -1
- package/dist/cjs/nano-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-input.cjs.entry.js +80 -75
- package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-menu-drawer.cjs.entry.js +2 -2
- package/dist/cjs/nano-menu-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-nav-item_2.cjs.entry.js +284 -533
- package/dist/cjs/nano-nav-item_2.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-range.cjs.entry.js +2 -2
- package/dist/cjs/nano-range.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-rating.cjs.entry.js +2 -2
- package/dist/cjs/nano-rating.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-resize-observe_2.cjs.entry.js +1 -1
- package/dist/cjs/nano-resize-observe_2.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-slide.cjs.entry.js +1 -1
- package/dist/cjs/nano-slide.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-slides.cjs.entry.js +1 -1
- package/dist/cjs/nano-slides.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-spinner.cjs.entry.js +1 -1
- package/dist/cjs/nano-spinner.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-sticker.cjs.entry.js +3 -3
- package/dist/cjs/nano-sticker.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tab-content.cjs.entry.js +2 -2
- package/dist/cjs/nano-tab-content.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tab-group.cjs.entry.js +66 -33
- package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tab.cjs.entry.js +9 -2
- package/dist/cjs/nano-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/nano-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/{popover-d033efa2.js → popover-86f1775c.js} +10 -1
- package/dist/cjs/popover-86f1775c.js.map +1 -0
- package/dist/cjs/{scroll-d7753eed.js → scroll-6b9e6870.js} +2 -2
- package/dist/cjs/{scroll-d7753eed.js.map → scroll-6b9e6870.js.map} +1 -1
- package/dist/cjs/{tabbable-615c30e1.js → tabbable-de4c23d8.js} +8 -6
- package/dist/cjs/tabbable-de4c23d8.js.map +1 -0
- package/dist/collection/collection-manifest.json +3 -2
- package/dist/collection/components/accordion/accordion.css +3 -0
- package/dist/collection/components/accordion/accordion.js +2 -5
- package/dist/collection/components/accordion/accordion.js.map +1 -1
- package/dist/collection/components/alert/alert.css +5 -6
- package/dist/collection/components/alert/alert.helpers.js +2 -2
- package/dist/collection/components/alert/alert.helpers.js.map +1 -1
- package/dist/collection/components/alert/alert.js +1 -1
- package/dist/collection/components/algolia/algolia-filter.css +3 -0
- package/dist/collection/components/algolia/algolia-filter.js +2 -2
- package/dist/collection/components/algolia/algolia-input.js +5 -5
- package/dist/collection/components/algolia/algolia-results.js +1 -1
- package/dist/collection/components/algolia/algolia.css +3 -0
- package/dist/collection/components/algolia/algolia.js +6 -6
- package/dist/collection/components/aspect-ratio/aspect-ratio.css +3 -0
- package/dist/collection/components/checkbox/checkbox-group.css +3 -0
- package/dist/collection/components/checkbox/checkbox-group.js +5 -2
- package/dist/collection/components/checkbox/checkbox-group.js.map +1 -1
- package/dist/collection/components/checkbox/checkbox.css +3 -0
- package/dist/collection/components/checkbox/checkbox.js +3 -3
- package/dist/collection/components/datalist/datalist.css +55 -0
- package/dist/collection/components/datalist/datalist.js +782 -0
- package/dist/collection/components/datalist/datalist.js.map +1 -0
- package/dist/collection/components/date-input/date-input.css +3 -0
- package/dist/collection/components/date-input/date-input.js +18 -10
- package/dist/collection/components/date-input/date-input.js.map +1 -1
- package/dist/collection/components/date-picker/date-picker.css +3 -0
- package/dist/collection/components/date-picker/date-picker.js +5 -5
- package/dist/collection/components/details/details.css +3 -0
- package/dist/collection/components/details/details.js +2 -3
- package/dist/collection/components/details/details.js.map +1 -1
- package/dist/collection/components/dialog/dialog.css +4 -1
- package/dist/collection/components/dialog/dialog.helpers.js.map +1 -1
- package/dist/collection/components/dialog/dialog.js +1 -1
- package/dist/collection/components/drawer/drawer.css +3 -0
- package/dist/collection/components/dropdown/dropdown.css +19 -2
- package/dist/collection/components/dropdown/dropdown.js +56 -39
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/file-upload/file-upload.css +5 -2
- package/dist/collection/components/file-upload/file-upload.js +4 -4
- package/dist/collection/components/form-control/form-control.js +73 -0
- package/dist/collection/components/form-control/form-control.js.map +1 -0
- package/dist/collection/components/global-nav/global-nav.css +43 -37
- package/dist/collection/components/global-nav/global-nav.js +21 -26
- package/dist/collection/components/global-nav/global-nav.js.map +1 -1
- package/dist/collection/components/global-search-results/global-search-results.css +299 -18
- package/dist/collection/components/global-search-results/global-search-results.js +200 -113
- package/dist/collection/components/global-search-results/global-search-results.js.map +1 -1
- package/dist/collection/components/grid/grid-item.css +3 -0
- package/dist/collection/components/grid/grid-item.js +1 -1
- package/dist/collection/components/grid/grid.css +3 -0
- package/dist/collection/components/grid/grid.js +37 -6
- package/dist/collection/components/grid/grid.js.map +1 -1
- package/dist/collection/components/hero/hero.css +13 -5
- package/dist/collection/components/hero/hero.js +32 -22
- package/dist/collection/components/hero/hero.js.map +1 -1
- package/dist/collection/components/icon/icon.css +3 -0
- package/dist/collection/components/icon/icon.js +1 -1
- package/dist/collection/components/icon-button/icon-button.css +6 -1
- package/dist/collection/components/icon-button/icon-button.js +1 -1
- package/dist/collection/components/icon-button/icon-button.js.map +1 -1
- package/dist/collection/components/img/img.css +3 -0
- package/dist/collection/components/input/input.css +242 -232
- package/dist/collection/components/input/input.js +111 -114
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/menu/menu.css +27 -35
- package/dist/collection/components/menu/menu.js +222 -48
- package/dist/collection/components/menu/menu.js.map +1 -1
- package/dist/collection/components/menu-drawer/menu-drawer.css +3 -0
- package/dist/collection/components/nav-item/nav-item.css +3 -0
- package/dist/collection/components/nav-item/nav-item.js +5 -5
- package/dist/collection/components/nav-item/nav-item.js.map +1 -1
- package/dist/collection/components/option/option-interface.js +5 -0
- package/dist/collection/components/option/option-interface.js.map +1 -0
- package/dist/collection/components/option/option.css +187 -0
- package/dist/collection/components/option/option.js +242 -0
- package/dist/collection/components/option/option.js.map +1 -0
- package/dist/collection/components/range/range.css +3 -0
- package/dist/collection/components/range/range.js +4 -4
- package/dist/collection/components/rating/rating.css +3 -0
- package/dist/collection/components/resize-observe/resize-observe.js +1 -1
- package/dist/collection/components/select/select.css +458 -391
- package/dist/collection/components/select/select.js +364 -607
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/skeleton/skeleton.css +3 -0
- package/dist/collection/components/slides/slide.css +3 -0
- package/dist/collection/components/slides/slides.css +3 -0
- package/dist/collection/components/slides/slides.js +7 -7
- package/dist/collection/components/spinner/spinner.css +3 -0
- package/dist/collection/components/sticky/sticker.css +3 -0
- package/dist/collection/components/tabs/tab-content.css +3 -0
- package/dist/collection/components/tabs/tab-content.js +3 -3
- package/dist/collection/components/tabs/tab-content.js.map +1 -1
- package/dist/collection/components/tabs/tab-group.css +16 -5
- package/dist/collection/components/tabs/tab-group.js +125 -38
- package/dist/collection/components/tabs/tab-group.js.map +1 -1
- package/dist/collection/components/tabs/tab.css +36 -6
- package/dist/collection/components/tabs/tab.js +45 -2
- package/dist/collection/components/tabs/tab.js.map +1 -1
- package/dist/collection/components/tooltip/tooltip.css +3 -0
- package/dist/collection/utils/active-element.js +16 -0
- package/dist/collection/utils/active-element.js.map +1 -0
- package/dist/collection/utils/dom.js +24 -5
- package/dist/collection/utils/dom.js.map +1 -1
- package/dist/collection/utils/index.js +13 -13
- package/dist/collection/utils/index.js.map +1 -1
- package/dist/collection/utils/popover.js +9 -0
- package/dist/collection/utils/popover.js.map +1 -1
- package/dist/collection/utils/tabbable.js +7 -5
- package/dist/collection/utils/tabbable.js.map +1 -1
- package/dist/collection/utils/template.js +5 -1
- package/dist/collection/utils/template.js.map +1 -1
- package/dist/collection/utils/testing/index.js +11 -1
- package/dist/collection/utils/testing/index.js.map +1 -1
- package/dist/components/ResizeObserver.es.js +933 -0
- package/dist/components/ResizeObserver.es.js.map +1 -0
- package/dist/components/_commonjsHelpers.js +41 -0
- package/dist/components/_commonjsHelpers.js.map +1 -0
- package/dist/components/active-element.js +19 -0
- package/dist/components/active-element.js.map +1 -0
- package/dist/components/algolia-data.js +49 -0
- package/dist/components/algolia-data.js.map +1 -0
- package/dist/components/algolia.js +906 -0
- package/dist/components/algolia.js.map +1 -0
- package/dist/components/algoliasearch.umd.js +13 -0
- package/dist/components/algoliasearch.umd.js.map +1 -0
- package/dist/components/component-store.js +2234 -0
- package/dist/components/component-store.js.map +1 -0
- package/dist/components/datalist.js +543 -0
- package/dist/components/datalist.js.map +1 -0
- package/dist/components/date-picker.js +624 -0
- package/dist/components/date-picker.js.map +1 -0
- package/dist/{esm/dom-a791b223.js → components/dom.js} +25 -6
- package/dist/components/dom.js.map +1 -0
- package/dist/components/dropdown.js +332 -0
- package/dist/components/dropdown.js.map +1 -0
- package/dist/components/focus-visible.js +66 -0
- package/dist/components/focus-visible.js.map +1 -0
- package/dist/components/form-control.js +77 -0
- package/dist/components/form-control.js.map +1 -0
- package/dist/components/grid-item.js +112 -0
- package/dist/components/grid-item.js.map +1 -0
- package/dist/components/grid.js +276 -0
- package/dist/components/grid.js.map +1 -0
- package/dist/components/icon-button.js +70 -0
- package/dist/components/icon-button.js.map +1 -0
- package/dist/components/icon.js +269 -0
- package/dist/components/icon.js.map +1 -0
- package/dist/components/img.js +184 -0
- package/dist/components/img.js.map +1 -0
- package/dist/components/index.d.ts +26 -0
- package/dist/components/index.js +251 -0
- package/dist/components/index.js.map +1 -0
- package/dist/{esm/index-f41ae118.js → components/index2.js} +13 -27
- package/dist/components/index2.js.map +1 -0
- package/dist/components/index3.js +1075 -0
- package/dist/components/index3.js.map +1 -0
- package/dist/components/index4.js +637 -0
- package/dist/components/index4.js.map +1 -0
- package/dist/components/input.js +474 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/intersection-observer.js +985 -0
- package/dist/components/intersection-observer.js.map +1 -0
- package/dist/components/local-my-account.js +353 -0
- package/dist/components/local-my-account.js.map +1 -0
- package/dist/components/menu.js +235 -0
- package/dist/components/menu.js.map +1 -0
- package/dist/components/modal.js +48 -0
- package/dist/components/modal.js.map +1 -0
- package/dist/components/nano-accordion.d.ts +11 -0
- package/dist/components/nano-accordion.js +63 -0
- package/dist/components/nano-accordion.js.map +1 -0
- package/dist/components/nano-alert.d.ts +11 -0
- package/dist/components/nano-alert.js +296 -0
- package/dist/components/nano-alert.js.map +1 -0
- package/dist/components/nano-algolia-filter.d.ts +11 -0
- package/dist/components/nano-algolia-filter.js +317 -0
- package/dist/components/nano-algolia-filter.js.map +1 -0
- package/dist/components/nano-algolia-input.d.ts +11 -0
- package/dist/components/nano-algolia-input.js +224 -0
- package/dist/components/nano-algolia-input.js.map +1 -0
- package/dist/components/nano-algolia-pagination.d.ts +11 -0
- package/dist/components/nano-algolia-pagination.js +104 -0
- package/dist/components/nano-algolia-pagination.js.map +1 -0
- package/dist/components/nano-algolia-results.d.ts +11 -0
- package/dist/components/nano-algolia-results.js +224 -0
- package/dist/components/nano-algolia-results.js.map +1 -0
- package/dist/components/nano-algolia.d.ts +11 -0
- package/dist/components/nano-algolia.js +11 -0
- package/dist/components/nano-algolia.js.map +1 -0
- package/dist/components/nano-aspect-ratio.d.ts +11 -0
- package/dist/components/nano-aspect-ratio.js +74 -0
- package/dist/components/nano-aspect-ratio.js.map +1 -0
- package/dist/components/nano-checkbox-group.d.ts +11 -0
- package/dist/components/nano-checkbox-group.js +235 -0
- package/dist/components/nano-checkbox-group.js.map +1 -0
- package/dist/components/nano-checkbox.d.ts +11 -0
- package/dist/components/nano-checkbox.js +231 -0
- package/dist/components/nano-checkbox.js.map +1 -0
- package/dist/components/nano-datalist.d.ts +11 -0
- package/dist/components/nano-datalist.js +11 -0
- package/dist/components/nano-datalist.js.map +1 -0
- package/dist/components/nano-date-input.d.ts +11 -0
- package/dist/components/nano-date-input.js +408 -0
- package/dist/components/nano-date-input.js.map +1 -0
- package/dist/components/nano-date-picker.d.ts +11 -0
- package/dist/components/nano-date-picker.js +11 -0
- package/dist/components/nano-date-picker.js.map +1 -0
- package/dist/components/nano-details.d.ts +11 -0
- package/dist/components/nano-details.js +162 -0
- package/dist/components/nano-details.js.map +1 -0
- package/dist/components/nano-dialog.d.ts +11 -0
- package/dist/components/nano-dialog.js +231 -0
- package/dist/components/nano-dialog.js.map +1 -0
- package/dist/components/nano-drawer.d.ts +11 -0
- package/dist/components/nano-drawer.js +217 -0
- package/dist/components/nano-drawer.js.map +1 -0
- package/dist/components/nano-dropdown.d.ts +11 -0
- package/dist/components/nano-dropdown.js +11 -0
- package/dist/components/nano-dropdown.js.map +1 -0
- package/dist/components/nano-file-upload.d.ts +11 -0
- package/dist/components/nano-file-upload.js +421 -0
- package/dist/components/nano-file-upload.js.map +1 -0
- package/dist/components/nano-global-nav.d.ts +11 -0
- package/dist/components/nano-global-nav.js +1221 -0
- package/dist/components/nano-global-nav.js.map +1 -0
- package/dist/components/nano-global-search-results.d.ts +11 -0
- package/dist/components/nano-global-search-results.js +608 -0
- package/dist/components/nano-global-search-results.js.map +1 -0
- package/dist/components/nano-grid-item.d.ts +11 -0
- package/dist/components/nano-grid-item.js +11 -0
- package/dist/components/nano-grid-item.js.map +1 -0
- package/dist/components/nano-grid.d.ts +11 -0
- package/dist/components/nano-grid.js +11 -0
- package/dist/components/nano-grid.js.map +1 -0
- package/dist/components/nano-hero.d.ts +11 -0
- package/dist/components/nano-hero.js +187 -0
- package/dist/components/nano-hero.js.map +1 -0
- package/dist/components/nano-icon-button.d.ts +11 -0
- package/dist/components/nano-icon-button.js +11 -0
- package/dist/components/nano-icon-button.js.map +1 -0
- package/dist/components/nano-icon.d.ts +11 -0
- package/dist/components/nano-icon.js +11 -0
- package/dist/components/nano-icon.js.map +1 -0
- package/dist/components/nano-img.d.ts +11 -0
- package/dist/components/nano-img.js +11 -0
- package/dist/components/nano-img.js.map +1 -0
- package/dist/components/nano-input.d.ts +11 -0
- package/dist/components/nano-input.js +11 -0
- package/dist/components/nano-input.js.map +1 -0
- package/dist/components/nano-menu-drawer.d.ts +11 -0
- package/dist/components/nano-menu-drawer.js +221 -0
- package/dist/components/nano-menu-drawer.js.map +1 -0
- package/dist/components/nano-menu.d.ts +11 -0
- package/dist/components/nano-menu.js +11 -0
- package/dist/components/nano-menu.js.map +1 -0
- package/dist/components/nano-nav-item.d.ts +11 -0
- package/dist/components/nano-nav-item.js +11 -0
- package/dist/components/nano-nav-item.js.map +1 -0
- package/dist/components/nano-option.d.ts +11 -0
- package/dist/components/nano-option.js +11 -0
- package/dist/components/nano-option.js.map +1 -0
- package/dist/components/nano-range.d.ts +11 -0
- package/dist/components/nano-range.js +430 -0
- package/dist/components/nano-range.js.map +1 -0
- package/dist/components/nano-rating.d.ts +11 -0
- package/dist/components/nano-rating.js +240 -0
- package/dist/components/nano-rating.js.map +1 -0
- package/dist/components/nano-resize-observe.d.ts +11 -0
- package/dist/components/nano-resize-observe.js +11 -0
- package/dist/components/nano-resize-observe.js.map +1 -0
- package/dist/components/nano-select.d.ts +11 -0
- package/dist/components/nano-select.js +11 -0
- package/dist/components/nano-select.js.map +1 -0
- package/dist/components/nano-skeleton.d.ts +11 -0
- package/dist/components/nano-skeleton.js +11 -0
- package/dist/components/nano-skeleton.js.map +1 -0
- package/dist/components/nano-slide.d.ts +11 -0
- package/dist/components/nano-slide.js +66 -0
- package/dist/components/nano-slide.js.map +1 -0
- package/dist/components/nano-slides.d.ts +11 -0
- package/dist/components/nano-slides.js +4335 -0
- package/dist/components/nano-slides.js.map +1 -0
- package/dist/components/nano-spinner.d.ts +11 -0
- package/dist/components/nano-spinner.js +11 -0
- package/dist/components/nano-spinner.js.map +1 -0
- package/dist/components/nano-sticker.d.ts +11 -0
- package/dist/components/nano-sticker.js +11 -0
- package/dist/components/nano-sticker.js.map +1 -0
- package/dist/components/nano-tab-content.d.ts +11 -0
- package/dist/components/nano-tab-content.js +49 -0
- package/dist/components/nano-tab-content.js.map +1 -0
- package/dist/components/nano-tab-group.d.ts +11 -0
- package/dist/components/nano-tab-group.js +457 -0
- package/dist/components/nano-tab-group.js.map +1 -0
- package/dist/components/nano-tab.d.ts +11 -0
- package/dist/components/nano-tab.js +86 -0
- package/dist/components/nano-tab.js.map +1 -0
- package/dist/components/nano-tooltip.d.ts +11 -0
- package/dist/components/nano-tooltip.js +11 -0
- package/dist/components/nano-tooltip.js.map +1 -0
- package/dist/components/nav-item.js +327 -0
- package/dist/components/nav-item.js.map +1 -0
- package/dist/components/option.js +120 -0
- package/dist/components/option.js.map +1 -0
- package/dist/{esm/popover-2c7b2326.js → components/popover.js} +10 -1
- package/dist/components/popover.js.map +1 -0
- package/dist/components/resize-observe.js +162 -0
- package/dist/components/resize-observe.js.map +1 -0
- package/dist/{esm/scroll-5cd0ab13.js → components/scroll.js} +2 -2
- package/dist/components/scroll.js.map +1 -0
- package/dist/components/select.js +667 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/skeleton.js +43 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/slot.js +48 -0
- package/dist/components/slot.js.map +1 -0
- package/dist/components/spinner.js +49 -0
- package/dist/components/spinner.js.map +1 -0
- package/dist/components/sticker.js +665 -0
- package/dist/components/sticker.js.map +1 -0
- package/dist/{esm/tabbable-e21f860a.js → components/tabbable.js} +8 -6
- package/dist/components/tabbable.js.map +1 -0
- package/dist/components/theme.js +29 -0
- package/dist/components/theme.js.map +1 -0
- package/dist/components/throttle.js +55 -0
- package/dist/components/throttle.js.map +1 -0
- package/dist/components/tooltip.js +216 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/custom-elements/index.d.ts +12 -6
- package/dist/custom-elements/index.js +1722 -1113
- package/dist/custom-elements/index.js.map +1 -1
- package/dist/esm/active-element-75b7c8a0.js +19 -0
- package/dist/esm/active-element-75b7c8a0.js.map +1 -0
- package/dist/esm/{algoliasearch.umd-8e5aff52.js → algoliasearch.umd-adbc4aa5.js} +3 -3
- package/dist/esm/{algoliasearch.umd-8e5aff52.js.map → algoliasearch.umd-adbc4aa5.js.map} +1 -1
- package/dist/esm/dom-faa69d29.js +75 -0
- package/dist/esm/dom-faa69d29.js.map +1 -0
- package/dist/esm/form-control-67eeb108.js +77 -0
- package/dist/esm/form-control-67eeb108.js.map +1 -0
- package/dist/esm/index-5f8d16e7.js +12 -12
- package/dist/esm/index-bf53664b.js +74 -0
- package/dist/esm/{index-f41ae118.js.map → index-bf53664b.js.map} +1 -1
- package/dist/esm/index.js +4 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{modal-eb0a9bb3.js → modal-215df46b.js} +2 -2
- package/dist/esm/{modal-eb0a9bb3.js.map → modal-215df46b.js.map} +1 -1
- package/dist/esm/nano-accordion.entry.js +2 -4
- package/dist/esm/nano-accordion.entry.js.map +1 -1
- package/dist/esm/nano-alert.entry.js +6 -6
- package/dist/esm/nano-alert.entry.js.map +1 -1
- package/dist/esm/nano-algolia-filter.entry.js +1 -1
- package/dist/esm/nano-algolia-filter.entry.js.map +1 -1
- package/dist/esm/nano-algolia-input.entry.js +1 -1
- package/dist/esm/nano-algolia.entry.js +9 -5
- package/dist/esm/nano-algolia.entry.js.map +1 -1
- package/dist/esm/nano-aspect-ratio.entry.js +1 -1
- package/dist/esm/nano-aspect-ratio.entry.js.map +1 -1
- package/dist/esm/nano-checkbox-group.entry.js +4 -1
- package/dist/esm/nano-checkbox-group.entry.js.map +1 -1
- package/dist/esm/nano-checkbox.entry.js +1 -1
- package/dist/esm/nano-checkbox.entry.js.map +1 -1
- package/dist/esm/nano-components.js +1 -1
- package/dist/esm/nano-datalist_3.entry.js +770 -0
- package/dist/esm/nano-datalist_3.entry.js.map +1 -0
- package/dist/esm/nano-date-input.entry.js +9 -5
- package/dist/esm/nano-date-input.entry.js.map +1 -1
- package/dist/esm/{nano-date-picker_2.entry.js → nano-date-picker.entry.js} +3 -274
- package/dist/esm/nano-date-picker.entry.js.map +1 -0
- package/dist/esm/nano-details.entry.js +2 -2
- package/dist/esm/nano-details.entry.js.map +1 -1
- package/dist/esm/nano-dialog.entry.js +5 -5
- package/dist/esm/nano-dialog.entry.js.map +1 -1
- package/dist/esm/nano-drawer.entry.js +5 -5
- package/dist/esm/nano-drawer.entry.js.map +1 -1
- package/dist/esm/nano-dropdown.entry.js +303 -0
- package/dist/esm/nano-dropdown.entry.js.map +1 -0
- package/dist/esm/nano-file-upload.entry.js +1 -1
- package/dist/esm/nano-file-upload.entry.js.map +1 -1
- package/dist/esm/nano-global-nav.entry.js +19 -24
- package/dist/esm/nano-global-nav.entry.js.map +1 -1
- package/dist/esm/nano-global-search-results.entry.js +200 -115
- package/dist/esm/nano-global-search-results.entry.js.map +1 -1
- package/dist/esm/nano-grid_3.entry.js +16 -8
- package/dist/esm/nano-grid_3.entry.js.map +1 -1
- package/dist/esm/nano-hero.entry.js +14 -6
- package/dist/esm/nano-hero.entry.js.map +1 -1
- package/dist/esm/nano-icon-button.entry.js +2 -2
- package/dist/esm/nano-icon-button.entry.js.map +1 -1
- package/dist/esm/nano-icon.entry.js +1 -1
- package/dist/esm/nano-icon.entry.js.map +1 -1
- package/dist/esm/nano-input.entry.js +80 -75
- package/dist/esm/nano-input.entry.js.map +1 -1
- package/dist/esm/nano-menu-drawer.entry.js +2 -2
- package/dist/esm/nano-menu-drawer.entry.js.map +1 -1
- package/dist/esm/nano-nav-item_2.entry.js +284 -533
- package/dist/esm/nano-nav-item_2.entry.js.map +1 -1
- package/dist/esm/nano-range.entry.js +2 -2
- package/dist/esm/nano-range.entry.js.map +1 -1
- package/dist/esm/nano-rating.entry.js +2 -2
- package/dist/esm/nano-rating.entry.js.map +1 -1
- package/dist/esm/nano-resize-observe_2.entry.js +1 -1
- package/dist/esm/nano-resize-observe_2.entry.js.map +1 -1
- package/dist/esm/nano-slide.entry.js +1 -1
- package/dist/esm/nano-slide.entry.js.map +1 -1
- package/dist/esm/nano-slides.entry.js +1 -1
- package/dist/esm/nano-slides.entry.js.map +1 -1
- package/dist/esm/nano-spinner.entry.js +1 -1
- package/dist/esm/nano-spinner.entry.js.map +1 -1
- package/dist/esm/nano-sticker.entry.js +3 -3
- package/dist/esm/nano-sticker.entry.js.map +1 -1
- package/dist/esm/nano-tab-content.entry.js +2 -2
- package/dist/esm/nano-tab-content.entry.js.map +1 -1
- package/dist/esm/nano-tab-group.entry.js +66 -33
- package/dist/esm/nano-tab-group.entry.js.map +1 -1
- package/dist/esm/nano-tab.entry.js +10 -3
- package/dist/esm/nano-tab.entry.js.map +1 -1
- package/dist/esm/nano-tooltip.entry.js +2 -2
- package/dist/esm/nano-tooltip.entry.js.map +1 -1
- package/dist/esm/popover-db86a392.js +1893 -0
- package/dist/esm/popover-db86a392.js.map +1 -0
- package/dist/esm/scroll-881feb46.js +76 -0
- package/dist/esm/{scroll-5cd0ab13.js.map → scroll-881feb46.js.map} +1 -1
- package/dist/esm/tabbable-614f515e.js +94 -0
- package/dist/esm/tabbable-614f515e.js.map +1 -0
- package/dist/esm-es5/active-element-75b7c8a0.js +5 -0
- package/dist/esm-es5/active-element-75b7c8a0.js.map +1 -0
- package/dist/esm-es5/{algoliasearch.umd-8e5aff52.js → algoliasearch.umd-adbc4aa5.js} +3 -3
- package/dist/esm-es5/{algoliasearch.umd-8e5aff52.js.map → algoliasearch.umd-adbc4aa5.js.map} +1 -1
- package/dist/esm-es5/dom-faa69d29.js +5 -0
- package/dist/esm-es5/dom-faa69d29.js.map +1 -0
- package/dist/esm-es5/form-control-67eeb108.js +5 -0
- package/dist/esm-es5/form-control-67eeb108.js.map +1 -0
- package/dist/esm-es5/index-5f8d16e7.js +1 -1
- package/dist/esm-es5/index-bf53664b.js +5 -0
- package/dist/esm-es5/index-bf53664b.js.map +1 -0
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/index.js.map +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/loader.js.map +1 -1
- package/dist/esm-es5/{modal-eb0a9bb3.js → modal-215df46b.js} +2 -2
- package/dist/esm-es5/{modal-eb0a9bb3.js.map → modal-215df46b.js.map} +0 -0
- package/dist/esm-es5/nano-accordion.entry.js +1 -1
- package/dist/esm-es5/nano-accordion.entry.js.map +1 -1
- package/dist/esm-es5/nano-alert.entry.js +1 -1
- package/dist/esm-es5/nano-alert.entry.js.map +1 -1
- package/dist/esm-es5/nano-algolia-filter.entry.js +1 -1
- package/dist/esm-es5/nano-algolia-filter.entry.js.map +1 -1
- package/dist/esm-es5/nano-algolia-input.entry.js +1 -1
- package/dist/esm-es5/nano-algolia.entry.js +1 -1
- package/dist/esm-es5/nano-algolia.entry.js.map +1 -1
- package/dist/esm-es5/nano-aspect-ratio.entry.js +1 -1
- package/dist/esm-es5/nano-aspect-ratio.entry.js.map +1 -1
- package/dist/esm-es5/nano-checkbox-group.entry.js +1 -1
- package/dist/esm-es5/nano-checkbox-group.entry.js.map +1 -1
- package/dist/esm-es5/nano-checkbox.entry.js +1 -1
- package/dist/esm-es5/nano-checkbox.entry.js.map +1 -1
- package/dist/esm-es5/nano-components.js +1 -1
- package/dist/esm-es5/nano-components.js.map +1 -1
- package/dist/esm-es5/nano-datalist_3.entry.js +5 -0
- package/dist/esm-es5/nano-datalist_3.entry.js.map +1 -0
- package/dist/esm-es5/nano-date-input.entry.js +1 -1
- package/dist/esm-es5/nano-date-input.entry.js.map +1 -1
- package/dist/esm-es5/nano-date-picker.entry.js +5 -0
- package/dist/esm-es5/nano-date-picker.entry.js.map +1 -0
- package/dist/esm-es5/nano-details.entry.js +1 -1
- package/dist/esm-es5/nano-details.entry.js.map +1 -1
- package/dist/esm-es5/nano-dialog.entry.js +1 -1
- package/dist/esm-es5/nano-dialog.entry.js.map +1 -1
- package/dist/esm-es5/nano-drawer.entry.js +1 -1
- package/dist/esm-es5/nano-drawer.entry.js.map +1 -1
- package/dist/esm-es5/nano-dropdown.entry.js +5 -0
- package/dist/esm-es5/nano-dropdown.entry.js.map +1 -0
- package/dist/esm-es5/nano-file-upload.entry.js +1 -1
- package/dist/esm-es5/nano-file-upload.entry.js.map +1 -1
- package/dist/esm-es5/nano-global-nav.entry.js +1 -1
- package/dist/esm-es5/nano-global-nav.entry.js.map +1 -1
- package/dist/esm-es5/nano-global-search-results.entry.js +2 -2
- package/dist/esm-es5/nano-global-search-results.entry.js.map +1 -1
- package/dist/esm-es5/nano-grid_3.entry.js +1 -1
- package/dist/esm-es5/nano-grid_3.entry.js.map +1 -1
- package/dist/esm-es5/nano-hero.entry.js +1 -1
- package/dist/esm-es5/nano-hero.entry.js.map +1 -1
- package/dist/esm-es5/nano-icon-button.entry.js +1 -1
- package/dist/esm-es5/nano-icon-button.entry.js.map +1 -1
- package/dist/esm-es5/nano-icon.entry.js +1 -1
- package/dist/esm-es5/nano-icon.entry.js.map +1 -1
- package/dist/esm-es5/nano-input.entry.js +2 -2
- package/dist/esm-es5/nano-input.entry.js.map +1 -1
- package/dist/esm-es5/nano-menu-drawer.entry.js +1 -1
- package/dist/esm-es5/nano-menu-drawer.entry.js.map +1 -1
- package/dist/esm-es5/nano-nav-item_2.entry.js +1 -1
- package/dist/esm-es5/nano-nav-item_2.entry.js.map +1 -1
- package/dist/esm-es5/nano-range.entry.js +1 -1
- package/dist/esm-es5/nano-range.entry.js.map +1 -1
- package/dist/esm-es5/nano-rating.entry.js +1 -1
- package/dist/esm-es5/nano-rating.entry.js.map +1 -1
- package/dist/esm-es5/nano-resize-observe_2.entry.js +2 -2
- package/dist/esm-es5/nano-resize-observe_2.entry.js.map +1 -1
- package/dist/esm-es5/nano-slide.entry.js +1 -1
- package/dist/esm-es5/nano-slide.entry.js.map +1 -1
- package/dist/esm-es5/nano-slides.entry.js +1 -1
- package/dist/esm-es5/nano-slides.entry.js.map +1 -1
- package/dist/esm-es5/nano-spinner.entry.js +1 -1
- package/dist/esm-es5/nano-spinner.entry.js.map +1 -1
- package/dist/esm-es5/nano-sticker.entry.js +1 -1
- package/dist/esm-es5/nano-sticker.entry.js.map +1 -1
- package/dist/esm-es5/nano-tab-content.entry.js +1 -1
- package/dist/esm-es5/nano-tab-content.entry.js.map +1 -1
- package/dist/esm-es5/nano-tab-group.entry.js +2 -2
- package/dist/esm-es5/nano-tab-group.entry.js.map +1 -1
- package/dist/esm-es5/nano-tab.entry.js +2 -2
- package/dist/esm-es5/nano-tab.entry.js.map +1 -1
- package/dist/esm-es5/nano-tooltip.entry.js +1 -1
- package/dist/esm-es5/nano-tooltip.entry.js.map +1 -1
- package/dist/esm-es5/{popover-2c7b2326.js → popover-db86a392.js} +2 -2
- package/dist/esm-es5/popover-db86a392.js.map +1 -0
- package/dist/esm-es5/{scroll-5cd0ab13.js → scroll-881feb46.js} +2 -2
- package/dist/esm-es5/{scroll-5cd0ab13.js.map → scroll-881feb46.js.map} +0 -0
- package/dist/esm-es5/tabbable-614f515e.js +5 -0
- package/dist/esm-es5/tabbable-614f515e.js.map +1 -0
- package/dist/nano-components/index.esm.js +1 -1
- package/dist/nano-components/index.esm.js.map +1 -1
- package/dist/nano-components/nano-components.css +1 -1
- package/dist/nano-components/nano-components.esm.js +1 -1
- package/dist/nano-components/nano-components.esm.js.map +1 -1
- package/dist/nano-components/{p-2f21a443.system.entry.js → p-033296c7.system.entry.js} +2 -2
- package/dist/nano-components/{p-2f21a443.system.entry.js.map → p-033296c7.system.entry.js.map} +1 -1
- package/dist/nano-components/p-040b6cda.entry.js +5 -0
- package/dist/nano-components/{p-61565b5a.entry.js.map → p-040b6cda.entry.js.map} +1 -1
- package/dist/nano-components/p-05c7bde1.system.entry.js +5 -0
- package/dist/nano-components/{p-30df44d9.system.entry.js.map → p-05c7bde1.system.entry.js.map} +1 -1
- package/dist/nano-components/p-07bdf44d.entry.js +5 -0
- package/dist/nano-components/{p-88bcf55b.entry.js.map → p-07bdf44d.entry.js.map} +1 -1
- package/dist/nano-components/p-09066701.system.entry.js +5 -0
- package/dist/nano-components/p-09066701.system.entry.js.map +1 -0
- package/dist/nano-components/p-090f22a9.system.entry.js +5 -0
- package/dist/nano-components/{p-854df906.system.entry.js.map → p-090f22a9.system.entry.js.map} +1 -1
- package/dist/nano-components/p-096682d9.system.js +1 -1
- package/dist/nano-components/p-096682d9.system.js.map +1 -1
- package/dist/nano-components/p-09d2d944.system.js +5 -0
- package/dist/nano-components/p-09d2d944.system.js.map +1 -0
- package/dist/nano-components/p-14402794.entry.js +5 -0
- package/dist/nano-components/p-14402794.entry.js.map +1 -0
- package/dist/nano-components/{p-21c2a9a5.system.entry.js → p-173bae15.system.entry.js} +2 -2
- package/dist/nano-components/{p-21c2a9a5.system.entry.js.map → p-173bae15.system.entry.js.map} +1 -1
- package/dist/nano-components/p-17ebff74.system.entry.js +5 -0
- package/dist/nano-components/p-17ebff74.system.entry.js.map +1 -0
- package/dist/nano-components/{p-731935b1.js → p-1805d59a.js} +2 -2
- package/dist/nano-components/{p-731935b1.js.map → p-1805d59a.js.map} +0 -0
- package/dist/nano-components/p-1a293bd0.entry.js +5 -0
- package/dist/nano-components/{p-8b7f8ef4.entry.js.map → p-1a293bd0.entry.js.map} +1 -1
- package/dist/nano-components/p-1c216ca4.system.js +5 -0
- package/dist/{esm-es5/index-f41ae118.js.map → nano-components/p-1c216ca4.system.js.map} +1 -1
- package/dist/nano-components/p-1d13dbdf.system.js +5 -0
- package/dist/nano-components/p-1d13dbdf.system.js.map +1 -0
- package/dist/nano-components/p-1e974cad.entry.js +5 -0
- package/dist/nano-components/{p-7e60c331.entry.js.map → p-1e974cad.entry.js.map} +1 -1
- package/dist/nano-components/p-20387cde.system.entry.js +5 -0
- package/dist/nano-components/{p-91778977.system.entry.js.map → p-20387cde.system.entry.js.map} +1 -1
- package/dist/nano-components/p-20db18f3.entry.js +5 -0
- package/dist/nano-components/{p-a9dd7cf9.entry.js.map → p-20db18f3.entry.js.map} +1 -1
- package/dist/nano-components/p-22884654.system.entry.js +5 -0
- package/dist/nano-components/{p-3d0fbd0e.system.entry.js.map → p-22884654.system.entry.js.map} +1 -1
- package/dist/nano-components/p-239cc7ff.system.entry.js +5 -0
- package/dist/nano-components/p-239cc7ff.system.entry.js.map +1 -0
- package/dist/nano-components/p-2559e9c1.entry.js +5 -0
- package/dist/nano-components/p-2559e9c1.entry.js.map +1 -0
- package/dist/nano-components/p-289aa03f.js +5 -0
- package/dist/nano-components/p-289aa03f.js.map +1 -0
- package/dist/nano-components/p-2e6c55e2.entry.js +5 -0
- package/dist/nano-components/{p-6f3d20fe.entry.js.map → p-2e6c55e2.entry.js.map} +1 -1
- package/dist/nano-components/{p-8757b4eb.js → p-305abcb0.js} +3 -3
- package/dist/nano-components/{p-8757b4eb.js.map → p-305abcb0.js.map} +1 -1
- package/dist/nano-components/{p-60c9b580.system.js → p-3258c568.system.js} +2 -2
- package/dist/nano-components/p-3258c568.system.js.map +1 -0
- package/dist/nano-components/p-3456db01.entry.js +5 -0
- package/dist/nano-components/p-3456db01.entry.js.map +1 -0
- package/dist/nano-components/p-346588cc.entry.js +5 -0
- package/dist/nano-components/p-346588cc.entry.js.map +1 -0
- package/dist/nano-components/p-394c3c19.entry.js +5 -0
- package/dist/nano-components/{p-217f71aa.entry.js.map → p-394c3c19.entry.js.map} +1 -1
- package/dist/nano-components/p-3a13948a.system.entry.js +5 -0
- package/dist/nano-components/p-3a13948a.system.entry.js.map +1 -0
- package/dist/nano-components/p-3aa1d07d.entry.js +5 -0
- package/dist/nano-components/{p-6a1c69d3.entry.js.map → p-3aa1d07d.entry.js.map} +1 -1
- package/dist/nano-components/p-3ad1d5aa.system.entry.js +5 -0
- package/dist/nano-components/p-3ad1d5aa.system.entry.js.map +1 -0
- package/dist/nano-components/p-3ef30ded.system.entry.js +5 -0
- package/dist/nano-components/{p-9bf4a6e0.system.entry.js.map → p-3ef30ded.system.entry.js.map} +1 -1
- package/dist/nano-components/p-4429caac.system.entry.js +5 -0
- package/dist/nano-components/p-4429caac.system.entry.js.map +1 -0
- package/dist/nano-components/p-4535e3bb.entry.js +5 -0
- package/dist/nano-components/{p-143bca0d.entry.js.map → p-4535e3bb.entry.js.map} +1 -1
- package/dist/nano-components/p-462ad4f1.entry.js +5 -0
- package/dist/nano-components/p-462ad4f1.entry.js.map +1 -0
- package/dist/nano-components/p-5066e563.system.entry.js +5 -0
- package/dist/nano-components/{p-006f2fd3.system.entry.js.map → p-5066e563.system.entry.js.map} +1 -1
- package/dist/nano-components/p-52ab579e.system.entry.js +5 -0
- package/dist/nano-components/p-52ab579e.system.entry.js.map +1 -0
- package/dist/nano-components/p-531d5275.system.entry.js +5 -0
- package/dist/nano-components/{p-b79dc23a.system.entry.js.map → p-531d5275.system.entry.js.map} +1 -1
- package/dist/nano-components/p-55535a0c.system.entry.js +5 -0
- package/dist/nano-components/p-55535a0c.system.entry.js.map +1 -0
- package/dist/nano-components/p-5653961d.system.entry.js +5 -0
- package/dist/nano-components/{p-18f49ebf.system.entry.js.map → p-5653961d.system.entry.js.map} +1 -1
- package/dist/nano-components/p-56ba0d63.entry.js +5 -0
- package/dist/nano-components/p-56ba0d63.entry.js.map +1 -0
- package/dist/nano-components/p-593de29b.system.entry.js +5 -0
- package/dist/nano-components/{p-76b13c27.system.entry.js.map → p-593de29b.system.entry.js.map} +1 -1
- package/dist/nano-components/{p-8a608e6d.entry.js → p-5e7c7d3d.entry.js} +2 -2
- package/dist/nano-components/{p-8a608e6d.entry.js.map → p-5e7c7d3d.entry.js.map} +1 -1
- package/dist/nano-components/p-672e5547.js +5 -0
- package/dist/nano-components/p-672e5547.js.map +1 -0
- package/dist/nano-components/p-69439aa1.system.entry.js +5 -0
- package/dist/nano-components/p-69439aa1.system.entry.js.map +1 -0
- package/dist/nano-components/p-6ade3290.entry.js +5 -0
- package/dist/nano-components/{p-1e03f9bf.entry.js.map → p-6ade3290.entry.js.map} +1 -1
- package/dist/nano-components/p-70dec19f.entry.js +5 -0
- package/dist/nano-components/{p-d0e9b177.entry.js.map → p-70dec19f.entry.js.map} +1 -1
- package/dist/nano-components/p-7232c046.system.entry.js +5 -0
- package/dist/nano-components/{p-92b3f99b.system.entry.js.map → p-7232c046.system.entry.js.map} +1 -1
- package/dist/nano-components/p-730f60ea.entry.js +5 -0
- package/dist/nano-components/{p-78cf9d39.entry.js.map → p-730f60ea.entry.js.map} +1 -1
- package/dist/nano-components/{p-a16651a6.system.js → p-7319fa52.system.js} +3 -3
- package/dist/nano-components/{p-a16651a6.system.js.map → p-7319fa52.system.js.map} +1 -1
- package/dist/nano-components/p-74a7fc4f.js +5 -0
- package/dist/nano-components/p-74a7fc4f.js.map +1 -0
- package/dist/nano-components/{p-981cc614.entry.js → p-7a9aeeb5.entry.js} +2 -2
- package/dist/nano-components/{p-981cc614.entry.js.map → p-7a9aeeb5.entry.js.map} +0 -0
- package/dist/nano-components/{p-d31761c8.system.js → p-7be6b7f3.system.js} +2 -2
- package/dist/nano-components/p-7be6b7f3.system.js.map +1 -0
- package/dist/nano-components/p-7d2e2685.entry.js +5 -0
- package/dist/nano-components/p-7d2e2685.entry.js.map +1 -0
- package/dist/nano-components/p-820d9e23.system.entry.js +5 -0
- package/dist/nano-components/p-820d9e23.system.entry.js.map +1 -0
- package/dist/nano-components/p-8278c5d2.system.entry.js +5 -0
- package/dist/nano-components/{p-badf69ee.system.entry.js.map → p-8278c5d2.system.entry.js.map} +1 -1
- package/dist/nano-components/p-82f4b071.entry.js +5 -0
- package/dist/nano-components/p-82f4b071.entry.js.map +1 -0
- package/dist/nano-components/p-88f17c86.system.entry.js +5 -0
- package/dist/nano-components/p-88f17c86.system.entry.js.map +1 -0
- package/dist/nano-components/p-8a8f893b.system.entry.js +5 -0
- package/dist/nano-components/{p-cc668975.system.entry.js.map → p-8a8f893b.system.entry.js.map} +1 -1
- package/dist/nano-components/p-93448bcd.system.entry.js +5 -0
- package/dist/nano-components/{p-02e82e14.system.entry.js.map → p-93448bcd.system.entry.js.map} +1 -1
- package/dist/nano-components/p-94593617.system.entry.js +5 -0
- package/dist/nano-components/{p-2442eda0.system.entry.js.map → p-94593617.system.entry.js.map} +1 -1
- package/dist/nano-components/{p-56113dd3.js → p-9a385481.js} +2 -2
- package/dist/nano-components/p-9a385481.js.map +1 -0
- package/dist/nano-components/{p-8134c14e.system.js → p-9de508a5.system.js} +2 -2
- package/dist/nano-components/p-9de508a5.system.js.map +1 -0
- package/dist/nano-components/p-a315ed2c.entry.js +5 -0
- package/dist/nano-components/{p-13801651.entry.js.map → p-a315ed2c.entry.js.map} +1 -1
- package/dist/nano-components/{p-18411914.system.js → p-b370e3ef.system.js} +2 -2
- package/dist/nano-components/{p-18411914.system.js.map → p-b370e3ef.system.js.map} +0 -0
- package/dist/nano-components/p-b59d2bd5.entry.js +5 -0
- package/dist/nano-components/p-b59d2bd5.entry.js.map +1 -0
- package/dist/nano-components/p-b619500f.js +5 -0
- package/dist/nano-components/p-b619500f.js.map +1 -0
- package/dist/nano-components/{p-23f65b34.entry.js → p-ba13bb56.entry.js} +2 -2
- package/dist/nano-components/{p-23f65b34.entry.js.map → p-ba13bb56.entry.js.map} +1 -1
- package/dist/nano-components/p-c0ddb4c3.entry.js +5 -0
- package/dist/nano-components/{p-78569d39.entry.js.map → p-c0ddb4c3.entry.js.map} +1 -1
- package/dist/nano-components/p-c475b57f.system.entry.js +5 -0
- package/dist/nano-components/p-c475b57f.system.entry.js.map +1 -0
- package/dist/nano-components/{p-bfc12324.system.entry.js → p-c7c50a7d.system.entry.js} +2 -2
- package/dist/nano-components/{p-bfc12324.system.entry.js.map → p-c7c50a7d.system.entry.js.map} +0 -0
- package/dist/nano-components/p-c9c1a345.system.entry.js +5 -0
- package/dist/nano-components/{p-38a3e791.system.entry.js.map → p-c9c1a345.system.entry.js.map} +1 -1
- package/dist/nano-components/{p-8c8963f6.js → p-cb79d1ec.js} +2 -2
- package/dist/nano-components/{p-8c8963f6.js.map → p-cb79d1ec.js.map} +0 -0
- package/dist/nano-components/p-cce0806e.entry.js +5 -0
- package/dist/nano-components/p-cce0806e.entry.js.map +1 -0
- package/dist/nano-components/p-d6569144.entry.js +5 -0
- package/dist/nano-components/{p-c7b7f7ab.entry.js.map → p-d6569144.entry.js.map} +1 -1
- package/dist/nano-components/{p-2d1a856e.system.js → p-d84ef175.system.js} +2 -2
- package/dist/nano-components/{p-2d1a856e.system.js.map → p-d84ef175.system.js.map} +0 -0
- package/dist/nano-components/p-d857f3ed.entry.js +5 -0
- package/dist/nano-components/p-d857f3ed.entry.js.map +1 -0
- package/dist/nano-components/p-d9c7909e.js +5 -0
- package/dist/nano-components/p-d9c7909e.js.map +1 -0
- package/dist/nano-components/p-dfe50fff.entry.js +5 -0
- package/dist/nano-components/p-dfe50fff.entry.js.map +1 -0
- package/dist/nano-components/p-e11bd40d.entry.js +5 -0
- package/dist/nano-components/{p-a21d90aa.entry.js.map → p-e11bd40d.entry.js.map} +1 -1
- package/dist/nano-components/p-e15be516.system.entry.js +5 -0
- package/dist/nano-components/p-e15be516.system.entry.js.map +1 -0
- package/dist/nano-components/p-e35eac75.entry.js +5 -0
- package/dist/nano-components/p-e35eac75.entry.js.map +1 -0
- package/dist/nano-components/p-e562bffd.entry.js +5 -0
- package/dist/nano-components/p-e562bffd.entry.js.map +1 -0
- package/dist/nano-components/p-e64daa92.entry.js +5 -0
- package/dist/nano-components/p-e64daa92.entry.js.map +1 -0
- package/dist/nano-components/p-e6f41b97.entry.js +5 -0
- package/dist/nano-components/p-e6f41b97.entry.js.map +1 -0
- package/dist/nano-components/p-e6f8f9f7.system.entry.js +5 -0
- package/dist/nano-components/p-e6f8f9f7.system.entry.js.map +1 -0
- package/dist/nano-components/p-ea5eb591.system.js +5 -0
- package/dist/nano-components/p-ea5eb591.system.js.map +1 -0
- package/dist/nano-components/p-ef4e0912.system.entry.js +5 -0
- package/dist/nano-components/{p-2aed806d.system.entry.js.map → p-ef4e0912.system.entry.js.map} +1 -1
- package/dist/nano-components/p-f2e7d2f9.system.entry.js +5 -0
- package/dist/nano-components/p-f2e7d2f9.system.entry.js.map +1 -0
- package/dist/nano-components/p-f3bf942d.entry.js +5 -0
- package/dist/nano-components/p-f3bf942d.entry.js.map +1 -0
- package/dist/nano-components/p-f53989c3.system.entry.js +5 -0
- package/dist/nano-components/{p-6621e4f1.system.entry.js.map → p-f53989c3.system.entry.js.map} +1 -1
- package/dist/nano-components/p-f84998c9.system.entry.js +5 -0
- package/dist/nano-components/p-f84998c9.system.entry.js.map +1 -0
- package/dist/themes/nanopore.css +1 -1
- package/dist/themes/nanopore.css.map +1 -1
- package/dist/types/components/accordion/accordion.d.ts +0 -1
- package/dist/types/components/checkbox/checkbox-group.d.ts +1 -0
- package/dist/types/components/datalist/datalist.d.ts +98 -0
- package/dist/types/components/date-input/date-input.d.ts +2 -0
- package/dist/types/components/dialog/dialog.helpers.d.ts +2 -2
- package/dist/types/components/dropdown/dropdown.d.ts +8 -4
- package/dist/types/components/form-control/form-control.d.ts +35 -0
- package/dist/types/components/global-search-results/global-search-results.d.ts +1 -0
- package/dist/types/components/grid/grid.d.ts +7 -1
- package/dist/types/components/hero/hero.d.ts +2 -0
- package/dist/types/components/input/input.d.ts +13 -9
- package/dist/types/components/menu/menu.d.ts +22 -8
- package/dist/types/components/option/option-interface.d.ts +7 -0
- package/dist/types/components/option/option.d.ts +45 -0
- package/dist/types/components/select/select.d.ts +43 -49
- package/dist/types/components/tabs/tab-group.d.ts +26 -6
- package/dist/types/components/tabs/tab.d.ts +6 -1
- package/dist/types/components.d.ts +241 -70
- package/dist/types/interface.d.ts +1 -0
- package/dist/types/utils/active-element.d.ts +1 -0
- package/dist/types/utils/dom.d.ts +9 -1
- package/dist/types/utils/index.d.ts +2 -1
- package/dist/types/utils/tabbable.d.ts +2 -2
- package/dist/types/utils/testing/index.d.ts +3 -2
- package/docs-json.json +1223 -261
- package/docs-vscode.json +102 -33
- package/package.json +5 -5
- package/dist/cjs/dom-5f3fae1a.js.map +0 -1
- package/dist/cjs/index-117f36a4.js.map +0 -1
- package/dist/cjs/nano-date-picker_2.cjs.entry.js.map +0 -1
- package/dist/cjs/nano-menu.cjs.entry.js +0 -156
- package/dist/cjs/nano-menu.cjs.entry.js.map +0 -1
- package/dist/cjs/nano-select-option.cjs.entry.js +0 -43
- package/dist/cjs/nano-select-option.cjs.entry.js.map +0 -1
- package/dist/cjs/popover-d033efa2.js.map +0 -1
- package/dist/cjs/tabbable-615c30e1.js.map +0 -1
- package/dist/collection/components/select/select-option.css +0 -15
- package/dist/collection/components/select/select-option.js +0 -127
- package/dist/collection/components/select/select-option.js.map +0 -1
- package/dist/esm/dom-a791b223.js.map +0 -1
- package/dist/esm/nano-date-picker_2.entry.js.map +0 -1
- package/dist/esm/nano-menu.entry.js +0 -152
- package/dist/esm/nano-menu.entry.js.map +0 -1
- package/dist/esm/nano-select-option.entry.js +0 -39
- package/dist/esm/nano-select-option.entry.js.map +0 -1
- package/dist/esm/popover-2c7b2326.js.map +0 -1
- package/dist/esm/tabbable-e21f860a.js.map +0 -1
- package/dist/esm-es5/dom-a791b223.js +0 -5
- package/dist/esm-es5/dom-a791b223.js.map +0 -1
- package/dist/esm-es5/index-f41ae118.js +0 -5
- package/dist/esm-es5/nano-date-picker_2.entry.js +0 -5
- package/dist/esm-es5/nano-date-picker_2.entry.js.map +0 -1
- package/dist/esm-es5/nano-menu.entry.js +0 -5
- package/dist/esm-es5/nano-menu.entry.js.map +0 -1
- package/dist/esm-es5/nano-select-option.entry.js +0 -5
- package/dist/esm-es5/nano-select-option.entry.js.map +0 -1
- package/dist/esm-es5/popover-2c7b2326.js.map +0 -1
- package/dist/esm-es5/tabbable-e21f860a.js +0 -5
- package/dist/esm-es5/tabbable-e21f860a.js.map +0 -1
- package/dist/nano-components/p-006f2fd3.system.entry.js +0 -5
- package/dist/nano-components/p-02e82e14.system.entry.js +0 -5
- package/dist/nano-components/p-05a8014a.entry.js +0 -5
- package/dist/nano-components/p-05a8014a.entry.js.map +0 -1
- package/dist/nano-components/p-13801651.entry.js +0 -5
- package/dist/nano-components/p-13fa75fc.entry.js +0 -5
- package/dist/nano-components/p-13fa75fc.entry.js.map +0 -1
- package/dist/nano-components/p-143bca0d.entry.js +0 -5
- package/dist/nano-components/p-18f49ebf.system.entry.js +0 -5
- package/dist/nano-components/p-19428228.system.entry.js +0 -5
- package/dist/nano-components/p-19428228.system.entry.js.map +0 -1
- package/dist/nano-components/p-1e03f9bf.entry.js +0 -5
- package/dist/nano-components/p-217f71aa.entry.js +0 -5
- package/dist/nano-components/p-2442eda0.system.entry.js +0 -5
- package/dist/nano-components/p-2946bd70.system.entry.js +0 -5
- package/dist/nano-components/p-2946bd70.system.entry.js.map +0 -1
- package/dist/nano-components/p-2aed806d.system.entry.js +0 -5
- package/dist/nano-components/p-30df44d9.system.entry.js +0 -5
- package/dist/nano-components/p-38a3e791.system.entry.js +0 -5
- package/dist/nano-components/p-3a49ceab.entry.js +0 -5
- package/dist/nano-components/p-3a49ceab.entry.js.map +0 -1
- package/dist/nano-components/p-3d0fbd0e.system.entry.js +0 -5
- package/dist/nano-components/p-3f00179c.js +0 -5
- package/dist/nano-components/p-3f00179c.js.map +0 -1
- package/dist/nano-components/p-48e6bea3.entry.js +0 -5
- package/dist/nano-components/p-48e6bea3.entry.js.map +0 -1
- package/dist/nano-components/p-4d62ec32.system.js +0 -5
- package/dist/nano-components/p-4d62ec32.system.js.map +0 -1
- package/dist/nano-components/p-4e451498.entry.js +0 -5
- package/dist/nano-components/p-4e451498.entry.js.map +0 -1
- package/dist/nano-components/p-51d9570d.entry.js +0 -5
- package/dist/nano-components/p-51d9570d.entry.js.map +0 -1
- package/dist/nano-components/p-51fa04a6.entry.js +0 -5
- package/dist/nano-components/p-51fa04a6.entry.js.map +0 -1
- package/dist/nano-components/p-55189485.system.entry.js +0 -5
- package/dist/nano-components/p-55189485.system.entry.js.map +0 -1
- package/dist/nano-components/p-56113dd3.js.map +0 -1
- package/dist/nano-components/p-5bbd6c81.entry.js +0 -5
- package/dist/nano-components/p-5bbd6c81.entry.js.map +0 -1
- package/dist/nano-components/p-5e9170ae.entry.js +0 -5
- package/dist/nano-components/p-5e9170ae.entry.js.map +0 -1
- package/dist/nano-components/p-60c9b580.system.js.map +0 -1
- package/dist/nano-components/p-61565b5a.entry.js +0 -5
- package/dist/nano-components/p-621750cc.js +0 -5
- package/dist/nano-components/p-621750cc.js.map +0 -1
- package/dist/nano-components/p-6621e4f1.system.entry.js +0 -5
- package/dist/nano-components/p-6a1c69d3.entry.js +0 -5
- package/dist/nano-components/p-6ab8d211.system.entry.js +0 -5
- package/dist/nano-components/p-6ab8d211.system.entry.js.map +0 -1
- package/dist/nano-components/p-6e9b3d60.system.entry.js +0 -5
- package/dist/nano-components/p-6e9b3d60.system.entry.js.map +0 -1
- package/dist/nano-components/p-6f3d20fe.entry.js +0 -5
- package/dist/nano-components/p-6feac35e.entry.js +0 -5
- package/dist/nano-components/p-6feac35e.entry.js.map +0 -1
- package/dist/nano-components/p-723c212f.system.entry.js +0 -5
- package/dist/nano-components/p-723c212f.system.entry.js.map +0 -1
- package/dist/nano-components/p-76b13c27.system.entry.js +0 -5
- package/dist/nano-components/p-78569d39.entry.js +0 -5
- package/dist/nano-components/p-78cf9d39.entry.js +0 -5
- package/dist/nano-components/p-7e60c331.entry.js +0 -5
- package/dist/nano-components/p-8134c14e.system.js.map +0 -1
- package/dist/nano-components/p-81b4ed2a.system.entry.js +0 -5
- package/dist/nano-components/p-81b4ed2a.system.entry.js.map +0 -1
- package/dist/nano-components/p-854df906.system.entry.js +0 -5
- package/dist/nano-components/p-88bcf55b.entry.js +0 -5
- package/dist/nano-components/p-8b7f8ef4.entry.js +0 -5
- package/dist/nano-components/p-8c3993ff.entry.js +0 -5
- package/dist/nano-components/p-8c3993ff.entry.js.map +0 -1
- package/dist/nano-components/p-91778977.system.entry.js +0 -5
- package/dist/nano-components/p-92b3f99b.system.entry.js +0 -5
- package/dist/nano-components/p-9bd73d1d.js +0 -5
- package/dist/nano-components/p-9bd73d1d.js.map +0 -1
- package/dist/nano-components/p-9bf4a6e0.system.entry.js +0 -5
- package/dist/nano-components/p-9df226fd.system.entry.js +0 -5
- package/dist/nano-components/p-9df226fd.system.entry.js.map +0 -1
- package/dist/nano-components/p-a0b55c38.system.entry.js +0 -5
- package/dist/nano-components/p-a0b55c38.system.entry.js.map +0 -1
- package/dist/nano-components/p-a21d90aa.entry.js +0 -5
- package/dist/nano-components/p-a9dd7cf9.entry.js +0 -5
- package/dist/nano-components/p-ad069ba4.entry.js +0 -5
- package/dist/nano-components/p-ad069ba4.entry.js.map +0 -1
- package/dist/nano-components/p-b246a7bb.entry.js +0 -5
- package/dist/nano-components/p-b246a7bb.entry.js.map +0 -1
- package/dist/nano-components/p-b45d4be9.entry.js +0 -5
- package/dist/nano-components/p-b45d4be9.entry.js.map +0 -1
- package/dist/nano-components/p-b79dc23a.system.entry.js +0 -5
- package/dist/nano-components/p-b86fc6b7.system.js +0 -5
- package/dist/nano-components/p-b86fc6b7.system.js.map +0 -1
- package/dist/nano-components/p-badf69ee.system.entry.js +0 -5
- package/dist/nano-components/p-bde0deae.system.entry.js +0 -5
- package/dist/nano-components/p-bde0deae.system.entry.js.map +0 -1
- package/dist/nano-components/p-be3df2e8.system.entry.js +0 -5
- package/dist/nano-components/p-be3df2e8.system.entry.js.map +0 -1
- package/dist/nano-components/p-c39c1e8d.entry.js +0 -5
- package/dist/nano-components/p-c39c1e8d.entry.js.map +0 -1
- package/dist/nano-components/p-c7b7f7ab.entry.js +0 -5
- package/dist/nano-components/p-c82ccbc8.entry.js +0 -5
- package/dist/nano-components/p-c82ccbc8.entry.js.map +0 -1
- package/dist/nano-components/p-cc668975.system.entry.js +0 -5
- package/dist/nano-components/p-cfd4c9de.system.entry.js +0 -5
- package/dist/nano-components/p-cfd4c9de.system.entry.js.map +0 -1
- package/dist/nano-components/p-d0e9b177.entry.js +0 -5
- package/dist/nano-components/p-d31761c8.system.js.map +0 -1
- package/dist/nano-components/p-d47d297b.system.entry.js +0 -5
- package/dist/nano-components/p-d47d297b.system.entry.js.map +0 -1
- package/dist/nano-components/p-e48a53f5.system.entry.js +0 -5
- package/dist/nano-components/p-e48a53f5.system.entry.js.map +0 -1
- package/dist/nano-components/p-e5f01860.entry.js +0 -5
- package/dist/nano-components/p-e5f01860.entry.js.map +0 -1
- package/dist/nano-components/p-f2b2cd38.system.entry.js +0 -5
- package/dist/nano-components/p-f2b2cd38.system.entry.js.map +0 -1
- package/dist/nano-components/p-fcb5ffaf.system.entry.js +0 -5
- package/dist/nano-components/p-fcb5ffaf.system.entry.js.map +0 -1
- package/dist/types/components/select/select-option.d.ts +0 -23
@@ -0,0 +1 @@
|
|
1
|
+
{"file":"index4.js","mappings":"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","names":[],"sources":["./src/utils/gesture/gesture-controller.ts","./src/utils/gesture/listener.ts","./src/utils/gesture/pointer-events.ts","./src/utils/gesture/recognizers.ts","./src/utils/gesture/index.ts"],"sourcesContent":["class GestureController {\n private gestureId = 0;\n private requestedStart = new Map<number, number>();\n private disabledGestures = new Map<string, Set<number>>();\n private disabledScroll = new Set<number>();\n private capturedId?: number;\n\n /**\n * Creates a gesture delegate based on the GestureConfig passed\n */\n createGesture(config: GestureConfig): GestureDelegate {\n return new GestureDelegate(\n this,\n this.newID(),\n config.name,\n config.priority || 0,\n !!config.disableScroll\n );\n }\n\n /**\n * Creates a blocker that will block any other gesture events from firing. Set in the ion-gesture component.\n */\n createBlocker(opts: BlockerConfig = {}): BlockerDelegate {\n return new BlockerDelegate(\n this,\n this.newID(),\n opts.disable,\n !!opts.disableScroll\n );\n }\n\n start(gestureName: string, id: number, priority: number): boolean {\n if (!this.canStart(gestureName)) {\n this.requestedStart.delete(id);\n return false;\n }\n this.requestedStart.set(id, priority);\n return true;\n }\n\n capture(gestureName: string, id: number, priority: number): boolean {\n if (!this.start(gestureName, id, priority)) {\n return false;\n }\n const requestedStart = this.requestedStart;\n let maxPriority = -10000;\n\n requestedStart.forEach((value) => {\n maxPriority = Math.max(maxPriority, value);\n });\n\n if (maxPriority === priority) {\n this.capturedId = id;\n requestedStart.clear();\n\n const event = new CustomEvent('ionGestureCaptured', {\n detail: { gestureName },\n });\n document.dispatchEvent(event);\n return true;\n }\n requestedStart.delete(id);\n\n return false;\n }\n\n release(id: number) {\n this.requestedStart.delete(id);\n\n if (this.capturedId === id) {\n this.capturedId = undefined;\n }\n }\n\n disableGesture(gestureName: string, id: number) {\n let set = this.disabledGestures.get(gestureName);\n if (set === undefined) {\n set = new Set<number>();\n this.disabledGestures.set(gestureName, set);\n }\n set.add(id);\n }\n\n enableGesture(gestureName: string, id: number) {\n const set = this.disabledGestures.get(gestureName);\n if (set !== undefined) {\n set.delete(id);\n }\n }\n\n disableScroll(id: number) {\n this.disabledScroll.add(id);\n if (this.disabledScroll.size === 1) {\n document.body.classList.add(BACKDROP_NO_SCROLL);\n }\n }\n\n enableScroll(id: number) {\n this.disabledScroll.delete(id);\n if (this.disabledScroll.size === 0) {\n document.body.classList.remove(BACKDROP_NO_SCROLL);\n }\n }\n\n canStart(gestureName: string): boolean {\n if (this.capturedId !== undefined) {\n // a gesture already captured\n return false;\n }\n\n if (this.isDisabled(gestureName)) {\n return false;\n }\n\n return true;\n }\n\n isCaptured(): boolean {\n return this.capturedId !== undefined;\n }\n\n isScrollDisabled(): boolean {\n return this.disabledScroll.size > 0;\n }\n\n isDisabled(gestureName: string): boolean {\n const disabled = this.disabledGestures.get(gestureName);\n if (disabled && disabled.size > 0) {\n return true;\n }\n return false;\n }\n\n private newID(): number {\n this.gestureId++;\n return this.gestureId;\n }\n}\n\nclass GestureDelegate {\n private ctrl?: GestureController;\n private priority: number;\n\n constructor(\n ctrl: GestureController,\n private id: number,\n private name: string,\n priority: number,\n private disableScroll: boolean\n ) {\n this.priority = priority * 1000000 + id;\n this.ctrl = ctrl;\n }\n\n canStart(): boolean {\n if (!this.ctrl) {\n return false;\n }\n\n return this.ctrl.canStart(this.name);\n }\n\n start(): boolean {\n if (!this.ctrl) {\n return false;\n }\n\n return this.ctrl.start(this.name, this.id, this.priority);\n }\n\n capture(): boolean {\n if (!this.ctrl) {\n return false;\n }\n\n const captured = this.ctrl.capture(this.name, this.id, this.priority);\n if (captured && this.disableScroll) {\n this.ctrl.disableScroll(this.id);\n }\n\n return captured;\n }\n\n release() {\n if (this.ctrl) {\n this.ctrl.release(this.id);\n\n if (this.disableScroll) {\n this.ctrl.enableScroll(this.id);\n }\n }\n }\n\n destroy() {\n this.release();\n this.ctrl = undefined;\n }\n}\n\nclass BlockerDelegate {\n private ctrl?: GestureController;\n\n constructor(\n ctrl: GestureController,\n private id: number,\n private disable: string[] | undefined,\n private disableScroll: boolean\n ) {\n this.ctrl = ctrl;\n }\n\n block() {\n if (!this.ctrl) {\n return;\n }\n if (this.disable) {\n for (const gesture of this.disable) {\n this.ctrl.disableGesture(gesture, this.id);\n }\n }\n\n if (this.disableScroll) {\n this.ctrl.disableScroll(this.id);\n }\n }\n\n unblock() {\n if (!this.ctrl) {\n return;\n }\n if (this.disable) {\n for (const gesture of this.disable) {\n this.ctrl.enableGesture(gesture, this.id);\n }\n }\n if (this.disableScroll) {\n this.ctrl.enableScroll(this.id);\n }\n }\n\n destroy() {\n this.unblock();\n this.ctrl = undefined;\n }\n}\n\nexport interface GestureConfig {\n name: string;\n priority?: number;\n disableScroll?: boolean;\n}\n\nexport interface BlockerConfig {\n disable?: string[];\n disableScroll?: boolean;\n}\n\nconst BACKDROP_NO_SCROLL = 'backdrop-no-scroll';\nexport const GESTURE_CONTROLLER = new GestureController();\n","export const addEventListener = (\n el: any,\n eventName: string,\n callback: EventListenerOrEventListenerObject,\n opts: {\n passive?: boolean;\n capture?: boolean;\n }\n): (() => void) => {\n // use event listener options when supported\n // otherwise it's just a boolean for the \"capture\" arg\n const listenerOpts = supportsPassive(el)\n ? {\n capture: !!opts.capture,\n passive: !!opts.passive,\n }\n : !!opts.capture;\n\n let add: string;\n let remove: string;\n if (el['__zone_symbol__addEventListener']) {\n add = '__zone_symbol__addEventListener';\n remove = '__zone_symbol__removeEventListener';\n } else {\n add = 'addEventListener';\n remove = 'removeEventListener';\n }\n\n el[add](eventName, callback, listenerOpts);\n return () => {\n el[remove](eventName, callback, listenerOpts);\n };\n};\n\nconst supportsPassive = (node: Node) => {\n if (_sPassive === undefined) {\n try {\n const opts = Object.defineProperty({}, 'passive', {\n get: () => {\n _sPassive = true;\n },\n });\n node.addEventListener(\n 'optsTest',\n () => {\n return;\n },\n opts\n );\n } catch (e) {\n _sPassive = false;\n }\n }\n return !!_sPassive;\n};\n\nlet _sPassive: boolean | undefined;\n","import { addEventListener } from './listener';\n\nconst MOUSE_WAIT = 2000;\n\nexport const createPointerEvents = (\n el: Node,\n pointerDown: any,\n pointerMove: any,\n pointerUp: any,\n options: {\n passive?: boolean;\n capture?: boolean;\n }\n) => {\n let rmTouchStart: (() => void) | undefined;\n let rmTouchMove: (() => void) | undefined;\n let rmTouchEnd: (() => void) | undefined;\n let rmTouchCancel: (() => void) | undefined;\n let rmMouseStart: (() => void) | undefined;\n let rmMouseMove: (() => void) | undefined;\n let rmMouseUp: (() => void) | undefined;\n let lastTouchEvent = 0;\n\n const handleTouchStart = (ev: any) => {\n lastTouchEvent = Date.now() + MOUSE_WAIT;\n if (!pointerDown(ev)) {\n return;\n }\n if (!rmTouchMove && pointerMove) {\n rmTouchMove = addEventListener(el, 'touchmove', pointerMove, options);\n }\n if (!rmTouchEnd) {\n rmTouchEnd = addEventListener(el, 'touchend', handleTouchEnd, options);\n }\n if (!rmTouchCancel) {\n rmTouchCancel = addEventListener(\n el,\n 'touchcancel',\n handleTouchEnd,\n options\n );\n }\n };\n\n const handleMouseDown = (ev: any) => {\n if (lastTouchEvent > Date.now()) {\n return;\n }\n if (!pointerDown(ev)) {\n return;\n }\n if (!rmMouseMove && pointerMove) {\n rmMouseMove = addEventListener(\n getDocument(el),\n 'mousemove',\n pointerMove,\n options\n );\n }\n if (!rmMouseUp) {\n rmMouseUp = addEventListener(\n getDocument(el),\n 'mouseup',\n handleMouseUp,\n options\n );\n }\n };\n\n const handleTouchEnd = (ev: any) => {\n stopTouch();\n if (pointerUp) {\n pointerUp(ev);\n }\n };\n\n const handleMouseUp = (ev: any) => {\n stopMouse();\n if (pointerUp) {\n pointerUp(ev);\n }\n };\n\n const stopTouch = () => {\n if (rmTouchMove) {\n rmTouchMove();\n }\n if (rmTouchEnd) {\n rmTouchEnd();\n }\n if (rmTouchCancel) {\n rmTouchCancel();\n }\n rmTouchMove = rmTouchEnd = rmTouchCancel = undefined;\n };\n\n const stopMouse = () => {\n if (rmMouseMove) {\n rmMouseMove();\n }\n if (rmMouseUp) {\n rmMouseUp();\n }\n rmMouseMove = rmMouseUp = undefined;\n };\n\n const stop = () => {\n stopTouch();\n stopMouse();\n };\n\n const enable = (isEnabled = true) => {\n if (!isEnabled) {\n if (rmTouchStart) {\n rmTouchStart();\n }\n if (rmMouseStart) {\n rmMouseStart();\n }\n rmTouchStart = rmMouseStart = undefined;\n stop();\n } else {\n if (!rmTouchStart) {\n rmTouchStart = addEventListener(\n el,\n 'touchstart',\n handleTouchStart,\n options\n );\n }\n if (!rmMouseStart) {\n rmMouseStart = addEventListener(\n el,\n 'mousedown',\n handleMouseDown,\n options\n );\n }\n }\n };\n\n const destroy = () => {\n enable(false);\n pointerUp = pointerMove = pointerDown = undefined;\n };\n\n return {\n enable,\n stop,\n destroy,\n };\n};\n\nconst getDocument = (node: Node) => {\n return node instanceof Document ? node : node.ownerDocument;\n};\n\nexport interface PointerEventsConfig {\n element?: HTMLElement;\n pointerDown: (ev: any) => boolean;\n pointerMove?: (ev: any) => void;\n pointerUp?: (ev: any) => void;\n zone?: boolean;\n capture?: boolean;\n passive?: boolean;\n}\n","export interface PanRecognizer {\n start(x: number, y: number): void;\n detect(x: number, y: number): boolean;\n isGesture(): boolean;\n getDirection(): number;\n}\n\nexport const createPanRecognizer = (\n direction: string,\n thresh: number,\n maxAngle: number\n): PanRecognizer => {\n const radians = maxAngle * (Math.PI / 180);\n const isDirX = direction === 'x';\n const maxCosine = Math.cos(radians);\n const threshold = thresh * thresh;\n\n let startX = 0;\n let startY = 0;\n\n let dirty = false;\n let isPan = 0;\n\n return {\n start(x: number, y: number) {\n startX = x;\n startY = y;\n isPan = 0;\n dirty = true;\n },\n\n detect(x: number, y: number): boolean {\n if (!dirty) {\n return false;\n }\n\n const deltaX = x - startX;\n const deltaY = y - startY;\n const distance = deltaX * deltaX + deltaY * deltaY;\n\n if (distance < threshold) {\n return false;\n }\n const hypotenuse = Math.sqrt(distance);\n const cosine = (isDirX ? deltaX : deltaY) / hypotenuse;\n\n if (cosine > maxCosine) {\n isPan = 1;\n } else if (cosine < -maxCosine) {\n isPan = -1;\n } else {\n isPan = 0;\n }\n\n dirty = false;\n return true;\n },\n\n isGesture(): boolean {\n return isPan !== 0;\n },\n\n getDirection(): number {\n return isPan;\n },\n };\n};\n","import { GESTURE_CONTROLLER } from './gesture-controller';\nimport { createPointerEvents } from './pointer-events';\nimport { createPanRecognizer } from './recognizers';\n\nexport const createGesture = (config: GestureConfig): Gesture => {\n let hasCapturedPan = false;\n let hasStartedPan = false;\n let hasFiredStart = true;\n let isMoveQueued = false;\n\n const finalConfig = {\n disableScroll: false,\n direction: 'x',\n gesturePriority: 0,\n passive: true,\n maxAngle: 40,\n threshold: 10,\n\n ...config,\n };\n\n const canStart = finalConfig.canStart;\n const onWillStart = finalConfig.onWillStart;\n const onStart = finalConfig.onStart;\n const onEnd = finalConfig.onEnd;\n const notCaptured = finalConfig.notCaptured;\n const onMove = finalConfig.onMove;\n const threshold = finalConfig.threshold;\n const passive = finalConfig.passive;\n const blurOnStart = finalConfig.blurOnStart;\n\n const detail = {\n type: 'pan',\n startX: 0,\n startY: 0,\n startTime: 0,\n currentX: 0,\n currentY: 0,\n velocityX: 0,\n velocityY: 0,\n deltaX: 0,\n deltaY: 0,\n currentTime: 0,\n event: undefined as any,\n data: undefined,\n };\n\n const pan = createPanRecognizer(\n finalConfig.direction,\n finalConfig.threshold,\n finalConfig.maxAngle\n );\n const gesture = GESTURE_CONTROLLER.createGesture({\n name: config.gestureName,\n priority: config.gesturePriority,\n disableScroll: config.disableScroll,\n });\n\n const pointerDown = (ev: UIEvent): boolean => {\n const timeStamp = now(ev);\n if (hasStartedPan || !hasFiredStart) {\n return false;\n }\n\n updateDetail(ev, detail);\n detail.startX = detail.currentX;\n detail.startY = detail.currentY;\n detail.startTime = detail.currentTime = timeStamp;\n detail.velocityX = detail.velocityY = detail.deltaX = detail.deltaY = 0;\n detail.event = ev;\n\n // Check if gesture can start\n if (canStart && canStart(detail) === false) {\n return false;\n }\n // Release fallback\n gesture.release();\n\n // Start gesture\n if (!gesture.start()) {\n return false;\n }\n\n hasStartedPan = true;\n if (threshold === 0) {\n return tryToCapturePan();\n }\n pan.start(detail.startX, detail.startY);\n return true;\n };\n\n const pointerMove = (ev: UIEvent) => {\n // fast path, if gesture is currently captured\n // do minimum job to get user-land even dispatched\n if (hasCapturedPan) {\n if (!isMoveQueued && hasFiredStart) {\n isMoveQueued = true;\n calcGestureData(detail, ev);\n requestAnimationFrame(fireOnMove);\n }\n return;\n }\n\n // gesture is currently being detected\n calcGestureData(detail, ev);\n if (pan.detect(detail.currentX, detail.currentY)) {\n if (!pan.isGesture() || !tryToCapturePan()) {\n abortGesture();\n }\n }\n };\n\n const fireOnMove = () => {\n // Since fireOnMove is called inside a RAF, onEnd() might be called,\n // we must double check hasCapturedPan\n if (!hasCapturedPan) {\n return;\n }\n isMoveQueued = false;\n if (onMove) {\n onMove(detail);\n }\n };\n\n const tryToCapturePan = (): boolean => {\n if (gesture && !gesture.capture()) {\n return false;\n }\n hasCapturedPan = true;\n hasFiredStart = false;\n\n // reset start position since the real user-land event starts here\n // If the pan detector threshold is big, not resetting the start position\n // will cause a jump in the animation equal to the detector threshold.\n // the array of positions used to calculate the gesture velocity does not\n // need to be cleaned, more points in the positions array always results in a\n // more accurate value of the velocity.\n detail.startX = detail.currentX;\n detail.startY = detail.currentY;\n detail.startTime = detail.currentTime;\n\n if (onWillStart) {\n onWillStart(detail).then(fireOnStart);\n } else {\n fireOnStart();\n }\n return true;\n };\n\n const blurActiveElement = () => {\n /* tslint:disable-next-line */\n if (typeof document !== 'undefined') {\n const activeElement = document.activeElement as HTMLElement | null;\n if (activeElement !== null && activeElement.blur) {\n activeElement.blur();\n }\n }\n };\n\n const fireOnStart = () => {\n if (blurOnStart) {\n blurActiveElement();\n }\n if (onStart) {\n onStart(detail);\n }\n hasFiredStart = true;\n };\n\n const reset = () => {\n hasCapturedPan = false;\n hasStartedPan = false;\n isMoveQueued = false;\n hasFiredStart = true;\n\n gesture.release();\n };\n\n // END *************************\n\n const pointerUp = (ev: UIEvent | undefined) => {\n const tmpHasCaptured = hasCapturedPan;\n const tmpHasFiredStart = hasFiredStart;\n reset();\n\n if (!tmpHasFiredStart) {\n return;\n }\n calcGestureData(detail, ev);\n\n // Try to capture press\n if (tmpHasCaptured) {\n if (onEnd) {\n onEnd(detail);\n }\n return;\n }\n\n // Not captured any event\n if (notCaptured) {\n notCaptured(detail);\n }\n };\n\n const pointerEvents = createPointerEvents(\n finalConfig.el,\n pointerDown,\n pointerMove,\n pointerUp,\n {\n capture: false,\n passive,\n }\n );\n\n const abortGesture = () => {\n reset();\n pointerEvents.stop();\n if (notCaptured) {\n notCaptured(detail);\n }\n };\n\n return {\n enable(enable = true) {\n if (!enable) {\n if (hasCapturedPan) {\n pointerUp(undefined);\n }\n\n reset();\n }\n pointerEvents.enable(enable);\n },\n destroy() {\n gesture.destroy();\n pointerEvents.destroy();\n },\n };\n};\n\nconst calcGestureData = (detail: GestureDetail, ev: UIEvent | undefined) => {\n if (!ev) {\n return;\n }\n const prevX = detail.currentX;\n const prevY = detail.currentY;\n const prevT = detail.currentTime;\n\n updateDetail(ev, detail);\n\n const currentX = detail.currentX;\n const currentY = detail.currentY;\n const timestamp = (detail.currentTime = now(ev));\n const timeDelta = timestamp - prevT;\n if (timeDelta > 0 && timeDelta < 100) {\n const velocityX = (currentX - prevX) / timeDelta;\n const velocityY = (currentY - prevY) / timeDelta;\n detail.velocityX = velocityX * 0.7 + detail.velocityX * 0.3;\n detail.velocityY = velocityY * 0.7 + detail.velocityY * 0.3;\n }\n detail.deltaX = currentX - detail.startX;\n detail.deltaY = currentY - detail.startY;\n detail.event = ev;\n};\n\nconst updateDetail = (ev: any, detail: GestureDetail) => {\n // get X coordinates for either a mouse click\n // or a touch depending on the given event\n let x = 0;\n let y = 0;\n if (ev) {\n const changedTouches = ev.changedTouches;\n if (changedTouches && changedTouches.length > 0) {\n const touch = changedTouches[0];\n x = touch.clientX;\n y = touch.clientY;\n } else if (ev.pageX !== undefined) {\n x = ev.pageX;\n y = ev.pageY;\n }\n }\n detail.currentX = x;\n detail.currentY = y;\n};\n\nconst now = (ev: UIEvent) => {\n return ev.timeStamp || Date.now();\n};\n\nexport interface GestureDetail {\n type: string;\n startX: number;\n startY: number;\n startTime: number;\n currentX: number;\n currentY: number;\n velocityX: number;\n velocityY: number;\n deltaX: number;\n deltaY: number;\n currentTime: number;\n event: UIEvent;\n data?: any;\n}\n\nexport type GestureCallback = (detail: GestureDetail) => boolean | void;\n\nexport interface Gesture {\n enable(enable?: boolean): void;\n destroy(): void;\n}\n\nexport interface GestureConfig {\n el: Node;\n disableScroll?: boolean;\n\n direction?: 'x' | 'y';\n gestureName: string;\n gesturePriority?: number;\n passive?: boolean;\n maxAngle?: number;\n threshold?: number;\n blurOnStart?: boolean;\n\n canStart?: GestureCallback;\n onWillStart?: (_: GestureDetail) => Promise<void>;\n onStart?: GestureCallback;\n onMove?: GestureCallback;\n onEnd?: GestureCallback;\n notCaptured?: GestureCallback;\n}\n\nexport { GESTURE_CONTROLLER };\n"],"version":3}
|
@@ -0,0 +1,474 @@
|
|
1
|
+
/*!
|
2
|
+
* Web Components for Nanopore digital Web Apps
|
3
|
+
*/
|
4
|
+
import { HTMLElement, createEvent, Build, h, Host, proxyCustomElement } from '@stencil/core/internal/client';
|
5
|
+
import { r as raf } from './index2.js';
|
6
|
+
import { F as FormControlWrap, a as FormControl } from './form-control.js';
|
7
|
+
import { d as defineCustomElement$1 } from './icon.js';
|
8
|
+
import { a as debounceEvent } from './throttle.js';
|
9
|
+
import { c as closestElement } from './dom.js';
|
10
|
+
import { c as createColorClasses } from './theme.js';
|
11
|
+
|
12
|
+
const inputCss = ".sc-nano-input-h{-webkit-box-sizing:border-box;box-sizing:border-box}*.sc-nano-input,*.sc-nano-input::before,*.sc-nano-input::after{-webkit-box-sizing:border-box;box-sizing:border-box}[hidden].sc-nano-input{display:none !important}label.sc-nano-input,.more.sc-nano-input,.error.sc-nano-input,.helper.sc-nano-input{display:block;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}label.visually-hide.sc-nano-input,.more.visually-hide.sc-nano-input,.error.visually-hide.sc-nano-input,.helper.visually-hide.sc-nano-input{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.placeholder-as-label.sc-nano-input{padding-left:var(--padding-start);padding-right:0;padding-top:0;padding-bottom:0;color:var(--label-color);position:absolute;font-size:1.4em;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transform-origin:top left;transform-origin:top left;top:50%;-webkit-transition:0.125s ease-in;transition:0.125s ease-in;opacity:0.7}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.placeholder-as-label.sc-nano-input{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:0;padding-inline-end:0}}.is-invalid.sc-nano-input-h .placeholder-as-label.sc-nano-input{color:var(--invalid-msg-color)}.has-value.sc-nano-input-h .placeholder-as-label.sc-nano-input{-webkit-transform:translateY(-120%);transform:translateY(-120%);font-size:0.9em}.textarea.sc-nano-input .placeholder-as-label.sc-nano-input{top:50%}.has-focus.sc-nano-input-h .textarea.sc-nano-input .placeholder-as-label.sc-nano-input{top:0;-webkit-transform:translateY(38%);transform:translateY(38%)}.has-value.sc-nano-input-h .textarea.sc-nano-input .placeholder-as-label.sc-nano-input{top:0;-webkit-transform:translateY(38%);transform:translateY(38%)}.label.sc-nano-input{color:var(--label-color);font-size:var(--label-font-size);padding-bottom:var(--padding-bottom);line-height:1;display:-webkit-box;display:-ms-flexbox;display:flex}.label.sc-nano-input .label-placeholder.sc-nano-input{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.label.sc-nano-input .placeholder.sc-nano-input{margin-left:0;margin-right:5px;margin-top:0;margin-bottom:0;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-transition:0.3s ease opacity;transition:0.3s ease opacity;font-size:0.9em}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.label.sc-nano-input .placeholder.sc-nano-input{margin-left:unset;margin-right:unset;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:5px;margin-inline-end:5px}}.label.sc-nano-input .charcount.sc-nano-input{margin-left:auto;margin-right:0;margin-top:0;margin-bottom:0;font-size:0.9em;opacity:0.5}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.label.sc-nano-input .charcount.sc-nano-input{margin-left:unset;margin-right:unset;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:0;margin-inline-end:0}}.has-value.sc-nano-input-h .label.sc-nano-input .placeholder.sc-nano-input{opacity:0.5}.has-focus.sc-nano-input-h .label.sc-nano-input{color:var(--label-color--focus)}.is-invalid.sc-nano-input-h .label.sc-nano-input{color:var(--label-color--invalid)}.more.sc-nano-input{height:1em;margin-left:3px;margin-right:0;margin-top:4px;margin-bottom:var(--padding-bottom);position:relative}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.more.sc-nano-input{margin-left:unset;margin-right:unset;-webkit-margin-start:3px;margin-inline-start:3px;-webkit-margin-end:0;margin-inline-end:0}}.helper.sc-nano-input,.error.sc-nano-input{top:0;left:0;position:absolute;font-size:var(--invalid-msg-font-size);line-height:1.2;-webkit-transition:0.3s ease-out opacity;transition:0.3s ease-out opacity}.helper.sc-nano-input{font-style:italic;color:var(--help-msg-color)}[show-inline-error].sc-nano-input-h:not([show-inline-error=false]).is-invalid .helper.sc-nano-input{opacity:0}.error.sc-nano-input{opacity:0;color:var(--invalid-msg-color);font-stretch:condensed}.is-invalid.sc-nano-input-h .error.sc-nano-input{opacity:1}.input.sc-nano-input{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;border-radius:var(--input-border-radius);width:100%;padding:0 !important;position:relative;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;background:var(--input-bg-color);border:var(--input-border-style);border-width:var(--input-border-width);font-size:var(--input-font-size)}.has-focus.sc-nano-input-h .input.sc-nano-input{background:var(--input-bg-color--focus);border:var(--input-border-style--focus);border-width:var(--input-border-width)}.is-invalid.sc-nano-input-h .input.sc-nano-input{background:var(--input-bg-color--invalid);border:var(--input-border-style--invalid);border-width:var(--input-border-width)}.is-invalid.has-focus.sc-nano-input-h .input.sc-nano-input{background:var(--input-bg-color--invalid);border:var(--input-border-style--invalid-focus);border-width:var(--input-border-width)}.native-input-wrap.sc-nano-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-flex:1;-ms-flex:1;flex:1}.input-clear-icon.sc-nano-input,.end.sc-nano-input,.start.sc-nano-input,.value-end.sc-nano-input{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;background-position:center;--nano-icon-size:1.4em;font-size:1em;border:0;outline:none;background-color:transparent;background-repeat:no-repeat;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:auto}.has-float-label.sc-nano-input .start.sc-nano-input{display:none}.start.sc-nano-input-s>*,.start .sc-nano-input-s>*,.end.sc-nano-input-s>*,.end .sc-nano-input-s>*,.value-end.sc-nano-input-s>*,.value-end .sc-nano-input-s>*,.value-end.sc-nano-input *.sc-nano-input{--nano-icon-size:1.4em;font-size:1em;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:0;padding-bottom:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.start.sc-nano-input-s>*,.start .sc-nano-input-s>*,.end.sc-nano-input-s>*,.end .sc-nano-input-s>*,.value-end.sc-nano-input-s>*,.value-end .sc-nano-input-s>*,.value-end.sc-nano-input *.sc-nano-input{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.sc-nano-input-h[disabled]:not([disabled=false]) .start.sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .start .sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .end.sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .end .sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .value-end.sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .value-end .sc-nano-input-s>*,[disabled].sc-nano-input-h:not([disabled=false]) .value-end.sc-nano-input *.sc-nano-input{pointer-events:none}.value-end.sc-nano-input-s>*,.value-end .sc-nano-input-s>*,.value-end.sc-nano-input *.sc-nano-input{pointer-events:none}.input-clear-icon.sc-nano-input{color:var(--clear-btn-color);padding:0;opacity:0;width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-box-align:center;-ms-flex-align:center;align-items:center;overflow:hidden}.is-invalid.sc-nano-input-h .input-clear-icon.sc-nano-input{color:var(--clear-btn-color--invalid)}.has-value.sc-nano-input-h .input-clear-icon.sc-nano-input{padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:0;padding-bottom:0;opacity:1;width:auto}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.has-value.sc-nano-input-h .input-clear-icon.sc-nano-input{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.input-clear-icon.sc-nano-input:hover{color:var(--clear-btn-color--hover)}.sc-nano-input-h{--placeholder-color:var(--nano-input-placeholder-color, initial);--placeholder-font-style:var(--nano-input-placeholder-style, initial);--placeholder-font-weight:var(--nano-input-placeholder-weight, initial);--placeholder-opacity:var(--nano-input-placeholder-opacity, 0.5);--padding-top:var(--nano-input-padding-top, var(--nano-input-padding, 8px));--padding-end:var(--nano-input-padding-end, var(--nano-input-padding, 8px));--padding-bottom:var(--nano-input-padding-bottom, var(--nano-input-padding, 8px));--padding-start:var(--nano-input-padding-start, var(--nano-input-padding, 8px));--color-invalid:var(--nano-color-danger-rgb, 239, 65, 53);--color--focus-rgb:var(\n --nano-color-base-rgb,\n var(--nano-color-primary-rgb, 0, 116, 149)\n );--input-font-size:var(--nano-input-font-size, 0.87em);--input-text-color:var(--nano-input-text-color, #4a4a4a);--input-border-width:var(--input-border-width-sh, var(--nano-input-border-width, 2px));--input-border-color:var(--nano-input-border-color, #e4e6e8);--input-border-radius:var(--nano-input-border-radius, 0);--input-border-style:var(--nano-input-border-style, solid) var(--nano-input-border-color, #e4e6e8);--input-border-style--focus:var(--nano-input-border-style, solid) var(--nano-input-border-color--focus, #90c6e7);--input-border-style--invalid:var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #fac6c3);--input-border-style--invalid-focus:var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #f36d64);--input-bg-color:var(--nano-input-background-color, #fff);--input-bg-color--focus:var(--input-bg-color);--input-bg-color--invalid:var(--nano-input-background-color, #fee8de);--invalid-msg-color:rgba(var(--color-invalid), 1);--invalid-msg-font-size:var(--nano-input-help-font-size, 0.75em);--help-msg-color:var(--nano-input-help-color, #616d6e);--clear-btn-color:var(--nano-clear-btn-color, rgba(0, 0, 0, 0.3));--clear-btn-color--hover:rgba(var(--color--focus-rgb), 1);--clear-btn-color--invalid:rgba(var(--color-invalid), 1);--label-color:var(--nano-input-label-color, \"currentColor\");--label-color--focus:var(--label-color);--label-color--invalid:var(--nano-input-label-color-invalid, \"currentColor\");--label-font-size:var(--nano-input-label-color, 1em);--multi-input-value-bg:var(--nano-input-tag-bg, 186, 220, 240);--multi-input-value-text-color:var(--nano-input-tag-color, #455556);--multi-input-value-border:var(--nano-input-tag-color, #90c6e7);position:relative;width:100%;padding:0 !important;color:currentColor;display:inline-block}.nano-color.sc-nano-input-h{color:var(--nano-color-base);--input-border-style--focus:var(--nano-input-border-style, solid) var(--nano-color-tint, var(--nano-color-primary-tint, #2689a5))}[disabled].sc-nano-input-h:not([disabled=false]){opacity:0.7}.native-input.sc-nano-input{border-radius:var(--input-border-radius);padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:0;padding-bottom:0;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;text-overflow:ellipsis;color:var(--input-text-color);display:inline-block;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%;max-width:100%;max-height:100%;border:0;outline:none;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;line-height:2.5em;min-height:2.5em;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;resize:none;overflow:hidden}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.native-input.sc-nano-input{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.native-input[disabled].sc-nano-input{opacity:0.4}.native-input.sc-nano-input::-webkit-input-placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity);line-height:2.5em;min-height:2.5em}.native-input.sc-nano-input::-moz-placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity);line-height:2.5em;min-height:2.5em}.native-input.sc-nano-input:-ms-input-placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity);line-height:2.5em;min-height:2.5em}.native-input.sc-nano-input::-ms-input-placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity);line-height:2.5em;min-height:2.5em}.native-input.sc-nano-input::placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity);line-height:2.5em;min-height:2.5em}.native-input.sc-nano-input::-moz-placeholder{line-height:2.8em;text-overflow:ellipsis}.native-input.sc-nano-input:-webkit-autofill{background-color:transparent}.native-input.sc-nano-input::-webkit-search-decoration,.native-input.sc-nano-input::-webkit-search-cancel-button,.native-input.sc-nano-input::-webkit-search-results-button,.native-input.sc-nano-input::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.native-input.sc-nano-input:invalid{-webkit-box-shadow:none;box-shadow:none}.native-input.sc-nano-input::-ms-clear,.native-input.sc-nano-input::-ms-reveal{display:none}.native-input.resizable.sc-nano-input{resize:vertical;overflow:auto}.textarea.sc-nano-input .native-input.sc-nano-input{line-height:1.5em;padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);white-space:pre-wrap}.textarea.sc-nano-input .native-input.sc-nano-input::-webkit-input-placeholder{line-height:1.5em}.textarea.sc-nano-input .native-input.sc-nano-input::-moz-placeholder{line-height:1.5em}.textarea.sc-nano-input .native-input.sc-nano-input:-ms-input-placeholder{line-height:1.5em}.textarea.sc-nano-input .native-input.sc-nano-input::-ms-input-placeholder{line-height:1.5em}.textarea.sc-nano-input .native-input.sc-nano-input::placeholder{line-height:1.5em}.has-float-label.sc-nano-input .native-input.sc-nano-input{padding-top:1.4em}.has-float-label.textarea.sc-nano-input .native-input.sc-nano-input{padding-top:1.8em}.legacy.sc-nano-input .native-input.sc-nano-input{-webkit-box-sizing:content-box;box-sizing:content-box}[readonly].sc-nano-input-h:not([readonly=false]) .native-input.sc-nano-input{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.has-focus.sc-nano-input-h .placeholder-as-label.sc-nano-input{-webkit-transform:translateY(-120%);transform:translateY(-120%);font-size:0.9em}";
|
13
|
+
|
14
|
+
let inputIds = 0;
|
15
|
+
let Input = class extends HTMLElement {
|
16
|
+
constructor() {
|
17
|
+
super();
|
18
|
+
this.__registerHost();
|
19
|
+
this.nanoInput = createEvent(this, "nanoInput", 7);
|
20
|
+
this.nanoChange = createEvent(this, "nanoChange", 7);
|
21
|
+
this.nanoBlur = createEvent(this, "nanoBlur", 7);
|
22
|
+
this.nanoFocus = createEvent(this, "nanoFocus", 7);
|
23
|
+
this.nanoDidLoad = createEvent(this, "nanoDidLoad", 7);
|
24
|
+
this.nanoDidUnload = createEvent(this, "nanoDidUnload", 7);
|
25
|
+
this.nanoValidate = createEvent(this, "nanoValidate", 7);
|
26
|
+
this.inputId = `nano-input-${inputIds++}`;
|
27
|
+
this.didBlurAfterEdit = false;
|
28
|
+
this.rtl = false;
|
29
|
+
this.charCount = 0;
|
30
|
+
this.hasRendered = false;
|
31
|
+
this.hasFocus = false;
|
32
|
+
this.hasLabelSlot = false;
|
33
|
+
this.hasHelperSlot = false;
|
34
|
+
this.errorMessage = '';
|
35
|
+
this.datalist = null;
|
36
|
+
this._invalid = false;
|
37
|
+
/**
|
38
|
+
* Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
|
39
|
+
*/
|
40
|
+
this.autocapitalise = 'none';
|
41
|
+
/**
|
42
|
+
* Indicates whether the value of the control can be automatically completed by the browser.
|
43
|
+
*/
|
44
|
+
this.autocomplete = 'off';
|
45
|
+
/**
|
46
|
+
* Whether auto correction should be enabled when the user is entering/editing the text value.
|
47
|
+
*/
|
48
|
+
this.autocorrect = 'off';
|
49
|
+
/**
|
50
|
+
* This Boolean attribute lets you specify that a form control should have input focus when the page loads.
|
51
|
+
*/
|
52
|
+
this.autofocus = false;
|
53
|
+
/**
|
54
|
+
* If `true`, a clear icon will appear in the input when there is a value. Clicking it clears the input.
|
55
|
+
*/
|
56
|
+
this.clearInput = false;
|
57
|
+
/**
|
58
|
+
* Set the amount of time, in milliseconds, to wait to trigger the `nanoChange` event after each keystroke.
|
59
|
+
*/
|
60
|
+
this.debounce = 0;
|
61
|
+
/**
|
62
|
+
* If `true`, the user cannot interact with the input.
|
63
|
+
*/
|
64
|
+
this.disabled = false;
|
65
|
+
/**
|
66
|
+
* When should the field perform validation
|
67
|
+
*/
|
68
|
+
this.validateOn = 'submit';
|
69
|
+
/**
|
70
|
+
* Whether to show validation errors underneath input
|
71
|
+
*/
|
72
|
+
this.showInlineError = true;
|
73
|
+
/**
|
74
|
+
* Visually hide the label - but make it accessible.
|
75
|
+
*/
|
76
|
+
this.hideLabel = false;
|
77
|
+
/**
|
78
|
+
* Enable floating label behaviour. Will disable placeholder if set.
|
79
|
+
*/
|
80
|
+
this.floatLabel = false;
|
81
|
+
/**
|
82
|
+
* The name of the control, which is submitted with the form data.
|
83
|
+
*/
|
84
|
+
this.name = this.inputId;
|
85
|
+
/**
|
86
|
+
* If `true`, the user cannot modify the value.
|
87
|
+
*/
|
88
|
+
this.readonly = false;
|
89
|
+
/**
|
90
|
+
* If `true`, the user must fill in a value before submitting a form.
|
91
|
+
*/
|
92
|
+
this.required = false;
|
93
|
+
/**
|
94
|
+
* If `true`, the element will have its spelling and grammar checked.
|
95
|
+
*/
|
96
|
+
this.spellcheck = false;
|
97
|
+
/**
|
98
|
+
* The type of control to display. The default type is text.
|
99
|
+
*/
|
100
|
+
this.type = 'text';
|
101
|
+
/**
|
102
|
+
* The value of the input.
|
103
|
+
*/
|
104
|
+
this.value = '';
|
105
|
+
/**
|
106
|
+
* relevant to type="textarea". Vertical resizing - enable / disable or make automatic.
|
107
|
+
*/
|
108
|
+
this.resize = 'auto';
|
109
|
+
/**
|
110
|
+
* relevant to type="textarea". Default number of rows to show
|
111
|
+
*/
|
112
|
+
this.rows = 2;
|
113
|
+
/**
|
114
|
+
* relevant to type="textarea".
|
115
|
+
*/
|
116
|
+
this.showCharCount = false;
|
117
|
+
this.validate = (ev) => {
|
118
|
+
if (this.validateOn === 'submitThenDirty')
|
119
|
+
this.validateOn = 'dirty';
|
120
|
+
if (!this.nativeInput.validity.valid) {
|
121
|
+
if (this.showInlineError) {
|
122
|
+
if (ev)
|
123
|
+
ev.preventDefault();
|
124
|
+
this.errorMessage = this.nativeInput.validationMessage;
|
125
|
+
}
|
126
|
+
this._invalid = true;
|
127
|
+
}
|
128
|
+
else
|
129
|
+
this._invalid = false;
|
130
|
+
this.nanoValidate.emit({
|
131
|
+
isValid: !this._invalid,
|
132
|
+
errorMessage: this.nativeInput.validationMessage,
|
133
|
+
originalEvent: ev,
|
134
|
+
});
|
135
|
+
};
|
136
|
+
this.onInput = (ev) => {
|
137
|
+
const input = ev.target;
|
138
|
+
if (input)
|
139
|
+
this.value = input.value || '';
|
140
|
+
this.nanoInput.emit(ev);
|
141
|
+
};
|
142
|
+
this.onBlur = () => {
|
143
|
+
this.hasFocus = false;
|
144
|
+
this.focusChanged();
|
145
|
+
if (this.validateOn === 'dirty')
|
146
|
+
this.validate();
|
147
|
+
this.nanoBlur.emit();
|
148
|
+
};
|
149
|
+
this.onFocus = () => {
|
150
|
+
this.hasFocus = true;
|
151
|
+
this.focusChanged();
|
152
|
+
this.nanoFocus.emit();
|
153
|
+
};
|
154
|
+
this.onKeydown = () => {
|
155
|
+
if (this.shouldClearOnEdit()) {
|
156
|
+
// Did the input value change after it was blurred and edited?
|
157
|
+
if (this.didBlurAfterEdit && this.hasValue()) {
|
158
|
+
// Clear the input
|
159
|
+
this.clearTextInput();
|
160
|
+
}
|
161
|
+
// Reset the flag
|
162
|
+
this.didBlurAfterEdit = false;
|
163
|
+
}
|
164
|
+
};
|
165
|
+
this.clearTextInput = (ev) => {
|
166
|
+
if (this.clearInput && !this.readonly && !this.disabled && ev) {
|
167
|
+
ev.preventDefault();
|
168
|
+
ev.stopPropagation();
|
169
|
+
}
|
170
|
+
this.value = '';
|
171
|
+
this.nativeInput.value = '';
|
172
|
+
const event = new window.Event('change');
|
173
|
+
this.nativeInput.dispatchEvent(event);
|
174
|
+
};
|
175
|
+
}
|
176
|
+
get nativeInputWrap() {
|
177
|
+
return this._nativeInputWrap;
|
178
|
+
}
|
179
|
+
set nativeInputWrap(ele) {
|
180
|
+
if (this._nativeInputWrap === ele)
|
181
|
+
return;
|
182
|
+
this._nativeInputWrap = ele;
|
183
|
+
this.setDataListOpts();
|
184
|
+
}
|
185
|
+
setDataListOpts() {
|
186
|
+
if (!this.datalist)
|
187
|
+
return;
|
188
|
+
const currDWConfig = this.datalist.dropDownConfig || {};
|
189
|
+
this.datalist.dropDownConfig = Object.assign(Object.assign({}, currDWConfig), { skidding: -1, tetherTo: this.nativeInputWrap });
|
190
|
+
}
|
191
|
+
/**
|
192
|
+
* This will be true when the control is in an invalid state.
|
193
|
+
* Validity is determined by the `required` prop. Or if custom validity message is set. @readonly
|
194
|
+
*/
|
195
|
+
get invalid() {
|
196
|
+
return this._invalid;
|
197
|
+
}
|
198
|
+
shouldValidate() {
|
199
|
+
if (!this.hasRendered)
|
200
|
+
return;
|
201
|
+
setTimeout(() => {
|
202
|
+
if (this.validateOn === 'dirty')
|
203
|
+
this.validate();
|
204
|
+
}, 20);
|
205
|
+
}
|
206
|
+
/**
|
207
|
+
* Update the native input element when the value changes
|
208
|
+
*/
|
209
|
+
valueChanged() {
|
210
|
+
this.nanoChange.emit({ value: this.value });
|
211
|
+
this.charCount = this.value.length;
|
212
|
+
if (this.type === 'textarea' && this.resize === 'auto') {
|
213
|
+
this.nativeInput.style.height = 'auto';
|
214
|
+
if (this.value.length)
|
215
|
+
this.nativeInput.style.height = this.nativeInput.scrollHeight + 'px';
|
216
|
+
}
|
217
|
+
setTimeout(() => {
|
218
|
+
if (this.validateOn === 'dirty')
|
219
|
+
this.validate();
|
220
|
+
}, 20);
|
221
|
+
}
|
222
|
+
debounceChanged() {
|
223
|
+
this.nanoChange = debounceEvent(this.nanoChange, this.debounce);
|
224
|
+
}
|
225
|
+
/**
|
226
|
+
* Get the current state of the control.
|
227
|
+
* @param validateFirst - perform validation first before reporting
|
228
|
+
* @returns `{ isValid: boolean, errorMessage: string }`
|
229
|
+
*/
|
230
|
+
async reportValidity(validateFirst) {
|
231
|
+
if (validateFirst)
|
232
|
+
this.validate();
|
233
|
+
return {
|
234
|
+
isValid: !this._invalid,
|
235
|
+
errorMessage: this.nativeInput.validationMessage,
|
236
|
+
};
|
237
|
+
}
|
238
|
+
/**
|
239
|
+
* Sets focus on the specified `nano-input`. Use this method instead of the global
|
240
|
+
* `input.focus()`.
|
241
|
+
*/
|
242
|
+
async setFocus() {
|
243
|
+
if (this.nativeInput) {
|
244
|
+
this.nativeInput.focus();
|
245
|
+
this.nativeInput.click();
|
246
|
+
}
|
247
|
+
}
|
248
|
+
/**
|
249
|
+
* Returns the native `<input>` element used under the hood.
|
250
|
+
*/
|
251
|
+
getInputElement() {
|
252
|
+
return Promise.resolve(this.nativeInput);
|
253
|
+
}
|
254
|
+
/**
|
255
|
+
* Invalidate the field and show a custom error message. To clear the error you will need to re-call this method with an empty string.
|
256
|
+
*/
|
257
|
+
async showError(message) {
|
258
|
+
if (this.nativeInput) {
|
259
|
+
this.nativeInput.setCustomValidity(message);
|
260
|
+
this.validate();
|
261
|
+
}
|
262
|
+
}
|
263
|
+
onReset(e) {
|
264
|
+
const form = this.form
|
265
|
+
? document.querySelector('#' + this.form)
|
266
|
+
: this.el.closest('form');
|
267
|
+
if (!form || e.target !== this.el.closest('form'))
|
268
|
+
return;
|
269
|
+
this.value = '';
|
270
|
+
}
|
271
|
+
handleBlur(e) {
|
272
|
+
if (!this.hasFocus)
|
273
|
+
return;
|
274
|
+
const kev = e;
|
275
|
+
let target;
|
276
|
+
raf(() => {
|
277
|
+
if (kev.key) {
|
278
|
+
if (kev.key !== 'Tab')
|
279
|
+
return;
|
280
|
+
target = document.activeElement;
|
281
|
+
}
|
282
|
+
else
|
283
|
+
target = e.target;
|
284
|
+
if (closestElement(this.el.tagName.toLowerCase(), target) !== this.el) {
|
285
|
+
this.onBlur();
|
286
|
+
}
|
287
|
+
});
|
288
|
+
}
|
289
|
+
shouldClearOnEdit() {
|
290
|
+
const { type, clearOnEdit } = this;
|
291
|
+
return clearOnEdit === undefined ? type === 'password' : clearOnEdit;
|
292
|
+
}
|
293
|
+
getValue() {
|
294
|
+
return this.value || '';
|
295
|
+
}
|
296
|
+
focusChanged() {
|
297
|
+
// If clearOnEdit is enabled and the input blurred but has a value, set a flag
|
298
|
+
if (!this.hasFocus && this.shouldClearOnEdit() && this.hasValue()) {
|
299
|
+
this.didBlurAfterEdit = true;
|
300
|
+
}
|
301
|
+
}
|
302
|
+
hasValue() {
|
303
|
+
return this.getValue().length > 0;
|
304
|
+
}
|
305
|
+
slotChangeObserver() {
|
306
|
+
if (!Build.isBrowser)
|
307
|
+
return;
|
308
|
+
if (this.mo)
|
309
|
+
this.mo.disconnect();
|
310
|
+
const mo = (this.mo = new MutationObserver(() => this.processSlottedContent()));
|
311
|
+
mo.observe(this.el, { childList: true, subtree: true });
|
312
|
+
}
|
313
|
+
processSlottedContent() {
|
314
|
+
// see if we have label / button content
|
315
|
+
this.hasLabelSlot = !!this.el.querySelectorAll('[slot="label"]');
|
316
|
+
this.hasHelperSlot = !!this.el.querySelector('[slot="helper"]');
|
317
|
+
this.datalist = this.el.querySelector('nano-datalist:not([slot])');
|
318
|
+
// breaking change introduced in v2. Rm in v3
|
319
|
+
if (!!this.el.querySelector('[slot="inline-button"]')) {
|
320
|
+
console.warn('The `inline-button` slot was renamed to `end` in v2 - please update your code', this.el);
|
321
|
+
}
|
322
|
+
// breaking change introduced in v2. Rm in v3
|
323
|
+
if (!!this.el.querySelector('[slot="legacy"]')) {
|
324
|
+
console.warn('The `legacy` slot has been removed. Please update your code', this.el);
|
325
|
+
}
|
326
|
+
}
|
327
|
+
connectedCallback() {
|
328
|
+
this.debounceChanged();
|
329
|
+
if (Build.isBrowser) {
|
330
|
+
this.el.dispatchEvent(new CustomEvent('nanoDidLoad', {
|
331
|
+
detail: this.el,
|
332
|
+
}));
|
333
|
+
}
|
334
|
+
}
|
335
|
+
disconnectedCallback() {
|
336
|
+
if (Build.isBrowser) {
|
337
|
+
document.dispatchEvent(new CustomEvent('nanoDidUnload', {
|
338
|
+
detail: this.el,
|
339
|
+
}));
|
340
|
+
}
|
341
|
+
if (this.mo)
|
342
|
+
this.mo.disconnect();
|
343
|
+
}
|
344
|
+
componentDidLoad() {
|
345
|
+
this.slotChangeObserver();
|
346
|
+
this.hasRendered = true;
|
347
|
+
if (this.autofocus)
|
348
|
+
setTimeout((_) => this.setFocus(), 300);
|
349
|
+
}
|
350
|
+
componentWillLoad() {
|
351
|
+
this.processSlottedContent();
|
352
|
+
}
|
353
|
+
render() {
|
354
|
+
const value = this.getValue();
|
355
|
+
const labelId = this.inputId + '-lbl';
|
356
|
+
const moreId = this.showInlineError || this.hasHelperSlot ? this.inputId + '-more' : '';
|
357
|
+
this.rtl = this.el.ownerDocument.dir === 'rtl';
|
358
|
+
const compWrapOptions = (({ el, floatLabel, label, errorMessage, type, showInlineError, hasHelperSlot, hasLabelSlot, hideLabel, placeholder, maxlength, charCount, showCharCount, rtl, }) => ({
|
359
|
+
el,
|
360
|
+
floatLabel,
|
361
|
+
label,
|
362
|
+
errorMessage,
|
363
|
+
type,
|
364
|
+
showInlineError,
|
365
|
+
hasHelperSlot,
|
366
|
+
hasLabelSlot,
|
367
|
+
hideLabel,
|
368
|
+
placeholder,
|
369
|
+
maxlength,
|
370
|
+
charCount,
|
371
|
+
showCharCount,
|
372
|
+
rtl,
|
373
|
+
}))(this);
|
374
|
+
const wrapOptions = Object.assign(Object.assign({}, compWrapOptions), { labelId,
|
375
|
+
moreId, hasValue: this.hasValue(), controlId: this.inputId });
|
376
|
+
const controlOptions = (({ clearInput, readonly, disabled }) => ({
|
377
|
+
clearInput,
|
378
|
+
readonly,
|
379
|
+
disabled,
|
380
|
+
clearControl: this.clearInput,
|
381
|
+
}))(this);
|
382
|
+
return (h(Host, { "aria-disabled": this.disabled ? 'true' : null, dir: this.rtl ? 'rtl' : null, class: Object.assign(Object.assign({}, createColorClasses(this.color)), { 'has-value': this.hasValue(), 'has-focus': this.hasFocus, 'is-invalid': this._invalid }) }, h(FormControlWrap, Object.assign({}, wrapOptions), h(FormControl, Object.assign({}, controlOptions, { onClearText: this.clearTextInput, control: this.el, ref: (el) => (this.nativeInputWrap = el) }), this.type !== 'textarea' && (h("input", { id: this.inputId, class: "native-input", ref: (input) => (this.nativeInput = input), "aria-labelledby": labelId + ' ' + moreId, disabled: this.disabled, accept: this.accept, autoCapitalize: this.autocapitalise, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, inputMode: this.inputmode, form: this.form, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: !this.floatLabel && this.placeholder ? this.placeholder : '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, size: this.size, type: this.type, value: value, onInput: this.onInput, onChange: this.onInput, onFocus: this.onFocus, onKeyDown: this.onKeydown, onInvalid: this.validate })), this.type === 'textarea' && (h("textarea", { rows: this.floatLabel ? 1 : this.rows, id: this.inputId, class: {
|
383
|
+
'native-input': true,
|
384
|
+
resizable: this.resize === 'true',
|
385
|
+
}, ref: (input) => (this.nativeInput = input), "aria-labelledby": labelId + ' ' + moreId, disabled: this.disabled, autoCapitalize: this.autocapitalise, autoCorrect: this.autocorrect, autoFocus: this.autofocus, inputMode: this.inputmode, form: this.form, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: !this.floatLabel && this.placeholder ? this.placeholder : '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, value: value, onInput: this.onInput, onChange: this.onInput, onFocus: this.onFocus, onKeyDown: this.onKeydown, onInvalid: this.validate }))), h("slot", null))));
|
386
|
+
}
|
387
|
+
get el() { return this; }
|
388
|
+
static get watchers() { return {
|
389
|
+
"datalist": ["setDataListOpts"],
|
390
|
+
"minlength": ["shouldValidate"],
|
391
|
+
"maxlength": ["shouldValidate"],
|
392
|
+
"min": ["shouldValidate"],
|
393
|
+
"max": ["shouldValidate"],
|
394
|
+
"required": ["shouldValidate"],
|
395
|
+
"disabled": ["shouldValidate"],
|
396
|
+
"validateOn": ["shouldValidate"],
|
397
|
+
"readonly": ["shouldValidate"],
|
398
|
+
"pattern": ["shouldValidate"],
|
399
|
+
"inputmode": ["shouldValidate"],
|
400
|
+
"value": ["valueChanged"],
|
401
|
+
"debounce": ["debounceChanged"]
|
402
|
+
}; }
|
403
|
+
static get style() { return inputCss; }
|
404
|
+
};
|
405
|
+
Input = /*@__PURE__*/ proxyCustomElement(Input, [6, "nano-input", {
|
406
|
+
"invalid": [2564],
|
407
|
+
"color": [1],
|
408
|
+
"accept": [1],
|
409
|
+
"autocapitalise": [1],
|
410
|
+
"autocomplete": [1],
|
411
|
+
"autocorrect": [1],
|
412
|
+
"autofocus": [4],
|
413
|
+
"clearInput": [4, "clear-input"],
|
414
|
+
"clearOnEdit": [4, "clear-on-edit"],
|
415
|
+
"debounce": [2],
|
416
|
+
"disabled": [516],
|
417
|
+
"inputmode": [1],
|
418
|
+
"validateOn": [1025, "validate-on"],
|
419
|
+
"showInlineError": [516, "show-inline-error"],
|
420
|
+
"label": [1],
|
421
|
+
"hideLabel": [4, "hide-label"],
|
422
|
+
"floatLabel": [4, "float-label"],
|
423
|
+
"max": [1],
|
424
|
+
"maxlength": [2],
|
425
|
+
"min": [1],
|
426
|
+
"minlength": [2],
|
427
|
+
"multiple": [4],
|
428
|
+
"name": [1],
|
429
|
+
"pattern": [1],
|
430
|
+
"placeholder": [1],
|
431
|
+
"readonly": [516],
|
432
|
+
"required": [4],
|
433
|
+
"spellcheck": [4],
|
434
|
+
"step": [1],
|
435
|
+
"size": [2],
|
436
|
+
"type": [1],
|
437
|
+
"form": [1],
|
438
|
+
"value": [1025],
|
439
|
+
"resize": [1],
|
440
|
+
"rows": [2],
|
441
|
+
"showCharCount": [4, "show-char-count"],
|
442
|
+
"hasFocus": [32],
|
443
|
+
"hasLabelSlot": [32],
|
444
|
+
"hasHelperSlot": [32],
|
445
|
+
"errorMessage": [32],
|
446
|
+
"datalist": [32],
|
447
|
+
"_invalid": [32],
|
448
|
+
"reportValidity": [64],
|
449
|
+
"setFocus": [64],
|
450
|
+
"getInputElement": [64],
|
451
|
+
"showError": [64]
|
452
|
+
}, [[16, "reset", "onReset"], [17, "mousedown", "handleBlur"], [0, "keydown", "handleBlur"]]]);
|
453
|
+
function defineCustomElement() {
|
454
|
+
if (typeof customElements === "undefined") {
|
455
|
+
return;
|
456
|
+
}
|
457
|
+
const components = ["nano-input", "nano-icon"];
|
458
|
+
components.forEach(tagName => { switch (tagName) {
|
459
|
+
case "nano-input":
|
460
|
+
if (!customElements.get(tagName)) {
|
461
|
+
customElements.define(tagName, Input);
|
462
|
+
}
|
463
|
+
break;
|
464
|
+
case "nano-icon":
|
465
|
+
if (!customElements.get(tagName)) {
|
466
|
+
defineCustomElement$1();
|
467
|
+
}
|
468
|
+
break;
|
469
|
+
} });
|
470
|
+
}
|
471
|
+
|
472
|
+
export { Input as I, defineCustomElement as d };
|
473
|
+
|
474
|
+
//# sourceMappingURL=input.js.map
|