@nanoporetech-digital/components 3.7.1 → 3.8.1
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 +37 -0
- package/dist/cjs/{algolia-data-9152d0ef.js → algolia-data-fb13160a.js} +2 -2
- package/dist/cjs/{algolia-data-9152d0ef.js.map → algolia-data-fb13160a.js.map} +1 -1
- package/dist/cjs/{algoliasearch.umd-7ee60729.js → algoliasearch.umd-689c1560.js} +3 -3
- package/dist/cjs/{algoliasearch.umd-7ee60729.js.map → algoliasearch.umd-689c1560.js.map} +1 -1
- package/dist/cjs/{component-store-d7c8c326.js → component-store-b80bdb26.js} +25 -12
- package/dist/cjs/component-store-b80bdb26.js.map +1 -0
- package/dist/cjs/{dom-d7c33f11.js → dom-7acf7afd.js} +15 -15
- package/dist/cjs/dom-7acf7afd.js.map +1 -0
- package/dist/cjs/{form-control-57c71246.js → form-control-845951ac.js} +4 -4
- package/dist/cjs/form-control-845951ac.js.map +1 -0
- package/dist/{esm/global-8047b4ff.js → cjs/global-3a6a7873.js} +5 -14
- package/dist/cjs/global-3a6a7873.js.map +1 -0
- package/dist/cjs/{index-bb2a6ab8.js → index-5e11be36.js} +2 -2
- package/dist/cjs/{index-bb2a6ab8.js.map → index-5e11be36.js.map} +1 -1
- package/dist/cjs/{index-ece1cb9e.js → index-72ee0363.js} +2 -10
- package/dist/cjs/index-72ee0363.js.map +1 -0
- package/dist/cjs/{index-41582c2a.js → index-e1b5c3ea.js} +1438 -516
- package/dist/cjs/index-e1b5c3ea.js.map +1 -0
- package/dist/cjs/index.cjs.js +18 -35
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +5 -4
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/{modal-e4defcc3.js → modal-5884a6de.js} +3 -2
- package/dist/cjs/modal-5884a6de.js.map +1 -0
- package/dist/cjs/nano-accordion.cjs.entry.js +4 -7
- package/dist/cjs/nano-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-alert.cjs.entry.js +25 -19
- package/dist/cjs/nano-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-algolia-filter.cjs.entry.js +5 -5
- package/dist/cjs/nano-algolia-filter.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-algolia-input.cjs.entry.js +4 -4
- package/dist/cjs/nano-algolia-input.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-algolia-pagination.cjs.entry.js +2 -2
- package/dist/cjs/nano-algolia-results.cjs.entry.js +2 -2
- package/dist/cjs/nano-algolia.cjs.entry.js +8 -8
- 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-checkbox-group.cjs.entry.js +52 -9
- package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-checkbox.cjs.entry.js +8 -8
- package/dist/cjs/nano-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-components.cjs.js +8 -4
- package/dist/cjs/nano-components.cjs.js.map +1 -1
- package/dist/cjs/nano-datalist_3.cjs.entry.js +46 -36
- package/dist/cjs/nano-datalist_3.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-date-input.cjs.entry.js +6 -6
- package/dist/cjs/nano-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-date-picker.cjs.entry.js +4 -4
- package/dist/cjs/nano-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-demo.cjs.entry.js +13 -9
- package/dist/cjs/nano-demo.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-details.cjs.entry.js +4 -4
- package/dist/cjs/nano-details.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-dialog.cjs.entry.js +6 -6
- 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 +9 -4
- package/dist/cjs/nano-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-field-validator.cjs.entry.js +4 -3
- package/dist/cjs/nano-field-validator.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-file-upload.cjs.entry.js +5 -5
- package/dist/cjs/nano-file-upload.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +54 -67
- package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-global-nav.cjs.entry.js +54 -26
- package/dist/cjs/nano-global-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-global-search-results.cjs.entry.js +6 -4
- package/dist/cjs/nano-global-search-results.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-grid_3.cjs.entry.js +8 -7
- package/dist/cjs/nano-grid_3.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-hero.cjs.entry.js +4 -2
- 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 +7 -14
- package/dist/cjs/nano-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-input.cjs.entry.js +19 -33
- package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-menu-drawer.cjs.entry.js +3 -3
- package/dist/cjs/nano-menu-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-progress-bar_2.cjs.entry.js +4 -4
- package/dist/cjs/nano-progress-bar_2.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-range.cjs.entry.js +4 -4
- 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 +18 -10
- 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-slides.cjs.entry.js +11 -21
- package/dist/cjs/nano-slides.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-spinner.cjs.entry.js +3 -3
- package/dist/cjs/nano-spinner.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-split-pane.cjs.entry.js +15 -13
- package/dist/cjs/nano-split-pane.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-sticker.cjs.entry.js +6 -4
- package/dist/cjs/nano-sticker.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tab-content.cjs.entry.js +9 -3
- package/dist/cjs/nano-tab-content.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tab-group.cjs.entry.js +18 -12
- package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tab.cjs.entry.js +2 -2
- package/dist/cjs/nano-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/{nano-table-820b04d5.js → nano-table-e76a8dde.js} +115 -150
- package/dist/cjs/nano-table-e76a8dde.js.map +1 -0
- package/dist/cjs/nano-table.cjs.entry.js +3 -3
- package/dist/cjs/{popover-508bcedb.js → popover-088646b2.js} +61 -50
- package/dist/cjs/popover-088646b2.js.map +1 -0
- package/dist/cjs/{scroll-9bb5e060.js → scroll-a197d9c4.js} +2 -2
- package/dist/cjs/{scroll-9bb5e060.js.map → scroll-a197d9c4.js.map} +1 -1
- package/dist/cjs/{table.worker-9e238d16.js → table.worker-988d87da.js} +4 -4
- package/dist/cjs/table.worker-988d87da.js.map +1 -0
- package/dist/cjs/{theme-50275e1a.js → theme-9cbe28c5.js} +2 -7
- package/dist/cjs/theme-9cbe28c5.js.map +1 -0
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/accordion/accordion.js +1 -4
- package/dist/collection/components/accordion/accordion.js.map +1 -1
- package/dist/collection/components/alert/alert.css +4 -3
- package/dist/collection/components/alert/alert.helpers.js +6 -24
- package/dist/collection/components/alert/alert.helpers.js.map +1 -1
- package/dist/collection/components/alert/alert.js +19 -13
- package/dist/collection/components/alert/alert.js.map +1 -1
- package/dist/collection/components/algolia/algolia-filter.js +2 -2
- package/dist/collection/components/algolia/algolia-filter.js.map +1 -1
- package/dist/collection/components/algolia/algolia-input.js.map +1 -1
- package/dist/collection/components/algolia/algolia.css +2 -1
- package/dist/collection/components/algolia/algolia.js +3 -3
- package/dist/collection/components/algolia/algolia.js.map +1 -1
- package/dist/collection/components/checkbox/checkbox-group.css +16 -10
- package/dist/collection/components/checkbox/checkbox-group.js +91 -7
- package/dist/collection/components/checkbox/checkbox-group.js.map +1 -1
- package/dist/collection/components/checkbox/checkbox.css +14 -12
- package/dist/collection/components/checkbox/checkbox.js +5 -5
- package/dist/collection/components/checkbox/checkbox.js.map +1 -1
- package/dist/collection/components/datalist/datalist.js +39 -31
- package/dist/collection/components/datalist/datalist.js.map +1 -1
- package/dist/collection/components/date-input/date-input.css +3 -3
- package/dist/collection/components/date-input/date-input.js +3 -3
- package/dist/collection/components/date-input/date-input.js.map +1 -1
- package/dist/collection/components/date-picker/date-picker.css +15 -11
- package/dist/collection/components/date-picker/date-picker.js +1 -1
- package/dist/collection/components/date-picker/date-picker.js.map +1 -1
- package/dist/collection/components/demo/demo.js +12 -8
- package/dist/collection/components/demo/demo.js.map +1 -1
- package/dist/collection/components/details/details.css +2 -1
- package/dist/collection/components/details/details.js +1 -1
- package/dist/collection/components/details/details.js.map +1 -1
- package/dist/collection/components/dialog/dialog.css +8 -5
- package/dist/collection/components/dialog/dialog.helpers.js +3 -11
- package/dist/collection/components/dialog/dialog.helpers.js.map +1 -1
- package/dist/collection/components/drawer/drawer.css +2 -2
- package/dist/collection/components/dropdown/dropdown.css +1 -1
- package/dist/collection/components/dropdown/dropdown.js +6 -1
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/field-validator/field-validator.js +2 -1
- package/dist/collection/components/field-validator/field-validator.js.map +1 -1
- package/dist/collection/components/file-upload/file-upload.css +35 -25
- package/dist/collection/components/file-upload/file-upload.js +4 -4
- package/dist/collection/components/file-upload/file-upload.js.map +1 -1
- package/dist/collection/components/form-control/form-control.js +2 -2
- package/dist/collection/components/form-control/form-control.js.map +1 -1
- package/dist/collection/components/global-nav/global-nav-user-profile.js +6 -7
- package/dist/collection/components/global-nav/global-nav-user-profile.js.map +1 -1
- package/dist/collection/components/global-nav/global-nav.js +61 -11
- package/dist/collection/components/global-nav/global-nav.js.map +1 -1
- package/dist/collection/components/global-nav/style/global-nav.css +92 -48
- package/dist/collection/components/global-search-results/global-search-results.css +83 -44
- package/dist/collection/components/global-search-results/global-search-results.js +4 -2
- package/dist/collection/components/global-search-results/global-search-results.js.map +1 -1
- package/dist/collection/components/grid/grid-item.css +1 -1
- package/dist/collection/components/grid/grid.css +1 -0
- package/dist/collection/components/grid/grid.js +2 -0
- package/dist/collection/components/grid/grid.js.map +1 -1
- package/dist/collection/components/hero/hero.css +110 -18
- package/dist/collection/components/hero/hero.js +2 -0
- package/dist/collection/components/hero/hero.js.map +1 -1
- package/dist/collection/components/icon/icon.css +2 -2
- package/dist/collection/components/icon/icon.js +3 -10
- package/dist/collection/components/icon/icon.js.map +1 -1
- package/dist/collection/components/icon-button/icon-button.css +1 -1
- package/dist/collection/components/img/img.css +0 -1
- package/dist/collection/components/img/img.js +3 -4
- package/dist/collection/components/img/img.js.map +1 -1
- package/dist/collection/components/input/input.css +54 -32
- package/dist/collection/components/input/input.js +14 -28
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/menu/menu.js +4 -2
- package/dist/collection/components/menu/menu.js.map +1 -1
- package/dist/collection/components/menu-drawer/menu-drawer.css +20 -13
- package/dist/collection/components/menu-drawer/menu-drawer.js +1 -1
- package/dist/collection/components/menu-drawer/menu-drawer.js.map +1 -1
- package/dist/collection/components/nav-item/nav-item.css +31 -16
- package/dist/collection/components/nav-item/nav-item.js +4 -4
- package/dist/collection/components/nav-item/nav-item.js.map +1 -1
- package/dist/collection/components/option/option.css +4 -2
- package/dist/collection/components/progress-bar/progress-bar.css +4 -4
- package/dist/collection/components/range/range.css +11 -9
- package/dist/collection/components/rating/rating.css +9 -5
- package/dist/collection/components/resize-observe/resize-observe.js +17 -6
- package/dist/collection/components/resize-observe/resize-observe.js.map +1 -1
- package/dist/collection/components/select/select.css +59 -34
- package/dist/collection/components/select/select.js +42 -55
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/skeleton/skeleton.css +5 -5
- package/dist/collection/components/slides/slides.css +4 -2
- package/dist/collection/components/slides/slides.js +9 -19
- package/dist/collection/components/slides/slides.js.map +1 -1
- package/dist/collection/components/spinner/spinner.css +13 -8
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/spinner/spinner.js.map +1 -1
- package/dist/collection/components/split-pane/split-pane.css +1 -1
- package/dist/collection/components/split-pane/split-pane.js +13 -11
- package/dist/collection/components/split-pane/split-pane.js.map +1 -1
- package/dist/collection/components/sticker/sticker.js +4 -2
- package/dist/collection/components/sticker/sticker.js.map +1 -1
- package/dist/collection/components/table/table.cell.js +8 -8
- package/dist/collection/components/table/table.cell.js.map +1 -1
- package/dist/collection/components/table/table.css +46 -25
- package/dist/collection/components/table/table.header.js +6 -19
- package/dist/collection/components/table/table.header.js.map +1 -1
- package/dist/collection/components/table/table.js +85 -93
- package/dist/collection/components/table/table.js.map +1 -1
- package/dist/collection/components/table/table.row.js +8 -8
- package/dist/collection/components/table/table.row.js.map +1 -1
- package/dist/collection/components/table/table.store.js +2 -1
- package/dist/collection/components/table/table.store.js.map +1 -1
- package/dist/collection/components/table/table.utils.js +8 -7
- package/dist/collection/components/table/table.utils.js.map +1 -1
- package/dist/collection/components/tabs/tab-content.css +7 -2
- package/dist/collection/components/tabs/tab-content.js +12 -1
- package/dist/collection/components/tabs/tab-content.js.map +1 -1
- package/dist/collection/components/tabs/tab-group.css +13 -10
- package/dist/collection/components/tabs/tab-group.js +17 -7
- package/dist/collection/components/tabs/tab-group.js.map +1 -1
- package/dist/collection/components/tabs/tab.css +21 -12
- package/dist/collection/components/tooltip/tooltip.css +25 -16
- package/dist/collection/global/script/global.js +2 -13
- package/dist/collection/global/script/global.js.map +1 -1
- package/dist/collection/index.js +17 -0
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/utils/dom.js +16 -15
- package/dist/collection/utils/dom.js.map +1 -1
- package/dist/collection/utils/fetch.js +15 -12
- package/dist/collection/utils/fetch.js.map +1 -1
- package/dist/collection/utils/gesture/index.js +1 -9
- package/dist/collection/utils/gesture/index.js.map +1 -1
- package/dist/collection/utils/modal.js +2 -1
- package/dist/collection/utils/modal.js.map +1 -1
- package/dist/collection/utils/store/get-set.js +1 -1
- package/dist/collection/utils/store/get-set.js.map +1 -1
- package/dist/collection/utils/testing/index.js +1 -0
- package/dist/collection/utils/testing/index.js.map +1 -1
- package/dist/collection/utils/theme.js +1 -6
- package/dist/collection/utils/theme.js.map +1 -1
- package/dist/components/algolia.js +3 -3
- package/dist/components/algolia.js.map +1 -1
- package/dist/components/algoliasearch.umd.js +2 -2
- package/dist/components/algoliasearch.umd.js.map +1 -1
- package/dist/components/component-store.js +23 -10
- package/dist/components/component-store.js.map +1 -1
- package/dist/components/datalist.js +39 -31
- package/dist/components/datalist.js.map +1 -1
- package/dist/components/date-picker.js +2 -2
- package/dist/components/date-picker.js.map +1 -1
- package/dist/components/dom.js +17 -15
- package/dist/components/dom.js.map +1 -1
- package/dist/components/dropdown.js +7 -2
- package/dist/components/dropdown.js.map +1 -1
- package/dist/components/form-control.js +2 -2
- package/dist/components/form-control.js.map +1 -1
- package/dist/components/global-nav-user-profile.js +4 -3
- package/dist/components/global-nav-user-profile.js.map +1 -1
- package/dist/components/grid-item.js +1 -1
- package/dist/components/grid-item.js.map +1 -1
- package/dist/components/grid.js +3 -1
- package/dist/components/grid.js.map +1 -1
- package/dist/components/icon-button.js +1 -1
- package/dist/components/icon-button.js.map +1 -1
- package/dist/components/icon.js +4 -11
- package/dist/components/icon.js.map +1 -1
- package/dist/components/img.js +4 -5
- package/dist/components/img.js.map +1 -1
- package/dist/components/index.d.ts +9 -0
- package/dist/components/index.js +23 -52
- package/dist/components/index.js.map +1 -1
- package/dist/components/index3.js +635 -1069
- package/dist/components/index3.js.map +1 -1
- package/dist/components/input.js +15 -29
- package/dist/components/input.js.map +1 -1
- package/dist/components/menu.js +4 -2
- package/dist/components/menu.js.map +1 -1
- package/dist/components/modal.js +2 -1
- package/dist/components/modal.js.map +1 -1
- package/dist/components/nano-accordion.js +1 -4
- package/dist/components/nano-accordion.js.map +1 -1
- package/dist/components/nano-alert.js +20 -14
- package/dist/components/nano-alert.js.map +1 -1
- package/dist/components/nano-algolia-filter.js +2 -2
- package/dist/components/nano-algolia-filter.js.map +1 -1
- package/dist/components/nano-algolia-input.js.map +1 -1
- package/dist/components/nano-checkbox-group.js +53 -9
- package/dist/components/nano-checkbox-group.js.map +1 -1
- package/dist/components/nano-checkbox.js +6 -6
- package/dist/components/nano-checkbox.js.map +1 -1
- package/dist/components/nano-date-input.js +4 -4
- package/dist/components/nano-date-input.js.map +1 -1
- package/dist/components/nano-demo.js +12 -8
- package/dist/components/nano-demo.js.map +1 -1
- package/dist/components/nano-details.js +2 -2
- package/dist/components/nano-details.js.map +1 -1
- package/dist/components/nano-dialog.js +1 -1
- package/dist/components/nano-dialog.js.map +1 -1
- package/dist/components/nano-drawer.js +1 -1
- package/dist/components/nano-drawer.js.map +1 -1
- package/dist/components/nano-field-validator.js +2 -1
- package/dist/components/nano-field-validator.js.map +1 -1
- package/dist/components/nano-file-upload.js +4 -4
- package/dist/components/nano-file-upload.js.map +1 -1
- package/dist/components/nano-global-nav.js +51 -22
- package/dist/components/nano-global-nav.js.map +1 -1
- package/dist/components/nano-global-search-results.js +5 -3
- package/dist/components/nano-global-search-results.js.map +1 -1
- package/dist/components/nano-hero.js +3 -1
- package/dist/components/nano-hero.js.map +1 -1
- package/dist/components/nano-menu-drawer.js +2 -2
- package/dist/components/nano-menu-drawer.js.map +1 -1
- package/dist/components/nano-range.js +2 -2
- package/dist/components/nano-range.js.map +1 -1
- package/dist/components/nano-rating.js +1 -1
- package/dist/components/nano-rating.js.map +1 -1
- package/dist/components/nano-slides.js +10 -20
- package/dist/components/nano-slides.js.map +1 -1
- package/dist/components/nano-split-pane.js +14 -12
- package/dist/components/nano-split-pane.js.map +1 -1
- package/dist/components/nano-tab-content.js +10 -3
- package/dist/components/nano-tab-content.js.map +1 -1
- package/dist/components/nano-tab-group.js +18 -8
- package/dist/components/nano-tab-group.js.map +1 -1
- package/dist/components/nano-tab.js +1 -1
- package/dist/components/nano-tab.js.map +1 -1
- package/dist/components/nav-item.js +5 -5
- package/dist/components/nav-item.js.map +1 -1
- package/dist/components/option.js +1 -1
- package/dist/components/option.js.map +1 -1
- package/dist/components/popover.js +60 -49
- package/dist/components/popover.js.map +1 -1
- package/dist/components/progress-bar.js +1 -1
- package/dist/components/progress-bar.js.map +1 -1
- package/dist/components/resize-observe.js +16 -8
- package/dist/components/resize-observe.js.map +1 -1
- package/dist/components/select.js +43 -56
- package/dist/components/select.js.map +1 -1
- package/dist/components/skeleton.js +1 -1
- package/dist/components/skeleton.js.map +1 -1
- package/dist/components/spinner.js +2 -2
- package/dist/components/spinner.js.map +1 -1
- package/dist/components/sticker.js +4 -2
- package/dist/components/sticker.js.map +1 -1
- package/dist/components/table.js +117 -152
- package/dist/components/table.js.map +1 -1
- package/dist/components/theme.js +1 -6
- package/dist/components/theme.js.map +1 -1
- package/dist/components/tooltip.js +1 -1
- package/dist/components/tooltip.js.map +1 -1
- package/dist/esm/{algolia-data-b5cd0c58.js → algolia-data-c4ed188c.js} +2 -2
- package/dist/esm/{algolia-data-b5cd0c58.js.map → algolia-data-c4ed188c.js.map} +1 -1
- package/dist/esm/{algoliasearch.umd-86359963.js → algoliasearch.umd-4f7efa84.js} +3 -3
- package/dist/esm/{algoliasearch.umd-86359963.js.map → algoliasearch.umd-4f7efa84.js.map} +1 -1
- package/dist/esm/{component-store-ec512820.js → component-store-6eccd724.js} +25 -12
- package/dist/esm/component-store-6eccd724.js.map +1 -0
- package/dist/esm/{dom-d3ad49e2.js → dom-311c9e1e.js} +15 -15
- package/dist/esm/dom-311c9e1e.js.map +1 -0
- package/dist/esm/{form-control-84bac7a2.js → form-control-3284c2c9.js} +4 -4
- package/dist/esm/form-control-3284c2c9.js.map +1 -0
- package/dist/{cjs/global-989678ec.js → esm/global-f6e05656.js} +3 -16
- package/dist/esm/global-f6e05656.js.map +1 -0
- package/dist/esm/{index-c752dae1.js → index-38484737.js} +2 -2
- package/dist/esm/{index-c752dae1.js.map → index-38484737.js.map} +1 -1
- package/dist/esm/{index-3c280603.js → index-b4e277ad.js} +1438 -517
- package/dist/esm/index-b4e277ad.js.map +1 -0
- package/dist/{components/index4.js → esm/index-f626f476.js} +2 -10
- package/dist/esm/index-f626f476.js.map +1 -0
- package/dist/esm/index.js +18 -36
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +5 -4
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/{modal-5c9ce466.js → modal-1f3223cd.js} +3 -2
- package/dist/esm/modal-1f3223cd.js.map +1 -0
- package/dist/esm/nano-accordion.entry.js +4 -7
- package/dist/esm/nano-accordion.entry.js.map +1 -1
- package/dist/esm/nano-alert.entry.js +25 -19
- package/dist/esm/nano-alert.entry.js.map +1 -1
- package/dist/esm/nano-algolia-filter.entry.js +5 -5
- package/dist/esm/nano-algolia-filter.entry.js.map +1 -1
- package/dist/esm/nano-algolia-input.entry.js +4 -4
- package/dist/esm/nano-algolia-input.entry.js.map +1 -1
- package/dist/esm/nano-algolia-pagination.entry.js +2 -2
- package/dist/esm/nano-algolia-results.entry.js +2 -2
- package/dist/esm/nano-algolia.entry.js +8 -8
- package/dist/esm/nano-algolia.entry.js.map +1 -1
- package/dist/esm/nano-aspect-ratio.entry.js +1 -1
- package/dist/esm/nano-checkbox-group.entry.js +52 -9
- package/dist/esm/nano-checkbox-group.entry.js.map +1 -1
- package/dist/esm/nano-checkbox.entry.js +8 -8
- package/dist/esm/nano-checkbox.entry.js.map +1 -1
- package/dist/esm/nano-components.js +5 -4
- package/dist/esm/nano-components.js.map +1 -1
- package/dist/esm/nano-datalist_3.entry.js +46 -36
- package/dist/esm/nano-datalist_3.entry.js.map +1 -1
- package/dist/esm/nano-date-input.entry.js +6 -6
- package/dist/esm/nano-date-input.entry.js.map +1 -1
- package/dist/esm/nano-date-picker.entry.js +4 -4
- package/dist/esm/nano-date-picker.entry.js.map +1 -1
- package/dist/esm/nano-demo.entry.js +13 -9
- package/dist/esm/nano-demo.entry.js.map +1 -1
- package/dist/esm/nano-details.entry.js +4 -4
- package/dist/esm/nano-details.entry.js.map +1 -1
- package/dist/esm/nano-dialog.entry.js +6 -6
- 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 +9 -4
- package/dist/esm/nano-dropdown.entry.js.map +1 -1
- package/dist/esm/nano-field-validator.entry.js +4 -3
- package/dist/esm/nano-field-validator.entry.js.map +1 -1
- package/dist/esm/nano-file-upload.entry.js +5 -5
- package/dist/esm/nano-file-upload.entry.js.map +1 -1
- package/dist/esm/nano-global-nav-user-profile_3.entry.js +54 -67
- package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +1 -1
- package/dist/esm/nano-global-nav.entry.js +54 -26
- package/dist/esm/nano-global-nav.entry.js.map +1 -1
- package/dist/esm/nano-global-search-results.entry.js +6 -4
- package/dist/esm/nano-global-search-results.entry.js.map +1 -1
- package/dist/esm/nano-grid_3.entry.js +8 -7
- package/dist/esm/nano-grid_3.entry.js.map +1 -1
- package/dist/esm/nano-hero.entry.js +4 -2
- 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 +7 -14
- package/dist/esm/nano-icon.entry.js.map +1 -1
- package/dist/esm/nano-input.entry.js +19 -33
- package/dist/esm/nano-input.entry.js.map +1 -1
- package/dist/esm/nano-menu-drawer.entry.js +3 -3
- package/dist/esm/nano-menu-drawer.entry.js.map +1 -1
- package/dist/esm/nano-progress-bar_2.entry.js +4 -4
- package/dist/esm/nano-progress-bar_2.entry.js.map +1 -1
- package/dist/esm/nano-range.entry.js +4 -4
- 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 +18 -10
- 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-slides.entry.js +11 -21
- package/dist/esm/nano-slides.entry.js.map +1 -1
- package/dist/esm/nano-spinner.entry.js +3 -3
- package/dist/esm/nano-spinner.entry.js.map +1 -1
- package/dist/esm/nano-split-pane.entry.js +15 -13
- package/dist/esm/nano-split-pane.entry.js.map +1 -1
- package/dist/esm/nano-sticker.entry.js +6 -4
- package/dist/esm/nano-sticker.entry.js.map +1 -1
- package/dist/esm/nano-tab-content.entry.js +9 -3
- package/dist/esm/nano-tab-content.entry.js.map +1 -1
- package/dist/esm/nano-tab-group.entry.js +18 -12
- package/dist/esm/nano-tab-group.entry.js.map +1 -1
- package/dist/esm/nano-tab.entry.js +2 -2
- package/dist/esm/nano-tab.entry.js.map +1 -1
- package/dist/esm/{nano-table-1f4fe4ad.js → nano-table-5ff91f0f.js} +115 -150
- package/dist/esm/nano-table-5ff91f0f.js.map +1 -0
- package/dist/esm/nano-table.entry.js +3 -3
- package/dist/esm/polyfills/css-shim.js +1 -1
- package/dist/esm/{popover-e748bb61.js → popover-02e6714d.js} +61 -50
- package/dist/esm/popover-02e6714d.js.map +1 -0
- package/dist/esm/{scroll-a1e59d8c.js → scroll-e5825d8d.js} +2 -2
- package/dist/esm/{scroll-a1e59d8c.js.map → scroll-e5825d8d.js.map} +1 -1
- package/dist/esm/{table.worker-ddbd23c3.js → table.worker-5c1bb1ce.js} +4 -4
- package/dist/esm/table.worker-5c1bb1ce.js.map +1 -0
- package/dist/esm/{theme-931bd452.js → theme-82feb8cf.js} +2 -7
- package/dist/esm/theme-82feb8cf.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.esm.js +1 -1
- package/dist/nano-components/nano-components.esm.js.map +1 -1
- package/dist/nano-components/{p-1a8e60c4.entry.js → p-0411f019.entry.js} +2 -2
- package/dist/nano-components/p-0411f019.entry.js.map +1 -0
- package/dist/nano-components/p-13b2d70c.entry.js +5 -0
- package/dist/nano-components/p-13b2d70c.entry.js.map +1 -0
- package/dist/nano-components/p-167b9165.js.map +1 -1
- package/dist/nano-components/p-1d21b2ce.entry.js +5 -0
- package/dist/nano-components/p-1d21b2ce.entry.js.map +1 -0
- package/dist/nano-components/p-2155fc2c.js.map +1 -1
- package/dist/nano-components/p-257432ff.js +5 -0
- package/dist/nano-components/p-257432ff.js.map +1 -0
- package/dist/nano-components/p-264903b5.entry.js +5 -0
- package/dist/nano-components/p-264903b5.entry.js.map +1 -0
- package/dist/nano-components/p-320366a2.entry.js +5 -0
- package/dist/nano-components/p-320366a2.entry.js.map +1 -0
- package/dist/nano-components/p-364434b4.entry.js +5 -0
- package/dist/nano-components/p-364434b4.entry.js.map +1 -0
- package/dist/nano-components/{p-3f25fc76.entry.js → p-36d5a41d.entry.js} +2 -2
- package/dist/nano-components/p-36d5a41d.entry.js.map +1 -0
- package/dist/nano-components/{p-1e709f87.entry.js → p-371fe61d.entry.js} +2 -2
- package/dist/nano-components/p-371fe61d.entry.js.map +1 -0
- package/dist/nano-components/p-3d658ce2.entry.js +5 -0
- package/dist/nano-components/p-3d658ce2.entry.js.map +1 -0
- package/dist/nano-components/p-3e95778d.entry.js +5 -0
- package/dist/nano-components/p-3e95778d.entry.js.map +1 -0
- package/dist/nano-components/p-400d698f.entry.js +5 -0
- package/dist/nano-components/p-400d698f.entry.js.map +1 -0
- package/dist/nano-components/p-411bb8f1.js +5 -0
- package/dist/nano-components/p-411bb8f1.js.map +1 -0
- package/dist/nano-components/p-41811365.js +5 -0
- package/dist/nano-components/p-41811365.js.map +1 -0
- package/dist/nano-components/p-45abbbdd.js.map +1 -1
- package/dist/nano-components/{p-885b6950.js → p-45b7682a.js} +2 -2
- package/dist/nano-components/p-45b7682a.js.map +1 -0
- package/dist/nano-components/p-4b1d73e9.entry.js +5 -0
- package/dist/nano-components/p-4b1d73e9.entry.js.map +1 -0
- package/dist/nano-components/{p-69e5a37d.entry.js → p-4e104cb1.entry.js} +2 -2
- package/dist/nano-components/p-4e104cb1.entry.js.map +1 -0
- package/dist/nano-components/p-51bc8b59.js +5 -0
- package/dist/nano-components/p-51bc8b59.js.map +1 -0
- package/dist/nano-components/p-5a466c9f.entry.js +5 -0
- package/dist/nano-components/p-5a466c9f.entry.js.map +1 -0
- package/dist/nano-components/{p-bd05b3aa.entry.js → p-5f1b94f0.entry.js} +2 -2
- package/dist/nano-components/{p-bd05b3aa.entry.js.map → p-5f1b94f0.entry.js.map} +1 -1
- package/dist/nano-components/p-60823325.entry.js +5 -0
- package/dist/nano-components/p-60823325.entry.js.map +1 -0
- package/dist/nano-components/p-6760e54a.entry.js +5 -0
- package/dist/nano-components/p-6760e54a.entry.js.map +1 -0
- package/dist/nano-components/p-69774e99.entry.js +5 -0
- package/dist/nano-components/p-69774e99.entry.js.map +1 -0
- package/dist/nano-components/p-69a3e911.js.map +1 -1
- package/dist/nano-components/p-6bca2d00.entry.js +5 -0
- package/dist/nano-components/p-6bca2d00.entry.js.map +1 -0
- package/dist/nano-components/p-74a7fc4f.js.map +1 -1
- package/dist/nano-components/{p-dba8a88d.entry.js → p-78169835.entry.js} +2 -2
- package/dist/nano-components/p-78169835.entry.js.map +1 -0
- package/dist/nano-components/p-817eda34.entry.js +5 -0
- package/dist/nano-components/p-817eda34.entry.js.map +1 -0
- package/dist/nano-components/p-866c73c0.entry.js +5 -0
- package/dist/nano-components/p-866c73c0.entry.js.map +1 -0
- package/dist/nano-components/p-87a76a81.entry.js +5 -0
- package/dist/nano-components/{p-41addb3a.entry.js.map → p-87a76a81.entry.js.map} +1 -1
- package/dist/nano-components/p-8907dd24.entry.js +5 -0
- package/dist/nano-components/p-8907dd24.entry.js.map +1 -0
- package/dist/nano-components/p-90365d7b.entry.js +5 -0
- package/dist/nano-components/p-90365d7b.entry.js.map +1 -0
- package/dist/nano-components/p-909a424c.js +5 -0
- package/dist/nano-components/p-909a424c.js.map +1 -0
- package/dist/nano-components/p-9746b0a5.js.map +1 -1
- package/dist/nano-components/p-9cf5fda3.entry.js +5 -0
- package/dist/nano-components/p-9cf5fda3.entry.js.map +1 -0
- package/dist/nano-components/p-9fcd383f.entry.js +5 -0
- package/dist/nano-components/p-9fcd383f.entry.js.map +1 -0
- package/dist/nano-components/p-9fda481b.entry.js +5 -0
- package/dist/nano-components/p-9fda481b.entry.js.map +1 -0
- package/dist/nano-components/p-abd6b774.entry.js +5 -0
- package/dist/nano-components/p-abd6b774.entry.js.map +1 -0
- package/dist/nano-components/p-b933f3c8.js.map +1 -1
- package/dist/nano-components/{p-2828788c.js → p-bb07c3d0.js} +2 -2
- package/dist/nano-components/p-bb07c3d0.js.map +1 -0
- package/dist/nano-components/p-bb6f7c39.js +5 -0
- package/dist/nano-components/p-bb6f7c39.js.map +1 -0
- package/dist/nano-components/p-bf91c50e.js +6 -0
- package/dist/nano-components/p-bf91c50e.js.map +1 -0
- package/dist/nano-components/{p-b40eedcb.entry.js → p-bfbfec85.entry.js} +2 -2
- package/dist/nano-components/p-bfbfec85.entry.js.map +1 -0
- package/dist/nano-components/{p-447a5910.entry.js → p-c0681b2b.entry.js} +2 -2
- package/dist/nano-components/p-c0681b2b.entry.js.map +1 -0
- package/dist/nano-components/p-c0ca353b.entry.js +5 -0
- package/dist/nano-components/p-c0ca353b.entry.js.map +1 -0
- package/dist/nano-components/p-c4e8d584.entry.js +5 -0
- package/dist/nano-components/p-c4e8d584.entry.js.map +1 -0
- package/dist/nano-components/p-cecb9af1.js.map +1 -1
- package/dist/nano-components/p-d4f6ec9f.js +5 -0
- package/dist/nano-components/p-d4f6ec9f.js.map +1 -0
- package/dist/nano-components/p-d753f35a.entry.js +5 -0
- package/dist/nano-components/p-d753f35a.entry.js.map +1 -0
- package/dist/nano-components/{p-651b3264.js → p-d7ff8f12.js} +2 -2
- package/dist/nano-components/p-d7ff8f12.js.map +1 -0
- package/dist/nano-components/{p-0582afcc.js → p-d92b762b.js} +2 -2
- package/dist/nano-components/p-d92b762b.js.map +1 -0
- package/dist/nano-components/p-de25ba80.entry.js +5 -0
- package/dist/nano-components/p-de25ba80.entry.js.map +1 -0
- package/dist/nano-components/{p-c9a7c7ea.js → p-e04f2333.js} +2 -2
- package/dist/nano-components/p-e04f2333.js.map +1 -0
- package/dist/nano-components/p-e19d6a92.entry.js +5 -0
- package/dist/nano-components/p-e19d6a92.entry.js.map +1 -0
- package/dist/nano-components/{p-63834d50.js → p-ed2e6f32.js} +2 -2
- package/dist/nano-components/p-ed2e6f32.js.map +1 -0
- package/dist/nano-components/p-ed69b27b.entry.js +5 -0
- package/dist/nano-components/p-ed69b27b.entry.js.map +1 -0
- package/dist/nano-components/{p-a0b93616.js → p-ed6adde2.js} +3 -3
- package/dist/nano-components/p-ed6adde2.js.map +1 -0
- package/dist/nano-components/p-ee045579.js.map +1 -1
- package/dist/nano-components/{p-151aad1e.entry.js → p-f2875bf0.entry.js} +4 -4
- package/dist/nano-components/p-f2875bf0.entry.js.map +1 -0
- package/dist/nano-components/p-f28c802d.entry.js +5 -0
- package/dist/nano-components/p-f28c802d.entry.js.map +1 -0
- package/dist/nano-components/{p-a2d0d7b9.entry.js → p-f47776fd.entry.js} +2 -2
- package/dist/nano-components/p-f47776fd.entry.js.map +1 -0
- package/dist/nano-components/p-f8f89998.js.map +1 -1
- package/dist/nano-components/p-fccd59e4.entry.js +5 -0
- package/dist/nano-components/p-fccd59e4.entry.js.map +1 -0
- package/dist/nano-components/p-fe1446cd.entry.js +5 -0
- package/dist/nano-components/p-fe1446cd.entry.js.map +1 -0
- package/dist/themes/london-calling.css +1 -1
- package/dist/themes/london-calling.css.map +1 -1
- package/dist/themes/nanopore.css +1 -1
- package/dist/themes/nanopore.css.map +1 -1
- package/dist/types/components/alert/alert-interface.d.ts +1 -1
- package/dist/types/components/algolia/algolia-input.d.ts +1 -1
- package/dist/types/components/algolia/algolia.d.ts +2 -2
- package/dist/types/components/checkbox/checkbox-group.d.ts +11 -0
- package/dist/types/components/date-picker/date-picker-interface.d.ts +2 -2
- package/dist/types/components/date-picker/duet-date-picker/date-adapter.d.ts +3 -3
- package/dist/types/components/date-picker/duet-date-picker/date-localization.d.ts +3 -3
- package/dist/types/components/date-picker/duet-date-picker/date-picker-day.d.ts +1 -1
- package/dist/types/components/date-picker/duet-date-picker/date-picker-month.d.ts +1 -1
- package/dist/types/components/field-validator/field-validator-interface.d.ts +4 -4
- package/dist/types/components/file-upload/file-upload.d.ts +1 -1
- package/dist/types/components/global-nav/global-nav.d.ts +12 -6
- package/dist/types/components/icon/icon.d.ts +3 -3
- package/dist/types/components/menu/menu.d.ts +1 -1
- package/dist/types/components/nav-item/nav-item.d.ts +1 -1
- package/dist/types/components/range/range-interface.d.ts +2 -2
- package/dist/types/components/resize-observe/resize-observe.d.ts +1 -0
- package/dist/types/components/slides/slides-interface.d.ts +2 -2
- package/dist/types/components/slides/slides.d.ts +0 -2
- package/dist/types/components/table/table.cell.d.ts +1 -1
- package/dist/types/components/table/table.d.ts +9 -14
- package/dist/types/components/table/table.header.d.ts +1 -1
- package/dist/types/components/table/table.row.d.ts +2 -2
- package/dist/types/components/table/table.utils.d.ts +2 -1
- package/dist/types/components/tabs/tab-content.d.ts +2 -0
- package/dist/types/components.d.ts +829 -9
- package/dist/types/index.d.ts +5 -0
- package/dist/types/stencil-public-runtime.d.ts +48 -3
- package/dist/types/utils/dom.d.ts +9 -0
- package/dist/types/utils/gesture/index.d.ts +1 -1
- package/dist/types/utils/popover.d.ts +1 -1
- package/dist/types/utils/store/component-store.d.ts +2 -2
- package/dist/types/utils/testing/index.d.ts +1 -1
- package/docs-json.json +89 -50
- package/docs-vscode.json +8 -4
- package/hydrate/index.d.ts +853 -0
- package/{dist/custom-elements → hydrate}/index.js +11476 -7950
- package/hydrate/package.json +6 -0
- package/loader/index.d.ts +9 -0
- package/package.json +24 -16
- package/dist/cjs/component-store-d7c8c326.js.map +0 -1
- package/dist/cjs/dom-d7c33f11.js.map +0 -1
- package/dist/cjs/form-control-57c71246.js.map +0 -1
- package/dist/cjs/global-989678ec.js.map +0 -1
- package/dist/cjs/index-41582c2a.js.map +0 -1
- package/dist/cjs/index-75b61776.js +0 -1077
- package/dist/cjs/index-75b61776.js.map +0 -1
- package/dist/cjs/index-ece1cb9e.js.map +0 -1
- package/dist/cjs/modal-e4defcc3.js.map +0 -1
- package/dist/cjs/nano-table-820b04d5.js.map +0 -1
- package/dist/cjs/popover-508bcedb.js.map +0 -1
- package/dist/cjs/table.worker-9e238d16.js.map +0 -1
- package/dist/cjs/theme-50275e1a.js.map +0 -1
- package/dist/components/index4.js.map +0 -1
- package/dist/custom-elements/index.d.ts +0 -339
- package/dist/custom-elements/index.js.map +0 -1
- package/dist/esm/component-store-ec512820.js.map +0 -1
- package/dist/esm/dom-d3ad49e2.js.map +0 -1
- package/dist/esm/form-control-84bac7a2.js.map +0 -1
- package/dist/esm/global-8047b4ff.js.map +0 -1
- package/dist/esm/index-3bbaffe4.js +0 -1075
- package/dist/esm/index-3bbaffe4.js.map +0 -1
- package/dist/esm/index-3c280603.js.map +0 -1
- package/dist/esm/index-dc076ea6.js +0 -649
- package/dist/esm/index-dc076ea6.js.map +0 -1
- package/dist/esm/modal-5c9ce466.js.map +0 -1
- package/dist/esm/nano-table-1f4fe4ad.js.map +0 -1
- package/dist/esm/popover-e748bb61.js.map +0 -1
- package/dist/esm/table.worker-ddbd23c3.js.map +0 -1
- package/dist/esm/theme-931bd452.js.map +0 -1
- package/dist/nano-components/p-0582afcc.js.map +0 -1
- package/dist/nano-components/p-135fed16.entry.js +0 -5
- package/dist/nano-components/p-135fed16.entry.js.map +0 -1
- package/dist/nano-components/p-151aad1e.entry.js.map +0 -1
- package/dist/nano-components/p-15543295.entry.js +0 -5
- package/dist/nano-components/p-15543295.entry.js.map +0 -1
- package/dist/nano-components/p-1a8e60c4.entry.js.map +0 -1
- package/dist/nano-components/p-1e709f87.entry.js.map +0 -1
- package/dist/nano-components/p-1f347342.entry.js +0 -5
- package/dist/nano-components/p-1f347342.entry.js.map +0 -1
- package/dist/nano-components/p-1fe12320.js +0 -6
- package/dist/nano-components/p-1fe12320.js.map +0 -1
- package/dist/nano-components/p-23575705.entry.js +0 -5
- package/dist/nano-components/p-23575705.entry.js.map +0 -1
- package/dist/nano-components/p-2828788c.js.map +0 -1
- package/dist/nano-components/p-284dd9a2.entry.js +0 -5
- package/dist/nano-components/p-284dd9a2.entry.js.map +0 -1
- package/dist/nano-components/p-2a97ef51.entry.js +0 -5
- package/dist/nano-components/p-2a97ef51.entry.js.map +0 -1
- package/dist/nano-components/p-36842a50.entry.js +0 -5
- package/dist/nano-components/p-36842a50.entry.js.map +0 -1
- package/dist/nano-components/p-3a1026d1.entry.js +0 -5
- package/dist/nano-components/p-3a1026d1.entry.js.map +0 -1
- package/dist/nano-components/p-3f25fc76.entry.js.map +0 -1
- package/dist/nano-components/p-41addb3a.entry.js +0 -5
- package/dist/nano-components/p-447a5910.entry.js.map +0 -1
- package/dist/nano-components/p-4b69178e.entry.js +0 -5
- package/dist/nano-components/p-4b69178e.entry.js.map +0 -1
- package/dist/nano-components/p-559a6492.entry.js +0 -5
- package/dist/nano-components/p-559a6492.entry.js.map +0 -1
- package/dist/nano-components/p-5d149792.entry.js +0 -5
- package/dist/nano-components/p-5d149792.entry.js.map +0 -1
- package/dist/nano-components/p-63834d50.js.map +0 -1
- package/dist/nano-components/p-651b3264.js.map +0 -1
- package/dist/nano-components/p-69e5a37d.entry.js.map +0 -1
- package/dist/nano-components/p-6ad194e4.entry.js +0 -5
- package/dist/nano-components/p-6ad194e4.entry.js.map +0 -1
- package/dist/nano-components/p-6cb77d5c.entry.js +0 -5
- package/dist/nano-components/p-6cb77d5c.entry.js.map +0 -1
- package/dist/nano-components/p-73860775.js +0 -5
- package/dist/nano-components/p-73860775.js.map +0 -1
- package/dist/nano-components/p-77cad8d1.js +0 -5
- package/dist/nano-components/p-77cad8d1.js.map +0 -1
- package/dist/nano-components/p-793588d1.js +0 -5
- package/dist/nano-components/p-793588d1.js.map +0 -1
- package/dist/nano-components/p-7b3638b7.js +0 -5
- package/dist/nano-components/p-7b3638b7.js.map +0 -1
- package/dist/nano-components/p-845ae77e.js +0 -5
- package/dist/nano-components/p-845ae77e.js.map +0 -1
- package/dist/nano-components/p-885b6950.js.map +0 -1
- package/dist/nano-components/p-8d747891.js +0 -5
- package/dist/nano-components/p-8d747891.js.map +0 -1
- package/dist/nano-components/p-9059c8c1.entry.js +0 -5
- package/dist/nano-components/p-9059c8c1.entry.js.map +0 -1
- package/dist/nano-components/p-92504f7f.entry.js +0 -5
- package/dist/nano-components/p-92504f7f.entry.js.map +0 -1
- package/dist/nano-components/p-99fbae74.entry.js +0 -5
- package/dist/nano-components/p-99fbae74.entry.js.map +0 -1
- package/dist/nano-components/p-9a4297e1.entry.js +0 -5
- package/dist/nano-components/p-9a4297e1.entry.js.map +0 -1
- package/dist/nano-components/p-9eeed8f5.entry.js +0 -5
- package/dist/nano-components/p-9eeed8f5.entry.js.map +0 -1
- package/dist/nano-components/p-a0b93616.js.map +0 -1
- package/dist/nano-components/p-a183e3c7.entry.js +0 -5
- package/dist/nano-components/p-a183e3c7.entry.js.map +0 -1
- package/dist/nano-components/p-a2d0d7b9.entry.js.map +0 -1
- package/dist/nano-components/p-a5abfed9.entry.js +0 -5
- package/dist/nano-components/p-a5abfed9.entry.js.map +0 -1
- package/dist/nano-components/p-b25e79b8.entry.js +0 -5
- package/dist/nano-components/p-b25e79b8.entry.js.map +0 -1
- package/dist/nano-components/p-b40eedcb.entry.js.map +0 -1
- package/dist/nano-components/p-b55ffa92.entry.js +0 -5
- package/dist/nano-components/p-b55ffa92.entry.js.map +0 -1
- package/dist/nano-components/p-b87539f0.entry.js +0 -5
- package/dist/nano-components/p-b87539f0.entry.js.map +0 -1
- package/dist/nano-components/p-c9a7c7ea.js.map +0 -1
- package/dist/nano-components/p-ca567f01.entry.js +0 -5
- package/dist/nano-components/p-ca567f01.entry.js.map +0 -1
- package/dist/nano-components/p-cc5e7acb.entry.js +0 -5
- package/dist/nano-components/p-cc5e7acb.entry.js.map +0 -1
- package/dist/nano-components/p-d5303933.entry.js +0 -5
- package/dist/nano-components/p-d5303933.entry.js.map +0 -1
- package/dist/nano-components/p-d565991d.entry.js +0 -5
- package/dist/nano-components/p-d565991d.entry.js.map +0 -1
- package/dist/nano-components/p-dba8a88d.entry.js.map +0 -1
- package/dist/nano-components/p-dc50b93c.entry.js +0 -5
- package/dist/nano-components/p-dc50b93c.entry.js.map +0 -1
- package/dist/nano-components/p-e3860f00.js +0 -5
- package/dist/nano-components/p-e3860f00.js.map +0 -1
- package/dist/nano-components/p-e5408bc8.entry.js +0 -5
- package/dist/nano-components/p-e5408bc8.entry.js.map +0 -1
- package/dist/nano-components/p-ea2de992.js +0 -19
- package/dist/nano-components/p-ea2de992.js.map +0 -1
- package/dist/nano-components/p-f7471cca.entry.js +0 -5
- package/dist/nano-components/p-f7471cca.entry.js.map +0 -1
- package/dist/nano-components/p-fe94eeff.entry.js +0 -5
- package/dist/nano-components/p-fe94eeff.entry.js.map +0 -1
@@ -0,0 +1,5 @@
|
|
1
|
+
/*!
|
2
|
+
* Web Components for Nanopore digital Web Apps
|
3
|
+
*/
|
4
|
+
import{r as i,c as o,h as n,a,g as t}from"./p-bf91c50e.js";const e='.sc-nano-file-upload-h{box-sizing:border-box}*.sc-nano-file-upload,*.sc-nano-file-upload::before,*.sc-nano-file-upload::after{box-sizing:border-box}[hidden].sc-nano-file-upload{display:none !important}.sc-nano-file-upload-h{min-height:1rem;display:block;--invalid-msg-color:var(--nano-color-danger, #ef4135);--invalid-msg-font-size:var(--nano-input-help-font-size, 0.75em);--help-msg-color:var(--nano-input-help-color, #616d6e);--label-color:var(--nano-input-label-color, "currentcolor");--label-font-size:var(--nano-input-label-color, 1em);--label-padding:var(--nano-input-padding-bottom, var(--nano-input-padding, 6px));--label-color--invalid:var(--nano-input-label-color-invalid, "currentcolor");--drop-bg:#f2f7f9;--drop-text:#756f6a;--drop-height:3.5em;--drop-border-tint:var(--nano-color-primary-rgb, 0 116 149);--drop-border-width:2px;--drop-border-radius:5px;--drop-bg--invalid:var(--nano-input-background-color, white);--drop-border--invalid:var(--nano-color-danger-rgb, 239 65 53);--btn-bg:var(--nano-color-primary, #007495);--btn-text:var(--nano-color-primary-contrast, #fff);--btn-icon-size:var(--nano-btn-icon-size, 1.4em);--btn-padding-top:var(--nano-btn-padding-top, 0.5em);--btn-padding-bottom:var(--nano-btn-padding-bottom, 0.5em);--btn-padding-start:var(--nano-btn-padding-start, 1rem);--btn-padding-end:var(--nano-btn-padding-end, 1rem)}[disabled].sc-nano-file-upload-h:not([disabled=false]){opacity:0.7}[disabled].sc-nano-file-upload-h:not([disabled=false]) *.sc-nano-file-upload{pointer-events:none !important}.file-upload__label.sc-nano-file-upload{font-size:var(--label-font-size);padding:0 0 var(--label-padding);margin:0;line-height:1}[invalid].sc-nano-file-upload-h:not([invalid=false]) .file-upload__label.sc-nano-file-upload{color:var(--label-color--invalid)}.file-upload__input.sc-nano-file-upload{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.file-upload__error.sc-nano-file-upload,.file-upload__help.sc-nano-file-upload,.file-upload__more.sc-nano-file-upload,.file-upload__label.sc-nano-file-upload{display:block;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.file-upload__more.sc-nano-file-upload{height:1em;-webkit-margin-before:calc(var(--label-padding) / 2);margin-block-start:calc(var(--label-padding) / 2);-webkit-margin-end:0;margin-inline-end:0;-webkit-margin-after:var(--label-padding);margin-block-end:var(--label-padding);-webkit-margin-start:3px;margin-inline-start:3px;position:relative}.file-upload__error.sc-nano-file-upload,.file-upload__help.sc-nano-file-upload{inset-block-start:0;inset-inline-start:0;position:absolute;font-size:var(--invalid-msg-font-size);line-height:1.2;transition:0.3s ease-out opacity}.file-upload--invalid.sc-nano-file-upload .file-upload__error.sc-nano-file-upload,.file-upload--invalid.sc-nano-file-upload .file-upload__help.sc-nano-file-upload{opacity:1}.file-upload__error.sc-nano-file-upload{color:var(--invalid-msg-color);font-stretch:condensed;opacity:0}.file-upload--invalid.sc-nano-file-upload .file-upload__error.sc-nano-file-upload{opacity:1}.file-upload__help.sc-nano-file-upload{font-style:italic;opacity:1;color:var(--help-msg-color)}.file-upload--invalid.sc-nano-file-upload .file-upload__help.sc-nano-file-upload{opacity:0}.file-upload__drop.sc-nano-file-upload{position:relative;width:100%;display:inline-block}.file-upload__drop-area.sc-nano-file-upload{flex-direction:column;background-color:var(--drop-bg);color:var(--drop-text);min-height:var(--drop-height);display:flex;align-items:center;justify-content:center;font-size:0.9em;position:relative;transition:background-color 0.15s ease-in-out;padding:0.5rem}[disabled].sc-nano-file-upload-h:not([disabled=false]) .file-upload__drop-area.sc-nano-file-upload{opacity:0.7}.file-upload--invalid.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload{background-color:var(--drop-bg--invalid)}.file-upload--dragging.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload{background-color:#fff}.file-upload__drop-area.sc-nano-file-upload::after{content:"";position:absolute;border-radius:var(--drop-border-radius);border-width:var(--drop-border-width);border-color:rgb(var(--drop-border-tint)/50%);border-style:dashed;inset:0;transition:top 0.1s ease-in-out, bottom 0.1s ease-in-out, left 0.1s ease-in-out, right 0.1s ease-in-out}.file-upload--invalid.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload::after{border-color:rgb(var(--drop-border--invalid)/100%)}.file-upload--dragging.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload::after{inset:5px}.file-upload__drop-area.sc-nano-file-upload span.sc-nano-file-upload{color:rgb(var(--drop-border-tint)/100%);text-decoration:underline;border-radius:2px;z-index:1;cursor:pointer;position:relative}.file-upload--focus.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload span.sc-nano-file-upload{box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)))}.file-upload__list.sc-nano-file-upload{list-style:none;margin:0;padding:0}.file-upload__list-wrap.sc-nano-file-upload{position:relative;inset-block-start:-4px}.file-upload__list-item.sc-nano-file-upload{width:100%;margin:0 0 2px;display:flex;align-items:center;transform:translateZ(0);animation:hideListItem 0.3s ease-in-out forwards}@keyframes hideListItem{0%{opacity:1;transform:translateY(0);transform:translateZ(0)}100%{opacity:0;transform:translateY(10px);transform:translateZ(0)}}.file-upload__list-item--active.sc-nano-file-upload{animation:showListItem 0.3s ease-in-out forwards}@keyframes showListItem{0%{opacity:0;transform:translateY(10px);transform:translateZ(0)}100%{opacity:1;transform:translateY(0);transform:translateZ(0)}}.file-upload__list.sc-nano-file-upload .list-title.sc-nano-file-upload{background:var(--nano-color-blue--faded);border-radius:5px;padding:5px;-webkit-margin-end:2px;margin-inline-end:2px;display:block;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:0.9em;color:var(--help-msg-color)}.file-upload__list.sc-nano-file-upload .list-button.sc-nano-file-upload{background:var(--nano-color-blue--faded);border-radius:5px;margin:2px}.file-upload__list.sc-nano-file-upload .list-error.sc-nano-file-upload{--color:rgb(var(--drop-border--invalid) / 100%)}.file-upload__button.sc-nano-file-upload{padding:0;border:none;background-color:transparent;font:inherit;-webkit-box-align:center;text-decoration:none;color:inherit;transition:background-color 100ms ease-in-out, box-shadow 100ms ease-in-out, border-color 100ms ease-in-out, color 100ms ease-in-out;padding-inline:var(--nano-btn-padding-start, 1rem) var(--nano-btn-padding-end, 1rem);padding-block:var(--nano-btn-padding-top, 0.5rem) var(--nano-btn-padding-bottom, 0.5rem);box-shadow:var(--nano-layer-shadow-medium, 0 2px 4px rgba(0, 0, 0, 0.2));display:inline-block;border-radius:var(--nano-btn-border-radius, 5px);line-height:var(--nano-btn-line-height, 1.5em);font-weight:500;cursor:pointer;background:rgba(0, 0, 0, 0.02);background-color:var(--btn-bg);color:var(--btn-text);--nano-btn-icon-size:var(--btn-icon-size);--nano-btn-line-height:var(--btn-icon-size);--nano-btn-padding-top:var(--btn-padding-top);--nano-btn-padding-bottom:var(--btn-padding-bottom);--nano-btn-padding-start:var(--btn-padding-start);--nano-btn-padding-end:var(--btn-padding-end);max-width:100%;font-size:0.9em}.file-upload__button.sc-nano-file-upload::-moz-focus-inner{border:0;padding:0}.file-upload__button.sc-nano-file-upload:hover,.file-upload__button.sc-nano-file-upload:focus{text-decoration:none;color:inherit}@media print{.file-upload__button.sc-nano-file-upload{display:none}}.file-upload__button.sc-nano-file-upload:focus,.file-upload__button.button--focus.sc-nano-file-upload{outline:none;box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)))}.file-upload__button.sc-nano-file-upload nano-icon.sc-nano-file-upload,.file-upload__button.sc-nano-file-upload nano-spinner.sc-nano-file-upload{--base-color-rgb:255, 255, 255;-webkit-margin-start:0.5em;margin-inline-start:0.5em;-webkit-margin-end:0;margin-inline-end:0;font-size:var(--nano-btn-icon-size, 1em);vertical-align:middle;-webkit-margin-before:-0.188em;margin-block-start:-0.188em;display:inline-block}.file-upload__button.button--icon-start.sc-nano-file-upload nano-icon.sc-nano-file-upload,.file-upload__button.button--icon-start.sc-nano-file-upload nano-spinner.sc-nano-file-upload{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:0.5em;margin-inline-end:0.5em}.file-upload__button.sc-nano-file-upload:hover:not(.button--disabled){box-shadow:var(--nano-layer-shadow-large, 0 2px 8px rgba(0, 0, 0, 0.2))}.file-upload__button.sc-nano-file-upload:active:not(.button--disabled):not(:disabled){box-shadow:none}.file-upload__button--disabled.sc-nano-file-upload,.file-upload__button.sc-nano-file-upload:disabled{opacity:0.6}.file-upload__button--disabled.sc-nano-file-upload:hover,.file-upload__button.sc-nano-file-upload:disabled:hover{cursor:default}.file-upload__button.sc-nano-file-upload:hover:not(.button--disabled):not(:disabled),.file-upload__button.button--active.sc-nano-file-upload{background-color:var(--nano-color-primary-shade, #00637f);color:var(--btn-text)}.file-upload__button.sc-nano-file-upload:hover:not(.button--disabled):not(:disabled).button--keyline,.file-upload__button.button--active.button--keyline.sc-nano-file-upload{background-color:var(--btn-bg);color:var(--btn-text)}.file-upload__button.sc-nano-file-upload:focus{color:var(--btn-text)}.file-upload__button.button--keyline.sc-nano-file-upload{background:transparent;border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);padding-block:calc(var(--nano-btn-padding-top, 0.5rem) - var(--nano-btn-border-width, 2px)) calc(var(--nano-btn-padding-bottom, 0.5rem) - var(--nano-btn-border-width, 2px));color:var(--btn-bg);border-color:var(--btn-bg)}.file-upload__button.button--keyline.sc-nano-file-upload:hover:not(.button--disabled):not(:disabled),.file-upload__button.button--keyline.sc-nano-file-upload:not(:focus):not(.button--focus),.file-upload__button.button--keyline.button--active.sc-nano-file-upload{box-shadow:none}[disabled].sc-nano-file-upload-h:not([disabled=false]) .file-upload__button.sc-nano-file-upload{opacity:0.4}.file-upload--dragging.sc-nano-file-upload .file-upload__button.sc-nano-file-upload{--nano-btn-border-style:dashed}.file-upload__button.sc-nano-file-upload .file-upload__clear-btn.sc-nano-file-upload{margin:0;font-size:inherit;padding:0;border:0;outline:none;background-color:transparent;display:flex;align-items:stretch;width:auto;color:var(--clear-btn-color)}.is-invalid.sc-nano-file-upload-h .file-upload__button.sc-nano-file-upload .file-upload__clear-btn.sc-nano-file-upload{color:var(--clear-btn-color--invalid)}.file-upload__button.sc-nano-file-upload .file-upload__clear-btn.sc-nano-file-upload nano-icon.sc-nano-file-upload{margin-inline:0.4rem 0;margin-block:0}.file-upload__button.sc-nano-file-upload .file-upload__btn-content.sc-nano-file-upload{display:flex;align-items:center}.file-upload__button.sc-nano-file-upload .file-upload__btn-content.sc-nano-file-upload span.sc-nano-file-upload{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}';let l=0;let s=()=>new DataTransfer;try{s()}catch(i){try{s=()=>new ClipboardEvent("").clipboardData;s()}catch(i){s=null}}const r=class{constructor(a){i(this,a);this.nanoChange=o(this,"nanoChange",7);this.nanoFocus=o(this,"nanoFocus",7);this.nanoBlur=o(this,"nanoBlur",7);this.nanoValidate=o(this,"nanoValidate",7);this.fileInputId=`nano-file-upload-${l++}`;this.canChangeFileList=!!s;this.removeFiles=[];this.onClearClick=()=>{this.value=""};this.onBlur=()=>{this.hasFocus=false;this.validate();if(this.validateOn==="dirty")this.showInlineValidation();this.nanoBlur.emit()};this.onFocus=()=>{this.hasFocus=true;this.nanoFocus.emit()};this.validate=()=>{this.errorMessage="";this.inputEl.setCustomValidity("");let i;if(!this.inputEl.validity.valid){i=this.inputEl.validationMessage}else{this.fileList.forEach((o=>{i=null;if(!this.checkFileSize(o.file.size)){i="Maximum file size exceeded. Max file size is "+this.maxFileSize+"Mb"}else if(!this.checkFileType(o.file.type))i=`File type is not allowed (${this.accept})`;o.validationMessage=i;o.valid=!i}));if(this.fileList.length>this.maxFiles)i=`Maxinum number of files exceeded (${this.maxFiles})`}if(!!i)this.inputEl.setCustomValidity(i)};this.onInvalid=i=>{if(this.showInlineError)i.preventDefault();this.validate();this.showInlineValidation(i)};this.onFileChoose=i=>{const o=i.target.files;if(o&&o.length)this.addNewFiles(i.target.files)};this.onFileRemoveFileClick=(i,o)=>{if(!this.canChangeFileList)return;this.removeFiles.push(o);i.target.closest(".file-upload__list-item--active").classList.remove("file-upload__list-item--active")};this.onFileRemoveAnim=()=>{if(!this.canChangeFileList||!this.removeFiles.length)return;this.fileList=this.fileList.filter((i=>!this.removeFiles.find((o=>o===i))));try{this.removeFiles.forEach((i=>i.location?URL.revokeObjectURL(i.location):""))}catch(i){}this.removeFiles=[]};this.onInputChange=()=>{this.nanoChange.emit({value:this.value,files:this.files})};this.onDragStop=i=>{i.preventDefault();i.stopPropagation();this.isDragging=false};this.onDragStart=i=>{i.preventDefault();i.stopPropagation();this.isDragging=true};this.onDrop=i=>{this.onDragStop(i);if(i.dataTransfer.files&&i.dataTransfer.files.length)this.addNewFiles(i.dataTransfer.files)};this.FileUploadInput=(i,o)=>{const a=this.fileInputId+"-lbl";const t=this.showInlineError||this.hasHelperSlot?this.fileInputId+"-more":"";return[n("div",{class:"file-upload__"+i+"-wrap"},n("label",{class:`file-upload__`+i,htmlFor:this.fileInputId,id:a,onDrop:i=>{this.onDrop(i);this.onDragStop(i)},onDragEnd:this.onDragStop,onDragLeave:this.onDragStop,onDragEnter:this.onDragStart,onDragOver:this.onDragStart},(!!this.label||this.hasLabelSlot&&i!=="drop")&&n("div",{class:`file-upload__label ${this.hideLabel?"visually-hide":""}`},!!this.label&&!!this.label.length?this.label:"",!this.label&&this.hasLabelSlot&&i!=="drop"&&n("slot",{name:"label"})),i==="drop"&&n("div",{class:"file-upload__drop-area"},n("div",null,this.hasLabelSlot&&n("slot",{name:"label"})),n("div",null,"Drag and drop or ",n("span",null,"browse"))),i==="btn"&&n("div",{class:`file-upload__button button--keyline button--icon-start ${this.hasFocus?"button--focus":""}`},n("div",{class:`file-upload__btn-content`},n("nano-icon",{name:"regular/cloud-upload"}),n("span",null,!!this.fileList.length?this.fileList[0].file.name:this.placeholder),!!this.value&&this.clearInput&&!this.disabled&&n("button",{type:"button",class:"icon file-upload__clear-btn",tabindex:"-1",onClick:this.onClearClick},n("nano-icon",{name:"light/times"})))),n("input",{"aria-labelledby":a+" "+t+" "+o,type:"file",id:this.fileInputId,accept:this.accept,class:"file-upload__input",multiple:this.maxFiles>1,disabled:this.disabled,name:this.canChangeFileList?undefined:this.name,form:this.form,ref:i=>{if(this.canChangeFileList){this.publicInputEl=i;return}this.inputEl=i},onChange:this.onFileChoose,onFocus:this.onFocus,onReset:this.onInputChange})),n("input",{name:!this.canChangeFileList?undefined:this.name,form:this.form,ref:i=>{if(!this.canChangeFileList)return;this.inputEl=i},type:"file",id:this.fileInputId+"-hidden",tabIndex:-1,multiple:true,class:"file-upload__input",disabled:this.disabled,required:this.required,accept:this.accept,onInvalid:this.onInvalid,onChange:this.onInputChange})),this.showInlineError||this.hasHelperSlot?n("div",{class:"file-upload__more",id:t},this.showInlineError&&!!this.errorMessage.length?n("div",{class:"file-upload__error"},this.errorMessage):"",n("div",{class:"file-upload__help"},n("slot",{name:"helper"}))):""]};this.button=()=>this.FileUploadInput("btn");this.dropArea=()=>{const i=this.fileInputId+"-list";return[this.FileUploadInput("drop",i),n("output",{class:"file-upload__list-wrap",id:i},!!this.fileList&&this.fileList.length>0&&n("ul",{class:"file-upload__list list"},this.fileList.map((i=>n("li",{key:i.file.name,class:"file-upload__list-item file-upload__list-item--active list-item",onAnimationEnd:i=>this.onFileRemoveAnim()},n("span",{class:"list-title"},i.file.name),!i.valid&&n("nano-tooltip",{content:i.validationMessage,placement:"left"},n("nano-icon-button",{class:"list-button list-error",iconName:"light/exclamation-triangle",label:"File error"})),this.canChangeFileList&&n("nano-icon-button",{class:"list-button list-button--view",type:"button",iconName:"light/eye",label:"View file",target:"_blank",href:i.location}),this.canChangeFileList&&n("nano-icon-button",{onClick:o=>this.onFileRemoveFileClick(o,i),class:"list-button list-button--remove",iconName:"light/times",label:"Remove file"}))))))]};this.hasHelperSlot=undefined;this.hasLabelSlot=undefined;this.errorMessage="";this.isDragging=false;this.fileList=[];this.hasFocus=undefined;this.name=undefined;this.accept=undefined;this.capture=undefined;this.maxFileSize=1;this.maxFiles=1;this.label=undefined;this.placeholder="Choose a file...";this.hideLabel=false;this.required=false;this.disabled=false;this.clearInput=false;this.showInlineError=true;this.validateOn="submit";this.form=undefined;this._invalid=false}fileListChange(){if(this.canChangeFileList){this.publicInputEl.value="";this.inputEl.files=this.arrToFileList(this.fileList.map((i=>i.file)));setTimeout((()=>{this.nanoChange.emit({value:this.value,files:this.files})}),20)}}shouldValidate(){if(!this.inputEl)return;this.validate();requestAnimationFrame((()=>{if(this.validateOn==="dirty")this.showInlineValidation()}))}get invalid(){return this._invalid}get validityMessage(){if(!this.inputEl)return"";return this.inputEl.validationMessage}get files(){return this.inputEl?Array.from(this.inputEl.files).map((i=>{i.objectURL=URL.createObjectURL(i);return i})):[]}set files(i){this.addNewFiles(this.arrToFileList(i))}get value(){return this.inputEl?this.inputEl.value:""}set value(i){if(i===""&&this.inputEl){this.fileList=[];this.inputEl.value=""}}async reportValidity(i){if(i){this.validate();this.showInlineValidation()}return{isValid:!this.invalid,errorMessage:this.inputEl.validationMessage}}async setFocus(){if(this.inputEl)this.inputEl.focus()}getInputElement(){return Promise.resolve(this.inputEl)}async showError(i){if(this.inputEl){this.inputEl.setCustomValidity(i);this.validate();this.showInlineValidation()}}globalClickHandler(i){if(!this.hasFocus)return;if(i.composedPath().every((i=>i!==this.host)))this.onBlur()}globalKeydownHandler(i){if(!this.hasFocus||i.key!=="Tab")return;if(i.target!==this.inputEl)this.onBlur()}onReset(i){const o=this.form?document.querySelector("#"+this.form):this.host.closest("form");if(!o||i.target!==this.host.closest("form"))return;this.value=""}arrToFileList(i){const o=s();for(let n=0,a=i.length;n<a;n++)o.items.add(i[n]);return o.files}checkFileSize(i){return i/1e6<=this.maxFileSize}checkFileType(i){if(!this.accept)return true;return this.accept.match(i)&&this.accept.match(i).length>0}showInlineValidation(i){if(this.validateOn==="submitThenDirty")this.validateOn="dirty";this._invalid=false;this.errorMessage="";if(!this.inputEl.validity.valid){this.errorMessage=this.inputEl.validationMessage;this._invalid=true}this.nanoValidate.emit({isValid:!this._invalid,errorMessage:this.inputEl.validationMessage,originalEvent:i})}slotChangeObserver(){if(this.mo)this.mo.disconnect();const i=this.mo=new MutationObserver((()=>this.processSlottedContent()));i.observe(this.host,{childList:true,subtree:true})}processSlottedContent(){this.hasLabelSlot=!!this.host.querySelectorAll('[slot="label"]');this.hasHelperSlot=!!this.host.querySelector('[slot="helper"]')}addNewFiles(i){const o=Array.from(i).map((i=>({file:i,location:URL.createObjectURL(i),valid:true,validationMessage:null})));if(this.canChangeFileList&&this.maxFiles>1){const i=o.filter((i=>!this.fileList.find((o=>o.file.name===i.file.name))));this.fileList=[...this.fileList,...i]}else this.fileList=o}disconnectedCallback(){if(this.mo)this.mo.disconnect()}componentDidLoad(){this.slotChangeObserver()}componentWillLoad(){this.processSlottedContent()}render(){return n(a,null,n("div",{class:{"file-upload":true,"file-upload--dragging":this.isDragging,"file-upload--focus":this.hasFocus,"file-upload--invalid":this._invalid}},this.maxFiles>1?n(this.dropArea,null):n(this.button,null)))}get host(){return t(this)}static get watchers(){return{fileList:["fileListChange","shouldValidate"],maxFiles:["shouldValidate"],maxFileSize:["shouldValidate"],capture:["shouldValidate"],accept:["shouldValidate"],required:["shouldValidate"],disabled:["shouldValidate"]}}};r.style=e;export{r as nano_file_upload};
|
5
|
+
//# sourceMappingURL=p-e19d6a92.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["fileUploadCss","fileInputIds","getDataTransfer","DataTransfer","_a","ClipboardEvent","clipboardData","_b","FileUpload","this","fileInputId","canChangeFileList","removeFiles","onClearClick","value","onBlur","hasFocus","validate","validateOn","showInlineValidation","nanoBlur","emit","onFocus","nanoFocus","errorMessage","inputEl","setCustomValidity","error","validity","valid","validationMessage","fileList","forEach","fileItem","checkFileSize","file","size","maxFileSize","checkFileType","type","accept","length","maxFiles","onInvalid","ev","showInlineError","preventDefault","onFileChoose","e","files","target","addNewFiles","onFileRemoveFileClick","push","closest","classList","remove","onFileRemoveAnim","filter","find","rmFile","f","location","URL","revokeObjectURL","onInputChange","nanoChange","onDragStop","stopPropagation","isDragging","onDragStart","onDrop","dataTransfer","FileUploadInput","eleType","listId","labelId","moreId","hasHelperSlot","h","class","htmlFor","id","onDragEnd","onDragLeave","onDragEnter","onDragOver","label","hasLabelSlot","hideLabel","name","placeholder","clearInput","disabled","tabindex","onClick","multiple","undefined","form","ref","input","publicInputEl","onChange","onReset","tabIndex","required","button","dropArea","map","key","onAnimationEnd","_","content","placement","iconName","href","fileListChange","arrToFileList","setTimeout","shouldValidate","requestAnimationFrame","invalid","_invalid","validityMessage","Array","from","objectURL","createObjectURL","fs","val","async","validateFirst","isValid","focus","getInputElement","Promise","resolve","message","globalClickHandler","composedPath","every","node","host","globalKeydownHandler","document","querySelector","i","len","items","add","match","nanoValidate","originalEvent","slotChangeObserver","mo","disconnect","MutationObserver","processSlottedContent","observe","childList","subtree","querySelectorAll","newFiles","findFile","disconnectedCallback","componentDidLoad","componentWillLoad","render","Host"],"sources":["./src/components/file-upload/file-upload.scss?tag=nano-file-upload&encapsulation=scoped","./src/components/file-upload/file-upload.tsx"],"sourcesContent":["@use 'sass:map';\n@use 'sass:list';\n\n@import '../../global/style/utilities/globals';\n@import '../../global/style/nano-theme/form';\n@import '../../global/style/nano-theme/base';\n@import '../../global/style/nano-theme/button';\n\n:host {\n /**\n * @prop --invalid-msg-color: Default value #{nano-color(danger, base)};\n * @prop --invalid-msg-font-size: Default value #{$input-help-font-size};\n\n * @prop --help-msg-color: Default value #{$input-help-color};\n\n * @prop --label-color: Default value #{$label-color};\n * @prop --label-color--invalid: Default value #{$label-color-invalid};\n * @prop --label-font-size: Default value #{$label-font-size};\n * @prop --label-padding: Default value #{$input-padding-bottom};\n * @prop --label-color--invalid: Default value #{$label-color-invalid};\n\n * @prop --drop-bg: Default value #{map.get($colors, blue--faded)};\n * @prop --drop-text: Default value #{map.get($colors, dimgrey)};\n * @prop --drop-height: Default value 3.5em;\n * @prop --drop-border-tint: Default value #{nano-color(primary, base, null, true)};\n * @prop --drop-border-width: Default value 2px;\n * @prop --drop-border-radius: Default value 5px;\n * @prop --drop-bg--invalid: Default value #{$input-background-color--invalid};\n * @prop --drop-border--invalid: Default value #{nano-color(danger, base, null, true)};\n\n * @prop --btn-bg: Default value #{nano-color(primary, base)};\n * @prop --btn-text: Default value #{nano-color(primary, contrast)};\n * @prop --btn-icon-size: Default value var(--nano-btn-icon-size, 1.4em);\n * @prop --btn-padding-top: Default value var(--nano-btn-padding-top, .5em);\n * @prop --btn-padding-bottom: Default value var(--nano-btn-padding-bottom, .5em);\n * @prop --btn-padding-start: Default value var(--nano-btn-padding-start, 1em);\n * @prop --btn-padding-end: Default value var(--nano-btn-padding-end, 1em);\n */\n\n min-height: 1rem;\n display: block;\n\n --invalid-msg-color: #{nano-color(danger, base)};\n --invalid-msg-font-size: #{$input-help-font-size};\n --help-msg-color: #{$input-help-color};\n --label-color: #{$label-color};\n --label-font-size: #{$label-font-size};\n --label-padding: #{$input-padding-bottom};\n --label-color--invalid: #{$label-color-invalid};\n --drop-bg: #{map.get($colors, blue--faded)};\n --drop-text: #{darken(map.get($colors, dimgrey), 11%)};\n --drop-height: 3.5em;\n --drop-border-tint: #{nano-color(primary, base, null, true)};\n --drop-border-width: 2px;\n --drop-border-radius: 5px;\n --drop-bg--invalid: #{$input-background-color--invalid};\n --drop-border--invalid: #{nano-color(danger, base, null, true)};\n --btn-bg: #{nano-color(primary, base)};\n --btn-text: #{nano-color(primary, contrast)};\n --btn-icon-size: var(--nano-btn-icon-size, 1.4em);\n --btn-padding-top: var(--nano-btn-padding-top, 0.5em);\n --btn-padding-bottom: var(--nano-btn-padding-bottom, 0.5em);\n --btn-padding-start: var(--nano-btn-padding-start, 1rem);\n --btn-padding-end: var(--nano-btn-padding-end, 1rem);\n}\n\n:host([disabled]:not([disabled='false'])) {\n opacity: 0.7;\n\n * {\n pointer-events: none !important;\n }\n}\n\n.file-upload {\n $self: &;\n\n /* Common */\n\n &__label {\n font-size: var(--label-font-size);\n padding: 0 0 var(--label-padding);\n margin: 0;\n line-height: 1;\n\n :host([invalid]:not([invalid='false'])) & {\n color: var(--label-color--invalid);\n }\n }\n\n &__input {\n @include visually-hide();\n }\n\n &__error,\n &__help,\n &__more,\n &__label {\n display: block;\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n\n &__more {\n height: 1em;\n margin-block-start: calc(var(--label-padding) / 2);\n margin-inline-end: 0;\n margin-block-end: var(--label-padding);\n margin-inline-start: 3px;\n position: relative;\n }\n\n &__error,\n &__help {\n inset-block-start: 0;\n inset-inline-start: 0;\n position: absolute;\n font-size: var(--invalid-msg-font-size);\n line-height: 1.2;\n transition: 0.3s ease-out opacity;\n\n .file-upload--invalid & {\n opacity: 1;\n }\n }\n\n &__error {\n color: var(--invalid-msg-color);\n font-stretch: condensed;\n opacity: 0;\n\n .file-upload--invalid & {\n opacity: 1;\n }\n }\n\n &__help {\n font-style: italic;\n opacity: 1;\n color: var(--help-msg-color);\n\n .file-upload--invalid & {\n opacity: 0;\n }\n }\n\n /* Drop area / Multi file upload */\n\n &__drop {\n position: relative;\n width: 100%;\n display: inline-block;\n }\n\n &__drop-area {\n flex-direction: column;\n background-color: var(--drop-bg);\n color: var(--drop-text);\n min-height: var(--drop-height);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 0.9em;\n position: relative;\n transition: background-color 0.15s ease-in-out;\n padding: 0.5rem;\n\n :host([disabled]:not([disabled='false'])) & {\n opacity: 0.7;\n }\n\n .file-upload--invalid & {\n background-color: var(--drop-bg--invalid);\n }\n\n .file-upload--dragging & {\n background-color: #{map.get($colors, white)};\n }\n\n &::after {\n content: '';\n position: absolute;\n border-radius: var(--drop-border-radius);\n border-width: var(--drop-border-width);\n border-color: rgb(var(--drop-border-tint) / 50%);\n border-style: dashed;\n inset: 0;\n transition:\n top 0.1s ease-in-out,\n bottom 0.1s ease-in-out,\n left 0.1s ease-in-out,\n right 0.1s ease-in-out;\n\n .file-upload--invalid & {\n border-color: rgb(var(--drop-border--invalid) / 100%);\n }\n\n .file-upload--dragging & {\n inset: 5px;\n }\n }\n\n span {\n color: rgb(var(--drop-border-tint) / 100%);\n text-decoration: underline;\n border-radius: 2px;\n z-index: 1;\n cursor: pointer;\n position: relative;\n\n .file-upload--focus & {\n box-shadow: #{$control-focus-style};\n }\n }\n }\n\n &__list {\n list-style: none;\n margin: 0;\n padding: 0;\n\n &-wrap {\n position: relative;\n inset-block-start: -4px;\n }\n\n &-item {\n width: 100%;\n margin: 0 0 2px;\n display: flex;\n align-items: center;\n transform: translateZ(0);\n animation: hideListItem 0.3s ease-in-out forwards;\n\n @keyframes hideListItem {\n 0% {\n opacity: 1;\n transform: translateY(0);\n transform: translateZ(0);\n }\n\n 100% {\n opacity: 0;\n transform: translateY(10px);\n transform: translateZ(0);\n }\n }\n\n &--active {\n animation: showListItem 0.3s ease-in-out forwards;\n\n @keyframes showListItem {\n 0% {\n opacity: 0;\n transform: translateY(10px);\n transform: translateZ(0);\n }\n\n 100% {\n opacity: 1;\n transform: translateY(0);\n transform: translateZ(0);\n }\n }\n }\n }\n\n .list-title {\n background: var(--nano-color-blue--faded);\n border-radius: 5px;\n padding: 5px;\n margin-inline-end: 2px;\n display: block;\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-size: 0.9em;\n color: var(--help-msg-color);\n }\n\n .list-button {\n background: var(--nano-color-blue--faded);\n border-radius: 5px;\n margin: 2px;\n }\n\n .list-error {\n --color: rgb(var(--drop-border--invalid) / 100%);\n }\n }\n\n /* Button display / Single file upload */\n\n &__button {\n @include button-base;\n @include button-standard(\n var(--btn-bg),\n var(--btn-text),\n #{nano-color(primary, shade)}\n );\n\n --nano-btn-icon-size: var(--btn-icon-size);\n --nano-btn-line-height: var(--btn-icon-size);\n --nano-btn-padding-top: var(--btn-padding-top);\n --nano-btn-padding-bottom: var(--btn-padding-bottom);\n --nano-btn-padding-start: var(--btn-padding-start);\n --nano-btn-padding-end: var(--btn-padding-end);\n\n max-width: 100%;\n font-size: 0.9em;\n\n :host([disabled]:not([disabled='false'])) & {\n opacity: 0.4;\n }\n\n .file-upload--dragging & {\n --nano-btn-border-style: dashed;\n }\n #{$self}__clear-btn {\n margin: 0;\n font-size: inherit;\n padding: 0;\n border: 0;\n outline: none;\n background-color: transparent;\n display: flex;\n align-items: stretch;\n width: auto;\n color: var(--clear-btn-color);\n\n :host(.is-invalid) & {\n color: var(--clear-btn-color--invalid);\n }\n\n nano-icon {\n margin-inline: 0.4rem 0;\n margin-block: 0;\n }\n }\n #{$self}__btn-content {\n display: flex;\n align-items: center;\n\n span {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n min-width: 0;\n }\n }\n }\n}\n","import {\n Component,\n Prop,\n h,\n Host,\n Element,\n ComponentInterface,\n State,\n Event,\n EventEmitter,\n Watch,\n VNode,\n Method,\n Listen,\n} from '@stencil/core';\nimport type {\n ControlValidity,\n ControlValidityEventDetail,\n FileInputChangeEventDetail,\n FileWithUrl,\n} from '../../interface';\n\nlet fileInputIds = 0;\n\nlet getDataTransfer = () => new DataTransfer();\ntry {\n getDataTransfer();\n} catch {\n try {\n getDataTransfer = () => new ClipboardEvent('').clipboardData;\n getDataTransfer();\n } catch {\n getDataTransfer = null;\n }\n}\n\ninterface FileValidation {\n file: File;\n valid: boolean;\n validationMessage?: string;\n location?: string;\n}\n/**\n * A better UI experience for `input type=\"file\"` form controls.\n *\n * - Drag and Drop\n * - Validation options\n * - Preview and manage multiple files\n */\n@Component({\n tag: 'nano-file-upload',\n styleUrl: 'file-upload.scss',\n scoped: true,\n})\nexport class FileUpload implements ComponentInterface {\n private inputEl: HTMLInputElement;\n private publicInputEl: HTMLInputElement;\n private mo!: MutationObserver;\n private fileInputId = `nano-file-upload-${fileInputIds++}`;\n private canChangeFileList = !!getDataTransfer;\n private removeFiles: FileValidation[] = [];\n\n @State() hasHelperSlot: boolean;\n @State() hasLabelSlot: boolean;\n @State() errorMessage: string = '';\n @State() isDragging = false;\n @State() fileList: FileValidation[] = [];\n @Watch('fileList')\n fileListChange() {\n if (this.canChangeFileList) {\n this.publicInputEl.value = '';\n this.inputEl.files = this.arrToFileList(\n this.fileList.map((file) => file.file)\n );\n setTimeout(() => {\n this.nanoChange.emit({ value: this.value, files: this.files });\n }, 20);\n }\n }\n @State() hasFocus: boolean;\n\n @Element() host: HTMLNanoFileUploadElement;\n\n // public props\n\n /** Name of the form control. Submitted with the form as part of a name/value pair. */\n @Prop() name!: string;\n\n /** The accept attribute value is a string that defines the file types the file input should accept.\n * E.g. for a MS Word file: `.doc, .docx,application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document` */\n @Prop() accept?: string;\n\n /** Specifies which camera to use for capture of image or video data. `user` for the user-facing camera and/or microphone.\n * `environment` specifies the the outward-facing camera and/or microphone. If the requested facing mode isn't available,\n * the user agent may fall back to its preferred default mode. */\n @Prop() capture?: 'user' | 'environment';\n\n /** The maximum file size allowed per file (Megabytes) */\n @Prop() maxFileSize: number = 1;\n\n /** The maximum file size allowed per file (bytes). */\n @Prop() maxFiles: number = 1;\n\n /** String to place within a label element. */\n @Prop() label!: string;\n\n /** Placeholder only used within single file uploads. */\n @Prop() placeholder: string = 'Choose a file...';\n\n /** Visually hide the label - but make it accessible. */\n @Prop() hideLabel?: boolean = false;\n\n /** If `true`, the user must select a file to upload before submitting a form. */\n @Prop() required = false;\n\n /** If `true`, the user cannot interact with the select. */\n @Prop({ reflect: true }) disabled = false;\n\n /** If `true`, a clear icon will appear in the input when there is a value.\n * Clicking it clears the input. Only used within single file uploads. */\n @Prop() clearInput = false;\n\n /** Whether to show validation errors underneath input */\n @Prop({ reflect: true }) showInlineError = true;\n\n /** When should the field perform validation */\n @Prop({ mutable: true }) validateOn?: 'dirty' | 'submit' | 'submitThenDirty' =\n 'submit';\n\n /** The form element to associate with this input (its form owner). Must be the id of a form. */\n @Prop() form?: string | null;\n\n @Watch('maxFiles')\n @Watch('maxFileSize')\n @Watch('capture')\n @Watch('accept')\n @Watch('required')\n @Watch('disabled')\n @Watch('fileList')\n protected shouldValidate() {\n if (!this.inputEl) return;\n\n this.validate();\n requestAnimationFrame(() => {\n if (this.validateOn === 'dirty') this.showInlineValidation();\n });\n }\n\n @State() _invalid = false;\n /** This will be true when the control is in an invalid state.\n * Validity is determined by the `required` prop. Or if custom validity message is set. @readonly */\n @Prop({ reflect: true })\n get invalid() {\n return this._invalid;\n }\n\n /**\n * Current validation message - if any. @readonly\n */\n @Prop()\n get validityMessage() {\n if (!this.inputEl) return '';\n return this.inputEl.validationMessage;\n }\n\n /** A File array that lists every selected file.\n * Has an added `objectURL` property returning a `DOMString`\n * containing an object URL that can be used to reference the contents of the specified source\n * This list has no more than one member unless the multiple attribute is specified */\n @Prop()\n get files(): FileWithUrl[] {\n return this.inputEl\n ? Array.from(this.inputEl.files).map((file: FileWithUrl) => {\n file.objectURL = URL.createObjectURL(file);\n return file;\n })\n : [];\n }\n set files(fs: FileWithUrl[]) {\n this.addNewFiles(this.arrToFileList(fs));\n }\n\n /** A file input's value attribute contains a DOMString that represents the path to the selected file(s).\n * If the user selected multiple files, the value represents the first file in the list of files they selected.\n * You can reset the file-upload control by setting the value to an empty string e.g. `var input.value = ''` */\n @Prop()\n get value() {\n return this.inputEl ? this.inputEl.value : '';\n }\n set value(val: string) {\n if (val === '' && this.inputEl) {\n this.fileList = [];\n this.inputEl.value = '';\n }\n }\n\n // Events\n\n /** Emitted when the value has changed. */\n @Event() nanoChange!: EventEmitter<FileInputChangeEventDetail>;\n\n /** Emited when the checkbox is focused */\n @Event() nanoFocus: EventEmitter;\n\n /** Emited when the checkbox is blurred */\n @Event() nanoBlur: EventEmitter;\n\n /** Called when validation is performed (which depends on `validateOn`).\n * @returns event.detail: `{ isValid: boolean, errorMessage: string, originalEvent: Event }`. */\n @Event() nanoValidate: EventEmitter<ControlValidityEventDetail>;\n\n // Public methods\n\n /** Get the current state of the control.\n * @param validateFirst - perform validation first before reporting\n * @returns `{ isValid: boolean, errorMessage: string }` */\n @Method()\n async reportValidity(validateFirst: boolean): Promise<ControlValidity> {\n if (validateFirst) {\n this.validate();\n this.showInlineValidation();\n }\n return {\n isValid: !this.invalid,\n errorMessage: this.inputEl.validationMessage,\n };\n }\n\n /** Sets focus on the specified `nano-input`. Use this method instead of the global\n * `input.focus()`. */\n @Method()\n async setFocus() {\n if (this.inputEl) this.inputEl.focus();\n }\n\n /** @returns the native `<input>` element used under the hood */\n @Method()\n getInputElement(): Promise<HTMLInputElement | HTMLTextAreaElement> {\n return Promise.resolve(this.inputEl!);\n }\n\n /** 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.\n * @param message */\n @Method()\n async showError(message: string) {\n if (this.inputEl) {\n this.inputEl.setCustomValidity(message);\n this.validate();\n this.showInlineValidation();\n }\n }\n\n // Listeners\n\n @Listen('click', { target: 'window' })\n globalClickHandler(e: Event) {\n if (!this.hasFocus) return;\n if (e.composedPath().every((node) => node !== this.host)) this.onBlur();\n }\n\n @Listen('keydown', { target: 'window' })\n globalKeydownHandler(e: KeyboardEvent) {\n if (!this.hasFocus || e.key !== 'Tab') return;\n if (e.target !== this.inputEl) this.onBlur();\n }\n\n @Listen('reset', { target: 'body' })\n onReset(e) {\n const form = this.form\n ? document.querySelector('#' + this.form)\n : this.host.closest('form');\n if (!form || e.target !== this.host.closest('form')) return;\n\n this.value = '';\n }\n\n // Private methods\n\n private onClearClick = () => {\n this.value = '';\n };\n\n private onBlur = () => {\n this.hasFocus = false;\n this.validate();\n if (this.validateOn === 'dirty') this.showInlineValidation();\n this.nanoBlur.emit();\n };\n\n private onFocus = () => {\n this.hasFocus = true;\n this.nanoFocus.emit();\n };\n\n private arrToFileList(files: File[]): FileList {\n const fileList = getDataTransfer();\n for (let i = 0, len = files.length; i < len; i++)\n fileList.items.add(files[i]);\n return fileList.files;\n }\n\n private checkFileSize(size: number): boolean {\n return size / 1000000 <= this.maxFileSize;\n }\n\n private checkFileType(type: string): boolean {\n if (!this.accept) return true;\n return this.accept.match(type) && this.accept.match(type).length > 0;\n }\n\n private validate = () => {\n this.errorMessage = '';\n this.inputEl.setCustomValidity('');\n let error: string;\n\n if (!this.inputEl.validity.valid) {\n error = this.inputEl.validationMessage;\n } else {\n this.fileList.forEach((fileItem) => {\n error = null;\n if (!this.checkFileSize(fileItem.file.size)) {\n error =\n 'Maximum file size exceeded. Max file size is ' +\n this.maxFileSize +\n 'Mb';\n } else if (!this.checkFileType(fileItem.file.type))\n error = `File type is not allowed (${this.accept})`;\n\n fileItem.validationMessage = error;\n fileItem.valid = !error;\n });\n if (this.fileList.length > this.maxFiles)\n error = `Maxinum number of files exceeded (${this.maxFiles})`;\n }\n\n if (!!error) this.inputEl.setCustomValidity(error);\n };\n\n private showInlineValidation(ev?: Event) {\n if (this.validateOn === 'submitThenDirty') this.validateOn = 'dirty';\n\n this._invalid = false;\n this.errorMessage = '';\n\n if (!this.inputEl.validity.valid) {\n this.errorMessage = this.inputEl.validationMessage;\n this._invalid = true;\n }\n\n this.nanoValidate.emit({\n isValid: !this._invalid,\n errorMessage: this.inputEl.validationMessage,\n originalEvent: ev,\n });\n }\n\n private slotChangeObserver() {\n if (this.mo) this.mo.disconnect();\n const mo = (this.mo = new MutationObserver(() =>\n this.processSlottedContent()\n ));\n mo.observe(this.host, { childList: true, subtree: true });\n }\n\n private processSlottedContent() {\n // see if we have slot content\n this.hasLabelSlot = !!this.host.querySelectorAll('[slot=\"label\"]');\n this.hasHelperSlot = !!this.host.querySelector('[slot=\"helper\"]');\n }\n\n private addNewFiles(files: FileList) {\n const fileList: FileValidation[] = Array.from(files).map((file) => {\n return {\n file: file,\n location: URL.createObjectURL(file),\n valid: true,\n validationMessage: null,\n };\n });\n\n // if we have a list and we're in a browser that can amend files\n // append files to the list, otherwise replace\n if (this.canChangeFileList && this.maxFiles > 1) {\n const newFiles = fileList.filter(\n (findFile) =>\n !this.fileList.find((file) => file.file.name === findFile.file.name)\n );\n this.fileList = [...this.fileList, ...newFiles];\n } else this.fileList = fileList;\n }\n\n // event handlers & hooks\n\n private onInvalid = (ev: Event) => {\n if (this.showInlineError) ev.preventDefault();\n this.validate();\n this.showInlineValidation(ev);\n };\n\n private onFileChoose = (e: Event) => {\n const files = (e.target as HTMLInputElement).files;\n if (files && files.length)\n this.addNewFiles((e.target as HTMLInputElement).files);\n };\n\n private onFileRemoveFileClick = (e: Event, file: FileValidation) => {\n if (!this.canChangeFileList) return;\n this.removeFiles.push(file);\n\n (e.target as HTMLElement)\n .closest('.file-upload__list-item--active')\n .classList.remove('file-upload__list-item--active');\n };\n\n private onFileRemoveAnim = () => {\n if (!this.canChangeFileList || !this.removeFiles.length) return;\n this.fileList = this.fileList.filter(\n (fileItem) => !this.removeFiles.find((rmFile) => rmFile === fileItem)\n );\n try {\n this.removeFiles.forEach((f) =>\n f.location ? URL.revokeObjectURL(f.location) : ''\n );\n } catch (e) {}\n this.removeFiles = [];\n };\n\n private onInputChange = () => {\n this.nanoChange.emit({ value: this.value, files: this.files });\n };\n\n private onDragStop = (e: DragEvent) => {\n e.preventDefault();\n e.stopPropagation();\n this.isDragging = false;\n };\n\n private onDragStart = (e: DragEvent) => {\n e.preventDefault();\n e.stopPropagation();\n this.isDragging = true;\n };\n\n private onDrop = (e: DragEvent) => {\n this.onDragStop(e);\n if (e.dataTransfer.files && e.dataTransfer.files.length)\n this.addNewFiles(e.dataTransfer.files);\n };\n\n // Component lifecycle\n\n disconnectedCallback() {\n if (this.mo) this.mo.disconnect();\n }\n\n componentDidLoad() {\n this.slotChangeObserver();\n }\n\n componentWillLoad() {\n this.processSlottedContent();\n }\n\n private FileUploadInput = (\n eleType: 'drop' | 'btn',\n listId?: string\n ): VNode[] => {\n const labelId = this.fileInputId + '-lbl';\n const moreId =\n this.showInlineError || this.hasHelperSlot\n ? this.fileInputId + '-more'\n : '';\n\n return [\n <div class={'file-upload__' + eleType + '-wrap'}>\n <label\n class={`file-upload__` + eleType}\n htmlFor={this.fileInputId}\n id={labelId}\n onDrop={(e) => {\n this.onDrop(e);\n this.onDragStop(e);\n }}\n onDragEnd={this.onDragStop}\n onDragLeave={this.onDragStop}\n onDragEnter={this.onDragStart}\n onDragOver={this.onDragStart}\n >\n {(!!this.label || (this.hasLabelSlot && eleType !== 'drop')) && (\n <div\n class={`file-upload__label ${\n this.hideLabel ? 'visually-hide' : ''\n }`}\n >\n {!!this.label && !!this.label.length ? this.label : ''}\n {!this.label && this.hasLabelSlot && eleType !== 'drop' && (\n <slot name=\"label\" />\n )}\n </div>\n )}\n {eleType === 'drop' && (\n <div class=\"file-upload__drop-area\">\n <div>{this.hasLabelSlot && <slot name=\"label\" />}</div>\n <div>\n Drag and drop or <span>browse</span>\n </div>\n </div>\n )}\n {eleType === 'btn' && (\n <div\n class={`file-upload__button button--keyline button--icon-start ${\n this.hasFocus ? 'button--focus' : ''\n }`}\n >\n <div class={`file-upload__btn-content`}>\n <nano-icon name=\"regular/cloud-upload\" />\n <span>\n {!!this.fileList.length\n ? this.fileList[0].file.name\n : this.placeholder}\n </span>\n {!!this.value && this.clearInput && !this.disabled && (\n <button\n type=\"button\"\n class=\"icon file-upload__clear-btn\"\n tabindex=\"-1\"\n onClick={this.onClearClick}\n >\n <nano-icon name=\"light/times\"></nano-icon>\n </button>\n )}\n </div>\n </div>\n )}\n <input\n aria-labelledby={labelId + ' ' + moreId + ' ' + listId}\n type=\"file\"\n id={this.fileInputId}\n accept={this.accept}\n class=\"file-upload__input\"\n multiple={this.maxFiles > 1}\n disabled={this.disabled}\n name={this.canChangeFileList ? undefined : this.name}\n form={this.form}\n ref={(input) => {\n if (this.canChangeFileList) {\n this.publicInputEl = input;\n return;\n }\n this.inputEl = input;\n }}\n onChange={this.onFileChoose}\n onFocus={this.onFocus}\n onReset={this.onInputChange}\n />\n </label>\n <input\n name={!this.canChangeFileList ? undefined : this.name}\n form={this.form}\n ref={(input) => {\n if (!this.canChangeFileList) return;\n this.inputEl = input;\n }}\n type=\"file\"\n id={this.fileInputId + '-hidden'}\n tabIndex={-1}\n multiple={true}\n class=\"file-upload__input\"\n disabled={this.disabled}\n required={this.required}\n accept={this.accept}\n onInvalid={this.onInvalid}\n onChange={this.onInputChange}\n />\n </div>,\n this.showInlineError || this.hasHelperSlot ? (\n <div class=\"file-upload__more\" id={moreId}>\n {this.showInlineError && !!this.errorMessage.length ? (\n <div class=\"file-upload__error\">{this.errorMessage}</div>\n ) : (\n ''\n )}\n <div class=\"file-upload__help\">\n <slot name=\"helper\" />\n </div>\n </div>\n ) : (\n ''\n ),\n ];\n };\n\n private button = (): VNode[] => {\n return this.FileUploadInput('btn');\n };\n\n private dropArea = (): VNode[] => {\n const listId = this.fileInputId + '-list';\n return [\n this.FileUploadInput('drop', listId),\n <output class=\"file-upload__list-wrap\" id={listId}>\n {!!this.fileList && this.fileList.length > 0 && (\n <ul class=\"file-upload__list list\">\n {this.fileList.map((file) => {\n return (\n <li\n key={file.file.name}\n class=\"file-upload__list-item file-upload__list-item--active list-item\"\n onAnimationEnd={(_) => this.onFileRemoveAnim()}\n >\n <span class=\"list-title\">{file.file.name}</span>\n {!file.valid && (\n <nano-tooltip\n content={file.validationMessage}\n placement=\"left\"\n >\n <nano-icon-button\n class=\"list-button list-error\"\n iconName=\"light/exclamation-triangle\"\n label=\"File error\"\n />\n </nano-tooltip>\n )}\n {this.canChangeFileList && (\n <nano-icon-button\n class=\"list-button list-button--view\"\n type=\"button\"\n iconName=\"light/eye\"\n label=\"View file\"\n target=\"_blank\"\n href={file.location}\n />\n )}\n {this.canChangeFileList && (\n <nano-icon-button\n onClick={(e) => this.onFileRemoveFileClick(e, file)}\n class=\"list-button list-button--remove\"\n iconName=\"light/times\"\n label=\"Remove file\"\n />\n )}\n </li>\n );\n })}\n </ul>\n )}\n </output>,\n ];\n };\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'file-upload': true,\n 'file-upload--dragging': this.isDragging,\n 'file-upload--focus': this.hasFocus,\n 'file-upload--invalid': this._invalid,\n }}\n >\n {this.maxFiles > 1 ? <this.dropArea /> : <this.button />}\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
2
|
* Web Components for Nanopore digital Web Apps
|
3
3
|
*/
|
4
|
-
import{g as r}from"./p-
|
5
|
-
//# sourceMappingURL=p-
|
4
|
+
import{g as r}from"./p-bf91c50e.js";var e=function(){var r;var e=new Promise((function(e){r=e}));return{promise:e,resolve:r}};var n=function(n,t){var o=n.prototype;var i=o.componentWillLoad;o.componentWillLoad=function(){var n=this;var o=r(this);var a=e();var s=new CustomEvent("openWormhole",{bubbles:true,composed:true,detail:{consumer:this,fields:t,updater:function(r,e){n[r]=e},onOpen:a}});o.dispatchEvent(s);return a.promise.then((function(){if(i){return i.call(n)}}))}};var t;(function(r){r["Filter"]="filter";r["Page"]="page";r["Replica"]="replica";r["Init"]="init"})(t||(t={}));const o=(r,e)=>n(r,e);export{t as S,o as W};
|
5
|
+
//# sourceMappingURL=p-ed2e6f32.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["createDeferredPromise","resolve","promise","Promise","res","openWormhole","Component","props","ComponentPrototype","prototype","componentWillLoad","_this","this","el","getElement","onOpen","event","CustomEvent","bubbles","composed","detail","consumer","fields","updater","prop","value","dispatchEvent","then","call","SearchChangeEvent","Wormhole"],"sources":["./node_modules/stencil-wormhole/dist/esm/deferred.js","./node_modules/stencil-wormhole/dist/esm/consumer.js","./src/components/algolia/algolia-data.ts"],"sourcesContent":["export var createDeferredPromise = function () {\n var resolve;\n var promise = new Promise(function (res) { resolve = res; });\n return { promise: promise, resolve: resolve };\n};\n","import { getElement } from \"@stencil/core\";\nimport { createDeferredPromise } from \"./deferred\";\nexport var openWormhole = function (Component, props) {\n var ComponentPrototype = Component.prototype;\n var componentWillLoad = ComponentPrototype.componentWillLoad;\n ComponentPrototype.componentWillLoad = function () {\n var _this = this;\n var el = getElement(this);\n var onOpen = createDeferredPromise();\n var event = new CustomEvent('openWormhole', {\n bubbles: true,\n composed: true,\n detail: {\n consumer: this,\n fields: props,\n updater: function (prop, value) { _this[prop] = value; },\n onOpen: onOpen,\n },\n });\n el.dispatchEvent(event);\n return onOpen.promise.then(function () {\n if (componentWillLoad) {\n return componentWillLoad.call(_this);\n }\n });\n };\n};\n","import { SearchIndex as AlgoliaIndex } from 'algoliasearch';\nimport { openWormhole, WormholeConsumerConstructor } from 'stencil-wormhole';\nimport { StorageMethods } from '../../utils/store/component-store';\nimport type {\n IndexResult,\n AlgoliaResultHit,\n SearchIndex,\n} from '../../interface';\n\nexport enum SearchChangeEvent {\n Filter = 'filter',\n Page = 'page',\n Replica = 'replica',\n Init = 'init',\n}\n\nexport interface WormholeState {\n indexResults: IndexResult;\n filterChanged?: string;\n facets?: {\n [prop: string]: {\n [prop: string]: number;\n };\n };\n results: AlgoliaResultHit[];\n resultsPage: number;\n tplRenderFn?: (...args: any[]) => string;\n changeEvent: SearchChangeEvent;\n algoliaIndex: AlgoliaIndex;\n searchIndex: SearchIndex;\n browseIndex: boolean;\n globalStoreMethod: StorageMethods;\n isLoading: boolean;\n}\n\nexport const Wormhole = (\n Component: WormholeConsumerConstructor,\n props: (keyof WormholeState)[]\n) => openWormhole(Component, props);\n\nexport * from 'stencil-wormhole';\n"],"mappings":";;;oCAAO,IAAIA,EAAwB,WAC/B,IAAIC,EACJ,IAAIC,EAAU,IAAIC,SAAQ,SAAUC,GAAOH,EAAUG,CAAI,IACzD,MAAO,CAAEF,QAASA,EAASD,QAASA,EACxC,ECFO,IAAII,EAAe,SAAUC,EAAWC,GAC3C,IAAIC,EAAqBF,EAAUG,UACnC,IAAIC,EAAoBF,EAAmBE,kBAC3CF,EAAmBE,kBAAoB,WACnC,IAAIC,EAAQC,KACZ,IAAIC,EAAKC,EAAWF,MACpB,IAAIG,EAASf,IACb,IAAIgB,EAAQ,IAAIC,YAAY,eAAgB,CACxCC,QAAS,KACTC,SAAU,KACVC,OAAQ,CACJC,SAAUT,KACVU,OAAQf,EACRgB,QAAS,SAAUC,EAAMC,GAASd,EAAMa,GAAQC,CAAM,EACtDV,OAAQA,KAGhBF,EAAGa,cAAcV,GACjB,OAAOD,EAAOb,QAAQyB,MAAK,WACvB,GAAIjB,EAAmB,CACnB,OAAOA,EAAkBkB,KAAKjB,EAC9C,CACA,GACA,CACA,E,ICjBYkB,GAAZ,SAAYA,GACVA,EAAA,mBACAA,EAAA,eACAA,EAAA,qBACAA,EAAA,cACD,EALD,CAAYA,MAAiB,K,MA0BhBC,EAAW,CACtBxB,EACAC,IACGF,EAAaC,EAAWC,U"}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/*!
|
2
|
+
* Web Components for Nanopore digital Web Apps
|
3
|
+
*/
|
4
|
+
import{r as t,c as i,h as r,a as s,g as n}from"./p-bf91c50e.js";import{d as o}from"./p-9746b0a5.js";const a=':host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}:host{--grid-col-gap:var(--nano-spacing-medium, 16px);--grid-row-gap:var(--nano-spacing-medium, 16px);--current-grid-size:"\'grid size: sm\'";display:block;opacity:0;transition:0.2s ease opacity;max-width:100%}:host .grid{display:grid;grid-gap:var(--grid-row-gap) var(--grid-col-gap);block-size:inherit;min-block-size:inherit}:host(.ready){opacity:1}:host(.has-grid) .grid{display:grid}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-1){grid-column-start:1 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-1){grid-row-start:1 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-1){grid-column-end:span 1 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-1){grid-row-end:span 1 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-2){grid-column-start:2 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-2){grid-row-start:2 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-2){grid-column-end:span 2 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-2){grid-row-end:span 2 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-3){grid-column-start:3 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-3){grid-row-start:3 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-3){grid-column-end:span 3 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-3){grid-row-end:span 3 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-4){grid-column-start:4 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-4){grid-row-start:4 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-4){grid-column-end:span 4 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-4){grid-row-end:span 4 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-5){grid-column-start:5 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-5){grid-row-start:5 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-5){grid-column-end:span 5 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-5){grid-row-end:span 5 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-6){grid-column-start:6 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-6){grid-row-start:6 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-6){grid-column-end:span 6 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-6){grid-row-end:span 6 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-7){grid-column-start:7 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-7){grid-row-start:7 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-7){grid-column-end:span 7 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-7){grid-row-end:span 7 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-8){grid-column-start:8 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-8){grid-row-start:8 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-8){grid-column-end:span 8 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-8){grid-row-end:span 8 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-9){grid-column-start:9 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-9){grid-row-start:9 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-9){grid-column-end:span 9 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-9){grid-row-end:span 9 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-start-10){grid-column-start:10 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-start-10){grid-row-start:10 !important}:host(.has-grid) .grid ::slotted(.nano-grid-col-span-10){grid-column-end:span 10 !important}:host(.has-grid) .grid ::slotted(.nano-grid-row-span-10){grid-row-end:span 10 !important}:host([content-panel]:not([content-panel=false])) .grid{grid-template-rows:auto 1fr}:host([full-height]:not([full-height=false])){block-size:100%}:host([full-height]:not([full-height=false])) .grid{grid-template-rows:1fr}:host([show-helper]:not([show-helper=false])) .grid{position:relative}:host([show-helper]:not([show-helper=false])) .grid::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(to right, rgba(126, 195, 241, 0.25), rgba(126, 195, 241, 0.25) var(--col-width), transparent var(--col-width), transparent var(--repeat-width));background-size:calc(100% + var(--grid-col-gap)) 100%;z-index:100}:host([show-helper]:not([show-helper=false])) .grid::before{content:var(--current-grid-size);font-size:30px;position:absolute;inline-size:100%;inset-inline-start:0;text-align:center;inset-block-start:50%;transform:translateY(-50%);color:rgba(0, 0, 0, 0.2);text-transform:uppercase;z-index:99;pointer-events:none}:host(.nano-grid-1){--current-grid-size:"grid size: 1";--col-width:calc(100% - var(--grid-col-gap));--repeat-width:calc(100% / 1)}:host(.nano-grid-1) .grid{grid-template-columns:repeat(1, minmax(var(--col-width), 1fr))}:host(.nano-grid-2){--current-grid-size:"grid size: 2";--col-width:calc(50% - var(--grid-col-gap));--repeat-width:calc(100% / 2)}:host(.nano-grid-2) .grid{grid-template-columns:repeat(2, minmax(var(--col-width), 1fr))}:host(.nano-grid-3){--current-grid-size:"grid size: 3";--col-width:calc(33.3333333333% - var(--grid-col-gap));--repeat-width:calc(100% / 3)}:host(.nano-grid-3) .grid{grid-template-columns:repeat(3, minmax(var(--col-width), 1fr))}:host(.nano-grid-4){--current-grid-size:"grid size: 4";--col-width:calc(25% - var(--grid-col-gap));--repeat-width:calc(100% / 4)}:host(.nano-grid-4) .grid{grid-template-columns:repeat(4, minmax(var(--col-width), 1fr))}:host(.nano-grid-5){--current-grid-size:"grid size: 5";--col-width:calc(20% - var(--grid-col-gap));--repeat-width:calc(100% / 5)}:host(.nano-grid-5) .grid{grid-template-columns:repeat(5, minmax(var(--col-width), 1fr))}:host(.nano-grid-6){--current-grid-size:"grid size: 6";--col-width:calc(16.6666666667% - var(--grid-col-gap));--repeat-width:calc(100% / 6)}:host(.nano-grid-6) .grid{grid-template-columns:repeat(6, minmax(var(--col-width), 1fr))}:host(.nano-grid-7){--current-grid-size:"grid size: 7";--col-width:calc(14.2857142857% - var(--grid-col-gap));--repeat-width:calc(100% / 7)}:host(.nano-grid-7) .grid{grid-template-columns:repeat(7, minmax(var(--col-width), 1fr))}:host(.nano-grid-8){--current-grid-size:"grid size: 8";--col-width:calc(12.5% - var(--grid-col-gap));--repeat-width:calc(100% / 8)}:host(.nano-grid-8) .grid{grid-template-columns:repeat(8, minmax(var(--col-width), 1fr))}:host(.nano-grid-9){--current-grid-size:"grid size: 9";--col-width:calc(11.1111111111% - var(--grid-col-gap));--repeat-width:calc(100% / 9)}:host(.nano-grid-9) .grid{grid-template-columns:repeat(9, minmax(var(--col-width), 1fr))}:host(.nano-grid-10){--current-grid-size:"grid size: 10";--col-width:calc(10% - var(--grid-col-gap));--repeat-width:calc(100% / 10)}:host(.nano-grid-10) .grid{grid-template-columns:repeat(10, minmax(var(--col-width), 1fr))}';const e=["col-span","col-start","row-span","row-start"];const d=class{constructor(r){t(this,r);this.nanoBpChange=i(this,"nanoBpChange",7);this.generalClasses=[""];this.gridClass=null;this.isSizes=[null];this.ready=false;this.isSmall=false;this.isMedium=false;this.isLarge=false;this.isXL=false;this.isXXL=false;this.sSize=300;this.mSize=550;this.lSize=800;this.xlSize=1e3;this.sCols=undefined;this.mCols=undefined;this.lCols=undefined;this.xlCols=undefined;this.xxlCols=undefined;this.showHelper=false;this.contentPanel=false;this.fullHeight=false;this.stateChange=o(this.stateChange.bind(this),100)}propChanged(){this.applySizeClasses()}applySizeClasses(){const t=this.currentWidth;this.isSmall=false;this.isMedium=false;this.isLarge=false;this.isXL=false;this.isXXL=false;this.generalClasses=[];this.gridClass=null;this.isSizes=[null];this.isSmall=true;this.generalClasses.push("is-small");if(this.sCols)this.gridClass=`nano-grid-${this.sCols}`;this.isSizes.push({size:"s",active:true});if(t>this.sSize){this.isMedium=true;this.generalClasses.push("is-medium");if(this.mCols)this.gridClass=`nano-grid-${this.mCols}`;this.isSizes.push({size:"m",active:true})}if(t>this.mSize){this.isLarge=true;this.generalClasses.push("is-large");if(this.lCols)this.gridClass=`nano-grid-${this.lCols}`;this.isSizes.push({size:"l",active:true})}if(t>this.lSize){this.isXL=true;this.generalClasses.push("is-xl");if(this.xlCols)this.gridClass=`nano-grid-${this.xlCols}`;this.isSizes.push({size:"xl",active:true})}if(t>this.xlSize){this.isXXL=true;this.generalClasses.push("is-xxl");if(this.xxlCols)this.gridClass=`nano-grid-${this.xxlCols}`;this.isSizes.push({size:"xxl",active:true})}this.el.style.setProperty("--current-grid-size",`'grid size: ${this.isSizes.slice().pop().size}'`);this.applyChildrenClasses();setTimeout((()=>this.ready=true),0)}stateChange(){this.nanoBpChange.emit(this.generalClasses)}applyChildrenClasses(){const t=this.el.querySelectorAll("nano-grid-item");if(t.length){t.forEach((t=>{t.changeBP(this.isSizes)}));return}let i=[""];let r="";let s;let n;const o=this.el;[].map.call(o.children,(t=>{if(!t.hasAttribute("grid-states"))return;n=t.className.split(" ").filter((t=>!t.startsWith("nano-grid-")));t.className=n.join(" ").trim();const o=t.getAttribute("grid-states").split(" ");e.forEach((a=>{s=false;this.isSizes.slice().reverse().forEach((function(e){if(s||!e)return;s=o.find((t=>t.indexOf(`${e.size}-${a}`)===0));if(s){n=t.className.split(" ").filter((t=>!t.includes("nano-grid-${stateOpt}")));t.className=n.join(" ").trim();i=s.split("-");i.shift();r=i.join("-");t.classList.add(`nano-grid-${r}`)}}))}))}))}componentWillLoad(){const t=this.el;[].map.call(t.children,(t=>t.classList.add("nano-griditem")))}componentDidLoad(){if(!window["ResizeObserver"])return;this.ro=new ResizeObserver((t=>{for(const i of t){if(!i.contentRect.width)return;this.currentWidth=i.contentRect.width;this.applySizeClasses()}}));this.ro.observe(this.el)}disconnectedCallback(){if(this.ro)this.ro.disconnect()}render(){return r(s,{class:{[this.generalClasses.join(" ")]:true,"has-grid":!!this.gridClass,ready:this.ready,[this.gridClass]:true}},r("div",{class:{grid:true}},r("slot",null)))}get el(){return n(this)}static get watchers(){return{sSize:["propChanged"],mSize:["propChanged"],lSize:["propChanged"],xlSize:["propChanged"],sCols:["propChanged"],mCols:["propChanged"],lCols:["propChanged"],xlCols:["propChanged"],xxlCols:["propChanged"],isSmall:["stateChange"],isMedium:["stateChange"],isLarge:["stateChange"],isXL:["stateChange"],isXXL:["stateChange"]}}};d.style=a;const h=":host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}:host{display:inline-block}";const g=["col-span","col-start","row-span","row-start"];const l=class{constructor(i){t(this,i);this.currGridSizes=[null];this.gridStates=""}updateGridClasses(){this.applyChildrenClasses()}async changeBP(t){if(this.currGridSizes===t)return;this.currGridSizes=t;if(!this.gridStates.length)return;this.applyChildrenClasses()}applyChildrenClasses(){let t=[""];let i="";let r;let s;s=this.el.className.split(" ").filter((t=>!t.startsWith("nano-grid-")));this.el.className=s.join(" ").trim();const n=this.gridStates.split(" ");g.forEach((o=>{r=false;this.currGridSizes.slice().reverse().forEach((a=>{if(r||!a)return;r=n.find((t=>t.indexOf(`${a.size}-${o}`)===0));if(r){s=this.el.className.split(" ").filter((t=>!t.includes("nano-grid-${stateOpt}")));this.el.className=s.join(" ").trim();t=r.split("-");t.shift();i=t.join("-");this.el.classList.add(`nano-grid-${i}`)}}))}))}render(){return r("slot",null)}get el(){return n(this)}static get watchers(){return{gridStates:["updateGridClasses"]}}};l.style=h;const c=":host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}:host{--padding:0;display:inline-block;object-fit:cover;object-position:center;background-size:cover;background-position:center}:host *{border-radius:inherit}:host([background]:not([background=false])){display:block}.img{position:relative;min-block-size:inherit;display:block;object-fit:inherit;object-position:inherit;background-color:inherit;background-position:inherit;background-size:inherit;background-origin:inherit;background-attachment:inherit;background-repeat:inherit}.img__loader,.img__observer{position:absolute;inset:0;block-size:100%;inline-size:100%;z-index:-1}.img__image,.img__bg{border-radius:inherit;display:block;opacity:0;transition:0.5s ease opacity, 0.3s ease filter 0.4s;filter:blur(5px)}.img__image.loaded,.img__bg.loaded{opacity:1;filter:blur(0.1px)}@media not all and (min-resolution: 0.001dpcm){@supports (-webkit-appearance: none){.img__image.loaded,.img__bg.loaded{filter:blur(0)}}}.img__image{object-fit:inherit;object-position:inherit;max-inline-size:100%;block-size:auto}.img__image.hide{visibility:hidden}.img__image.hide.no-height{block-size:1px;position:absolute;z-index:-1}.img__bg{background-color:inherit;background-position:inherit;background-size:inherit;background-origin:inherit;background-attachment:inherit;background-repeat:inherit;overflow:auto;padding:var(--padding)}.img__bg.no-height{position:absolute;inset:0}";const p=class{constructor(r){t(this,r);this.nanoImgWillLoad=i(this,"nanoImgWillLoad",7);this.nanoImgDidLoad=i(this,"nanoImgDidLoad",7);this.nanoImgError=i(this,"nanoImgError",7);this._srcSet={};this.onLoad=()=>{this.nanoImgDidLoad.emit();setTimeout((()=>this.hasLoaded=true),50)};this.onError=()=>{this.nanoImgError.emit()};this.onResize=t=>{Object.entries(t.detail).forEach((([t,i])=>{this._srcSet[t].active=i}));const i=[];Object.keys(this._srcSet).sort().forEach((t=>{if(this._srcSet[t].active)i.push(this._srcSet[t].src)}));if(i.length)this._src=i.slice(-1)[0];else this._src=this.src};this.loadSrc=undefined;this.loadError=undefined;this.hasLoaded=false;this.imgStates=null;this._src=undefined;this.alt=undefined;this.src=undefined;this.srcSet=undefined;this.lazy=true;this.background=undefined;this.autoHeight="content"}_srcChanged(){this.hasLoaded=false;this.addIO()}srcChanged(){this._src=this.src}srcSetChanged(){if(!this.srcSet)return;delete this._srcSet;this._srcSet={};this.imgStates=this.srcSet.split(",").map((t=>{const[i,r]=t.split(" ").filter((t=>t.length));this._srcSet[i]={src:r,active:false};return i})).join(", ")}lazyChanged(){if(!this.lazy)this.load()}addIO(){if(!this._src||this.hasLoaded)return;if(!this.lazy){this.load();return}if(typeof window!=="undefined"&&"IntersectionObserver"in window){this.removeIO();this.io=new IntersectionObserver((t=>{if(t[0].isIntersecting){this.load();this.removeIO()}}));this.io.observe(this.host)}else setTimeout((()=>this.load()),200)}load(){this.loadError=this.onError;this.loadSrc=this._src;this.nanoImgWillLoad.emit()}removeIO(){if(this.io){this.io.disconnect();this.io=undefined}}connectedCallback(){this.srcChanged();this.srcSetChanged();this.lazyChanged()}componentDidLoad(){this.addIO()}disconnectedCallback(){this.removeIO()}render(){const t=!!this.loadSrc?{"background-image":`url(${this.loadSrc})`}:{};return r("div",{class:"img"},r("nano-skeleton",{class:"img__loader"}),!!this.background&&r("div",{class:{loaded:this.hasLoaded,img__bg:true,"no-height":this.autoHeight==="image"},style:t},r("slot",null)),r("img",{class:{img__image:true,loaded:this.hasLoaded,hide:this.background,"no-height":this.autoHeight==="content"},decoding:"async",src:this.loadSrc,loading:undefined,alt:this.alt,onLoad:this.onLoad,onError:this.loadError}),r("nano-resize-observe",{class:"img__observer",onNanoResizeStateChange:this.onResize,states:this.imgStates}))}get host(){return n(this)}static get watchers(){return{_src:["_srcChanged"],src:["srcChanged"],srcSet:["srcSetChanged"],lazy:["lazyChanged"]}}};p.style=c;export{d as nano_grid,l as nano_grid_item,p as nano_img};
|
5
|
+
//# sourceMappingURL=p-ed69b27b.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["gridCss","STATEOPTS","Grid","constructor","hostRef","this","generalClasses","gridClass","isSizes","stateChange","debounce","bind","propChanged","applySizeClasses","size","currentWidth","isSmall","isMedium","isLarge","isXL","isXXL","push","sCols","active","sSize","mCols","mSize","lCols","lSize","xlCols","xlSize","xxlCols","el","style","setProperty","slice","pop","applyChildrenClasses","setTimeout","ready","nanoBpChange","emit","gridItems","querySelectorAll","length","forEach","gridItem","changeBP","stateArr","itemState","found","classes","ctx","map","call","children","gItem","hasAttribute","className","split","filter","c","startsWith","join","trim","itemStates","getAttribute","stateOpt","reverse","find","state","indexOf","includes","shift","classList","add","componentWillLoad","ele","componentDidLoad","window","ro","ResizeObserver","entries","entry","contentRect","width","observe","disconnectedCallback","disconnect","render","h","Host","class","grid","gridItemCss","GridItem","currGridSizes","updateGridClasses","async","newGridSizes","gridStates","imgCss","Img","_srcSet","onLoad","nanoImgDidLoad","hasLoaded","onError","nanoImgError","onResize","e","Object","detail","bp","srcOpts","keys","sort","src","_src","_srcChanged","addIO","srcChanged","srcSetChanged","srcSet","imgStates","bpSrc","lazyChanged","lazy","load","removeIO","io","IntersectionObserver","data","isIntersecting","host","loadError","loadSrc","nanoImgWillLoad","undefined","connectedCallback","bgStyle","background","loaded","img__bg","autoHeight","img__image","hide","decoding","loading","alt","onNanoResizeStateChange","states"],"sources":["./src/components/grid/grid.scss?tag=nano-grid&encapsulation=shadow","./src/components/grid/grid.tsx","./src/components/grid/grid-item.scss?tag=nano-grid-item&encapsulation=shadow","./src/components/grid/grid-item.tsx","./src/components/img/img.scss?tag=nano-img&encapsulation=shadow","./src/components/img/img.tsx"],"sourcesContent":["@use 'sass:math';\n\n@import '../../global/style/nano-theme/base';\n\n// ie 11 fixes ... maximum numbers we can place on the grid ... upping this number decreases performance a lot.\n$max-grid-cols: 10;\n\n@mixin grid($size: 1) {\n @at-root :host(.nano-grid-#{$size}) {\n --current-grid-size: 'grid size: #{$size}';\n --col-width: calc(#{math.div(100, $size)}% - var(--grid-col-gap));\n --repeat-width: calc(100% / #{$size});\n\n .grid {\n grid-template-columns: repeat(#{$size}, minmax(var(--col-width), 1fr));\n\n $current-column: 1;\n $current-row: 1;\n\n @for $i from 1 through ($max-grid-cols * 2) {\n @if $current-column > $size {\n $current-column: 1;\n $current-row: $current-row + 1;\n }\n $current-column: $current-column + 1;\n }\n }\n }\n}\n\n@mixin grid-spans {\n @for $i from 1 through $max-grid-cols {\n ::slotted(.nano-grid-col-start-#{$i}) {\n grid-column-start: #{$i} !important;\n }\n\n ::slotted(.nano-grid-row-start-#{$i}) {\n grid-row-start: #{$i} !important;\n }\n\n ::slotted(.nano-grid-col-span-#{$i}) {\n grid-column-end: span #{$i} !important;\n }\n\n ::slotted(.nano-grid-row-span-#{$i}) {\n grid-row-end: span #{$i} !important;\n }\n }\n}\n\n:host {\n /**\n * @prop --grid-col-gap: gap between all columns. Defaults to theme's global padding\n * @prop --grid-row-gap: gap between all rows. Defaults to theme's global padding\n */\n\n --grid-col-gap: #{$spacing-medium};\n --grid-row-gap: #{$spacing-medium};\n --current-grid-size: \"'grid size: sm'\";\n\n display: block;\n opacity: 0;\n transition: 0.2s ease opacity;\n max-width: 100%;\n\n .grid {\n /* autoprefixer: ignore next */\n display: grid;\n\n /* autoprefixer: ignore next */\n grid-gap: var(--grid-row-gap) var(--grid-col-gap);\n block-size: inherit;\n min-block-size: inherit;\n }\n}\n\n:host(.ready) {\n opacity: 1;\n}\n\n:host(.has-grid) {\n .grid {\n display: grid;\n\n @include grid-spans;\n }\n}\n\n:host([content-panel]:not([content-panel='false'])) {\n .grid {\n grid-template-rows: auto 1fr;\n }\n}\n\n:host([full-height]:not([full-height='false'])) {\n block-size: 100%;\n\n .grid {\n grid-template-rows: 1fr;\n }\n}\n\n:host([show-helper]:not([show-helper='false'])) {\n .grid {\n position: relative;\n\n &::after {\n content: '';\n position: absolute;\n inset: 0;\n pointer-events: none;\n background-image:\n repeating-linear-gradient(\n to right,\n hsl(204deg 80% 72% / 25%),\n hsl(204deg 80% 72% / 25%) var(--col-width),\n transparent var(--col-width),\n transparent var(--repeat-width)\n );\n background-size: calc(100% + var(--grid-col-gap)) 100%;\n z-index: 100;\n }\n\n &::before {\n content: var(--current-grid-size);\n font-size: 30px;\n position: absolute;\n inline-size: 100%;\n inset-inline-start: 0;\n text-align: center;\n inset-block-start: 50%;\n transform: translateY(-50%);\n color: rgb(0 0 0 / 20%);\n text-transform: uppercase;\n z-index: 99;\n pointer-events: none;\n }\n }\n}\n\n@for $i from 1 through $max-grid-cols {\n @include grid($i);\n}\n","import {\n Component,\n h,\n Prop,\n Element,\n Host,\n State,\n Watch,\n Event,\n EventEmitter,\n} from '@stencil/core';\nimport { debounce } from '../../utils/throttle';\nimport type { GridSizes } from '../../interface';\n\nconst STATEOPTS = ['col-span', 'col-start', 'row-span', 'row-start'];\n\n/**\n * A context-aware CSS grid implementation.\n * Uses it's own width to choose column number - not screen width.\n */\n@Component({\n tag: 'nano-grid',\n styleUrl: 'grid.scss',\n shadow: true,\n})\nexport class Grid {\n @Element() private el: HTMLNanoGridElement;\n private ro: ResizeObserver;\n private generalClasses: Array<string> = [''];\n private gridClass: string = null;\n private isSizes: GridSizes[] = [null];\n private currentWidth: number;\n\n constructor() {\n this.stateChange = debounce(this.stateChange.bind(this), 100);\n }\n\n @State() ready: boolean = false;\n @State() isSmall = false;\n @State() isMedium = false;\n @State() isLarge = false;\n @State() isXL = false;\n @State() isXXL = false;\n\n /**\n * the component's small breakpoint. Note - all breakpoints are based on component width, not screen width.\n */\n @Prop() sSize: number = 300;\n\n /**\n * the component's medium breakpoint. Note - all breakpoints are based on component width, not screen width.\n */\n @Prop() mSize: number = 550;\n\n /**\n * the component's large breakpoint. Note - all breakpoints are based on component width, not screen width.\n */\n @Prop() lSize: number = 800;\n\n /**\n * the component's xl breakpoint. Note - all breakpoints are based on component width, not screen width.\n */\n @Prop() xlSize: number = 1000;\n\n /**\n * the number of columns the grid has at the small breakpoint.\n */\n @Prop() sCols: number;\n\n /**\n * the number of columns the grid has at the medium breakpoint.\n */\n @Prop() mCols: number;\n\n /**\n * the number of columns the grid has at the large breakpoint.\n */\n @Prop() lCols: number;\n\n /**\n * the number of columns the grid has at the xl breakpoint.\n */\n @Prop() xlCols: number;\n\n /**\n * the number of columns the grid has at the xxl breakpoint (anything greater than the xl breakpoint)\n */\n @Prop() xxlCols: number;\n\n /**\n * shows a grid helper to visualise where columns are\n */\n @Prop({ reflect: true }) showHelper: boolean = false;\n\n /**\n * shortcut for a traditional website like grid (requires more than one row). The second row will auto expand to fill the grid height. The first row and > 2nd row will be the size of their content. e.g. header, body and footer.\n */\n @Prop({ reflect: true }) contentPanel: boolean = false;\n\n /**\n * Helper to make grid items expand to full height in IE11\n */\n @Prop({ reflect: true }) fullHeight: boolean = false;\n\n /**\n * Emitted when the `nano-grid` changes breakpoint\n */\n @Event() nanoBpChange: EventEmitter<string[]>;\n\n @Watch('sSize')\n @Watch('mSize')\n @Watch('lSize')\n @Watch('xlSize')\n @Watch('sCols')\n @Watch('mCols')\n @Watch('lCols')\n @Watch('xlCols')\n @Watch('xxlCols')\n propChanged() {\n this.applySizeClasses();\n }\n\n private applySizeClasses() {\n const size = this.currentWidth;\n\n this.isSmall = false;\n this.isMedium = false;\n this.isLarge = false;\n this.isXL = false;\n this.isXXL = false;\n\n this.generalClasses = [];\n this.gridClass = null;\n this.isSizes = [null];\n\n this.isSmall = true;\n this.generalClasses.push('is-small');\n if (this.sCols) this.gridClass = `nano-grid-${this.sCols}`;\n this.isSizes.push({ size: 's', active: true });\n\n if (size > this.sSize) {\n this.isMedium = true;\n this.generalClasses.push('is-medium');\n if (this.mCols) this.gridClass = `nano-grid-${this.mCols}`;\n this.isSizes.push({ size: 'm', active: true });\n }\n\n if (size > this.mSize) {\n this.isLarge = true;\n this.generalClasses.push('is-large');\n if (this.lCols) this.gridClass = `nano-grid-${this.lCols}`;\n this.isSizes.push({ size: 'l', active: true });\n }\n\n if (size > this.lSize) {\n this.isXL = true;\n this.generalClasses.push('is-xl');\n if (this.xlCols) this.gridClass = `nano-grid-${this.xlCols}`;\n this.isSizes.push({ size: 'xl', active: true });\n }\n\n if (size > this.xlSize) {\n this.isXXL = true;\n this.generalClasses.push('is-xxl');\n if (this.xxlCols) this.gridClass = `nano-grid-${this.xxlCols}`;\n this.isSizes.push({ size: 'xxl', active: true });\n }\n\n this.el.style.setProperty(\n '--current-grid-size',\n `'grid size: ${this.isSizes.slice().pop().size}'`\n );\n this.applyChildrenClasses();\n setTimeout(() => (this.ready = true), 0);\n }\n\n @Watch('isSmall')\n @Watch('isMedium')\n @Watch('isLarge')\n @Watch('isXL')\n @Watch('isXXL')\n stateChange() {\n this.nanoBpChange.emit(this.generalClasses);\n }\n\n private applyChildrenClasses() {\n const gridItems = this.el.querySelectorAll('nano-grid-item');\n if (gridItems.length) {\n gridItems.forEach((gridItem: HTMLNanoGridItemElement) => {\n gridItem.changeBP(this.isSizes);\n });\n return;\n }\n\n // this logic has been put into grid-item. Keep here for legacy for now\n let stateArr: Array<string> = [''];\n let itemState: string = '';\n let found: any;\n let classes: Array<string>;\n\n const ctx = this.el;\n\n // item states come in 4 possible flavours at every breakpoint. E.g.\n // xl-col-span-2\n // xl-col-start-2\n // xl-row-span-2\n // xl-row-start-2\n\n // loop through all grid items with states.\n [].map.call(ctx.children, (gItem: HTMLElement) => {\n if (!gItem.hasAttribute('grid-states')) return;\n\n // gridItems.forEach(gItem => {\n\n // clear all previous grid state classnames\n classes = gItem.className\n .split(' ')\n .filter((c) => !c.startsWith('nano-grid-'));\n gItem.className = classes.join(' ').trim();\n\n // get all potential states this element can have\n const itemStates = gItem.getAttribute('grid-states').split(' ');\n\n // loop through all potential state options: col & row span & start\n STATEOPTS.forEach((stateOpt) => {\n // reset found flag\n found = false;\n\n // loop through all the current valid breakpoints / sizes backwards because\n // we only care about the item's state at the largest current breakpoint.\n this.isSizes\n .slice()\n .reverse()\n .forEach(function (size) {\n if (found || !size) return;\n found = itemStates.find(\n (state) => state.indexOf(`${size.size}-${stateOpt}`) === 0\n );\n\n // found a state at this current size. apply class.\n if (found) {\n // clear previous grid state classname\n classes = gItem.className\n .split(' ')\n .filter((c) => !c.includes('nano-grid-${stateOpt}'));\n gItem.className = classes.join(' ').trim();\n\n stateArr = found.split('-');\n\n // remove the size of the state\n stateArr.shift();\n itemState = stateArr.join('-');\n\n // add new class\n gItem.classList.add(`nano-grid-${itemState}`);\n }\n });\n });\n });\n }\n\n componentWillLoad() {\n const ctx = this.el;\n [].map.call(ctx.children, (ele: HTMLElement) =>\n ele.classList.add('nano-griditem')\n );\n }\n\n componentDidLoad() {\n if (!window['ResizeObserver']) return;\n\n this.ro = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (!entry.contentRect.width) return;\n this.currentWidth = entry.contentRect.width;\n this.applySizeClasses();\n }\n });\n this.ro.observe(this.el);\n }\n\n disconnectedCallback() {\n if (this.ro) this.ro.disconnect();\n }\n\n render() {\n return (\n <Host\n class={{\n [this.generalClasses.join(' ')]: true,\n 'has-grid': !!this.gridClass,\n ready: this.ready,\n [this.gridClass]: true,\n }}\n >\n <div\n class={{\n grid: true,\n }}\n >\n <slot />\n </div>\n </Host>\n );\n }\n}\n",":host {\n display: inline-block;\n}\n","import { Component, h, Prop, Element, Method, Watch } from '@stencil/core';\nimport type { GridSizes } from '../../interface';\n\nconst STATEOPTS = ['col-span', 'col-start', 'row-span', 'row-start'];\n\n/**\n * Grid items to be used with [grid](/story/nano-components-grid) elements\n */\n@Component({\n tag: 'nano-grid-item',\n styleUrl: 'grid-item.scss',\n shadow: true,\n})\nexport class GridItem {\n private currGridSizes: GridSizes[] = [null];\n\n @Element() private el: HTMLNanoGridItemElement;\n /**\n * How to position this item within it's parent grid at different break points. Examples:\n * xl-col-span-2\n * l-col-start-2\n * xxl-row-span-2\n * m-row-start-2\n */\n @Prop() gridStates: string = '';\n\n @Watch('gridStates')\n updateGridClasses() {\n this.applyChildrenClasses();\n }\n\n /**\n * Called by parent grid to trigger new classes\n * @internal\n */\n @Method()\n async changeBP(newGridSizes: GridSizes[]) {\n if (this.currGridSizes === newGridSizes) return;\n this.currGridSizes = newGridSizes;\n\n if (!this.gridStates.length) return;\n this.applyChildrenClasses();\n }\n\n private applyChildrenClasses() {\n let stateArr: Array<string> = [''];\n let itemState: string = '';\n let found: any;\n let classes: Array<string>;\n\n // item states come in 4 possible flavours at every breakpoint. E.g.\n // xl-col-span-2\n // xl-col-start-2\n // xl-row-span-2\n // xl-row-start-2\n\n // clear all previous grid state classnames\n classes = this.el.className\n .split(' ')\n .filter((c) => !c.startsWith('nano-grid-'));\n this.el.className = classes.join(' ').trim();\n\n // get all potential states this element can have\n const itemStates = this.gridStates.split(' ');\n\n // loop through all potential state options: col & row span & start\n STATEOPTS.forEach((stateOpt) => {\n // reset found flag\n found = false;\n\n // loop through all the current valid breakpoints / sizes backwards because\n // we only care about the item's state at the largest current breakpoint.\n this.currGridSizes\n .slice()\n .reverse()\n .forEach((size) => {\n if (found || !size) return;\n found = itemStates.find(\n (state) => state.indexOf(`${size.size}-${stateOpt}`) === 0\n );\n\n // found a state at this current size. apply class.\n if (found) {\n // clear previous grid state classname\n classes = this.el.className\n .split(' ')\n .filter((c) => !c.includes('nano-grid-${stateOpt}'));\n this.el.className = classes.join(' ').trim();\n\n stateArr = found.split('-');\n\n // remove the size of the state\n stateArr.shift();\n itemState = stateArr.join('-');\n\n // add new class\n this.el.classList.add(`nano-grid-${itemState}`);\n }\n });\n });\n }\n\n render() {\n return <slot />;\n }\n}\n",":host {\n /**\n * @prop --padding: padding around any content. Only relevent on `<nano-img background>`\n */\n --padding: 0;\n\n display: inline-block;\n object-fit: cover;\n object-position: center;\n background-size: cover;\n background-position: center;\n\n * {\n border-radius: inherit;\n }\n}\n\n:host([background]:not([background='false'])) {\n display: block;\n}\n\n.img {\n position: relative;\n min-block-size: inherit;\n // block-size: 100%;\n display: block;\n object-fit: inherit;\n object-position: inherit;\n background-color: inherit;\n background-position: inherit;\n background-size: inherit;\n background-origin: inherit;\n background-attachment: inherit;\n background-repeat: inherit;\n}\n\n.img__loader,\n.img__observer {\n position: absolute;\n inset: 0;\n block-size: 100%;\n inline-size: 100%;\n z-index: -1;\n}\n\n.img__image,\n.img__bg {\n border-radius: inherit;\n display: block;\n opacity: 0;\n transition: 0.5s ease opacity, 0.3s ease filter 0.4s;\n filter: blur(5px);\n\n &.loaded {\n opacity: 1;\n filter: blur(0.1px);\n\n @media not all and (min-resolution: 0.001dpcm) {\n @supports (-webkit-appearance: none) {\n filter: blur(0);\n }\n }\n }\n}\n\n.img__image {\n object-fit: inherit;\n object-position: inherit;\n max-inline-size: 100%;\n block-size: auto;\n\n &.hide {\n visibility: hidden;\n\n &.no-height {\n block-size: 1px;\n position: absolute;\n z-index: -1;\n }\n }\n}\n\n.img__bg {\n background-color: inherit;\n background-position: inherit;\n background-size: inherit;\n background-origin: inherit;\n background-attachment: inherit;\n background-repeat: inherit;\n overflow: auto;\n padding: var(--padding);\n\n &.no-height {\n position: absolute;\n inset: 0;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n State,\n Prop,\n Watch,\n h,\n ComponentInterface,\n Build,\n} from '@stencil/core';\nimport type { ResizeStateChangeEventDetail } from '../../interface';\n\n/**\n * Img with benefits. Lazy loading. Simple `srcSet` solution for both `<img>` and `background-image` varieties.\n * @slot - Main slot. Only relevant with `<nano-img background>`\n */\n@Component({\n tag: 'nano-img',\n styleUrl: 'img.scss',\n shadow: true,\n})\nexport class Img implements ComponentInterface {\n private io?: IntersectionObserver;\n private _srcSet: { [key: string]: { src: string; active: boolean } } = {};\n\n @Element() host!: HTMLNanoImgElement;\n\n @State() loadSrc?: string;\n @State() loadError?: () => void;\n @State() hasLoaded: boolean = false;\n @State() imgStates: string = null;\n @State() _src: string;\n @Watch('_src')\n _srcChanged() {\n this.hasLoaded = false;\n this.addIO();\n }\n\n /** This attribute defines the alternative text describing the image.\n * Users will see this text displayed if the image URL is wrong, or if the image is not yet downloaded. */\n @Prop() alt?: string;\n\n /** The image URL. This attribute is mandatory for the `<img>` element. */\n @Prop() src!: string;\n @Watch('src')\n srcChanged() {\n this._src = this.src;\n }\n\n /** Optional list string providing media sizes with corresponding image srcs.\n * i.e. show img-x at 300px wide. Format `srcSet=\"200w src/imgSmall.jpg, 500h src/imgMed.png\"` */\n @Prop() srcSet?: string;\n @Watch('srcSet')\n srcSetChanged() {\n if (!this.srcSet) return;\n\n delete this._srcSet;\n this._srcSet = {};\n\n this.imgStates = this.srcSet\n .split(',')\n .map((bpSrc) => {\n const [bp, src] = bpSrc.split(' ').filter((bp) => bp.length);\n this._srcSet[bp] = { src: src, active: false };\n return bp;\n })\n .join(', ');\n }\n\n /** Render image lazily, when it comes into the browser viewport **/\n @Prop() lazy: boolean = true;\n @Watch('lazy')\n lazyChanged() {\n if (!this.lazy) this.load();\n }\n\n /** Render the image as a background image **/\n @Prop() background?: boolean;\n\n /** When the image is rendered as a background, and there is no preset dimensions of the component,\n * you can set how the component height will be set. Via image size or via the content **/\n @Prop() autoHeight: 'content' | 'image' = 'content';\n\n /** Emitted when the img src has been set */\n @Event() nanoImgWillLoad!: EventEmitter<void>;\n\n /** Emitted when the image has finished loading */\n @Event() nanoImgDidLoad!: EventEmitter<void>;\n\n /** Emitted when the img fails to load */\n @Event() nanoImgError!: EventEmitter<void>;\n\n private addIO() {\n if (!this._src || this.hasLoaded) return;\n if (!this.lazy) {\n this.load();\n return;\n }\n if (\n typeof (window as any) !== 'undefined' &&\n 'IntersectionObserver' in window\n ) {\n this.removeIO();\n this.io = new IntersectionObserver((data) => {\n if (data[0].isIntersecting) {\n this.load();\n this.removeIO();\n }\n });\n\n this.io.observe(this.host);\n } else setTimeout(() => this.load(), 200);\n }\n\n private load() {\n this.loadError = this.onError;\n this.loadSrc = this._src;\n this.nanoImgWillLoad.emit();\n }\n\n private onLoad = () => {\n this.nanoImgDidLoad.emit();\n setTimeout(() => (this.hasLoaded = true), 50);\n };\n\n private onError = () => {\n this.nanoImgError.emit();\n };\n\n private onResize = (e: { detail: ResizeStateChangeEventDetail }) => {\n Object.entries(e.detail).forEach(([bp, active]) => {\n this._srcSet[bp].active = active;\n });\n\n // sort and find the highest sized matching image.\n const srcOpts = [];\n Object.keys(this._srcSet)\n .sort()\n .forEach((bp) => {\n if (this._srcSet[bp].active) srcOpts.push(this._srcSet[bp].src);\n });\n\n if (srcOpts.length) this._src = srcOpts.slice(-1)[0];\n // no matching image? Set back to default\n else this._src = this.src;\n };\n\n private removeIO() {\n if (this.io) {\n this.io.disconnect();\n this.io = undefined;\n }\n }\n\n connectedCallback() {\n this.srcChanged();\n this.srcSetChanged();\n this.lazyChanged();\n }\n\n componentDidLoad() {\n this.addIO();\n }\n\n disconnectedCallback() {\n this.removeIO();\n }\n\n render() {\n const bgStyle = !!this.loadSrc\n ? { 'background-image': `url(${this.loadSrc})` }\n : {};\n\n return (\n <div class=\"img\">\n <nano-skeleton class=\"img__loader\"></nano-skeleton>\n {!!this.background && (\n <div\n class={{\n loaded: this.hasLoaded,\n img__bg: true,\n 'no-height': this.autoHeight === 'image',\n }}\n style={bgStyle}\n >\n <slot />\n </div>\n )}\n <img\n class={{\n img__image: true,\n loaded: this.hasLoaded,\n hide: this.background,\n 'no-height': this.autoHeight === 'content',\n }}\n decoding=\"async\"\n src={Build.isServer ? this.src : this.loadSrc}\n loading={Build.isServer && this.lazy ? 'lazy' : undefined}\n alt={this.alt}\n onLoad={this.onLoad}\n onError={this.loadError}\n />\n <nano-resize-observe\n class=\"img__observer\"\n onNanoResizeStateChange={this.onResize}\n states={this.imgStates}\n />\n </div>\n );\n }\n}\n"],"mappings":"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"}
|
@@ -2,6 +2,6 @@
|
|
2
2
|
* Web Components for Nanopore digital Web Apps
|
3
3
|
*/
|
4
4
|
import{c as t,a as n}from"./p-69a3e911.js";var e=t((function(t,e){
|
5
|
-
/*! algoliasearch.umd.js | 4.
|
6
|
-
!function(n,e){t.exports=e()}(n,(function(){function t(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}function n(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,r)}return e}function e(e){for(var r=1;r<arguments.length;r++){var u=null!=arguments[r]?arguments[r]:{};r%2?n(Object(u),!0).forEach((function(n){t(e,n,u[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(u)):n(Object(u)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(u,t))}))}return e}function r(t,n){if(null==t)return{};var e,r,u=function(t,n){if(null==t)return{};var e,r,u={},o=Object.keys(t);for(r=0;r<o.length;r++)e=o[r],n.indexOf(e)>=0||(u[e]=t[e]);return u}(t,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r<o.length;r++)e=o[r],n.indexOf(e)>=0||Object.prototype.propertyIsEnumerable.call(t,e)&&(u[e]=t[e])}return u}function u(t,n){return function(t){if(Array.isArray(t))return t}(t)||function(t,n){if(!(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)))return;var e=[],r=!0,u=!1,o=void 0;try{for(var i,c=t[Symbol.iterator]();!(r=(i=c.next()).done)&&(e.push(i.value),!n||e.length!==n);r=!0);}catch(t){u=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(u)throw o}}return e}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function o(t){return function(t){if(Array.isArray(t)){for(var n=0,e=new Array(t.length);n<t.length;n++)e[n]=t[n];return e}}(t)||function(t){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t))return Array.from(t)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function i(t){var n,e="algoliasearch-client-js-".concat(t.key),r=function(){return void 0===n&&(n=t.localStorage||window.localStorage),n},o=function(){return JSON.parse(r().getItem(e)||"{}")};return{get:function(t,n){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){var e=JSON.stringify(t),r=o()[e];return Promise.all([r||n(),void 0!==r])})).then((function(t){var n=u(t,2),r=n[0],o=n[1];return Promise.all([r,o||e.miss(r)])})).then((function(t){return u(t,1)[0]}))},set:function(t,n){return Promise.resolve().then((function(){var u=o();return u[JSON.stringify(t)]=n,r().setItem(e,JSON.stringify(u)),n}))},delete:function(t){return Promise.resolve().then((function(){var n=o();delete n[JSON.stringify(t)],r().setItem(e,JSON.stringify(n))}))},clear:function(){return Promise.resolve().then((function(){r().removeItem(e)}))}}}function c(t){var n=o(t.caches),e=n.shift();return void 0===e?{get:function(t,n){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},r=n();return r.then((function(t){return Promise.all([t,e.miss(t)])})).then((function(t){return u(t,1)[0]}))},set:function(t,n){return Promise.resolve(n)},delete:function(t){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(t,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return e.get(t,r,u).catch((function(){return c({caches:n}).get(t,r,u)}))},set:function(t,r){return e.set(t,r).catch((function(){return c({caches:n}).set(t,r)}))},delete:function(t){return e.delete(t).catch((function(){return c({caches:n}).delete(t)}))},clear:function(){return e.clear().catch((function(){return c({caches:n}).clear()}))}}}function a(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},n={};return{get:function(e,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},o=JSON.stringify(e);if(o in n)return Promise.resolve(t.serializable?JSON.parse(n[o]):n[o]);var i=r(),c=u&&u.miss||function(){return Promise.resolve()};return i.then((function(t){return c(t)})).then((function(){return i}))},set:function(e,r){return n[JSON.stringify(e)]=t.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(t){return delete n[JSON.stringify(t)],Promise.resolve()},clear:function(){return n={},Promise.resolve()}}}function s(t,n,e){var r={"x-algolia-api-key":e,"x-algolia-application-id":n};return{headers:function(){return t===p.WithinHeaders?r:{}},queryParameters:function(){return t===p.WithinQueryParameters?r:{}}}}function f(t){var n=0;return t((function e(){return n++,new Promise((function(r){setTimeout((function(){r(t(e))}),Math.min(100*n,1e3))}))}))}function d(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(t,n){return Promise.resolve()};return Object.assign(t,{wait:function(e){return d(t.then((function(t){return Promise.all([n(t,e),t])})).then((function(t){return t[1]})))}})}function l(t){for(var n=t.length-1;n>0;n--){var e=Math.floor(Math.random()*(n+1)),r=t[n];t[n]=t[e],t[e]=r}return t}function h(t,n){return n?(Object.keys(n).forEach((function(e){t[e]=n[e](t)})),t):t}function m(t){for(var n=arguments.length,e=new Array(n>1?n-1:0),r=1;r<n;r++)e[r-1]=arguments[r];var u=0;return t.replace(/%s/g,(function(){return encodeURIComponent(e[u++])}))}var p={WithinQueryParameters:0,WithinHeaders:1};function y(t,n){var e=t||{},r=e.data||{};return Object.keys(e).forEach((function(t){-1===["timeout","headers","queryParameters","data","cacheable"].indexOf(t)&&(r[t]=e[t])})),{data:Object.entries(r).length>0?r:void 0,timeout:e.timeout||n,headers:e.headers||{},queryParameters:e.queryParameters||{},cacheable:e.cacheable}}var v={Read:1,Write:2,Any:3},b=1,g=2,j=3;function O(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:b;return e(e({},t),{},{status:n,lastUpdate:Date.now()})}function P(t){return"string"==typeof t?{protocol:"https",url:t,accept:v.Any}:{protocol:t.protocol||"https",url:t.url,accept:t.accept||v.Any}}var x="DELETE",S="GET",I="POST",q="PUT";function w(t,n){return Promise.all(n.map((function(n){return t.get(n,(function(){return Promise.resolve(O(n))}))}))).then((function(t){var e=t.filter((function(t){return function(t){return t.status===b||Date.now()-t.lastUpdate>12e4}(t)})),r=t.filter((function(t){return function(t){return t.status===j&&Date.now()-t.lastUpdate<=12e4}(t)})),u=[].concat(o(e),o(r));return{getTimeout:function(t,n){return(0===r.length&&0===t?1:r.length+3+t)*n},statelessHosts:u.length>0?u.map((function(t){return P(t)})):n}}))}function D(t,n,r,u){var i=[],c=function(t,n){if(t.method===S||void 0===t.data&&void 0===n.data)return;var r=Array.isArray(t.data)?t.data:e(e({},t.data),n.data);return JSON.stringify(r)}(r,u),a=function(t,n){var r=e(e({},t.headers),n.headers),u={};return Object.keys(r).forEach((function(t){var n=r[t];u[t.toLowerCase()]=n})),u}(t,u),s=r.method,f=r.method!==S?{}:e(e({},r.data),u.data),d=e(e(e({"x-algolia-agent":t.userAgent.value},t.queryParameters),f),u.queryParameters),l=0,h=function n(e,o){var f=e.pop();if(void 0===f)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:k(i)};var h={data:c,headers:a,method:s,url:A(f,r.path,d),connectTimeout:o(l,t.timeouts.connect),responseTimeout:o(l,u.timeout)},m=function(t){var n={request:h,response:t,host:f,triesLeft:e.length};return i.push(n),n},p={onSuccess:function(t){return function(t){try{return JSON.parse(t.content)}catch(n){throw function(t,n){return{name:"DeserializationError",message:t,response:n}}(n.message,t)}}(t)},onRetry:function(r){var u=m(r);return r.isTimedOut&&l++,Promise.all([t.logger.info("Retryable failure",N(u)),t.hostsCache.set(f,O(f,r.isTimedOut?j:g))]).then((function(){return n(e,o)}))},onFail:function(t){throw m(t),function(t,n){var e=t.content,r=t.status,u=e;try{u=JSON.parse(e).message}catch(t){}return function(t,n,e){return{name:"ApiError",message:t,status:n,transporterStackTrace:e}}(u,r,n)}(t,k(i))}};return t.requester.send(h).then((function(t){return function(t,n){return function(t){var n=t.status;return t.isTimedOut||function(t){var n=t.isTimedOut,e=t.status;return!n&&0==~~e}(t)||2!=~~(n/100)&&4!=~~(n/100)}(t)?n.onRetry(t):2==~~(t.status/100)?n.onSuccess(t):n.onFail(t)}(t,p)}))};return w(t.hostsCache,n).then((function(t){return h(o(t.statelessHosts).reverse(),t.getTimeout)}))}function T(t){var n=t.hostsCache,e=t.logger,r=t.requester,o=t.requestsCache,i=t.responsesCache,c=t.timeouts,a=t.userAgent,s=t.hosts,f=t.queryParameters,d={hostsCache:n,logger:e,requester:r,requestsCache:o,responsesCache:i,timeouts:c,userAgent:a,headers:t.headers,queryParameters:f,hosts:s.map((function(t){return P(t)})),read:function(t,n){var e=y(n,d.timeouts.read),r=function(){return D(d,d.hosts.filter((function(t){return 0!=(t.accept&v.Read)})),t,e)};if(!0!==(void 0!==e.cacheable?e.cacheable:t.cacheable))return r();var o={request:t,mappedRequestOptions:e,transporter:{queryParameters:d.queryParameters,headers:d.headers}};return d.responsesCache.get(o,(function(){return d.requestsCache.get(o,(function(){return d.requestsCache.set(o,r()).then((function(t){return Promise.all([d.requestsCache.delete(o),t])}),(function(t){return Promise.all([d.requestsCache.delete(o),Promise.reject(t)])})).then((function(t){var n=u(t,2);return n[1]}))}))}),{miss:function(t){return d.responsesCache.set(o,t)}})},write:function(t,n){return D(d,d.hosts.filter((function(t){return 0!=(t.accept&v.Write)})),t,y(n,d.timeouts.write))}};return d}function E(t){var n={value:"Algolia for JavaScript (".concat(t,")"),add:function(t){var e="; ".concat(t.segment).concat(void 0!==t.version?" (".concat(t.version,")"):"");return-1===n.value.indexOf(e)&&(n.value="".concat(n.value).concat(e)),n}};return n}function A(t,n,e){var r=R(e),u="".concat(t.protocol,"://").concat(t.url,"/").concat("/"===n.charAt(0)?n.substr(1):n);return r.length&&(u+="?".concat(r)),u}function R(t){return Object.keys(t).map((function(n){return m("%s=%s",n,(e=t[n],"[object Object]"===Object.prototype.toString.call(e)||"[object Array]"===Object.prototype.toString.call(e)?JSON.stringify(t[n]):t[n]));var e})).join("&")}function k(t){return t.map((function(t){return N(t)}))}function N(t){var n=t.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return e(e({},t),{},{request:e(e({},t.request),{},{headers:e(e({},t.request.headers),n)})})}var U=function(t){return function(n,e){return t.transporter.write({method:I,path:"2/abtests",data:n},e)}},J=function(t){return function(n,e){return t.transporter.write({method:x,path:m("2/abtests/%s",n)},e)}},z=function(t){return function(n,e){return t.transporter.read({method:S,path:m("2/abtests/%s",n)},e)}},C=function(t){return function(n){return t.transporter.read({method:S,path:"2/abtests"},n)}},F=function(t){return function(n,e){return t.transporter.write({method:I,path:m("2/abtests/%s/stop",n)},e)}},B=function(t){return function(n){return t.transporter.read({method:S,path:"1/strategies/personalization"},n)}},M=function(t){return function(n,e){return t.transporter.write({method:I,path:"1/strategies/personalization",data:n},e)}};function K(t){return function n(e){return t.request(e).then((function(r){if(void 0!==t.batch&&t.batch(r.hits),!t.shouldStop(r))return r.cursor?n({cursor:r.cursor}):n({page:(e.page||0)+1})}))}({})}var Q=function(t){return function(n,u){var o=u||{},i=o.queryParameters,c=r(o,["queryParameters"]),a=e({acl:n},void 0!==i?{queryParameters:i}:{});return d(t.transporter.write({method:I,path:"1/keys",data:a},c),(function(n,e){return f((function(r){return tt(t)(n.key,e).catch((function(t){if(404!==t.status)throw t;return r()}))}))}))}},G=function(t){return function(n,e,r){var u=y(r);return u.queryParameters["X-Algolia-User-ID"]=n,t.transporter.write({method:I,path:"1/clusters/mapping",data:{cluster:e}},u)}},H=function(t){return function(n,e,r){return t.transporter.write({method:I,path:"1/clusters/mapping/batch",data:{users:n,cluster:e}},r)}},L=function(t){return function(n,e){return d(t.transporter.write({method:I,path:m("/1/dictionaries/%s/batch",n),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},e),(function(n,e){return It(t)(n.taskID,e)}))}},V=function(t){return function(n,e,r){return d(t.transporter.write({method:I,path:m("1/indexes/%s/operation",n),data:{operation:"copy",destination:e}},r),(function(e,r){return ct(t)(n,{methods:{waitTask:ln}}).waitTask(e.taskID,r)}))}},W=function(t){return function(n,r,u){return V(t)(n,r,e(e({},u),{},{scope:[mn.Rules]}))}},_=function(t){return function(n,r,u){return V(t)(n,r,e(e({},u),{},{scope:[mn.Settings]}))}},X=function(t){return function(n,r,u){return V(t)(n,r,e(e({},u),{},{scope:[mn.Synonyms]}))}},Y=function(t){return function(n,e){return n.method===S?t.transporter.read(n,e):t.transporter.write(n,e)}},Z=function(t){return function(n,e){return d(t.transporter.write({method:x,path:m("1/keys/%s",n)},e),(function(e,r){return f((function(e){return tt(t)(n,r).then(e).catch((function(t){if(404!==t.status)throw t}))}))}))}},$=function(t){return function(n,e,r){var u=e.map((function(t){return{action:"deleteEntry",body:{objectID:t}}}));return d(t.transporter.write({method:I,path:m("/1/dictionaries/%s/batch",n),data:{clearExistingDictionaryEntries:!1,requests:u}},r),(function(n,e){return It(t)(n.taskID,e)}))}},tt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/keys/%s",n)},e)}},nt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/task/%s",n.toString())},e)}},et=function(t){return function(n){return t.transporter.read({method:S,path:"/1/dictionaries/*/settings"},n)}},rt=function(t){return function(n){return t.transporter.read({method:S,path:"1/logs"},n)}},ut=function(t){return function(n){return t.transporter.read({method:S,path:"1/clusters/mapping/top"},n)}},ot=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/clusters/mapping/%s",n)},e)}},it=function(t){return function(n){var e=n||{},u=e.retrieveMappings,o=r(e,["retrieveMappings"]);return!0===u&&(o.getClusters=!0),t.transporter.read({method:S,path:"1/clusters/mapping/pending"},o)}},ct=function(t){return function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r={transporter:t.transporter,appId:t.appId,indexName:n};return h(r,e.methods)}},at=function(t){return function(n){return t.transporter.read({method:S,path:"1/keys"},n)}},st=function(t){return function(n){return t.transporter.read({method:S,path:"1/clusters"},n)}},ft=function(t){return function(n){return t.transporter.read({method:S,path:"1/indexes"},n)}},dt=function(t){return function(n){return t.transporter.read({method:S,path:"1/clusters/mapping"},n)}},lt=function(t){return function(n,e,r){return d(t.transporter.write({method:I,path:m("1/indexes/%s/operation",n),data:{operation:"move",destination:e}},r),(function(e,r){return ct(t)(n,{methods:{waitTask:ln}}).waitTask(e.taskID,r)}))}},ht=function(t){return function(n,e){return d(t.transporter.write({method:I,path:"1/indexes/*/batch",data:{requests:n}},e),(function(n,e){return Promise.all(Object.keys(n.taskID).map((function(r){return ct(t)(r,{methods:{waitTask:ln}}).waitTask(n.taskID[r],e)})))}))}},mt=function(t){return function(n,e){return t.transporter.read({method:I,path:"1/indexes/*/objects",data:{requests:n}},e)}},pt=function(t){return function(n,r){var u=n.map((function(t){return e(e({},t),{},{params:R(t.params||{})})}));return t.transporter.read({method:I,path:"1/indexes/*/queries",data:{requests:u},cacheable:!0},r)}},yt=function(t){return function(n,u){return Promise.all(n.map((function(n){var o=n.params,i=o.facetName,c=o.facetQuery,a=r(o,["facetName","facetQuery"]);return ct(t)(n.indexName,{methods:{searchForFacetValues:an}}).searchForFacetValues(i,c,e(e({},u),a))})))}},vt=function(t){return function(n,e){var r=y(e);return r.queryParameters["X-Algolia-User-ID"]=n,t.transporter.write({method:x,path:"1/clusters/mapping"},r)}},bt=function(t){return function(n,e,r){var u=e.map((function(t){return{action:"addEntry",body:t}}));return d(t.transporter.write({method:I,path:m("/1/dictionaries/%s/batch",n),data:{clearExistingDictionaryEntries:!0,requests:u}},r),(function(n,e){return It(t)(n.taskID,e)}))}},gt=function(t){return function(n,e){return d(t.transporter.write({method:I,path:m("1/keys/%s/restore",n)},e),(function(e,r){return f((function(e){return tt(t)(n,r).catch((function(t){if(404!==t.status)throw t;return e()}))}))}))}},jt=function(t){return function(n,e,r){var u=e.map((function(t){return{action:"addEntry",body:t}}));return d(t.transporter.write({method:I,path:m("/1/dictionaries/%s/batch",n),data:{clearExistingDictionaryEntries:!1,requests:u}},r),(function(n,e){return It(t)(n.taskID,e)}))}},Ot=function(t){return function(n,e,r){return t.transporter.read({method:I,path:m("/1/dictionaries/%s/search",n),data:{query:e},cacheable:!0},r)}},Pt=function(t){return function(n,e){return t.transporter.read({method:I,path:"1/clusters/mapping/search",data:{query:n}},e)}},xt=function(t){return function(n,e){return d(t.transporter.write({method:q,path:"/1/dictionaries/*/settings",data:n},e),(function(n,e){return It(t)(n.taskID,e)}))}},St=function(t){return function(n,e){var u=Object.assign({},e),o=e||{},i=o.queryParameters,c=r(o,["queryParameters"]),a=i?{queryParameters:i}:{},s=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"];return d(t.transporter.write({method:q,path:m("1/keys/%s",n),data:a},c),(function(e,r){return f((function(e){return tt(t)(n,r).then((function(t){return function(t){return Object.keys(u).filter((function(t){return-1!==s.indexOf(t)})).every((function(n){return t[n]===u[n]}))}(t)?Promise.resolve():e()}))}))}))}},It=function(t){return function(n,e){return f((function(r){return nt(t)(n,e).then((function(t){return"published"!==t.status?r():void 0}))}))}},qt=function(t){return function(n,e){return d(t.transporter.write({method:I,path:m("1/indexes/%s/batch",t.indexName),data:{requests:n}},e),(function(n,e){return ln(t)(n.taskID,e)}))}},wt=function(t){return function(n){return K(e(e({shouldStop:function(t){return void 0===t.cursor}},n),{},{request:function(e){return t.transporter.read({method:I,path:m("1/indexes/%s/browse",t.indexName),data:e},n)}}))}},Dt=function(t){return function(n){var r=e({hitsPerPage:1e3},n);return K(e(e({shouldStop:function(t){return t.hits.length<r.hitsPerPage}},r),{},{request:function(n){return sn(t)("",e(e({},r),n)).then((function(t){return e(e({},t),{},{hits:t.hits.map((function(t){return delete t._highlightResult,t}))})}))}}))}},Tt=function(t){return function(n){var r=e({hitsPerPage:1e3},n);return K(e(e({shouldStop:function(t){return t.hits.length<r.hitsPerPage}},r),{},{request:function(n){return fn(t)("",e(e({},r),n)).then((function(t){return e(e({},t),{},{hits:t.hits.map((function(t){return delete t._highlightResult,t}))})}))}}))}},Et=function(t){return function(n,e,u){var o=u||{},i=o.batchSize,c=r(o,["batchSize"]),a={taskIDs:[],objectIDs:[]};return d(function r(){var u,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,s=[];for(u=o;u<n.length&&(s.push(n[u]),s.length!==(i||1e3));u++);return 0===s.length?Promise.resolve(a):qt(t)(s.map((function(t){return{action:e,body:t}})),c).then((function(t){return a.objectIDs=a.objectIDs.concat(t.objectIDs),a.taskIDs.push(t.taskID),u++,r(u)}))}(),(function(n,e){return Promise.all(n.taskIDs.map((function(n){return ln(t)(n,e)})))}))}},At=function(t){return function(n){return d(t.transporter.write({method:I,path:m("1/indexes/%s/clear",t.indexName)},n),(function(n,e){return ln(t)(n.taskID,e)}))}},Rt=function(t){return function(n){var e=n||{},u=e.forwardToReplicas,o=y(r(e,["forwardToReplicas"]));return u&&(o.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:I,path:m("1/indexes/%s/rules/clear",t.indexName)},o),(function(n,e){return ln(t)(n.taskID,e)}))}},kt=function(t){return function(n){var e=n||{},u=e.forwardToReplicas,o=y(r(e,["forwardToReplicas"]));return u&&(o.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:I,path:m("1/indexes/%s/synonyms/clear",t.indexName)},o),(function(n,e){return ln(t)(n.taskID,e)}))}},Nt=function(t){return function(n,e){return d(t.transporter.write({method:I,path:m("1/indexes/%s/deleteByQuery",t.indexName),data:n},e),(function(n,e){return ln(t)(n.taskID,e)}))}},Ut=function(t){return function(n){return d(t.transporter.write({method:x,path:m("1/indexes/%s",t.indexName)},n),(function(n,e){return ln(t)(n.taskID,e)}))}},Jt=function(t){return function(n,e){return d(zt(t)([n],e).then((function(t){return{taskID:t.taskIDs[0]}})),(function(n,e){return ln(t)(n.taskID,e)}))}},zt=function(t){return function(n,e){var r=n.map((function(t){return{objectID:t}}));return Et(t)(r,hn.DeleteObject,e)}},Ct=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=y(r(u,["forwardToReplicas"]));return o&&(i.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:x,path:m("1/indexes/%s/rules/%s",t.indexName,n)},i),(function(n,e){return ln(t)(n.taskID,e)}))}},Ft=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=y(r(u,["forwardToReplicas"]));return o&&(i.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:x,path:m("1/indexes/%s/synonyms/%s",t.indexName,n)},i),(function(n,e){return ln(t)(n.taskID,e)}))}},Bt=function(t){return function(n){return Vt(t)(n).then((function(){return!0})).catch((function(t){if(404!==t.status)throw t;return!1}))}},Mt=function(t){return function(n,e,r){return t.transporter.read({method:I,path:m("1/answers/%s/prediction",t.indexName),data:{query:n,queryLanguages:e},cacheable:!0},r)}},Kt=function(t){return function(n,o){var i=o||{},c=i.query,a=i.paginate,s=r(i,["query","paginate"]),f=0;return function r(){return cn(t)(c||"",e(e({},s),{},{page:f})).then((function(t){for(var e=0,o=Object.entries(t.hits);e<o.length;e++){var i=u(o[e],2),c=i[0],s=i[1];if(n(s))return{object:s,position:parseInt(c,10),page:f}}if(f++,!1===a||f>=t.nbPages)throw{name:"ObjectNotFoundError",message:"Object not found."};return r()}))}()}},Qt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/indexes/%s/%s",t.indexName,n)},e)}},Gt=function(){return function(t,n){for(var e=0,r=Object.entries(t.hits);e<r.length;e++){var o=u(r[e],2),i=o[0];if(o[1].objectID===n)return parseInt(i,10)}return-1}},Ht=function(t){return function(n,u){var o=u||{},i=o.attributesToRetrieve,c=r(o,["attributesToRetrieve"]),a=n.map((function(n){return e({indexName:t.indexName,objectID:n},i?{attributesToRetrieve:i}:{})}));return t.transporter.read({method:I,path:"1/indexes/*/objects",data:{requests:a}},c)}},Lt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/indexes/%s/rules/%s",t.indexName,n)},e)}},Vt=function(t){return function(n){return t.transporter.read({method:S,path:m("1/indexes/%s/settings",t.indexName),data:{getVersion:2}},n)}},Wt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/indexes/%s/synonyms/%s",t.indexName,n)},e)}},_t=function(t){return function(n,e){return d(Xt(t)([n],e).then((function(t){return{objectID:t.objectIDs[0],taskID:t.taskIDs[0]}})),(function(n,e){return ln(t)(n.taskID,e)}))}},Xt=function(t){return function(n,e){var u=e||{},o=u.createIfNotExists,i=r(u,["createIfNotExists"]),c=o?hn.PartialUpdateObject:hn.PartialUpdateObjectNoCreate;return Et(t)(n,c,i)}},Yt=function(t){return function(n,i){var c=i||{},a=c.safe,s=c.autoGenerateObjectIDIfNotExist,f=c.batchSize,l=r(c,["safe","autoGenerateObjectIDIfNotExist","batchSize"]),h=function(n,e,r,u){return d(t.transporter.write({method:I,path:m("1/indexes/%s/operation",n),data:{operation:r,destination:e}},u),(function(n,e){return ln(t)(n.taskID,e)}))},p=Math.random().toString(36).substring(7),y="".concat(t.indexName,"_tmp_").concat(p),v=nn({appId:t.appId,transporter:t.transporter,indexName:y}),b=[],g=h(t.indexName,y,"copy",e(e({},l),{},{scope:["settings","synonyms","rules"]}));return b.push(g),d((a?g.wait(l):g).then((function(){var t=v(n,e(e({},l),{},{autoGenerateObjectIDIfNotExist:s,batchSize:f}));return b.push(t),a?t.wait(l):t})).then((function(){var n=h(y,t.indexName,"move",l);return b.push(n),a?n.wait(l):n})).then((function(){return Promise.all(b)})).then((function(t){var n=u(t,3),e=n[0],r=n[1],i=n[2];return{objectIDs:r.objectIDs,taskIDs:[e.taskID].concat(o(r.taskIDs),[i.taskID])}})),(function(t,n){return Promise.all(b.map((function(t){return t.wait(n)})))}))}},Zt=function(t){return function(n,r){return rn(t)(n,e(e({},r),{},{clearExistingRules:!0}))}},$t=function(t){return function(n,r){return on(t)(n,e(e({},r),{},{clearExistingSynonyms:!0}))}},tn=function(t){return function(n,e){return d(nn(t)([n],e).then((function(t){return{objectID:t.objectIDs[0],taskID:t.taskIDs[0]}})),(function(n,e){return ln(t)(n.taskID,e)}))}},nn=function(t){return function(n,e){var u=e||{},o=u.autoGenerateObjectIDIfNotExist,i=r(u,["autoGenerateObjectIDIfNotExist"]),c=o?hn.AddObject:hn.UpdateObject;if(c===hn.UpdateObject){var a=!0,s=!1,f=void 0;try{for(var l,h=n[Symbol.iterator]();!(a=(l=h.next()).done);a=!0){if(void 0===l.value.objectID)return d(Promise.reject({name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}))}}catch(t){s=!0,f=t}finally{try{a||null==h.return||h.return()}finally{if(s)throw f}}}return Et(t)(n,c,i)}},en=function(t){return function(n,e){return rn(t)([n],e)}},rn=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=u.clearExistingRules,c=y(r(u,["forwardToReplicas","clearExistingRules"]));return o&&(c.queryParameters.forwardToReplicas=1),i&&(c.queryParameters.clearExistingRules=1),d(t.transporter.write({method:I,path:m("1/indexes/%s/rules/batch",t.indexName),data:n},c),(function(n,e){return ln(t)(n.taskID,e)}))}},un=function(t){return function(n,e){return on(t)([n],e)}},on=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=u.clearExistingSynonyms,c=u.replaceExistingSynonyms,a=y(r(u,["forwardToReplicas","clearExistingSynonyms","replaceExistingSynonyms"]));return o&&(a.queryParameters.forwardToReplicas=1),(c||i)&&(a.queryParameters.replaceExistingSynonyms=1),d(t.transporter.write({method:I,path:m("1/indexes/%s/synonyms/batch",t.indexName),data:n},a),(function(n,e){return ln(t)(n.taskID,e)}))}},cn=function(t){return function(n,e){return t.transporter.read({method:I,path:m("1/indexes/%s/query",t.indexName),data:{query:n},cacheable:!0},e)}},an=function(t){return function(n,e,r){return t.transporter.read({method:I,path:m("1/indexes/%s/facets/%s/query",t.indexName,n),data:{facetQuery:e},cacheable:!0},r)}},sn=function(t){return function(n,e){return t.transporter.read({method:I,path:m("1/indexes/%s/rules/search",t.indexName),data:{query:n}},e)}},fn=function(t){return function(n,e){return t.transporter.read({method:I,path:m("1/indexes/%s/synonyms/search",t.indexName),data:{query:n}},e)}},dn=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=y(r(u,["forwardToReplicas"]));return o&&(i.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:q,path:m("1/indexes/%s/settings",t.indexName),data:n},i),(function(n,e){return ln(t)(n.taskID,e)}))}},ln=function(t){return function(n,e){return f((function(r){return function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/indexes/%s/task/%s",t.indexName,n.toString())},e)}}(t)(n,e).then((function(t){return"published"!==t.status?r():void 0}))}))}},hn={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},mn={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},pn=1,yn=2,vn=3;function bn(t,n,r){var u,o={appId:t,apiKey:n,timeouts:{connect:1,read:2,write:30},requester:{send:function(t){return new Promise((function(n){var e=new XMLHttpRequest;e.open(t.method,t.url,!0),Object.keys(t.headers).forEach((function(n){return e.setRequestHeader(n,t.headers[n])}));var r,u=function(t,r){return setTimeout((function(){e.abort(),n({status:0,content:r,isTimedOut:!0})}),1e3*t)},o=u(t.connectTimeout,"Connection timeout");e.onreadystatechange=function(){e.readyState>e.OPENED&&void 0===r&&(clearTimeout(o),r=u(t.responseTimeout,"Socket timeout"))},e.onerror=function(){0===e.status&&(clearTimeout(o),clearTimeout(r),n({content:e.responseText||"Network request failed",status:e.status,isTimedOut:!1}))},e.onload=function(){clearTimeout(o),clearTimeout(r),n({content:e.responseText,status:e.status,isTimedOut:!1})},e.send(t.data)}))}},logger:(u=vn,{debug:function(t,n){return pn>=u&&console.debug(t,n),Promise.resolve()},info:function(t,n){return yn>=u&&console.info(t,n),Promise.resolve()},error:function(t,n){return console.error(t,n),Promise.resolve()}}),responsesCache:a(),requestsCache:a({serializable:!1}),hostsCache:c({caches:[i({key:"".concat("4.13.1","-").concat(t)}),a()]}),userAgent:E("4.13.1").add({segment:"Browser"})},f=e(e({},o),r),d=function(){return function(t){return function(t){var n=t.region||"us",r=s(p.WithinHeaders,t.appId,t.apiKey),u=T(e(e({hosts:[{url:"personalization.".concat(n,".algolia.com")}]},t),{},{headers:e(e(e({},r.headers()),{"content-type":"application/json"}),t.headers),queryParameters:e(e({},r.queryParameters()),t.queryParameters)}));return h({appId:t.appId,transporter:u},t.methods)}(e(e(e({},o),t),{},{methods:{getPersonalizationStrategy:B,setPersonalizationStrategy:M}}))}};return function(t){var n=t.appId,r=s(void 0!==t.authMode?t.authMode:p.WithinHeaders,n,t.apiKey),u=T(e(e({hosts:[{url:"".concat(n,"-dsn.algolia.net"),accept:v.Read},{url:"".concat(n,".algolia.net"),accept:v.Write}].concat(l([{url:"".concat(n,"-1.algolianet.com")},{url:"".concat(n,"-2.algolianet.com")},{url:"".concat(n,"-3.algolianet.com")}]))},t),{},{headers:e(e(e({},r.headers()),{"content-type":"application/x-www-form-urlencoded"}),t.headers),queryParameters:e(e({},r.queryParameters()),t.queryParameters)}));return h({transporter:u,appId:n,addAlgoliaAgent:function(t,n){u.userAgent.add({segment:t,version:n})},clearCache:function(){return Promise.all([u.requestsCache.clear(),u.responsesCache.clear()]).then((function(){}))}},t.methods)}(e(e({},f),{},{methods:{search:pt,searchForFacetValues:yt,multipleBatch:ht,multipleGetObjects:mt,multipleQueries:pt,copyIndex:V,copySettings:_,copySynonyms:X,copyRules:W,moveIndex:lt,listIndices:ft,getLogs:rt,listClusters:st,multipleSearchForFacetValues:yt,getApiKey:tt,addApiKey:Q,listApiKeys:at,updateApiKey:St,deleteApiKey:Z,restoreApiKey:gt,assignUserID:G,assignUserIDs:H,getUserID:ot,searchUserIDs:Pt,listUserIDs:dt,getTopUserIDs:ut,removeUserID:vt,hasPendingMappings:it,clearDictionaryEntries:L,deleteDictionaryEntries:$,getDictionarySettings:et,getAppTask:nt,replaceDictionaryEntries:bt,saveDictionaryEntries:jt,searchDictionaryEntries:Ot,setDictionarySettings:xt,waitAppTask:It,customRequest:Y,initIndex:function(t){return function(n){return ct(t)(n,{methods:{batch:qt,delete:Ut,findAnswers:Mt,getObject:Qt,getObjects:Ht,saveObject:tn,saveObjects:nn,search:cn,searchForFacetValues:an,waitTask:ln,setSettings:dn,getSettings:Vt,partialUpdateObject:_t,partialUpdateObjects:Xt,deleteObject:Jt,deleteObjects:zt,deleteBy:Nt,clearObjects:At,browseObjects:wt,getObjectPosition:Gt,findObject:Kt,exists:Bt,saveSynonym:un,saveSynonyms:on,getSynonym:Wt,searchSynonyms:fn,browseSynonyms:Tt,deleteSynonym:Ft,clearSynonyms:kt,replaceAllObjects:Yt,replaceAllSynonyms:$t,searchRules:sn,getRule:Lt,deleteRule:Ct,saveRule:en,saveRules:rn,replaceAllRules:Zt,browseRules:Dt,clearRules:Rt}})}},initAnalytics:function(){return function(t){return function(t){var n=t.region||"us",r=s(p.WithinHeaders,t.appId,t.apiKey),u=T(e(e({hosts:[{url:"analytics.".concat(n,".algolia.com")}]},t),{},{headers:e(e(e({},r.headers()),{"content-type":"application/json"}),t.headers),queryParameters:e(e({},r.queryParameters()),t.queryParameters)}));return h({appId:t.appId,transporter:u},t.methods)}(e(e(e({},o),t),{},{methods:{addABTest:U,getABTest:z,getABTests:C,stopABTest:F,deleteABTest:J}}))}},initPersonalization:d,initRecommendation:function(){return function(t){return f.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),d()(t)}}}}))}return bn.version="4.13.1",bn}))}));export{e as a};
|
7
|
-
//# sourceMappingURL=p-
|
5
|
+
/*! algoliasearch.umd.js | 4.14.3 | © Algolia, inc. | https://github.com/algolia/algoliasearch-client-javascript */
|
6
|
+
!function(n,e){t.exports=e()}(n,(function(){function t(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}function n(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,r)}return e}function e(e){for(var r=1;r<arguments.length;r++){var u=null!=arguments[r]?arguments[r]:{};r%2?n(Object(u),!0).forEach((function(n){t(e,n,u[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(u)):n(Object(u)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(u,t))}))}return e}function r(t,n){if(null==t)return{};var e,r,u=function(t,n){if(null==t)return{};var e,r,u={},o=Object.keys(t);for(r=0;r<o.length;r++)e=o[r],n.indexOf(e)>=0||(u[e]=t[e]);return u}(t,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r<o.length;r++)e=o[r],n.indexOf(e)>=0||Object.prototype.propertyIsEnumerable.call(t,e)&&(u[e]=t[e])}return u}function u(t,n){return function(t){if(Array.isArray(t))return t}(t)||function(t,n){if(!(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)))return;var e=[],r=!0,u=!1,o=void 0;try{for(var i,c=t[Symbol.iterator]();!(r=(i=c.next()).done)&&(e.push(i.value),!n||e.length!==n);r=!0);}catch(t){u=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(u)throw o}}return e}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function o(t){return function(t){if(Array.isArray(t)){for(var n=0,e=new Array(t.length);n<t.length;n++)e[n]=t[n];return e}}(t)||function(t){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t))return Array.from(t)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function i(t){var n,e="algoliasearch-client-js-".concat(t.key),r=function(){return void 0===n&&(n=t.localStorage||window.localStorage),n},o=function(){return JSON.parse(r().getItem(e)||"{}")};return{get:function(t,n){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){var e=JSON.stringify(t),r=o()[e];return Promise.all([r||n(),void 0!==r])})).then((function(t){var n=u(t,2),r=n[0],o=n[1];return Promise.all([r,o||e.miss(r)])})).then((function(t){return u(t,1)[0]}))},set:function(t,n){return Promise.resolve().then((function(){var u=o();return u[JSON.stringify(t)]=n,r().setItem(e,JSON.stringify(u)),n}))},delete:function(t){return Promise.resolve().then((function(){var n=o();delete n[JSON.stringify(t)],r().setItem(e,JSON.stringify(n))}))},clear:function(){return Promise.resolve().then((function(){r().removeItem(e)}))}}}function c(t){var n=o(t.caches),e=n.shift();return void 0===e?{get:function(t,n){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},r=n();return r.then((function(t){return Promise.all([t,e.miss(t)])})).then((function(t){return u(t,1)[0]}))},set:function(t,n){return Promise.resolve(n)},delete:function(t){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(t,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return e.get(t,r,u).catch((function(){return c({caches:n}).get(t,r,u)}))},set:function(t,r){return e.set(t,r).catch((function(){return c({caches:n}).set(t,r)}))},delete:function(t){return e.delete(t).catch((function(){return c({caches:n}).delete(t)}))},clear:function(){return e.clear().catch((function(){return c({caches:n}).clear()}))}}}function a(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},n={};return{get:function(e,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},o=JSON.stringify(e);if(o in n)return Promise.resolve(t.serializable?JSON.parse(n[o]):n[o]);var i=r(),c=u&&u.miss||function(){return Promise.resolve()};return i.then((function(t){return c(t)})).then((function(){return i}))},set:function(e,r){return n[JSON.stringify(e)]=t.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(t){return delete n[JSON.stringify(t)],Promise.resolve()},clear:function(){return n={},Promise.resolve()}}}function s(t,n,e){var r={"x-algolia-api-key":e,"x-algolia-application-id":n};return{headers:function(){return t===p.WithinHeaders?r:{}},queryParameters:function(){return t===p.WithinQueryParameters?r:{}}}}function f(t){var n=0;return t((function e(){return n++,new Promise((function(r){setTimeout((function(){r(t(e))}),Math.min(100*n,1e3))}))}))}function d(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(t,n){return Promise.resolve()};return Object.assign(t,{wait:function(e){return d(t.then((function(t){return Promise.all([n(t,e),t])})).then((function(t){return t[1]})))}})}function l(t){for(var n=t.length-1;n>0;n--){var e=Math.floor(Math.random()*(n+1)),r=t[n];t[n]=t[e],t[e]=r}return t}function h(t,n){return n?(Object.keys(n).forEach((function(e){t[e]=n[e](t)})),t):t}function m(t){for(var n=arguments.length,e=new Array(n>1?n-1:0),r=1;r<n;r++)e[r-1]=arguments[r];var u=0;return t.replace(/%s/g,(function(){return encodeURIComponent(e[u++])}))}var p={WithinQueryParameters:0,WithinHeaders:1};function y(t,n){var e=t||{},r=e.data||{};return Object.keys(e).forEach((function(t){-1===["timeout","headers","queryParameters","data","cacheable"].indexOf(t)&&(r[t]=e[t])})),{data:Object.entries(r).length>0?r:void 0,timeout:e.timeout||n,headers:e.headers||{},queryParameters:e.queryParameters||{},cacheable:e.cacheable}}var v={Read:1,Write:2,Any:3},b=1,g=2,j=3;function O(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:b;return e(e({},t),{},{status:n,lastUpdate:Date.now()})}function P(t){return"string"==typeof t?{protocol:"https",url:t,accept:v.Any}:{protocol:t.protocol||"https",url:t.url,accept:t.accept||v.Any}}var x="DELETE",S="GET",I="POST",q="PUT";function w(t,n){return Promise.all(n.map((function(n){return t.get(n,(function(){return Promise.resolve(O(n))}))}))).then((function(t){var e=t.filter((function(t){return function(t){return t.status===b||Date.now()-t.lastUpdate>12e4}(t)})),r=t.filter((function(t){return function(t){return t.status===j&&Date.now()-t.lastUpdate<=12e4}(t)})),u=[].concat(o(e),o(r));return{getTimeout:function(t,n){return(0===r.length&&0===t?1:r.length+3+t)*n},statelessHosts:u.length>0?u.map((function(t){return P(t)})):n}}))}function D(t,n,r,u){var i=[],c=function(t,n){if(t.method===S||void 0===t.data&&void 0===n.data)return;var r=Array.isArray(t.data)?t.data:e(e({},t.data),n.data);return JSON.stringify(r)}(r,u),a=function(t,n){var r=e(e({},t.headers),n.headers),u={};return Object.keys(r).forEach((function(t){var n=r[t];u[t.toLowerCase()]=n})),u}(t,u),s=r.method,f=r.method!==S?{}:e(e({},r.data),u.data),d=e(e(e({"x-algolia-agent":t.userAgent.value},t.queryParameters),f),u.queryParameters),l=0,h=function n(e,o){var f=e.pop();if(void 0===f)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:k(i)};var h={data:c,headers:a,method:s,url:A(f,r.path,d),connectTimeout:o(l,t.timeouts.connect),responseTimeout:o(l,u.timeout)},m=function(t){var n={request:h,response:t,host:f,triesLeft:e.length};return i.push(n),n},p={onSuccess:function(t){return function(t){try{return JSON.parse(t.content)}catch(n){throw function(t,n){return{name:"DeserializationError",message:t,response:n}}(n.message,t)}}(t)},onRetry:function(r){var u=m(r);return r.isTimedOut&&l++,Promise.all([t.logger.info("Retryable failure",N(u)),t.hostsCache.set(f,O(f,r.isTimedOut?j:g))]).then((function(){return n(e,o)}))},onFail:function(t){throw m(t),function(t,n){var e=t.content,r=t.status,u=e;try{u=JSON.parse(e).message}catch(t){}return function(t,n,e){return{name:"ApiError",message:t,status:n,transporterStackTrace:e}}(u,r,n)}(t,k(i))}};return t.requester.send(h).then((function(t){return function(t,n){return function(t){var n=t.status;return t.isTimedOut||function(t){var n=t.isTimedOut,e=t.status;return!n&&0==~~e}(t)||2!=~~(n/100)&&4!=~~(n/100)}(t)?n.onRetry(t):2==~~(t.status/100)?n.onSuccess(t):n.onFail(t)}(t,p)}))};return w(t.hostsCache,n).then((function(t){return h(o(t.statelessHosts).reverse(),t.getTimeout)}))}function T(t){var n=t.hostsCache,e=t.logger,r=t.requester,o=t.requestsCache,i=t.responsesCache,c=t.timeouts,a=t.userAgent,s=t.hosts,f=t.queryParameters,d={hostsCache:n,logger:e,requester:r,requestsCache:o,responsesCache:i,timeouts:c,userAgent:a,headers:t.headers,queryParameters:f,hosts:s.map((function(t){return P(t)})),read:function(t,n){var e=y(n,d.timeouts.read),r=function(){return D(d,d.hosts.filter((function(t){return 0!=(t.accept&v.Read)})),t,e)};if(!0!==(void 0!==e.cacheable?e.cacheable:t.cacheable))return r();var o={request:t,mappedRequestOptions:e,transporter:{queryParameters:d.queryParameters,headers:d.headers}};return d.responsesCache.get(o,(function(){return d.requestsCache.get(o,(function(){return d.requestsCache.set(o,r()).then((function(t){return Promise.all([d.requestsCache.delete(o),t])}),(function(t){return Promise.all([d.requestsCache.delete(o),Promise.reject(t)])})).then((function(t){var n=u(t,2);return n[1]}))}))}),{miss:function(t){return d.responsesCache.set(o,t)}})},write:function(t,n){return D(d,d.hosts.filter((function(t){return 0!=(t.accept&v.Write)})),t,y(n,d.timeouts.write))}};return d}function E(t){var n={value:"Algolia for JavaScript (".concat(t,")"),add:function(t){var e="; ".concat(t.segment).concat(void 0!==t.version?" (".concat(t.version,")"):"");return-1===n.value.indexOf(e)&&(n.value="".concat(n.value).concat(e)),n}};return n}function A(t,n,e){var r=R(e),u="".concat(t.protocol,"://").concat(t.url,"/").concat("/"===n.charAt(0)?n.substr(1):n);return r.length&&(u+="?".concat(r)),u}function R(t){return Object.keys(t).map((function(n){return m("%s=%s",n,(e=t[n],"[object Object]"===Object.prototype.toString.call(e)||"[object Array]"===Object.prototype.toString.call(e)?JSON.stringify(t[n]):t[n]));var e})).join("&")}function k(t){return t.map((function(t){return N(t)}))}function N(t){var n=t.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return e(e({},t),{},{request:e(e({},t.request),{},{headers:e(e({},t.request.headers),n)})})}var U=function(t){return function(n,e){return t.transporter.write({method:I,path:"2/abtests",data:n},e)}},J=function(t){return function(n,e){return t.transporter.write({method:x,path:m("2/abtests/%s",n)},e)}},z=function(t){return function(n,e){return t.transporter.read({method:S,path:m("2/abtests/%s",n)},e)}},C=function(t){return function(n){return t.transporter.read({method:S,path:"2/abtests"},n)}},F=function(t){return function(n,e){return t.transporter.write({method:I,path:m("2/abtests/%s/stop",n)},e)}},B=function(t){return function(n){return t.transporter.read({method:S,path:"1/strategies/personalization"},n)}},M=function(t){return function(n,e){return t.transporter.write({method:I,path:"1/strategies/personalization",data:n},e)}};function K(t){return function n(e){return t.request(e).then((function(r){if(void 0!==t.batch&&t.batch(r.hits),!t.shouldStop(r))return r.cursor?n({cursor:r.cursor}):n({page:(e.page||0)+1})}))}({})}var Q=function(t){return function(n,u){var o=u||{},i=o.queryParameters,c=r(o,["queryParameters"]),a=e({acl:n},void 0!==i?{queryParameters:i}:{});return d(t.transporter.write({method:I,path:"1/keys",data:a},c),(function(n,e){return f((function(r){return tt(t)(n.key,e).catch((function(t){if(404!==t.status)throw t;return r()}))}))}))}},G=function(t){return function(n,e,r){var u=y(r);return u.queryParameters["X-Algolia-User-ID"]=n,t.transporter.write({method:I,path:"1/clusters/mapping",data:{cluster:e}},u)}},H=function(t){return function(n,e,r){return t.transporter.write({method:I,path:"1/clusters/mapping/batch",data:{users:n,cluster:e}},r)}},L=function(t){return function(n,e){return d(t.transporter.write({method:I,path:m("/1/dictionaries/%s/batch",n),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},e),(function(n,e){return It(t)(n.taskID,e)}))}},V=function(t){return function(n,e,r){return d(t.transporter.write({method:I,path:m("1/indexes/%s/operation",n),data:{operation:"copy",destination:e}},r),(function(e,r){return ct(t)(n,{methods:{waitTask:ln}}).waitTask(e.taskID,r)}))}},W=function(t){return function(n,r,u){return V(t)(n,r,e(e({},u),{},{scope:[mn.Rules]}))}},_=function(t){return function(n,r,u){return V(t)(n,r,e(e({},u),{},{scope:[mn.Settings]}))}},X=function(t){return function(n,r,u){return V(t)(n,r,e(e({},u),{},{scope:[mn.Synonyms]}))}},Y=function(t){return function(n,e){return n.method===S?t.transporter.read(n,e):t.transporter.write(n,e)}},Z=function(t){return function(n,e){return d(t.transporter.write({method:x,path:m("1/keys/%s",n)},e),(function(e,r){return f((function(e){return tt(t)(n,r).then(e).catch((function(t){if(404!==t.status)throw t}))}))}))}},$=function(t){return function(n,e,r){var u=e.map((function(t){return{action:"deleteEntry",body:{objectID:t}}}));return d(t.transporter.write({method:I,path:m("/1/dictionaries/%s/batch",n),data:{clearExistingDictionaryEntries:!1,requests:u}},r),(function(n,e){return It(t)(n.taskID,e)}))}},tt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/keys/%s",n)},e)}},nt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/task/%s",n.toString())},e)}},et=function(t){return function(n){return t.transporter.read({method:S,path:"/1/dictionaries/*/settings"},n)}},rt=function(t){return function(n){return t.transporter.read({method:S,path:"1/logs"},n)}},ut=function(t){return function(n){return t.transporter.read({method:S,path:"1/clusters/mapping/top"},n)}},ot=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/clusters/mapping/%s",n)},e)}},it=function(t){return function(n){var e=n||{},u=e.retrieveMappings,o=r(e,["retrieveMappings"]);return!0===u&&(o.getClusters=!0),t.transporter.read({method:S,path:"1/clusters/mapping/pending"},o)}},ct=function(t){return function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r={transporter:t.transporter,appId:t.appId,indexName:n};return h(r,e.methods)}},at=function(t){return function(n){return t.transporter.read({method:S,path:"1/keys"},n)}},st=function(t){return function(n){return t.transporter.read({method:S,path:"1/clusters"},n)}},ft=function(t){return function(n){return t.transporter.read({method:S,path:"1/indexes"},n)}},dt=function(t){return function(n){return t.transporter.read({method:S,path:"1/clusters/mapping"},n)}},lt=function(t){return function(n,e,r){return d(t.transporter.write({method:I,path:m("1/indexes/%s/operation",n),data:{operation:"move",destination:e}},r),(function(e,r){return ct(t)(n,{methods:{waitTask:ln}}).waitTask(e.taskID,r)}))}},ht=function(t){return function(n,e){return d(t.transporter.write({method:I,path:"1/indexes/*/batch",data:{requests:n}},e),(function(n,e){return Promise.all(Object.keys(n.taskID).map((function(r){return ct(t)(r,{methods:{waitTask:ln}}).waitTask(n.taskID[r],e)})))}))}},mt=function(t){return function(n,e){return t.transporter.read({method:I,path:"1/indexes/*/objects",data:{requests:n}},e)}},pt=function(t){return function(n,r){var u=n.map((function(t){return e(e({},t),{},{params:R(t.params||{})})}));return t.transporter.read({method:I,path:"1/indexes/*/queries",data:{requests:u},cacheable:!0},r)}},yt=function(t){return function(n,u){return Promise.all(n.map((function(n){var o=n.params,i=o.facetName,c=o.facetQuery,a=r(o,["facetName","facetQuery"]);return ct(t)(n.indexName,{methods:{searchForFacetValues:an}}).searchForFacetValues(i,c,e(e({},u),a))})))}},vt=function(t){return function(n,e){var r=y(e);return r.queryParameters["X-Algolia-User-ID"]=n,t.transporter.write({method:x,path:"1/clusters/mapping"},r)}},bt=function(t){return function(n,e,r){var u=e.map((function(t){return{action:"addEntry",body:t}}));return d(t.transporter.write({method:I,path:m("/1/dictionaries/%s/batch",n),data:{clearExistingDictionaryEntries:!0,requests:u}},r),(function(n,e){return It(t)(n.taskID,e)}))}},gt=function(t){return function(n,e){return d(t.transporter.write({method:I,path:m("1/keys/%s/restore",n)},e),(function(e,r){return f((function(e){return tt(t)(n,r).catch((function(t){if(404!==t.status)throw t;return e()}))}))}))}},jt=function(t){return function(n,e,r){var u=e.map((function(t){return{action:"addEntry",body:t}}));return d(t.transporter.write({method:I,path:m("/1/dictionaries/%s/batch",n),data:{clearExistingDictionaryEntries:!1,requests:u}},r),(function(n,e){return It(t)(n.taskID,e)}))}},Ot=function(t){return function(n,e,r){return t.transporter.read({method:I,path:m("/1/dictionaries/%s/search",n),data:{query:e},cacheable:!0},r)}},Pt=function(t){return function(n,e){return t.transporter.read({method:I,path:"1/clusters/mapping/search",data:{query:n}},e)}},xt=function(t){return function(n,e){return d(t.transporter.write({method:q,path:"/1/dictionaries/*/settings",data:n},e),(function(n,e){return It(t)(n.taskID,e)}))}},St=function(t){return function(n,e){var u=Object.assign({},e),o=e||{},i=o.queryParameters,c=r(o,["queryParameters"]),a=i?{queryParameters:i}:{},s=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"];return d(t.transporter.write({method:q,path:m("1/keys/%s",n),data:a},c),(function(e,r){return f((function(e){return tt(t)(n,r).then((function(t){return function(t){return Object.keys(u).filter((function(t){return-1!==s.indexOf(t)})).every((function(n){return t[n]===u[n]}))}(t)?Promise.resolve():e()}))}))}))}},It=function(t){return function(n,e){return f((function(r){return nt(t)(n,e).then((function(t){return"published"!==t.status?r():void 0}))}))}},qt=function(t){return function(n,e){return d(t.transporter.write({method:I,path:m("1/indexes/%s/batch",t.indexName),data:{requests:n}},e),(function(n,e){return ln(t)(n.taskID,e)}))}},wt=function(t){return function(n){return K(e(e({shouldStop:function(t){return void 0===t.cursor}},n),{},{request:function(e){return t.transporter.read({method:I,path:m("1/indexes/%s/browse",t.indexName),data:e},n)}}))}},Dt=function(t){return function(n){var r=e({hitsPerPage:1e3},n);return K(e(e({shouldStop:function(t){return t.hits.length<r.hitsPerPage}},r),{},{request:function(n){return sn(t)("",e(e({},r),n)).then((function(t){return e(e({},t),{},{hits:t.hits.map((function(t){return delete t._highlightResult,t}))})}))}}))}},Tt=function(t){return function(n){var r=e({hitsPerPage:1e3},n);return K(e(e({shouldStop:function(t){return t.hits.length<r.hitsPerPage}},r),{},{request:function(n){return fn(t)("",e(e({},r),n)).then((function(t){return e(e({},t),{},{hits:t.hits.map((function(t){return delete t._highlightResult,t}))})}))}}))}},Et=function(t){return function(n,e,u){var o=u||{},i=o.batchSize,c=r(o,["batchSize"]),a={taskIDs:[],objectIDs:[]};return d(function r(){var u,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,s=[];for(u=o;u<n.length&&(s.push(n[u]),s.length!==(i||1e3));u++);return 0===s.length?Promise.resolve(a):qt(t)(s.map((function(t){return{action:e,body:t}})),c).then((function(t){return a.objectIDs=a.objectIDs.concat(t.objectIDs),a.taskIDs.push(t.taskID),u++,r(u)}))}(),(function(n,e){return Promise.all(n.taskIDs.map((function(n){return ln(t)(n,e)})))}))}},At=function(t){return function(n){return d(t.transporter.write({method:I,path:m("1/indexes/%s/clear",t.indexName)},n),(function(n,e){return ln(t)(n.taskID,e)}))}},Rt=function(t){return function(n){var e=n||{},u=e.forwardToReplicas,o=y(r(e,["forwardToReplicas"]));return u&&(o.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:I,path:m("1/indexes/%s/rules/clear",t.indexName)},o),(function(n,e){return ln(t)(n.taskID,e)}))}},kt=function(t){return function(n){var e=n||{},u=e.forwardToReplicas,o=y(r(e,["forwardToReplicas"]));return u&&(o.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:I,path:m("1/indexes/%s/synonyms/clear",t.indexName)},o),(function(n,e){return ln(t)(n.taskID,e)}))}},Nt=function(t){return function(n,e){return d(t.transporter.write({method:I,path:m("1/indexes/%s/deleteByQuery",t.indexName),data:n},e),(function(n,e){return ln(t)(n.taskID,e)}))}},Ut=function(t){return function(n){return d(t.transporter.write({method:x,path:m("1/indexes/%s",t.indexName)},n),(function(n,e){return ln(t)(n.taskID,e)}))}},Jt=function(t){return function(n,e){return d(zt(t)([n],e).then((function(t){return{taskID:t.taskIDs[0]}})),(function(n,e){return ln(t)(n.taskID,e)}))}},zt=function(t){return function(n,e){var r=n.map((function(t){return{objectID:t}}));return Et(t)(r,hn.DeleteObject,e)}},Ct=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=y(r(u,["forwardToReplicas"]));return o&&(i.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:x,path:m("1/indexes/%s/rules/%s",t.indexName,n)},i),(function(n,e){return ln(t)(n.taskID,e)}))}},Ft=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=y(r(u,["forwardToReplicas"]));return o&&(i.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:x,path:m("1/indexes/%s/synonyms/%s",t.indexName,n)},i),(function(n,e){return ln(t)(n.taskID,e)}))}},Bt=function(t){return function(n){return Vt(t)(n).then((function(){return!0})).catch((function(t){if(404!==t.status)throw t;return!1}))}},Mt=function(t){return function(n,e,r){return t.transporter.read({method:I,path:m("1/answers/%s/prediction",t.indexName),data:{query:n,queryLanguages:e},cacheable:!0},r)}},Kt=function(t){return function(n,o){var i=o||{},c=i.query,a=i.paginate,s=r(i,["query","paginate"]),f=0;return function r(){return cn(t)(c||"",e(e({},s),{},{page:f})).then((function(t){for(var e=0,o=Object.entries(t.hits);e<o.length;e++){var i=u(o[e],2),c=i[0],s=i[1];if(n(s))return{object:s,position:parseInt(c,10),page:f}}if(f++,!1===a||f>=t.nbPages)throw{name:"ObjectNotFoundError",message:"Object not found."};return r()}))}()}},Qt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/indexes/%s/%s",t.indexName,n)},e)}},Gt=function(){return function(t,n){for(var e=0,r=Object.entries(t.hits);e<r.length;e++){var o=u(r[e],2),i=o[0];if(o[1].objectID===n)return parseInt(i,10)}return-1}},Ht=function(t){return function(n,u){var o=u||{},i=o.attributesToRetrieve,c=r(o,["attributesToRetrieve"]),a=n.map((function(n){return e({indexName:t.indexName,objectID:n},i?{attributesToRetrieve:i}:{})}));return t.transporter.read({method:I,path:"1/indexes/*/objects",data:{requests:a}},c)}},Lt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/indexes/%s/rules/%s",t.indexName,n)},e)}},Vt=function(t){return function(n){return t.transporter.read({method:S,path:m("1/indexes/%s/settings",t.indexName),data:{getVersion:2}},n)}},Wt=function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/indexes/%s/synonyms/%s",t.indexName,n)},e)}},_t=function(t){return function(n,e){return d(Xt(t)([n],e).then((function(t){return{objectID:t.objectIDs[0],taskID:t.taskIDs[0]}})),(function(n,e){return ln(t)(n.taskID,e)}))}},Xt=function(t){return function(n,e){var u=e||{},o=u.createIfNotExists,i=r(u,["createIfNotExists"]),c=o?hn.PartialUpdateObject:hn.PartialUpdateObjectNoCreate;return Et(t)(n,c,i)}},Yt=function(t){return function(n,i){var c=i||{},a=c.safe,s=c.autoGenerateObjectIDIfNotExist,f=c.batchSize,l=r(c,["safe","autoGenerateObjectIDIfNotExist","batchSize"]),h=function(n,e,r,u){return d(t.transporter.write({method:I,path:m("1/indexes/%s/operation",n),data:{operation:r,destination:e}},u),(function(n,e){return ln(t)(n.taskID,e)}))},p=Math.random().toString(36).substring(7),y="".concat(t.indexName,"_tmp_").concat(p),v=nn({appId:t.appId,transporter:t.transporter,indexName:y}),b=[],g=h(t.indexName,y,"copy",e(e({},l),{},{scope:["settings","synonyms","rules"]}));return b.push(g),d((a?g.wait(l):g).then((function(){var t=v(n,e(e({},l),{},{autoGenerateObjectIDIfNotExist:s,batchSize:f}));return b.push(t),a?t.wait(l):t})).then((function(){var n=h(y,t.indexName,"move",l);return b.push(n),a?n.wait(l):n})).then((function(){return Promise.all(b)})).then((function(t){var n=u(t,3),e=n[0],r=n[1],i=n[2];return{objectIDs:r.objectIDs,taskIDs:[e.taskID].concat(o(r.taskIDs),[i.taskID])}})),(function(t,n){return Promise.all(b.map((function(t){return t.wait(n)})))}))}},Zt=function(t){return function(n,r){return rn(t)(n,e(e({},r),{},{clearExistingRules:!0}))}},$t=function(t){return function(n,r){return on(t)(n,e(e({},r),{},{clearExistingSynonyms:!0}))}},tn=function(t){return function(n,e){return d(nn(t)([n],e).then((function(t){return{objectID:t.objectIDs[0],taskID:t.taskIDs[0]}})),(function(n,e){return ln(t)(n.taskID,e)}))}},nn=function(t){return function(n,e){var u=e||{},o=u.autoGenerateObjectIDIfNotExist,i=r(u,["autoGenerateObjectIDIfNotExist"]),c=o?hn.AddObject:hn.UpdateObject;if(c===hn.UpdateObject){var a=!0,s=!1,f=void 0;try{for(var l,h=n[Symbol.iterator]();!(a=(l=h.next()).done);a=!0){if(void 0===l.value.objectID)return d(Promise.reject({name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}))}}catch(t){s=!0,f=t}finally{try{a||null==h.return||h.return()}finally{if(s)throw f}}}return Et(t)(n,c,i)}},en=function(t){return function(n,e){return rn(t)([n],e)}},rn=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=u.clearExistingRules,c=y(r(u,["forwardToReplicas","clearExistingRules"]));return o&&(c.queryParameters.forwardToReplicas=1),i&&(c.queryParameters.clearExistingRules=1),d(t.transporter.write({method:I,path:m("1/indexes/%s/rules/batch",t.indexName),data:n},c),(function(n,e){return ln(t)(n.taskID,e)}))}},un=function(t){return function(n,e){return on(t)([n],e)}},on=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=u.clearExistingSynonyms,c=u.replaceExistingSynonyms,a=y(r(u,["forwardToReplicas","clearExistingSynonyms","replaceExistingSynonyms"]));return o&&(a.queryParameters.forwardToReplicas=1),(c||i)&&(a.queryParameters.replaceExistingSynonyms=1),d(t.transporter.write({method:I,path:m("1/indexes/%s/synonyms/batch",t.indexName),data:n},a),(function(n,e){return ln(t)(n.taskID,e)}))}},cn=function(t){return function(n,e){return t.transporter.read({method:I,path:m("1/indexes/%s/query",t.indexName),data:{query:n},cacheable:!0},e)}},an=function(t){return function(n,e,r){return t.transporter.read({method:I,path:m("1/indexes/%s/facets/%s/query",t.indexName,n),data:{facetQuery:e},cacheable:!0},r)}},sn=function(t){return function(n,e){return t.transporter.read({method:I,path:m("1/indexes/%s/rules/search",t.indexName),data:{query:n}},e)}},fn=function(t){return function(n,e){return t.transporter.read({method:I,path:m("1/indexes/%s/synonyms/search",t.indexName),data:{query:n}},e)}},dn=function(t){return function(n,e){var u=e||{},o=u.forwardToReplicas,i=y(r(u,["forwardToReplicas"]));return o&&(i.queryParameters.forwardToReplicas=1),d(t.transporter.write({method:q,path:m("1/indexes/%s/settings",t.indexName),data:n},i),(function(n,e){return ln(t)(n.taskID,e)}))}},ln=function(t){return function(n,e){return f((function(r){return function(t){return function(n,e){return t.transporter.read({method:S,path:m("1/indexes/%s/task/%s",t.indexName,n.toString())},e)}}(t)(n,e).then((function(t){return"published"!==t.status?r():void 0}))}))}},hn={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},mn={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},pn=1,yn=2,vn=3;function bn(t,n,r){var u,o={appId:t,apiKey:n,timeouts:{connect:1,read:2,write:30},requester:{send:function(t){return new Promise((function(n){var e=new XMLHttpRequest;e.open(t.method,t.url,!0),Object.keys(t.headers).forEach((function(n){return e.setRequestHeader(n,t.headers[n])}));var r,u=function(t,r){return setTimeout((function(){e.abort(),n({status:0,content:r,isTimedOut:!0})}),1e3*t)},o=u(t.connectTimeout,"Connection timeout");e.onreadystatechange=function(){e.readyState>e.OPENED&&void 0===r&&(clearTimeout(o),r=u(t.responseTimeout,"Socket timeout"))},e.onerror=function(){0===e.status&&(clearTimeout(o),clearTimeout(r),n({content:e.responseText||"Network request failed",status:e.status,isTimedOut:!1}))},e.onload=function(){clearTimeout(o),clearTimeout(r),n({content:e.responseText,status:e.status,isTimedOut:!1})},e.send(t.data)}))}},logger:(u=vn,{debug:function(t,n){return pn>=u&&console.debug(t,n),Promise.resolve()},info:function(t,n){return yn>=u&&console.info(t,n),Promise.resolve()},error:function(t,n){return console.error(t,n),Promise.resolve()}}),responsesCache:a(),requestsCache:a({serializable:!1}),hostsCache:c({caches:[i({key:"".concat("4.14.3","-").concat(t)}),a()]}),userAgent:E("4.14.3").add({segment:"Browser"})},f=e(e({},o),r),d=function(){return function(t){return function(t){var n=t.region||"us",r=s(p.WithinHeaders,t.appId,t.apiKey),u=T(e(e({hosts:[{url:"personalization.".concat(n,".algolia.com")}]},t),{},{headers:e(e(e({},r.headers()),{"content-type":"application/json"}),t.headers),queryParameters:e(e({},r.queryParameters()),t.queryParameters)}));return h({appId:t.appId,transporter:u},t.methods)}(e(e(e({},o),t),{},{methods:{getPersonalizationStrategy:B,setPersonalizationStrategy:M}}))}};return function(t){var n=t.appId,r=s(void 0!==t.authMode?t.authMode:p.WithinHeaders,n,t.apiKey),u=T(e(e({hosts:[{url:"".concat(n,"-dsn.algolia.net"),accept:v.Read},{url:"".concat(n,".algolia.net"),accept:v.Write}].concat(l([{url:"".concat(n,"-1.algolianet.com")},{url:"".concat(n,"-2.algolianet.com")},{url:"".concat(n,"-3.algolianet.com")}]))},t),{},{headers:e(e(e({},r.headers()),{"content-type":"application/x-www-form-urlencoded"}),t.headers),queryParameters:e(e({},r.queryParameters()),t.queryParameters)}));return h({transporter:u,appId:n,addAlgoliaAgent:function(t,n){u.userAgent.add({segment:t,version:n})},clearCache:function(){return Promise.all([u.requestsCache.clear(),u.responsesCache.clear()]).then((function(){}))}},t.methods)}(e(e({},f),{},{methods:{search:pt,searchForFacetValues:yt,multipleBatch:ht,multipleGetObjects:mt,multipleQueries:pt,copyIndex:V,copySettings:_,copySynonyms:X,copyRules:W,moveIndex:lt,listIndices:ft,getLogs:rt,listClusters:st,multipleSearchForFacetValues:yt,getApiKey:tt,addApiKey:Q,listApiKeys:at,updateApiKey:St,deleteApiKey:Z,restoreApiKey:gt,assignUserID:G,assignUserIDs:H,getUserID:ot,searchUserIDs:Pt,listUserIDs:dt,getTopUserIDs:ut,removeUserID:vt,hasPendingMappings:it,clearDictionaryEntries:L,deleteDictionaryEntries:$,getDictionarySettings:et,getAppTask:nt,replaceDictionaryEntries:bt,saveDictionaryEntries:jt,searchDictionaryEntries:Ot,setDictionarySettings:xt,waitAppTask:It,customRequest:Y,initIndex:function(t){return function(n){return ct(t)(n,{methods:{batch:qt,delete:Ut,findAnswers:Mt,getObject:Qt,getObjects:Ht,saveObject:tn,saveObjects:nn,search:cn,searchForFacetValues:an,waitTask:ln,setSettings:dn,getSettings:Vt,partialUpdateObject:_t,partialUpdateObjects:Xt,deleteObject:Jt,deleteObjects:zt,deleteBy:Nt,clearObjects:At,browseObjects:wt,getObjectPosition:Gt,findObject:Kt,exists:Bt,saveSynonym:un,saveSynonyms:on,getSynonym:Wt,searchSynonyms:fn,browseSynonyms:Tt,deleteSynonym:Ft,clearSynonyms:kt,replaceAllObjects:Yt,replaceAllSynonyms:$t,searchRules:sn,getRule:Lt,deleteRule:Ct,saveRule:en,saveRules:rn,replaceAllRules:Zt,browseRules:Dt,clearRules:Rt}})}},initAnalytics:function(){return function(t){return function(t){var n=t.region||"us",r=s(p.WithinHeaders,t.appId,t.apiKey),u=T(e(e({hosts:[{url:"analytics.".concat(n,".algolia.com")}]},t),{},{headers:e(e(e({},r.headers()),{"content-type":"application/json"}),t.headers),queryParameters:e(e({},r.queryParameters()),t.queryParameters)}));return h({appId:t.appId,transporter:u},t.methods)}(e(e(e({},o),t),{},{methods:{addABTest:U,getABTest:z,getABTests:C,stopABTest:F,deleteABTest:J}}))}},initPersonalization:d,initRecommendation:function(){return function(t){return f.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),d()(t)}}}}))}return bn.version="4.14.3",bn}))}));export{e as a};
|
7
|
+
//# sourceMappingURL=p-ed6adde2.js.map
|