@nanoporetech-digital/components 5.9.6 → 5.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +60 -0
- package/dist/cjs/{algolia-data-6841724e.js → algolia-data-dba27b97.js} +2 -2
- package/dist/cjs/{algolia-data-6841724e.js.map → algolia-data-dba27b97.js.map} +1 -1
- package/dist/cjs/{algoliasearch-lite.esm.browser-992a2eff.js → algoliasearch-lite.esm.browser-b74ca774.js} +30 -5
- package/dist/cjs/algoliasearch-lite.esm.browser-b74ca774.js.map +1 -0
- package/dist/cjs/{component-store-6d7b8855.js → component-store-149aeffe.js} +2 -2
- package/dist/cjs/{component-store-6d7b8855.js.map → component-store-149aeffe.js.map} +1 -1
- package/dist/cjs/fade-dcabf3c1.js +211 -0
- package/dist/cjs/fade-dcabf3c1.js.map +1 -0
- package/dist/cjs/{form-control-8db579a2.js → form-control-f100407e.js} +2 -2
- package/dist/cjs/{form-control-8db579a2.js.map → form-control-f100407e.js.map} +1 -1
- package/dist/cjs/fullscreen-d24940a1.js +133 -0
- package/dist/cjs/fullscreen-d24940a1.js.map +1 -0
- package/dist/cjs/{global-3a6a7873.js → global-a5710651.js} +7 -7
- package/dist/cjs/{global-3a6a7873.js.map → global-a5710651.js.map} +1 -1
- package/dist/cjs/{index-1d3ebe1a.js → index-14451c95.js} +8 -10
- package/dist/cjs/index-14451c95.js.map +1 -0
- package/dist/cjs/{index-0f470227.js → index-f6f89d47.js} +2 -2
- package/dist/cjs/{index-0f470227.js.map → index-f6f89d47.js.map} +1 -1
- package/dist/cjs/lazyload-f6be7590.js +95 -0
- package/dist/cjs/lazyload-f6be7590.js.map +1 -0
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/nano-accordion.cjs.entry.js +1 -1
- package/dist/cjs/nano-alert.cjs.entry.js +3 -3
- package/dist/cjs/nano-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-algolia-filter.cjs.entry.js +3 -3
- package/dist/cjs/nano-algolia-filter.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-algolia-pagination.cjs.entry.js +2 -7
- package/dist/cjs/nano-algolia-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-algolia-results.cjs.entry.js +2 -2
- package/dist/cjs/nano-algolia-results.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-algolia.cjs.entry.js +995 -27
- 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 +10 -4
- package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-checkbox.cjs.entry.js +4 -2
- package/dist/cjs/nano-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-components.cjs.js +4 -4
- package/dist/cjs/nano-components.cjs.js.map +1 -1
- package/dist/cjs/nano-datalist_3.cjs.entry.js +4 -4
- package/dist/cjs/nano-datalist_3.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-date-input.cjs.entry.js +1 -1
- package/dist/cjs/nano-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/nano-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-demo.cjs.entry.js +1 -1
- package/dist/cjs/nano-details.cjs.entry.js +2 -2
- package/dist/cjs/nano-details.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-dialog.cjs.entry.js +5 -5
- package/dist/cjs/nano-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-drawer.cjs.entry.js +5 -5
- package/dist/cjs/nano-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/nano-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-field-validator.cjs.entry.js +7 -5
- package/dist/cjs/nano-field-validator.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-file-upload.cjs.entry.js +2 -2
- package/dist/cjs/nano-file-upload.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +4 -4
- package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-global-nav.cjs.entry.js +207 -201
- package/dist/cjs/nano-global-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-global-search-results.cjs.entry.js +9 -10
- package/dist/cjs/nano-global-search-results.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-grid-item.cjs.entry.js +1 -1
- package/dist/cjs/nano-grid_2.cjs.entry.js +2 -2
- package/dist/cjs/nano-grid_2.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-hero.cjs.entry.js +2 -2
- package/dist/cjs/nano-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-icon-button_2.cjs.entry.js +24 -4
- package/dist/cjs/nano-icon-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-icon.cjs.entry.js +4 -4
- package/dist/cjs/nano-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-input.cjs.entry.js +3 -3
- package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-menu-drawer.cjs.entry.js +2 -2
- package/dist/cjs/nano-menu-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-overflow-nav.cjs.entry.js +2 -2
- package/dist/cjs/nano-overflow-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-progress-bar.cjs.entry.js +2 -2
- package/dist/cjs/nano-progress-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-range.cjs.entry.js +2 -2
- package/dist/cjs/nano-range.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-rating.cjs.entry.js +2 -2
- package/dist/cjs/nano-rating.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-resize-observe_2.cjs.entry.js +1 -1
- package/dist/cjs/nano-slide.cjs.entry.js +1 -1
- package/dist/cjs/nano-slides-2f3dcc02.js +2975 -0
- package/dist/cjs/nano-slides-2f3dcc02.js.map +1 -0
- package/dist/cjs/nano-slides.cjs.entry.js +3 -4292
- package/dist/cjs/nano-slides.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-sortable.cjs.entry.js +1 -1
- package/dist/cjs/nano-spinner.cjs.entry.js +2 -2
- package/dist/cjs/nano-spinner.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-split-pane.cjs.entry.js +1 -1
- package/dist/cjs/nano-sticker.cjs.entry.js +3 -2
- package/dist/cjs/nano-sticker.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tab-content.cjs.entry.js +1 -1
- package/dist/cjs/nano-tab-group.cjs.entry.js +4 -4
- 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-49b4b3a6.js → nano-table-26845696.js} +5 -5
- package/dist/cjs/{nano-table-49b4b3a6.js.map → nano-table-26845696.js.map} +1 -1
- package/dist/cjs/nano-table.cjs.entry.js +3 -3
- package/dist/cjs/page-dots-ae2cefb4.js +140 -0
- package/dist/cjs/page-dots-ae2cefb4.js.map +1 -0
- package/dist/cjs/{scroll-fc1b8387.js → scroll-e8c21f80.js} +8 -4
- package/dist/cjs/scroll-e8c21f80.js.map +1 -0
- package/dist/cjs/{table.worker-da980a2f.js → table.worker-a5996745.js} +4 -4
- package/dist/cjs/table.worker-a5996745.js.map +1 -0
- package/dist/collection/collection-manifest.json +1 -2
- package/dist/collection/components/alert/alert.css +1 -2
- package/dist/collection/components/algolia/algolia-data.js.map +1 -1
- package/dist/collection/components/algolia/algolia-filter.js.map +1 -1
- package/dist/collection/components/algolia/algolia-interface.js.map +1 -1
- package/dist/collection/components/algolia/algolia-pagination.js +0 -5
- package/dist/collection/components/algolia/algolia-pagination.js.map +1 -1
- package/dist/collection/components/algolia/algolia-results.js.map +1 -1
- package/dist/collection/components/algolia/algolia.js +21 -32
- package/dist/collection/components/algolia/algolia.js.map +1 -1
- package/dist/collection/components/algolia/lib/squirrelly/browser.js +10 -0
- package/dist/collection/components/algolia/lib/squirrelly/browser.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/compile-string.js +151 -0
- package/dist/collection/components/algolia/lib/squirrelly/compile-string.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/compile.js +44 -0
- package/dist/collection/components/algolia/lib/squirrelly/compile.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/config.js +68 -0
- package/dist/collection/components/algolia/lib/squirrelly/config.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/container-utils.js +57 -0
- package/dist/collection/components/algolia/lib/squirrelly/container-utils.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/containers.js +128 -0
- package/dist/collection/components/algolia/lib/squirrelly/containers.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/err.js +39 -0
- package/dist/collection/components/algolia/lib/squirrelly/err.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/parse.js +327 -0
- package/dist/collection/components/algolia/lib/squirrelly/parse.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/render.js +62 -0
- package/dist/collection/components/algolia/lib/squirrelly/render.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/storage.js +32 -0
- package/dist/collection/components/algolia/lib/squirrelly/storage.js.map +1 -0
- package/dist/collection/components/algolia/lib/squirrelly/utils.js +102 -0
- package/dist/collection/components/algolia/lib/squirrelly/utils.js.map +1 -0
- package/dist/collection/{utils → components/algolia/lib}/template.js +1 -2
- package/dist/collection/components/algolia/lib/template.js.map +1 -0
- package/dist/collection/components/checkbox/checkbox-group.css +17 -15
- package/dist/collection/components/checkbox/checkbox-group.js +29 -2
- package/dist/collection/components/checkbox/checkbox-group.js.map +1 -1
- package/dist/collection/components/checkbox/checkbox.css +20 -22
- package/dist/collection/components/checkbox/checkbox.js +2 -0
- package/dist/collection/components/checkbox/checkbox.js.map +1 -1
- package/dist/collection/components/date-picker/date-picker.css +5 -10
- package/dist/collection/components/details/details.css +4 -4
- package/dist/collection/components/dialog/dialog.css +3 -6
- package/dist/collection/components/dialog/dialog.js +1 -1
- package/dist/collection/components/dialog/dialog.js.map +1 -1
- package/dist/collection/components/drawer/drawer.css +18 -24
- package/dist/collection/components/drawer/drawer.js +1 -1
- package/dist/collection/components/drawer/drawer.js.map +1 -1
- package/dist/collection/components/dropdown/dropdown.js +1 -1
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/field-validator/field-validator.js +5 -3
- package/dist/collection/components/field-validator/field-validator.js.map +1 -1
- package/dist/collection/components/file-upload/file-upload.css +16 -30
- package/dist/collection/components/global-nav/global-nav.js +203 -205
- package/dist/collection/components/global-nav/global-nav.js.map +1 -1
- package/dist/collection/components/global-nav/style/global-nav.css +97 -138
- package/dist/collection/components/global-search-results/global-search-results.css +85 -127
- package/dist/collection/components/global-search-results/global-search-results.js +7 -8
- package/dist/collection/components/global-search-results/global-search-results.js.map +1 -1
- package/dist/collection/components/hero/hero.css +13 -26
- package/dist/collection/components/icon/icon.css +6 -6
- package/dist/collection/components/icon/icon.js +2 -2
- package/dist/collection/components/icon/icon.js.map +1 -1
- package/dist/collection/components/img/img.css +7 -17
- package/dist/collection/components/input/input.css +15 -36
- package/dist/collection/components/menu/menu.css +1 -1
- package/dist/collection/components/menu/menu.js +1 -1
- package/dist/collection/components/menu/menu.js.map +1 -1
- package/dist/collection/components/menu-drawer/menu-drawer.css +5 -14
- package/dist/collection/components/nav-item/nav-item.css +25 -46
- package/dist/collection/components/option/option.css +3 -5
- package/dist/collection/components/overflow-nav/overflow-nav.css +16 -27
- package/dist/collection/components/progress-bar/progress-bar.css +2 -2
- package/dist/collection/components/range/range.css +17 -19
- package/dist/collection/components/rating/rating.css +2 -8
- package/dist/collection/components/select/select.css +30 -53
- package/dist/collection/components/slides/lib/js/animate.js +29 -54
- package/dist/collection/components/slides/lib/js/animate.js.map +1 -0
- package/dist/collection/components/slides/lib/js/cell.js +12 -24
- package/dist/collection/components/slides/lib/js/cell.js.map +1 -0
- package/dist/collection/components/slides/lib/js/drag.js +65 -116
- package/dist/collection/components/slides/lib/js/drag.js.map +1 -0
- package/dist/collection/components/slides/lib/js/fade.js +52 -79
- package/dist/collection/components/slides/lib/js/fade.js.map +1 -0
- package/dist/collection/components/slides/lib/js/flickity.js +118 -206
- package/dist/collection/components/slides/lib/js/flickity.js.map +1 -0
- package/dist/collection/components/slides/lib/js/fullscreen.js +21 -40
- package/dist/collection/components/slides/lib/js/fullscreen.js.map +1 -0
- package/dist/collection/components/slides/lib/js/index.js +4 -6
- package/dist/collection/components/slides/lib/js/index.js.map +1 -0
- package/dist/collection/components/slides/lib/js/lazyload.js +21 -36
- package/dist/collection/components/slides/lib/js/lazyload.js.map +1 -0
- package/dist/collection/components/slides/lib/js/page-dots.js +21 -45
- package/dist/collection/components/slides/lib/js/page-dots.js.map +1 -0
- package/dist/collection/components/slides/lib/js/player.js +12 -40
- package/dist/collection/components/slides/lib/js/player.js.map +1 -0
- package/dist/collection/components/slides/lib/js/prev-next-button.js +24 -52
- package/dist/collection/components/slides/lib/js/prev-next-button.js.map +1 -0
- package/dist/collection/components/slides/lib/js/slide.js +10 -15
- package/dist/collection/components/slides/lib/js/slide.js.map +1 -0
- package/dist/collection/components/slides/lib/js/utils/event-emitter.js +75 -0
- package/dist/collection/components/slides/lib/js/utils/event-emitter.js.map +1 -0
- package/dist/collection/components/slides/lib/js/utils/gestures.js +436 -0
- package/dist/collection/components/slides/lib/js/utils/gestures.js.map +1 -0
- package/dist/collection/components/slides/lib/js/utils/get-size.js +160 -0
- package/dist/collection/components/slides/lib/js/utils/get-size.js.map +1 -0
- package/dist/collection/components/slides/lib/js/utils/utils.js +166 -0
- package/dist/collection/components/slides/lib/js/utils/utils.js.map +1 -0
- package/dist/collection/components/slides/slides.css +18 -19
- package/dist/collection/components/slides/slides.js +31 -5
- package/dist/collection/components/slides/slides.js.map +1 -1
- package/dist/collection/components/spinner/spinner.css +1 -2
- package/dist/collection/components/sticker/sticker.js +2 -1
- package/dist/collection/components/sticker/sticker.js.map +1 -1
- package/dist/collection/components/table/table.css +29 -48
- package/dist/collection/components/tabs/tab-group.css +10 -14
- package/dist/collection/components/tabs/tab.css +8 -18
- package/dist/collection/components/tooltip/tooltip.css +34 -31
- package/dist/collection/components/tooltip/tooltip.js +23 -3
- package/dist/collection/components/tooltip/tooltip.js.map +1 -1
- package/dist/collection/global/script/global.js +6 -6
- package/dist/collection/global/script/global.js.map +1 -1
- package/dist/collection/utils/scroll.js +7 -3
- package/dist/collection/utils/scroll.js.map +1 -1
- package/dist/components/algolia-data.js.map +1 -1
- package/dist/components/algolia.js +991 -25
- package/dist/components/algolia.js.map +1 -1
- package/dist/components/algoliasearch-lite.esm.browser.js +29 -4
- package/dist/components/algoliasearch-lite.esm.browser.js.map +1 -1
- package/dist/components/date-picker.js +1 -1
- package/dist/components/date-picker.js.map +1 -1
- package/dist/components/dropdown.js +1 -1
- package/dist/components/dropdown.js.map +1 -1
- package/dist/components/fade.js +208 -0
- package/dist/components/fade.js.map +1 -0
- package/dist/components/fullscreen.js +130 -0
- package/dist/components/fullscreen.js.map +1 -0
- package/dist/components/icon.js +3 -3
- package/dist/components/icon.js.map +1 -1
- package/dist/components/img.js +1 -1
- package/dist/components/img.js.map +1 -1
- package/dist/components/index.d.ts +0 -1
- package/dist/components/index.js +6 -7
- package/dist/components/index.js.map +1 -1
- package/dist/components/input.js +1 -1
- package/dist/components/input.js.map +1 -1
- package/dist/components/lazyload.js +92 -0
- package/dist/components/lazyload.js.map +1 -0
- package/dist/components/menu.js +2 -2
- package/dist/components/menu.js.map +1 -1
- package/dist/components/nano-alert.js +1 -1
- package/dist/components/nano-alert.js.map +1 -1
- package/dist/components/nano-algolia-filter.js.map +1 -1
- package/dist/components/nano-algolia-pagination.js +0 -5
- package/dist/components/nano-algolia-pagination.js.map +1 -1
- package/dist/components/nano-algolia-results.js.map +1 -1
- package/dist/components/nano-checkbox-group.js +10 -3
- package/dist/components/nano-checkbox-group.js.map +1 -1
- package/dist/components/nano-checkbox.js +3 -1
- package/dist/components/nano-checkbox.js.map +1 -1
- package/dist/components/nano-details.js +1 -1
- package/dist/components/nano-details.js.map +1 -1
- package/dist/components/nano-dialog.js +2 -2
- package/dist/components/nano-dialog.js.map +1 -1
- package/dist/components/nano-drawer.js +2 -2
- package/dist/components/nano-drawer.js.map +1 -1
- package/dist/components/nano-field-validator.js +5 -3
- package/dist/components/nano-field-validator.js.map +1 -1
- package/dist/components/nano-file-upload.js +1 -1
- package/dist/components/nano-file-upload.js.map +1 -1
- package/dist/components/nano-global-nav.js +204 -200
- package/dist/components/nano-global-nav.js.map +1 -1
- package/dist/components/nano-global-search-results.js +8 -9
- package/dist/components/nano-global-search-results.js.map +1 -1
- package/dist/components/nano-hero.js +1 -1
- package/dist/components/nano-hero.js.map +1 -1
- package/dist/components/nano-menu-drawer.js +1 -1
- package/dist/components/nano-menu-drawer.js.map +1 -1
- package/dist/components/nano-overflow-nav.js +1 -1
- package/dist/components/nano-overflow-nav.js.map +1 -1
- package/dist/components/nano-range.js +1 -1
- 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 +760 -2090
- package/dist/components/nano-slides.js.map +1 -1
- package/dist/components/nano-tab-group.js +1 -1
- 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 +1 -1
- 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/page-dots.js +137 -0
- package/dist/components/page-dots.js.map +1 -0
- package/dist/components/progress-bar.js +1 -1
- package/dist/components/progress-bar.js.map +1 -1
- package/dist/components/scroll.js +7 -3
- package/dist/components/scroll.js.map +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/select.js.map +1 -1
- package/dist/components/spinner.js +1 -1
- package/dist/components/spinner.js.map +1 -1
- package/dist/components/sticker.js +2 -1
- package/dist/components/sticker.js.map +1 -1
- package/dist/components/table.js +1 -1
- package/dist/components/table.js.map +1 -1
- package/dist/components/tooltip.js +24 -4
- package/dist/components/tooltip.js.map +1 -1
- package/dist/esm/{algolia-data-ebf2a439.js → algolia-data-1b42827c.js} +2 -2
- package/dist/esm/{algolia-data-ebf2a439.js.map → algolia-data-1b42827c.js.map} +1 -1
- package/dist/esm/{algoliasearch-lite.esm.browser-04891fdc.js → algoliasearch-lite.esm.browser-d71a28dc.js} +30 -5
- package/dist/esm/algoliasearch-lite.esm.browser-d71a28dc.js.map +1 -0
- package/dist/esm/{component-store-54df2005.js → component-store-f7eb0a56.js} +2 -2
- package/dist/esm/{component-store-54df2005.js.map → component-store-f7eb0a56.js.map} +1 -1
- package/dist/esm/fade-1aa7a6db.js +209 -0
- package/dist/esm/fade-1aa7a6db.js.map +1 -0
- package/dist/esm/{form-control-eb06e009.js → form-control-881fa3af.js} +2 -2
- package/dist/esm/{form-control-eb06e009.js.map → form-control-881fa3af.js.map} +1 -1
- package/dist/esm/fullscreen-86fa276a.js +131 -0
- package/dist/esm/fullscreen-86fa276a.js.map +1 -0
- package/dist/esm/{global-f6e05656.js → global-be484e8c.js} +7 -7
- package/dist/esm/{global-f6e05656.js.map → global-be484e8c.js.map} +1 -1
- package/dist/esm/{index-e8891229.js → index-3003356f.js} +2 -2
- package/dist/esm/{index-e8891229.js.map → index-3003356f.js.map} +1 -1
- package/dist/esm/{index-06666022.js → index-9695db0a.js} +8 -10
- package/dist/esm/index-9695db0a.js.map +1 -0
- package/dist/esm/lazyload-994232a6.js +93 -0
- package/dist/esm/lazyload-994232a6.js.map +1 -0
- package/dist/esm/loader.js +5 -5
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/nano-accordion.entry.js +1 -1
- package/dist/esm/nano-alert.entry.js +3 -3
- package/dist/esm/nano-alert.entry.js.map +1 -1
- package/dist/esm/nano-algolia-filter.entry.js +3 -3
- package/dist/esm/nano-algolia-filter.entry.js.map +1 -1
- package/dist/esm/nano-algolia-pagination.entry.js +2 -7
- package/dist/esm/nano-algolia-pagination.entry.js.map +1 -1
- package/dist/esm/nano-algolia-results.entry.js +2 -2
- package/dist/esm/nano-algolia-results.entry.js.map +1 -1
- package/dist/esm/nano-algolia.entry.js +995 -27
- 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 +10 -4
- package/dist/esm/nano-checkbox-group.entry.js.map +1 -1
- package/dist/esm/nano-checkbox.entry.js +4 -2
- package/dist/esm/nano-checkbox.entry.js.map +1 -1
- package/dist/esm/nano-components.js +5 -5
- package/dist/esm/nano-components.js.map +1 -1
- package/dist/esm/nano-datalist_3.entry.js +4 -4
- package/dist/esm/nano-datalist_3.entry.js.map +1 -1
- package/dist/esm/nano-date-input.entry.js +1 -1
- package/dist/esm/nano-date-picker.entry.js +2 -2
- package/dist/esm/nano-date-picker.entry.js.map +1 -1
- package/dist/esm/nano-demo.entry.js +1 -1
- package/dist/esm/nano-details.entry.js +2 -2
- package/dist/esm/nano-details.entry.js.map +1 -1
- package/dist/esm/nano-dialog.entry.js +5 -5
- package/dist/esm/nano-dialog.entry.js.map +1 -1
- package/dist/esm/nano-drawer.entry.js +5 -5
- package/dist/esm/nano-drawer.entry.js.map +1 -1
- package/dist/esm/nano-dropdown.entry.js +1 -1
- package/dist/esm/nano-dropdown.entry.js.map +1 -1
- package/dist/esm/nano-field-validator.entry.js +7 -5
- package/dist/esm/nano-field-validator.entry.js.map +1 -1
- package/dist/esm/nano-file-upload.entry.js +2 -2
- package/dist/esm/nano-file-upload.entry.js.map +1 -1
- package/dist/esm/nano-global-nav-user-profile_3.entry.js +4 -4
- package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +1 -1
- package/dist/esm/nano-global-nav.entry.js +207 -201
- package/dist/esm/nano-global-nav.entry.js.map +1 -1
- package/dist/esm/nano-global-search-results.entry.js +9 -10
- package/dist/esm/nano-global-search-results.entry.js.map +1 -1
- package/dist/esm/nano-grid-item.entry.js +1 -1
- package/dist/esm/nano-grid_2.entry.js +2 -2
- package/dist/esm/nano-grid_2.entry.js.map +1 -1
- package/dist/esm/nano-hero.entry.js +2 -2
- package/dist/esm/nano-hero.entry.js.map +1 -1
- package/dist/esm/nano-icon-button_2.entry.js +24 -4
- package/dist/esm/nano-icon-button_2.entry.js.map +1 -1
- package/dist/esm/nano-icon.entry.js +4 -4
- package/dist/esm/nano-icon.entry.js.map +1 -1
- package/dist/esm/nano-input.entry.js +3 -3
- package/dist/esm/nano-input.entry.js.map +1 -1
- package/dist/esm/nano-menu-drawer.entry.js +2 -2
- package/dist/esm/nano-menu-drawer.entry.js.map +1 -1
- package/dist/esm/nano-overflow-nav.entry.js +2 -2
- package/dist/esm/nano-overflow-nav.entry.js.map +1 -1
- package/dist/esm/nano-progress-bar.entry.js +2 -2
- package/dist/esm/nano-progress-bar.entry.js.map +1 -1
- package/dist/esm/nano-range.entry.js +2 -2
- package/dist/esm/nano-range.entry.js.map +1 -1
- package/dist/esm/nano-rating.entry.js +2 -2
- package/dist/esm/nano-rating.entry.js.map +1 -1
- package/dist/esm/nano-resize-observe_2.entry.js +1 -1
- package/dist/esm/nano-slide.entry.js +1 -1
- package/dist/esm/nano-slides-9908c44d.js +2970 -0
- package/dist/esm/nano-slides-9908c44d.js.map +1 -0
- package/dist/esm/nano-slides.entry.js +2 -4295
- package/dist/esm/nano-slides.entry.js.map +1 -1
- package/dist/esm/nano-sortable.entry.js +1 -1
- package/dist/esm/nano-spinner.entry.js +2 -2
- package/dist/esm/nano-spinner.entry.js.map +1 -1
- package/dist/esm/nano-split-pane.entry.js +1 -1
- package/dist/esm/nano-sticker.entry.js +3 -2
- package/dist/esm/nano-sticker.entry.js.map +1 -1
- package/dist/esm/nano-tab-content.entry.js +1 -1
- package/dist/esm/nano-tab-group.entry.js +4 -4
- 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-673838b5.js → nano-table-55d753cb.js} +5 -5
- package/dist/esm/{nano-table-673838b5.js.map → nano-table-55d753cb.js.map} +1 -1
- package/dist/esm/nano-table.entry.js +3 -3
- package/dist/esm/page-dots-467ace2e.js +138 -0
- package/dist/esm/page-dots-467ace2e.js.map +1 -0
- package/dist/esm/{scroll-ec7ac257.js → scroll-ac332213.js} +8 -4
- package/dist/esm/scroll-ac332213.js.map +1 -0
- package/dist/esm/{table.worker-608a4868.js → table.worker-34706ecc.js} +4 -4
- package/dist/esm/table.worker-34706ecc.js.map +1 -0
- package/dist/nano-components/{p-74a7fc4f.js → active-element-75b7c8a0.js} +1 -1
- package/dist/nano-components/algolia-data-1b42827c.js +5 -0
- package/dist/nano-components/{p-a26bdb65.js.map → algolia-data-1b42827c.js.map} +1 -1
- package/dist/nano-components/algoliasearch-lite.esm.browser-d71a28dc.js +5 -0
- package/dist/nano-components/algoliasearch-lite.esm.browser-d71a28dc.js.map +1 -0
- package/dist/nano-components/component-store-f7eb0a56.js +5 -0
- package/dist/nano-components/{p-dd5687db.js.map → component-store-f7eb0a56.js.map} +1 -1
- package/dist/nano-components/{p-cecb9af1.js → date-utils-6b7a6e1f.js} +1 -1
- package/dist/nano-components/{p-cdfc507e.js → dom-8599fac1.js} +1 -1
- package/dist/nano-components/{p-842cf127.js → drag-1723a4cc.js} +1 -1
- package/dist/nano-components/{p-9bfdee71.js → events-6a805b42.js} +1 -1
- package/dist/nano-components/fade-1aa7a6db.js +5 -0
- package/dist/nano-components/fade-1aa7a6db.js.map +1 -0
- package/dist/nano-components/{p-f8f89998.js → focus-visible-8b2c14da.js} +1 -1
- package/dist/nano-components/form-control-881fa3af.js +5 -0
- package/dist/nano-components/{p-dc805ecc.js.map → form-control-881fa3af.js.map} +1 -1
- package/dist/nano-components/fullscreen-86fa276a.js +5 -0
- package/dist/nano-components/fullscreen-86fa276a.js.map +1 -0
- package/dist/nano-components/{p-d4f6ec9f.js → global-be484e8c.js} +2 -2
- package/dist/nano-components/{p-d4f6ec9f.js.map → global-be484e8c.js.map} +1 -1
- package/dist/nano-components/index-3003356f.js +5 -0
- package/dist/nano-components/{p-70747f20.js.map → index-3003356f.js.map} +1 -1
- package/dist/nano-components/{p-d6a04b3a.js → index-9695db0a.js} +2 -2
- package/dist/nano-components/{p-d6a04b3a.js.map → index-9695db0a.js.map} +1 -1
- package/dist/nano-components/{p-bb07c3d0.js → index-f626f476.js} +1 -1
- package/dist/nano-components/index.esm.js +1 -1
- package/dist/nano-components/index.esm.js.map +1 -1
- package/dist/nano-components/lazyload-994232a6.js +5 -0
- package/dist/nano-components/lazyload-994232a6.js.map +1 -0
- package/dist/nano-components/{p-2155fc2c.js → local-my-account-6662da72.js} +1 -1
- package/dist/nano-components/{p-ee045579.js → math-c02ddfda.js} +1 -1
- package/dist/nano-components/modal-bd9638c0.js +5 -0
- package/dist/nano-components/{p-2234694a.js.map → modal-bd9638c0.js.map} +1 -1
- package/dist/nano-components/nano-accordion.entry.js +5 -0
- package/dist/nano-components/{p-9f60ff14.entry.js.map → nano-accordion.entry.js.map} +1 -1
- package/dist/nano-components/nano-alert.entry.js +5 -0
- package/dist/nano-components/{p-191352c4.entry.js.map → nano-alert.entry.js.map} +1 -1
- package/dist/nano-components/nano-algolia-filter.entry.js +5 -0
- package/dist/nano-components/nano-algolia-filter.entry.js.map +1 -0
- package/dist/nano-components/nano-algolia-pagination.entry.js +5 -0
- package/dist/nano-components/nano-algolia-pagination.entry.js.map +1 -0
- package/dist/nano-components/nano-algolia-results.entry.js +5 -0
- package/dist/nano-components/nano-algolia-results.entry.js.map +1 -0
- package/dist/nano-components/nano-algolia.entry.js +5 -0
- package/dist/nano-components/nano-algolia.entry.js.map +1 -0
- package/dist/nano-components/nano-aspect-ratio.entry.js +5 -0
- package/dist/nano-components/{p-87329424.entry.js.map → nano-aspect-ratio.entry.js.map} +1 -1
- package/dist/nano-components/nano-checkbox-group.entry.js +5 -0
- package/dist/nano-components/nano-checkbox-group.entry.js.map +1 -0
- package/dist/nano-components/nano-checkbox.entry.js +5 -0
- package/dist/nano-components/nano-checkbox.entry.js.map +1 -0
- package/dist/nano-components/nano-components.css +1 -1
- package/dist/nano-components/nano-components.esm.js +1 -1
- package/dist/nano-components/nano-components.esm.js.map +1 -1
- package/dist/nano-components/nano-datalist_3.entry.js +5 -0
- package/dist/nano-components/nano-datalist_3.entry.js.map +1 -0
- package/dist/nano-components/nano-date-input.entry.js +5 -0
- package/dist/nano-components/{p-d4e44f93.entry.js.map → nano-date-input.entry.js.map} +1 -1
- package/dist/nano-components/nano-date-picker.entry.js +5 -0
- package/dist/nano-components/{p-efd3e121.entry.js.map → nano-date-picker.entry.js.map} +1 -1
- package/dist/nano-components/nano-demo.entry.js +5 -0
- package/dist/nano-components/{p-e98835e2.entry.js.map → nano-demo.entry.js.map} +1 -1
- package/dist/nano-components/nano-details.entry.js +5 -0
- package/dist/nano-components/nano-details.entry.js.map +1 -0
- package/dist/nano-components/nano-dialog.entry.js +5 -0
- package/dist/nano-components/{p-79fff4fd.entry.js.map → nano-dialog.entry.js.map} +1 -1
- package/dist/nano-components/nano-drawer.entry.js +5 -0
- package/dist/nano-components/nano-drawer.entry.js.map +1 -0
- package/dist/nano-components/nano-dropdown.entry.js +5 -0
- package/dist/nano-components/nano-dropdown.entry.js.map +1 -0
- package/dist/nano-components/nano-field-validator.entry.js +5 -0
- package/dist/nano-components/nano-field-validator.entry.js.map +1 -0
- package/dist/nano-components/nano-file-upload.entry.js +5 -0
- package/dist/nano-components/nano-file-upload.entry.js.map +1 -0
- package/dist/nano-components/nano-global-nav-user-profile_3.entry.js +5 -0
- package/dist/nano-components/nano-global-nav-user-profile_3.entry.js.map +1 -0
- package/dist/nano-components/nano-global-nav.entry.js +5 -0
- package/dist/nano-components/nano-global-nav.entry.js.map +1 -0
- package/dist/nano-components/nano-global-search-results.entry.js +5 -0
- package/dist/nano-components/nano-global-search-results.entry.js.map +1 -0
- package/dist/nano-components/nano-grid-item.entry.js +5 -0
- package/dist/nano-components/{p-9c290055.entry.js.map → nano-grid-item.entry.js.map} +1 -1
- package/dist/nano-components/nano-grid_2.entry.js +5 -0
- package/dist/nano-components/{p-7c82af28.entry.js.map → nano-grid_2.entry.js.map} +1 -1
- package/dist/nano-components/nano-hero.entry.js +5 -0
- package/dist/nano-components/{p-328ef9d3.entry.js.map → nano-hero.entry.js.map} +1 -1
- package/dist/nano-components/nano-icon-button_2.entry.js +5 -0
- package/dist/nano-components/nano-icon-button_2.entry.js.map +1 -0
- package/dist/nano-components/nano-icon.entry.js +5 -0
- package/dist/nano-components/nano-icon.entry.js.map +1 -0
- package/dist/nano-components/nano-input.entry.js +5 -0
- package/dist/nano-components/nano-input.entry.js.map +1 -0
- package/dist/nano-components/nano-menu-drawer.entry.js +5 -0
- package/dist/nano-components/nano-menu-drawer.entry.js.map +1 -0
- package/dist/nano-components/nano-overflow-nav.entry.js +5 -0
- package/dist/nano-components/nano-overflow-nav.entry.js.map +1 -0
- package/dist/nano-components/nano-progress-bar.entry.js +5 -0
- package/dist/nano-components/nano-progress-bar.entry.js.map +1 -0
- package/dist/nano-components/nano-range.entry.js +5 -0
- package/dist/nano-components/nano-range.entry.js.map +1 -0
- package/dist/nano-components/nano-rating.entry.js +5 -0
- package/dist/nano-components/nano-rating.entry.js.map +1 -0
- package/dist/nano-components/nano-resize-observe_2.entry.js +5 -0
- package/dist/nano-components/{p-e6a0675e.entry.js.map → nano-resize-observe_2.entry.js.map} +1 -1
- package/dist/nano-components/nano-slide.entry.js +5 -0
- package/dist/nano-components/{p-3d8fb8a1.entry.js.map → nano-slide.entry.js.map} +1 -1
- package/dist/nano-components/nano-slides-9908c44d.js +20 -0
- package/dist/nano-components/nano-slides-9908c44d.js.map +1 -0
- package/dist/nano-components/nano-slides.entry.js +5 -0
- package/dist/nano-components/nano-sortable.entry.js +5 -0
- package/dist/nano-components/{p-3ae362ae.entry.js.map → nano-sortable.entry.js.map} +1 -1
- package/dist/nano-components/nano-spinner.entry.js +5 -0
- package/dist/nano-components/{p-9925e504.entry.js.map → nano-spinner.entry.js.map} +1 -1
- package/dist/nano-components/nano-split-pane.entry.js +5 -0
- package/dist/nano-components/{p-6c4171fa.entry.js.map → nano-split-pane.entry.js.map} +1 -1
- package/dist/nano-components/nano-sticker.entry.js +5 -0
- package/dist/nano-components/nano-sticker.entry.js.map +1 -0
- package/dist/nano-components/nano-tab-content.entry.js +5 -0
- package/dist/nano-components/{p-3f40e370.entry.js.map → nano-tab-content.entry.js.map} +1 -1
- package/dist/nano-components/nano-tab-group.entry.js +5 -0
- package/dist/nano-components/nano-tab-group.entry.js.map +1 -0
- package/dist/nano-components/nano-tab.entry.js +5 -0
- package/dist/nano-components/{p-3cac5f6d.entry.js.map → nano-tab.entry.js.map} +1 -1
- package/dist/nano-components/nano-table-55d753cb.js +5 -0
- package/dist/nano-components/nano-table-55d753cb.js.map +1 -0
- package/dist/nano-components/nano-table.entry.js +5 -0
- package/dist/nano-components/page-dots-467ace2e.js +5 -0
- package/dist/nano-components/page-dots-467ace2e.js.map +1 -0
- package/dist/nano-components/{p-cd1fd454.js → popover-e5e7a641.js} +1 -1
- package/dist/nano-components/scroll-ac332213.js +5 -0
- package/dist/nano-components/scroll-ac332213.js.map +1 -0
- package/dist/nano-components/{p-dc565459.js → slot-8126e238.js} +1 -1
- package/dist/nano-components/{p-f88fa15c.js → tabbable-26a66a22.js} +1 -1
- package/dist/nano-components/table.worker-34706ecc.js +5 -0
- package/dist/nano-components/{p-411bb8f1.js → theme-82feb8cf.js} +1 -1
- package/dist/nano-components/{p-7bff5224.js → throttle-ac4fcefa.js} +1 -1
- package/dist/nano-components/{p-c3e8e3f9.js → transitions-fb09eb32.js} +1 -1
- package/dist/themes/nanopore.cn.css +1 -1
- package/dist/themes/nanopore.cn.css.map +1 -1
- package/dist/themes/nanopore.css +1 -1
- package/dist/themes/nanopore.css.map +1 -1
- package/dist/types/components/algolia/algolia-data.d.ts +1 -1
- package/dist/types/components/algolia/algolia-filter.d.ts +1 -1
- package/dist/types/components/algolia/algolia-interface.d.ts +8 -2
- package/dist/types/components/algolia/algolia-pagination.d.ts +1 -1
- package/dist/types/components/algolia/algolia-results.d.ts +1 -1
- package/dist/types/components/algolia/algolia.d.ts +4 -11
- package/dist/types/components/algolia/lib/squirrelly/browser.d.ts +6 -0
- package/dist/types/components/algolia/lib/squirrelly/compile-string.d.ts +5 -0
- package/dist/types/components/algolia/lib/squirrelly/compile.d.ts +3 -0
- package/dist/types/components/algolia/lib/squirrelly/config.d.ts +48 -0
- package/dist/types/components/algolia/lib/squirrelly/container-utils.d.ts +8 -0
- package/dist/types/components/algolia/lib/squirrelly/containers.d.ts +18 -0
- package/dist/types/components/algolia/lib/squirrelly/err.d.ts +6 -0
- package/dist/types/components/algolia/lib/squirrelly/parse.d.ts +23 -0
- package/dist/types/components/algolia/lib/squirrelly/render.d.ts +3 -0
- package/dist/types/components/algolia/lib/squirrelly/storage.d.ts +13 -0
- package/dist/types/components/algolia/lib/squirrelly/utils.d.ts +8 -0
- package/dist/types/components/algolia/lib/template.d.ts +2 -0
- package/dist/types/components/checkbox/checkbox-group.d.ts +5 -0
- package/dist/types/components/global-nav/global-nav.d.ts +47 -20
- package/dist/types/components/slides/lib/js/animate.d.ts +2 -0
- package/dist/types/components/slides/lib/js/cell.d.ts +1 -0
- package/dist/types/components/slides/lib/js/drag.d.ts +1 -0
- package/dist/types/components/slides/lib/js/fade.d.ts +1 -0
- package/dist/types/components/slides/lib/js/flickity.d.ts +23 -0
- package/dist/types/components/slides/lib/js/fullscreen.d.ts +1 -0
- package/dist/types/components/slides/lib/js/index.d.ts +5 -0
- package/dist/types/components/slides/lib/js/lazyload.d.ts +1 -0
- package/dist/types/components/slides/lib/js/page-dots.d.ts +1 -0
- package/dist/types/components/slides/lib/js/player.d.ts +1 -0
- package/dist/types/components/slides/lib/js/prev-next-button.d.ts +1 -0
- package/dist/types/components/slides/lib/js/slide.d.ts +1 -0
- package/dist/types/components/slides/lib/js/utils/event-emitter.d.ts +1 -0
- package/dist/types/components/slides/lib/js/utils/gestures.d.ts +26 -0
- package/dist/types/components/slides/lib/js/utils/get-size.d.ts +6 -0
- package/dist/types/components/slides/lib/js/utils/utils.d.ts +5 -0
- package/dist/types/components/slides/slides-interface.d.ts +17 -7
- package/dist/types/components/slides/slides.d.ts +5 -0
- package/dist/types/components.d.ts +12 -137
- package/dist/types/utils/scroll.d.ts +5 -1
- package/docs-json.json +37 -280
- package/docs-vscode.json +6 -63
- package/hydrate/index.js +3502 -3443
- package/package.json +5 -8
- package/dist/cjs/_commonjsHelpers-29614748.js +0 -30
- package/dist/cjs/_commonjsHelpers-29614748.js.map +0 -1
- package/dist/cjs/algoliasearch-lite.esm.browser-992a2eff.js.map +0 -1
- package/dist/cjs/index-1d3ebe1a.js.map +0 -1
- package/dist/cjs/nano-algolia-input.cjs.entry.js +0 -168
- package/dist/cjs/nano-algolia-input.cjs.entry.js.map +0 -1
- package/dist/cjs/scroll-fc1b8387.js.map +0 -1
- package/dist/cjs/table.worker-da980a2f.js.map +0 -1
- package/dist/collection/components/algolia/algolia-input.js +0 -463
- package/dist/collection/components/algolia/algolia-input.js.map +0 -1
- package/dist/collection/components/slides/lib/js/add-remove-cell.js +0 -128
- package/dist/collection/components/slides/lib/js/images-loaded.js +0 -24
- package/dist/collection/components/slides/slides-interface.js +0 -2
- package/dist/collection/components/slides/slides-interface.js.map +0 -1
- package/dist/collection/utils/template.js.map +0 -1
- package/dist/components/_commonjsHelpers.js +0 -26
- package/dist/components/_commonjsHelpers.js.map +0 -1
- package/dist/components/nano-algolia-input.d.ts +0 -11
- package/dist/components/nano-algolia-input.js +0 -195
- package/dist/components/nano-algolia-input.js.map +0 -1
- package/dist/esm/_commonjsHelpers-04a0e019.js +0 -26
- package/dist/esm/_commonjsHelpers-04a0e019.js.map +0 -1
- package/dist/esm/algoliasearch-lite.esm.browser-04891fdc.js.map +0 -1
- package/dist/esm/index-06666022.js.map +0 -1
- package/dist/esm/nano-algolia-input.entry.js +0 -164
- package/dist/esm/nano-algolia-input.entry.js.map +0 -1
- package/dist/esm/scroll-ec7ac257.js.map +0 -1
- package/dist/esm/table.worker-608a4868.js.map +0 -1
- package/dist/nano-components/p-02b727d3.entry.js +0 -5
- package/dist/nano-components/p-02b727d3.entry.js.map +0 -1
- package/dist/nano-components/p-0563e812.entry.js +0 -5
- package/dist/nano-components/p-0563e812.entry.js.map +0 -1
- package/dist/nano-components/p-06c85b64.js +0 -5
- package/dist/nano-components/p-0b7c676c.entry.js +0 -5
- package/dist/nano-components/p-0bc40dd1.entry.js +0 -5
- package/dist/nano-components/p-0bc40dd1.entry.js.map +0 -1
- package/dist/nano-components/p-0e0f07f0.entry.js +0 -5
- package/dist/nano-components/p-0e0f07f0.entry.js.map +0 -1
- package/dist/nano-components/p-0e4da739.entry.js +0 -5
- package/dist/nano-components/p-0e4da739.entry.js.map +0 -1
- package/dist/nano-components/p-16e75af9.entry.js +0 -5
- package/dist/nano-components/p-16e75af9.entry.js.map +0 -1
- package/dist/nano-components/p-17eb456c.entry.js +0 -5
- package/dist/nano-components/p-17eb456c.entry.js.map +0 -1
- package/dist/nano-components/p-191352c4.entry.js +0 -5
- package/dist/nano-components/p-1a55e282.entry.js +0 -5
- package/dist/nano-components/p-1a55e282.entry.js.map +0 -1
- package/dist/nano-components/p-2234694a.js +0 -5
- package/dist/nano-components/p-24dcd788.entry.js +0 -5
- package/dist/nano-components/p-24dcd788.entry.js.map +0 -1
- package/dist/nano-components/p-2a105609.entry.js +0 -5
- package/dist/nano-components/p-2a105609.entry.js.map +0 -1
- package/dist/nano-components/p-328ef9d3.entry.js +0 -5
- package/dist/nano-components/p-359b7cd2.entry.js +0 -5
- package/dist/nano-components/p-359b7cd2.entry.js.map +0 -1
- package/dist/nano-components/p-36c3ded8.entry.js +0 -5
- package/dist/nano-components/p-36c3ded8.entry.js.map +0 -1
- package/dist/nano-components/p-3ae362ae.entry.js +0 -5
- package/dist/nano-components/p-3cac5f6d.entry.js +0 -5
- package/dist/nano-components/p-3d8fb8a1.entry.js +0 -5
- package/dist/nano-components/p-3eeaba47.entry.js +0 -5
- package/dist/nano-components/p-3eeaba47.entry.js.map +0 -1
- package/dist/nano-components/p-3f40e370.entry.js +0 -5
- package/dist/nano-components/p-51133e62.entry.js +0 -5
- package/dist/nano-components/p-51133e62.entry.js.map +0 -1
- package/dist/nano-components/p-54c4a2f5.entry.js +0 -5
- package/dist/nano-components/p-54c4a2f5.entry.js.map +0 -1
- package/dist/nano-components/p-5fc3035d.entry.js +0 -5
- package/dist/nano-components/p-5fc3035d.entry.js.map +0 -1
- package/dist/nano-components/p-650aa197.entry.js +0 -5
- package/dist/nano-components/p-650aa197.entry.js.map +0 -1
- package/dist/nano-components/p-67ab5a5f.entry.js +0 -5
- package/dist/nano-components/p-67ab5a5f.entry.js.map +0 -1
- package/dist/nano-components/p-688f1a55.entry.js +0 -5
- package/dist/nano-components/p-688f1a55.entry.js.map +0 -1
- package/dist/nano-components/p-6c4171fa.entry.js +0 -5
- package/dist/nano-components/p-70747f20.js +0 -5
- package/dist/nano-components/p-7670058b.entry.js +0 -5
- package/dist/nano-components/p-7670058b.entry.js.map +0 -1
- package/dist/nano-components/p-79fff4fd.entry.js +0 -5
- package/dist/nano-components/p-7c82af28.entry.js +0 -5
- package/dist/nano-components/p-7dd30a3f.entry.js +0 -7
- package/dist/nano-components/p-7dd30a3f.entry.js.map +0 -1
- package/dist/nano-components/p-842f826a.entry.js +0 -5
- package/dist/nano-components/p-842f826a.entry.js.map +0 -1
- package/dist/nano-components/p-87329424.entry.js +0 -5
- package/dist/nano-components/p-8fe51abf.js +0 -5
- package/dist/nano-components/p-935968b8.entry.js +0 -23
- package/dist/nano-components/p-935968b8.entry.js.map +0 -1
- package/dist/nano-components/p-9925e504.entry.js +0 -5
- package/dist/nano-components/p-9c290055.entry.js +0 -5
- package/dist/nano-components/p-9f60ff14.entry.js +0 -5
- package/dist/nano-components/p-a225e976.entry.js +0 -5
- package/dist/nano-components/p-a225e976.entry.js.map +0 -1
- package/dist/nano-components/p-a26bdb65.js +0 -5
- package/dist/nano-components/p-b27b56d3.js +0 -5
- package/dist/nano-components/p-b27b56d3.js.map +0 -1
- package/dist/nano-components/p-c80336b2.entry.js +0 -5
- package/dist/nano-components/p-c80336b2.entry.js.map +0 -1
- package/dist/nano-components/p-cad86fb8.js +0 -5
- package/dist/nano-components/p-cad86fb8.js.map +0 -1
- package/dist/nano-components/p-d18c0a7a.js +0 -5
- package/dist/nano-components/p-d18c0a7a.js.map +0 -1
- package/dist/nano-components/p-d4e44f93.entry.js +0 -5
- package/dist/nano-components/p-dc805ecc.js +0 -5
- package/dist/nano-components/p-dd5687db.js +0 -5
- package/dist/nano-components/p-e6a0675e.entry.js +0 -5
- package/dist/nano-components/p-e98835e2.entry.js +0 -5
- package/dist/nano-components/p-efd3e121.entry.js +0 -5
- package/dist/nano-components/p-f73f52ed.entry.js +0 -5
- package/dist/nano-components/p-f73f52ed.entry.js.map +0 -1
- package/dist/nano-components/p-fcbc9122.entry.js +0 -5
- package/dist/nano-components/p-fcbc9122.entry.js.map +0 -1
- package/dist/types/components/algolia/algolia-input.d.ts +0 -103
- package/dist/types/utils/template.d.ts +0 -2
- /package/dist/nano-components/{p-74a7fc4f.js.map → active-element-75b7c8a0.js.map} +0 -0
- /package/dist/nano-components/{p-cecb9af1.js.map → date-utils-6b7a6e1f.js.map} +0 -0
- /package/dist/nano-components/{p-cdfc507e.js.map → dom-8599fac1.js.map} +0 -0
- /package/dist/nano-components/{p-842cf127.js.map → drag-1723a4cc.js.map} +0 -0
- /package/dist/nano-components/{p-9bfdee71.js.map → events-6a805b42.js.map} +0 -0
- /package/dist/nano-components/{p-f8f89998.js.map → focus-visible-8b2c14da.js.map} +0 -0
- /package/dist/nano-components/{p-bb07c3d0.js.map → index-f626f476.js.map} +0 -0
- /package/dist/nano-components/{p-06c85b64.js.map → local-my-account-6662da72.js.map} +0 -0
- /package/dist/nano-components/{p-ee045579.js.map → math-c02ddfda.js.map} +0 -0
- /package/dist/nano-components/{p-0b7c676c.entry.js.map → nano-slides.entry.js.map} +0 -0
- /package/dist/nano-components/{p-2155fc2c.js.map → nano-table.entry.js.map} +0 -0
- /package/dist/nano-components/{p-cd1fd454.js.map → popover-e5e7a641.js.map} +0 -0
- /package/dist/nano-components/{p-dc565459.js.map → slot-8126e238.js.map} +0 -0
- /package/dist/nano-components/{p-f88fa15c.js.map → tabbable-26a66a22.js.map} +0 -0
- /package/dist/nano-components/{p-8fe51abf.js.map → table.worker-34706ecc.js.map} +0 -0
- /package/dist/nano-components/{p-f258383d.js → table.worker-f258383d.js} +0 -0
- /package/dist/nano-components/{p-411bb8f1.js.map → theme-82feb8cf.js.map} +0 -0
- /package/dist/nano-components/{p-7bff5224.js.map → throttle-ac4fcefa.js.map} +0 -0
- /package/dist/nano-components/{p-c3e8e3f9.js.map → transitions-fb09eb32.js.map} +0 -0
@@ -0,0 +1,68 @@
|
|
1
|
+
/*!
|
2
|
+
* Web Components for Nanopore digital Web Apps
|
3
|
+
*/
|
4
|
+
import { helpers, nativeHelpers, filters, templates, } from './containers';
|
5
|
+
import SqrlErr from './err';
|
6
|
+
import { copyProps } from './utils';
|
7
|
+
/* END TYPES */
|
8
|
+
const defaultConfig = {
|
9
|
+
varName: 'it',
|
10
|
+
autoTrim: [false, 'nl'],
|
11
|
+
autoEscape: true,
|
12
|
+
defaultFilter: false,
|
13
|
+
tags: ['{{', '}}'],
|
14
|
+
l: function (container, name) {
|
15
|
+
if (container === 'H') {
|
16
|
+
const hRet = this.storage.helpers.get(name);
|
17
|
+
if (hRet) {
|
18
|
+
return hRet;
|
19
|
+
}
|
20
|
+
else {
|
21
|
+
throw SqrlErr("Can't find helper '" + name + "'");
|
22
|
+
}
|
23
|
+
}
|
24
|
+
else if (container === 'F') {
|
25
|
+
const fRet = this.storage.filters.get(name);
|
26
|
+
if (fRet) {
|
27
|
+
return fRet;
|
28
|
+
}
|
29
|
+
else {
|
30
|
+
throw SqrlErr("Can't find filter '" + name + "'");
|
31
|
+
}
|
32
|
+
}
|
33
|
+
},
|
34
|
+
async: false,
|
35
|
+
storage: {
|
36
|
+
helpers: helpers,
|
37
|
+
nativeHelpers: nativeHelpers,
|
38
|
+
filters: filters,
|
39
|
+
templates: templates,
|
40
|
+
},
|
41
|
+
prefixes: {
|
42
|
+
h: '@',
|
43
|
+
b: '#',
|
44
|
+
i: '',
|
45
|
+
r: '*',
|
46
|
+
c: '/',
|
47
|
+
e: '!',
|
48
|
+
},
|
49
|
+
cache: false,
|
50
|
+
plugins: [],
|
51
|
+
useWith: false,
|
52
|
+
};
|
53
|
+
defaultConfig.l.bind(defaultConfig);
|
54
|
+
function getConfig(override, baseConfig) {
|
55
|
+
// TODO: run more tests on this
|
56
|
+
const res = {}; // Linked
|
57
|
+
copyProps(res, defaultConfig); // Creates deep clone of res, 1 layer deep
|
58
|
+
if (baseConfig) {
|
59
|
+
copyProps(res, baseConfig);
|
60
|
+
}
|
61
|
+
if (override) {
|
62
|
+
copyProps(res, override);
|
63
|
+
}
|
64
|
+
res.l.bind(res);
|
65
|
+
return res;
|
66
|
+
}
|
67
|
+
export { defaultConfig, getConfig };
|
68
|
+
//# sourceMappingURL=config.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/components/algolia/lib/squirrelly/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,aAAa,EACb,OAAO,EACP,SAAS,GAGV,MAAM,cAAc,CAAC;AACtB,OAAO,OAAO,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAqDpC,eAAe;AAEf,MAAM,aAAa,GAAe;EAChC,OAAO,EAAE,IAAI;EACb,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC;EACvB,UAAU,EAAE,IAAI;EAChB,aAAa,EAAE,KAAK;EACpB,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;EAClB,CAAC,EAAE,UACD,SAAoB,EACpB,IAAY;IAEZ,IAAI,SAAS,KAAK,GAAG,EAAE;MACrB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAA+B,CAAC;MAC1E,IAAI,IAAI,EAAE;QACR,OAAO,IAAI,CAAC;OACb;WAAM;QACL,MAAM,OAAO,CAAC,qBAAqB,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC;OACnD;KACF;SAAM,IAAI,SAAS,KAAK,GAAG,EAAE;MAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAA+B,CAAC;MAC1E,IAAI,IAAI,EAAE;QACR,OAAO,IAAI,CAAC;OACb;WAAM;QACL,MAAM,OAAO,CAAC,qBAAqB,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC;OACnD;KACF;EACH,CAAC;EACD,KAAK,EAAE,KAAK;EACZ,OAAO,EAAE;IACP,OAAO,EAAE,OAAO;IAChB,aAAa,EAAE,aAAa;IAC5B,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,SAAS;GACrB;EACD,QAAQ,EAAE;IACR,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;GACP;EACD,KAAK,EAAE,KAAK;EACZ,OAAO,EAAE,EAAE;EACX,OAAO,EAAE,KAAK;CACf,CAAC;AAEF,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAEpC,SAAS,SAAS,CAChB,QAAuB,EACvB,UAAuB;EAEvB,+BAA+B;EAE/B,MAAM,GAAG,GAAkB,EAAE,CAAC,CAAC,SAAS;EACxC,SAAS,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,0CAA0C;EAEzE,IAAI,UAAU,EAAE;IACd,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;GAC5B;EAED,IAAI,QAAQ,EAAE;IACZ,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;GAC1B;EAEA,GAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAEhC,OAAO,GAAiB,CAAC;AAC3B,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC","sourcesContent":["import {\n helpers,\n nativeHelpers,\n filters,\n templates,\n HelperFunction,\n FilterFunction,\n} from './containers';\nimport SqrlErr from './err';\nimport { copyProps } from './utils';\n\n/* TYPES */\n\nexport type FetcherFunction = (\n container: 'H' | 'F',\n name: string\n) => Function | undefined;\nimport { TemplateFunction } from './compile';\nimport { Cacher } from './storage';\n// import { TagType } from './parse'\n\ntype trimConfig = 'nl' | 'slurp' | false;\n\nexport interface SqrlConfig {\n varName: string;\n autoTrim: trimConfig | [trimConfig, trimConfig];\n rmWhitespace?: boolean;\n autoEscape: boolean;\n defaultFilter: false | string;\n tags: [string, string];\n l: FetcherFunction;\n plugins: Array<{ processFnString?: Function; processAST?: Function }>;\n async: boolean;\n storage: {\n helpers: Cacher<HelperFunction>;\n nativeHelpers: Cacher<Function>;\n filters: Cacher<FilterFunction>;\n templates: Cacher<TemplateFunction>;\n };\n prefixes: {\n h: string;\n b: string;\n i: string;\n r: string;\n c: string;\n e: string;\n [index: string]: string;\n };\n cache: boolean;\n views?: string | Array<string>;\n root?: string;\n filename?: string;\n name?: string;\n 'view cache'?: boolean;\n useWith?: boolean;\n [index: string]: any;\n}\n\nexport type PartialConfig = {\n [P in keyof SqrlConfig]?: SqrlConfig[P];\n};\n\n/* END TYPES */\n\nconst defaultConfig: SqrlConfig = {\n varName: 'it',\n autoTrim: [false, 'nl'],\n autoEscape: true,\n defaultFilter: false,\n tags: ['{{', '}}'],\n l: function (\n container: 'H' | 'F',\n name: string\n ): HelperFunction | FilterFunction | undefined {\n if (container === 'H') {\n const hRet = this.storage.helpers.get(name) as HelperFunction | undefined;\n if (hRet) {\n return hRet;\n } else {\n throw SqrlErr(\"Can't find helper '\" + name + \"'\");\n }\n } else if (container === 'F') {\n const fRet = this.storage.filters.get(name) as FilterFunction | undefined;\n if (fRet) {\n return fRet;\n } else {\n throw SqrlErr(\"Can't find filter '\" + name + \"'\");\n }\n }\n },\n async: false,\n storage: {\n helpers: helpers,\n nativeHelpers: nativeHelpers,\n filters: filters,\n templates: templates,\n },\n prefixes: {\n h: '@',\n b: '#',\n i: '',\n r: '*',\n c: '/',\n e: '!',\n },\n cache: false,\n plugins: [],\n useWith: false,\n};\n\ndefaultConfig.l.bind(defaultConfig);\n\nfunction getConfig(\n override: PartialConfig,\n baseConfig?: SqrlConfig\n): SqrlConfig {\n // TODO: run more tests on this\n\n const res: PartialConfig = {}; // Linked\n copyProps(res, defaultConfig); // Creates deep clone of res, 1 layer deep\n\n if (baseConfig) {\n copyProps(res, baseConfig);\n }\n\n if (override) {\n copyProps(res, override);\n }\n\n (res as SqrlConfig).l.bind(res);\n\n return res as SqrlConfig;\n}\n\nexport { defaultConfig, getConfig };\n"]}
|
@@ -0,0 +1,57 @@
|
|
1
|
+
/*!
|
2
|
+
* Web Components for Nanopore digital Web Apps
|
3
|
+
*/
|
4
|
+
import SqrlErr from './err';
|
5
|
+
export function errWithBlocksOrFilters(name, blocks, // false means don't check
|
6
|
+
filters, native) {
|
7
|
+
if (blocks && blocks.length > 0) {
|
8
|
+
throw SqrlErr((native ? 'Native' : '') + "Helper '" + name + "' doesn't accept blocks");
|
9
|
+
}
|
10
|
+
if (filters && filters.length > 0) {
|
11
|
+
throw SqrlErr((native ? 'Native' : '') + "Helper '" + name + "' doesn't accept filters");
|
12
|
+
}
|
13
|
+
}
|
14
|
+
/* ASYNC LOOP FNs */
|
15
|
+
export function asyncArrLoop(arr, index, fn, res, cb) {
|
16
|
+
fn(arr[index], index).then(function (val) {
|
17
|
+
res += val;
|
18
|
+
if (index === arr.length - 1) {
|
19
|
+
cb(res);
|
20
|
+
}
|
21
|
+
else {
|
22
|
+
asyncArrLoop(arr, index + 1, fn, res, cb);
|
23
|
+
}
|
24
|
+
});
|
25
|
+
}
|
26
|
+
export function asyncObjLoop(obj, keys, index, fn, res, cb) {
|
27
|
+
fn(keys[index], obj[keys[index]]).then(function (val) {
|
28
|
+
res += val;
|
29
|
+
if (index === keys.length - 1) {
|
30
|
+
cb(res);
|
31
|
+
}
|
32
|
+
else {
|
33
|
+
asyncObjLoop(obj, keys, index + 1, fn, res, cb);
|
34
|
+
}
|
35
|
+
});
|
36
|
+
}
|
37
|
+
const escMap = {
|
38
|
+
'&': '&',
|
39
|
+
'<': '<',
|
40
|
+
'>': '>',
|
41
|
+
'"': '"',
|
42
|
+
"'": ''',
|
43
|
+
};
|
44
|
+
export function replaceChar(s) {
|
45
|
+
return escMap[s];
|
46
|
+
}
|
47
|
+
export function XMLEscape(str) {
|
48
|
+
// To deal with XSS. Based on Escape implementations of Mustache.JS and Marko, then customized.
|
49
|
+
const newStr = String(str);
|
50
|
+
if (/[&<>"']/.test(newStr)) {
|
51
|
+
return newStr.replace(/[&<>"']/g, replaceChar);
|
52
|
+
}
|
53
|
+
else {
|
54
|
+
return newStr;
|
55
|
+
}
|
56
|
+
}
|
57
|
+
//# sourceMappingURL=container-utils.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"container-utils.js","sourceRoot":"","sources":["../../../../../src/components/algolia/lib/squirrelly/container-utils.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,OAAO,CAAC;AAE5B,MAAM,UAAU,sBAAsB,CACpC,IAAY,EACZ,MAA0B,EAAE,0BAA0B;AACtD,OAA2B,EAC3B,MAAgB;EAEhB,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;IAC/B,MAAM,OAAO,CACX,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,GAAG,IAAI,GAAG,yBAAyB,CACzE,CAAC;GACH;EACD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;IACjC,MAAM,OAAO,CACX,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,GAAG,IAAI,GAAG,0BAA0B,CAC1E,CAAC;GACH;AACH,CAAC;AAED,oBAAoB;AACpB,MAAM,UAAU,YAAY,CAC1B,GAAe,EACf,KAAa,EACb,EAAY,EACZ,GAAW,EACX,EAAY;EAEZ,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,GAAW;IAC9C,GAAG,IAAI,GAAG,CAAC;IACX,IAAI,KAAK,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;MAC5B,EAAE,CAAC,GAAG,CAAC,CAAC;KACT;SAAM;MACL,YAAY,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;KAC3C;EACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,GAA6B,EAC7B,IAAmB,EACnB,KAAa,EACb,EAAY,EACZ,GAAW,EACX,EAAY;EAEZ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAW;IAC1D,GAAG,IAAI,GAAG,CAAC;IACX,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;MAC7B,EAAE,CAAC,GAAG,CAAC,CAAC;KACT;SAAM;MACL,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;KACjD;EACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,MAAM,GAAc;EACxB,GAAG,EAAE,OAAO;EACZ,GAAG,EAAE,MAAM;EACX,GAAG,EAAE,MAAM;EACX,GAAG,EAAE,QAAQ;EACb,GAAG,EAAE,OAAO;CACb,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,CAAS;EACnC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAY;EACpC,+FAA+F;EAC/F,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;EAC3B,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;IAC1B,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;GAChD;OAAM;IACL,OAAO,MAAM,CAAC;GACf;AACH,CAAC","sourcesContent":["import SqrlErr from './err';\n\nexport function errWithBlocksOrFilters(\n name: string,\n blocks: Array<any> | false, // false means don't check\n filters: Array<any> | false,\n native?: boolean\n) {\n if (blocks && blocks.length > 0) {\n throw SqrlErr(\n (native ? 'Native' : '') + \"Helper '\" + name + \"' doesn't accept blocks\"\n );\n }\n if (filters && filters.length > 0) {\n throw SqrlErr(\n (native ? 'Native' : '') + \"Helper '\" + name + \"' doesn't accept filters\"\n );\n }\n}\n\n/* ASYNC LOOP FNs */\nexport function asyncArrLoop(\n arr: Array<any>,\n index: number,\n fn: Function,\n res: string,\n cb: Function\n) {\n fn(arr[index], index).then(function (val: string) {\n res += val;\n if (index === arr.length - 1) {\n cb(res);\n } else {\n asyncArrLoop(arr, index + 1, fn, res, cb);\n }\n });\n}\n\nexport function asyncObjLoop(\n obj: { [index: string]: any },\n keys: Array<string>,\n index: number,\n fn: Function,\n res: string,\n cb: Function\n) {\n fn(keys[index], obj[keys[index]]).then(function (val: string) {\n res += val;\n if (index === keys.length - 1) {\n cb(res);\n } else {\n asyncObjLoop(obj, keys, index + 1, fn, res, cb);\n }\n });\n}\n\nconst escMap: EscapeMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n};\n\nexport function replaceChar(s: string): string {\n return escMap[s];\n}\n\nexport function XMLEscape(str: unknown) {\n // To deal with XSS. Based on Escape implementations of Mustache.JS and Marko, then customized.\n const newStr = String(str);\n if (/[&<>\"']/.test(newStr)) {\n return newStr.replace(/[&<>\"']/g, replaceChar);\n } else {\n return newStr;\n }\n}\n\n/* INTERFACES */\ninterface EscapeMap {\n '&': '&';\n '<': '<';\n '>': '>';\n '\"': '"';\n \"'\": ''';\n [index: string]: string;\n}\n"]}
|
@@ -0,0 +1,128 @@
|
|
1
|
+
/*!
|
2
|
+
* Web Components for Nanopore digital Web Apps
|
3
|
+
*/
|
4
|
+
import { Cacher } from './storage';
|
5
|
+
import SqrlErr from './err';
|
6
|
+
import { compileScope, compileScopeIntoFunction } from './compile-string';
|
7
|
+
import { hasOwnProp } from './utils';
|
8
|
+
import { errWithBlocksOrFilters, asyncArrLoop, asyncObjLoop, XMLEscape, } from './container-utils';
|
9
|
+
/* END TYPES */
|
10
|
+
const templates = new Cacher({});
|
11
|
+
/* ASYNC LOOP FNs */
|
12
|
+
const helpers = new Cacher({
|
13
|
+
each: function (content, blocks) {
|
14
|
+
let res = '';
|
15
|
+
const arr = content.params[0];
|
16
|
+
errWithBlocksOrFilters('each', blocks, false);
|
17
|
+
if (content.async) {
|
18
|
+
return new Promise(function (resolve) {
|
19
|
+
asyncArrLoop(arr, 0, content.exec, res, resolve);
|
20
|
+
});
|
21
|
+
}
|
22
|
+
else {
|
23
|
+
for (let i = 0; i < arr.length; i++) {
|
24
|
+
res += content.exec(arr[i], i);
|
25
|
+
}
|
26
|
+
return res;
|
27
|
+
}
|
28
|
+
},
|
29
|
+
foreach: function (content, blocks) {
|
30
|
+
const obj = content.params[0];
|
31
|
+
errWithBlocksOrFilters('foreach', blocks, false);
|
32
|
+
if (content.async) {
|
33
|
+
return new Promise(function (resolve) {
|
34
|
+
asyncObjLoop(obj, Object.keys(obj), 0, content.exec, '', resolve);
|
35
|
+
});
|
36
|
+
}
|
37
|
+
else {
|
38
|
+
let res = '';
|
39
|
+
for (const key in obj) {
|
40
|
+
if (!hasOwnProp(obj, key))
|
41
|
+
continue;
|
42
|
+
res += content.exec(key, obj[key]); // todo: check on order
|
43
|
+
}
|
44
|
+
return res;
|
45
|
+
}
|
46
|
+
},
|
47
|
+
include: function (content, blocks, config) {
|
48
|
+
errWithBlocksOrFilters('include', blocks, false);
|
49
|
+
const template = config.storage.templates.get(content.params[0]);
|
50
|
+
if (!template) {
|
51
|
+
throw SqrlErr('Could not fetch template "' + content.params[0] + '"');
|
52
|
+
}
|
53
|
+
return template(content.params[1], config);
|
54
|
+
},
|
55
|
+
extends: function (content, blocks, config) {
|
56
|
+
const data = content.params[1] || {};
|
57
|
+
data.content = content.exec();
|
58
|
+
for (let i = 0; i < blocks.length; i++) {
|
59
|
+
const currentBlock = blocks[i];
|
60
|
+
data[currentBlock.name] = currentBlock.exec();
|
61
|
+
}
|
62
|
+
const template = config.storage.templates.get(content.params[0]);
|
63
|
+
if (!template) {
|
64
|
+
throw SqrlErr('Could not fetch template "' + content.params[0] + '"');
|
65
|
+
}
|
66
|
+
return template(data, config);
|
67
|
+
},
|
68
|
+
useScope: function (content, blocks) {
|
69
|
+
errWithBlocksOrFilters('useScope', blocks, false);
|
70
|
+
return content.exec(content.params[0]);
|
71
|
+
},
|
72
|
+
});
|
73
|
+
const nativeHelpers = new Cacher({
|
74
|
+
if: function (buffer, env) {
|
75
|
+
errWithBlocksOrFilters('if', false, buffer.f, true);
|
76
|
+
let returnStr = 'if(' + buffer.p + '){' + compileScope(buffer.d, env) + '}';
|
77
|
+
if (buffer.b) {
|
78
|
+
for (let i = 0; i < buffer.b.length; i++) {
|
79
|
+
const currentBlock = buffer.b[i];
|
80
|
+
if (currentBlock.n === 'else') {
|
81
|
+
returnStr += 'else{' + compileScope(currentBlock.d, env) + '}';
|
82
|
+
}
|
83
|
+
else if (currentBlock.n === 'elif') {
|
84
|
+
returnStr +=
|
85
|
+
'else if(' +
|
86
|
+
currentBlock.p +
|
87
|
+
'){' +
|
88
|
+
compileScope(currentBlock.d, env) +
|
89
|
+
'}';
|
90
|
+
}
|
91
|
+
}
|
92
|
+
}
|
93
|
+
return returnStr;
|
94
|
+
},
|
95
|
+
try: function (buffer, env) {
|
96
|
+
errWithBlocksOrFilters('try', false, buffer.f, true);
|
97
|
+
if (!buffer.b || buffer.b.length !== 1 || buffer.b[0].n !== 'catch') {
|
98
|
+
throw SqrlErr("native helper 'try' only accepts 1 block, 'catch'");
|
99
|
+
}
|
100
|
+
let returnStr = 'try{' + compileScope(buffer.d, env) + '}';
|
101
|
+
const currentBlock = buffer.b[0];
|
102
|
+
returnStr +=
|
103
|
+
'catch' +
|
104
|
+
(currentBlock.res ? '(' + currentBlock.res + ')' : '') +
|
105
|
+
'{' +
|
106
|
+
compileScope(currentBlock.d, env) +
|
107
|
+
'}';
|
108
|
+
return returnStr;
|
109
|
+
},
|
110
|
+
block: function (buffer, env) {
|
111
|
+
errWithBlocksOrFilters('block', buffer.b, buffer.f, true);
|
112
|
+
const returnStr = 'if(!' +
|
113
|
+
env.varName +
|
114
|
+
'[' +
|
115
|
+
buffer.p +
|
116
|
+
']){tR+=(' +
|
117
|
+
compileScopeIntoFunction(buffer.d, '', env) +
|
118
|
+
')()}else{tR+=' +
|
119
|
+
env.varName +
|
120
|
+
'[' +
|
121
|
+
buffer.p +
|
122
|
+
']}';
|
123
|
+
return returnStr;
|
124
|
+
},
|
125
|
+
});
|
126
|
+
const filters = new Cacher({ e: XMLEscape });
|
127
|
+
export { templates, helpers, nativeHelpers, filters };
|
128
|
+
//# sourceMappingURL=containers.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"containers.js","sourceRoot":"","sources":["../../../../../src/components/algolia/lib/squirrelly/containers.ts"],"names":[],"mappings":"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","sourcesContent":["import { Cacher } from './storage';\nimport SqrlErr from './err';\nimport { compileScope, compileScopeIntoFunction } from './compile-string';\nimport { hasOwnProp } from './utils';\nimport {\n errWithBlocksOrFilters,\n asyncArrLoop,\n asyncObjLoop,\n XMLEscape,\n} from './container-utils';\n\n/* TYPES */\n\nimport { SqrlConfig } from './config';\nimport { TemplateFunction } from './compile';\nimport { ParentTemplateObject } from './parse';\n\nexport interface HelperContent {\n exec: Function;\n params: Array<any>;\n async?: boolean;\n}\n\nexport interface HelperBlock extends HelperContent {\n name: string;\n}\n\nexport type HelperFunction = (\n content: HelperContent,\n blocks: Array<HelperBlock>,\n config: SqrlConfig\n) => string | Promise<string>;\n\nexport type FilterFunction = (...args: any[]) => any | Promise<any>;\n\ninterface IncludeHelperContent extends HelperContent {\n params: [string, object];\n}\n\ninterface GenericData {\n [index: string]: any;\n}\n\n/* END TYPES */\n\nconst templates = new Cacher<TemplateFunction>({});\n\n/* ASYNC LOOP FNs */\n\nconst helpers = new Cacher<HelperFunction>({\n each: function (content: HelperContent, blocks: Array<HelperBlock>) {\n let res = '';\n const arr = content.params[0];\n errWithBlocksOrFilters('each', blocks, false);\n\n if (content.async) {\n return new Promise(function (resolve) {\n asyncArrLoop(arr, 0, content.exec, res, resolve);\n });\n } else {\n for (let i = 0; i < arr.length; i++) {\n res += content.exec(arr[i], i);\n }\n return res;\n }\n },\n foreach: function (content: HelperContent, blocks: Array<HelperBlock>) {\n const obj = content.params[0];\n errWithBlocksOrFilters('foreach', blocks, false);\n\n if (content.async) {\n return new Promise(function (resolve) {\n asyncObjLoop(obj, Object.keys(obj), 0, content.exec, '', resolve);\n });\n } else {\n let res = '';\n\n for (const key in obj) {\n if (!hasOwnProp(obj, key)) continue;\n res += content.exec(key, obj[key]); // todo: check on order\n }\n return res;\n }\n },\n include: function (\n content: IncludeHelperContent,\n blocks: Array<HelperBlock>,\n config: SqrlConfig\n ): string {\n errWithBlocksOrFilters('include', blocks, false);\n const template = config.storage.templates.get(content.params[0]);\n if (!template) {\n throw SqrlErr('Could not fetch template \"' + content.params[0] + '\"');\n }\n return template(content.params[1], config);\n } as HelperFunction,\n extends: function (\n content: IncludeHelperContent,\n blocks: Array<HelperBlock>,\n config: SqrlConfig\n ): string {\n const data: GenericData = content.params[1] || {};\n data.content = content.exec();\n\n for (let i = 0; i < blocks.length; i++) {\n const currentBlock = blocks[i];\n data[currentBlock.name] = currentBlock.exec();\n }\n\n const template = config.storage.templates.get(content.params[0]);\n if (!template) {\n throw SqrlErr('Could not fetch template \"' + content.params[0] + '\"');\n }\n return template(data, config);\n } as HelperFunction,\n useScope: function (\n content: HelperContent,\n blocks: Array<HelperBlock>\n ): string {\n errWithBlocksOrFilters('useScope', blocks, false);\n\n return content.exec(content.params[0]);\n } as HelperFunction,\n});\n\nconst nativeHelpers = new Cacher<Function>({\n if: function (buffer: ParentTemplateObject, env: SqrlConfig) {\n errWithBlocksOrFilters('if', false, buffer.f, true);\n\n let returnStr = 'if(' + buffer.p + '){' + compileScope(buffer.d, env) + '}';\n if (buffer.b) {\n for (let i = 0; i < buffer.b.length; i++) {\n const currentBlock = buffer.b[i];\n if (currentBlock.n === 'else') {\n returnStr += 'else{' + compileScope(currentBlock.d, env) + '}';\n } else if (currentBlock.n === 'elif') {\n returnStr +=\n 'else if(' +\n currentBlock.p +\n '){' +\n compileScope(currentBlock.d, env) +\n '}';\n }\n }\n }\n return returnStr;\n },\n try: function (buffer: ParentTemplateObject, env: SqrlConfig) {\n errWithBlocksOrFilters('try', false, buffer.f, true);\n\n if (!buffer.b || buffer.b.length !== 1 || buffer.b[0].n !== 'catch') {\n throw SqrlErr(\"native helper 'try' only accepts 1 block, 'catch'\");\n }\n let returnStr = 'try{' + compileScope(buffer.d, env) + '}';\n\n const currentBlock = buffer.b[0];\n returnStr +=\n 'catch' +\n (currentBlock.res ? '(' + currentBlock.res + ')' : '') +\n '{' +\n compileScope(currentBlock.d, env) +\n '}';\n\n return returnStr;\n },\n block: function (buffer: ParentTemplateObject, env: SqrlConfig) {\n errWithBlocksOrFilters('block', buffer.b, buffer.f, true);\n\n const returnStr =\n 'if(!' +\n env.varName +\n '[' +\n buffer.p +\n ']){tR+=(' +\n compileScopeIntoFunction(buffer.d, '', env) +\n ')()}else{tR+=' +\n env.varName +\n '[' +\n buffer.p +\n ']}';\n\n return returnStr;\n },\n});\n\nconst filters = new Cacher<FilterFunction>({ e: XMLEscape });\n\nexport { templates, helpers, nativeHelpers, filters };\n"]}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
/*!
|
2
|
+
* Web Components for Nanopore digital Web Apps
|
3
|
+
*/
|
4
|
+
function setPrototypeOf(obj, proto) {
|
5
|
+
if (Object.setPrototypeOf) {
|
6
|
+
Object.setPrototypeOf(obj, proto);
|
7
|
+
}
|
8
|
+
else {
|
9
|
+
obj.__proto__ = proto;
|
10
|
+
}
|
11
|
+
}
|
12
|
+
export default function SqrlErr(message) {
|
13
|
+
const err = new Error(message);
|
14
|
+
setPrototypeOf(err, SqrlErr.prototype);
|
15
|
+
return err;
|
16
|
+
}
|
17
|
+
SqrlErr.prototype = Object.create(Error.prototype, {
|
18
|
+
name: { value: 'Squirrelly Error', enumerable: false },
|
19
|
+
});
|
20
|
+
// TODO: Class transpilation adds a lot to the bundle size
|
21
|
+
export function ParseErr(message, str, indx) {
|
22
|
+
const whitespace = str.slice(0, indx).split(/\n/);
|
23
|
+
const lineNo = whitespace.length;
|
24
|
+
const colNo = whitespace[lineNo - 1].length + 1;
|
25
|
+
message +=
|
26
|
+
' at line ' +
|
27
|
+
lineNo +
|
28
|
+
' col ' +
|
29
|
+
colNo +
|
30
|
+
':\n\n' +
|
31
|
+
' ' +
|
32
|
+
str.split(/\n/)[lineNo - 1] +
|
33
|
+
'\n' +
|
34
|
+
' ' +
|
35
|
+
Array(colNo).join(' ') +
|
36
|
+
'^';
|
37
|
+
throw SqrlErr(message);
|
38
|
+
}
|
39
|
+
//# sourceMappingURL=err.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"err.js","sourceRoot":"","sources":["../../../../../src/components/algolia/lib/squirrelly/err.ts"],"names":[],"mappings":"AAAA,SAAS,cAAc,CAAC,GAAQ,EAAE,KAAU;EAC1C,IAAI,MAAM,CAAC,cAAc,EAAE;IACzB,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;GACnC;OAAM;IACL,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;GACvB;AACH,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,OAAe;EAC7C,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;EAC/B,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;EACvC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE;EACjD,IAAI,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,KAAK,EAAE;CACvD,CAAC,CAAC;AAEH,0DAA0D;AAE1D,MAAM,UAAU,QAAQ,CAAC,OAAe,EAAE,GAAW,EAAE,IAAY;EACjE,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;EAElD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;EACjC,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;EAChD,OAAO;IACL,WAAW;MACX,MAAM;MACN,OAAO;MACP,KAAK;MACL,OAAO;MACP,IAAI;MACJ,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;MAC3B,IAAI;MACJ,IAAI;MACJ,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;MACtB,GAAG,CAAC;EACN,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC","sourcesContent":["function setPrototypeOf(obj: any, proto: any) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(obj, proto);\n } else {\n obj.__proto__ = proto;\n }\n}\n\nexport default function SqrlErr(message: string): Error {\n const err = new Error(message);\n setPrototypeOf(err, SqrlErr.prototype);\n return err;\n}\n\nSqrlErr.prototype = Object.create(Error.prototype, {\n name: { value: 'Squirrelly Error', enumerable: false },\n});\n\n// TODO: Class transpilation adds a lot to the bundle size\n\nexport function ParseErr(message: string, str: string, indx: number) {\n const whitespace = str.slice(0, indx).split(/\\n/);\n\n const lineNo = whitespace.length;\n const colNo = whitespace[lineNo - 1].length + 1;\n message +=\n ' at line ' +\n lineNo +\n ' col ' +\n colNo +\n ':\\n\\n' +\n ' ' +\n str.split(/\\n/)[lineNo - 1] +\n '\\n' +\n ' ' +\n Array(colNo).join(' ') +\n '^';\n throw SqrlErr(message);\n}\n"]}
|
@@ -0,0 +1,327 @@
|
|
1
|
+
/*!
|
2
|
+
* Web Components for Nanopore digital Web Apps
|
3
|
+
*/
|
4
|
+
import SqrlErr, { ParseErr } from './err';
|
5
|
+
import { trimWS } from './utils';
|
6
|
+
/* END TYPES */
|
7
|
+
const asyncRegExp = /^async +/;
|
8
|
+
const templateLitReg = /`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})*}|(?!\${)[^\\`])*`/g;
|
9
|
+
const singleQuoteReg = /'(?:\\[\s\w"'\\`]|[^\n\r'\\])*?'/g;
|
10
|
+
const doubleQuoteReg = /"(?:\\[\s\w"'\\`]|[^\n\r"\\])*?"/g;
|
11
|
+
const specialCharsReg = /[.*+\-?^${}()|[\]\\]/g;
|
12
|
+
function escapeRegExp(string) {
|
13
|
+
// From MDN
|
14
|
+
return specialCharsReg.test(string)
|
15
|
+
? string.replace(specialCharsReg, '\\$&') // $& means the whole matched string
|
16
|
+
: string;
|
17
|
+
}
|
18
|
+
export default function parse(str, env) {
|
19
|
+
/* Adding for EJS compatibility */
|
20
|
+
if (env.rmWhitespace) {
|
21
|
+
// Code taken directly from EJS
|
22
|
+
// Have to use two separate replaces here as `^` and `$` operators don't
|
23
|
+
// work well with `\r` and empty lines don't work well with the `m` flag.
|
24
|
+
// Essentially, this replaces the whitespace at the beginning and end of
|
25
|
+
// each line and removes multiple newlines.
|
26
|
+
str = str.replace(/[\r\n]+/g, '\n').replace(/^\s+|\s+$/gm, '');
|
27
|
+
}
|
28
|
+
/* End rmWhitespace option */
|
29
|
+
templateLitReg.lastIndex = 0;
|
30
|
+
singleQuoteReg.lastIndex = 0;
|
31
|
+
doubleQuoteReg.lastIndex = 0;
|
32
|
+
const envPrefixes = env.prefixes;
|
33
|
+
const prefixes = [
|
34
|
+
envPrefixes.h,
|
35
|
+
envPrefixes.b,
|
36
|
+
envPrefixes.i,
|
37
|
+
envPrefixes.r,
|
38
|
+
envPrefixes.c,
|
39
|
+
envPrefixes.e,
|
40
|
+
].reduce(function (accumulator, prefix) {
|
41
|
+
if (accumulator && prefix) {
|
42
|
+
return accumulator + '|' + escapeRegExp(prefix);
|
43
|
+
}
|
44
|
+
else if (prefix) {
|
45
|
+
// accumulator is empty
|
46
|
+
return escapeRegExp(prefix);
|
47
|
+
}
|
48
|
+
else {
|
49
|
+
// prefix and accumulator are both empty strings
|
50
|
+
return accumulator;
|
51
|
+
}
|
52
|
+
}, '');
|
53
|
+
const parseCloseReg = new RegExp('([|()]|=>)|' + // powerchars
|
54
|
+
'(\'|"|`|\\/\\*)|\\s*((\\/)?(-|_)?' + // comments, strings
|
55
|
+
escapeRegExp(env.tags[1]) +
|
56
|
+
')', 'g');
|
57
|
+
const tagOpenReg = new RegExp('([^]*?)' + escapeRegExp(env.tags[0]) + '(-|_)?\\s*(' + prefixes + ')?\\s*', 'g');
|
58
|
+
let startInd = 0;
|
59
|
+
let trimNextLeftWs = false;
|
60
|
+
function parseTag(tagOpenIndex, currentType) {
|
61
|
+
const currentObj = { f: [] };
|
62
|
+
let numParens = 0;
|
63
|
+
let currentAttribute = 'c'; // default - Valid values: 'c'=content, 'f'=filter, 'fp'=filter params, 'p'=param, 'n'=name
|
64
|
+
if (currentType === 'h' || currentType === 'b' || currentType === 'c') {
|
65
|
+
currentAttribute = 'n';
|
66
|
+
}
|
67
|
+
else if (currentType === 'r') {
|
68
|
+
currentObj.raw = true;
|
69
|
+
currentType = 'i';
|
70
|
+
}
|
71
|
+
function addAttrValue(indx) {
|
72
|
+
const valUnprocessed = str.slice(startInd, indx);
|
73
|
+
// console.log(valUnprocessed)
|
74
|
+
let val = valUnprocessed.trim();
|
75
|
+
if (currentAttribute === 'f') {
|
76
|
+
if (val === 'safe') {
|
77
|
+
currentObj.raw = true;
|
78
|
+
}
|
79
|
+
else {
|
80
|
+
if (env.async && asyncRegExp.test(val)) {
|
81
|
+
val = val.replace(asyncRegExp, '');
|
82
|
+
currentObj.f.push([val, '', true]);
|
83
|
+
}
|
84
|
+
else {
|
85
|
+
currentObj.f.push([val, '']);
|
86
|
+
}
|
87
|
+
}
|
88
|
+
}
|
89
|
+
else if (currentAttribute === 'fp') {
|
90
|
+
currentObj.f[currentObj.f.length - 1][1] += val;
|
91
|
+
}
|
92
|
+
else if (currentAttribute === 'err') {
|
93
|
+
if (val) {
|
94
|
+
const found = valUnprocessed.search(/\S/);
|
95
|
+
ParseErr('invalid syntax', str, startInd + found);
|
96
|
+
}
|
97
|
+
}
|
98
|
+
else {
|
99
|
+
// if (currentObj[currentAttribute]) { // TODO make sure no errs
|
100
|
+
// currentObj[currentAttribute] += val
|
101
|
+
// } else {
|
102
|
+
currentObj[currentAttribute] = val;
|
103
|
+
// }
|
104
|
+
}
|
105
|
+
startInd = indx + 1;
|
106
|
+
}
|
107
|
+
parseCloseReg.lastIndex = startInd;
|
108
|
+
let m;
|
109
|
+
// tslint:disable-next-line:no-conditional-assignment
|
110
|
+
while ((m = parseCloseReg.exec(str)) !== null) {
|
111
|
+
const char = m[1];
|
112
|
+
const punctuator = m[2];
|
113
|
+
const tagClose = m[3];
|
114
|
+
const slash = m[4];
|
115
|
+
const wsControl = m[5];
|
116
|
+
const i = m.index;
|
117
|
+
if (char) {
|
118
|
+
// Power character
|
119
|
+
if (char === '(') {
|
120
|
+
if (numParens === 0) {
|
121
|
+
if (currentAttribute === 'n') {
|
122
|
+
addAttrValue(i);
|
123
|
+
currentAttribute = 'p';
|
124
|
+
}
|
125
|
+
else if (currentAttribute === 'f') {
|
126
|
+
addAttrValue(i);
|
127
|
+
currentAttribute = 'fp';
|
128
|
+
}
|
129
|
+
}
|
130
|
+
numParens++;
|
131
|
+
}
|
132
|
+
else if (char === ')') {
|
133
|
+
numParens--;
|
134
|
+
if (numParens === 0 && currentAttribute !== 'c') {
|
135
|
+
// Then it's closing a filter, block, or helper
|
136
|
+
addAttrValue(i);
|
137
|
+
currentAttribute = 'err'; // Reset the current attribute
|
138
|
+
}
|
139
|
+
}
|
140
|
+
else if (numParens === 0 && char === '|') {
|
141
|
+
addAttrValue(i); // this should actually always be whitespace or empty
|
142
|
+
currentAttribute = 'f';
|
143
|
+
}
|
144
|
+
else if (char === '=>') {
|
145
|
+
addAttrValue(i);
|
146
|
+
startInd += 1; // this is 2 chars
|
147
|
+
currentAttribute = 'res';
|
148
|
+
}
|
149
|
+
}
|
150
|
+
else if (punctuator) {
|
151
|
+
if (punctuator === '/*') {
|
152
|
+
const commentCloseInd = str.indexOf('*/', parseCloseReg.lastIndex);
|
153
|
+
if (commentCloseInd === -1) {
|
154
|
+
ParseErr('unclosed comment', str, m.index);
|
155
|
+
}
|
156
|
+
parseCloseReg.lastIndex = commentCloseInd + 2; // since */ is 2 characters, and we're using indexOf rather than a RegExp
|
157
|
+
}
|
158
|
+
else if (punctuator === "'") {
|
159
|
+
singleQuoteReg.lastIndex = m.index;
|
160
|
+
const singleQuoteMatch = singleQuoteReg.exec(str);
|
161
|
+
if (singleQuoteMatch) {
|
162
|
+
parseCloseReg.lastIndex = singleQuoteReg.lastIndex;
|
163
|
+
}
|
164
|
+
else {
|
165
|
+
ParseErr('unclosed string', str, m.index);
|
166
|
+
}
|
167
|
+
}
|
168
|
+
else if (punctuator === '"') {
|
169
|
+
doubleQuoteReg.lastIndex = m.index;
|
170
|
+
const doubleQuoteMatch = doubleQuoteReg.exec(str);
|
171
|
+
if (doubleQuoteMatch) {
|
172
|
+
parseCloseReg.lastIndex = doubleQuoteReg.lastIndex;
|
173
|
+
}
|
174
|
+
else {
|
175
|
+
ParseErr('unclosed string', str, m.index);
|
176
|
+
}
|
177
|
+
}
|
178
|
+
else if (punctuator === '`') {
|
179
|
+
templateLitReg.lastIndex = m.index;
|
180
|
+
const templateLitMatch = templateLitReg.exec(str);
|
181
|
+
if (templateLitMatch) {
|
182
|
+
parseCloseReg.lastIndex = templateLitReg.lastIndex;
|
183
|
+
}
|
184
|
+
else {
|
185
|
+
ParseErr('unclosed string', str, m.index);
|
186
|
+
}
|
187
|
+
}
|
188
|
+
}
|
189
|
+
else if (tagClose) {
|
190
|
+
addAttrValue(i);
|
191
|
+
startInd = i + m[0].length;
|
192
|
+
tagOpenReg.lastIndex = startInd;
|
193
|
+
// console.log('tagClose: ' + startInd)
|
194
|
+
trimNextLeftWs = wsControl;
|
195
|
+
if (slash && currentType === 'h') {
|
196
|
+
currentType = 's';
|
197
|
+
} // TODO throw err
|
198
|
+
currentObj.t = currentType;
|
199
|
+
return currentObj;
|
200
|
+
}
|
201
|
+
}
|
202
|
+
ParseErr('unclosed tag', str, tagOpenIndex);
|
203
|
+
return currentObj; // To prevent TypeScript from erroring
|
204
|
+
}
|
205
|
+
function parseContext(parentObj, firstParse) {
|
206
|
+
parentObj.b = []; // assume there will be blocks // TODO: perf optimize this
|
207
|
+
parentObj.d = [];
|
208
|
+
let lastBlock = false;
|
209
|
+
let buffer = [];
|
210
|
+
function pushString(strng, shouldTrimRightOfString) {
|
211
|
+
if (strng) {
|
212
|
+
// if string is truthy it must be of type 'string'
|
213
|
+
// TODO: benchmark replace( /(\\|')/g, '\\$1')
|
214
|
+
strng = trimWS(strng, env, trimNextLeftWs, // this will only be false on the first str, the next ones will be null or undefined
|
215
|
+
shouldTrimRightOfString);
|
216
|
+
if (strng) {
|
217
|
+
// replace \ with \\, ' with \'
|
218
|
+
strng = strng.replace(/\\|'/g, '\\$&').replace(/\r\n|\n|\r/g, '\\n');
|
219
|
+
// we're going to convert all CRLF to LF so it doesn't take more than one replace
|
220
|
+
buffer.push(strng);
|
221
|
+
}
|
222
|
+
}
|
223
|
+
}
|
224
|
+
// Random TODO: parentObj.b doesn't need to have t: #
|
225
|
+
let tagOpenMatch;
|
226
|
+
// tslint:disable-next-line:no-conditional-assignment
|
227
|
+
while ((tagOpenMatch = tagOpenReg.exec(str)) !== null) {
|
228
|
+
const precedingString = tagOpenMatch[1];
|
229
|
+
const shouldTrimRightPrecedingString = tagOpenMatch[2];
|
230
|
+
const prefix = tagOpenMatch[3] || '';
|
231
|
+
let prefixType;
|
232
|
+
for (const key in envPrefixes) {
|
233
|
+
if (envPrefixes[key] === prefix) {
|
234
|
+
prefixType = key;
|
235
|
+
break;
|
236
|
+
}
|
237
|
+
}
|
238
|
+
pushString(precedingString, shouldTrimRightPrecedingString);
|
239
|
+
startInd = tagOpenMatch.index + tagOpenMatch[0].length;
|
240
|
+
if (!prefixType) {
|
241
|
+
ParseErr('unrecognized tag type: ' + prefix, str, startInd);
|
242
|
+
}
|
243
|
+
let currentObj = parseTag(tagOpenMatch.index, prefixType);
|
244
|
+
// ===== NOW ADD THE OBJECT TO OUR BUFFER =====
|
245
|
+
const currentType = currentObj.t;
|
246
|
+
if (currentType === 'h') {
|
247
|
+
const hName = currentObj.n || '';
|
248
|
+
if (env.async && asyncRegExp.test(hName)) {
|
249
|
+
currentObj.a = true;
|
250
|
+
currentObj.n = hName.replace(asyncRegExp, '');
|
251
|
+
}
|
252
|
+
currentObj = parseContext(currentObj); // currentObj is the parent object
|
253
|
+
buffer.push(currentObj);
|
254
|
+
}
|
255
|
+
else if (currentType === 'c') {
|
256
|
+
// tag close
|
257
|
+
if (parentObj.n === currentObj.n) {
|
258
|
+
if (lastBlock) {
|
259
|
+
// If there's a previous block
|
260
|
+
lastBlock.d = buffer;
|
261
|
+
parentObj.b.push(lastBlock);
|
262
|
+
}
|
263
|
+
else {
|
264
|
+
parentObj.d = buffer;
|
265
|
+
}
|
266
|
+
// console.log('parentObj: ' + JSON.stringify(parentObj))
|
267
|
+
return parentObj;
|
268
|
+
}
|
269
|
+
else {
|
270
|
+
ParseErr("Helper start and end don't match", str, tagOpenMatch.index + tagOpenMatch[0].length);
|
271
|
+
}
|
272
|
+
}
|
273
|
+
else if (currentType === 'b') {
|
274
|
+
// block
|
275
|
+
// TODO: make sure async stuff inside blocks are recognized
|
276
|
+
if (lastBlock) {
|
277
|
+
// If there's a previous block
|
278
|
+
lastBlock.d = buffer;
|
279
|
+
parentObj.b.push(lastBlock);
|
280
|
+
}
|
281
|
+
else {
|
282
|
+
parentObj.d = buffer;
|
283
|
+
}
|
284
|
+
const blockName = currentObj.n || '';
|
285
|
+
if (env.async && asyncRegExp.test(blockName)) {
|
286
|
+
currentObj.a = true;
|
287
|
+
currentObj.n = blockName.replace(asyncRegExp, '');
|
288
|
+
}
|
289
|
+
lastBlock = currentObj; // Set the 'lastBlock' object to the value of the current block
|
290
|
+
buffer = [];
|
291
|
+
}
|
292
|
+
else if (currentType === 's') {
|
293
|
+
const selfClosingHName = currentObj.n || '';
|
294
|
+
if (env.async && asyncRegExp.test(selfClosingHName)) {
|
295
|
+
currentObj.a = true;
|
296
|
+
currentObj.n = selfClosingHName.replace(asyncRegExp, '');
|
297
|
+
}
|
298
|
+
buffer.push(currentObj);
|
299
|
+
}
|
300
|
+
else {
|
301
|
+
buffer.push(currentObj);
|
302
|
+
}
|
303
|
+
// ===== DONE ADDING OBJECT TO BUFFER =====
|
304
|
+
}
|
305
|
+
if (firstParse) {
|
306
|
+
pushString(str.slice(startInd, str.length), false);
|
307
|
+
parentObj.d = buffer;
|
308
|
+
}
|
309
|
+
else {
|
310
|
+
throw SqrlErr('unclosed helper "' + parentObj.n + '"');
|
311
|
+
// It should have returned by now
|
312
|
+
}
|
313
|
+
return parentObj;
|
314
|
+
}
|
315
|
+
const parseResult = parseContext({ f: [] }, true);
|
316
|
+
// console.log(JSON.stringify(parseResult))
|
317
|
+
if (env.plugins) {
|
318
|
+
for (let i = 0; i < env.plugins.length; i++) {
|
319
|
+
const plugin = env.plugins[i];
|
320
|
+
if (plugin.processAST) {
|
321
|
+
parseResult.d = plugin.processAST(parseResult.d, env);
|
322
|
+
}
|
323
|
+
}
|
324
|
+
}
|
325
|
+
return parseResult.d; // Parse the very outside context
|
326
|
+
}
|
327
|
+
//# sourceMappingURL=parse.js.map
|