@empathyco/x-components 5.0.0-alpha.9 → 6.0.0-alpha.2
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 +737 -3
- package/core/index.js +12 -20
- package/core/index.js.map +1 -1
- package/design-system/deprecated-full-theme.css +231 -247
- package/docs/API-reference/api/x-components.allfilter.md +18 -12
- package/docs/API-reference/api/x-components.animateclippath.md +1 -1
- package/docs/API-reference/api/x-components.animatescale.md +1 -1
- package/docs/API-reference/api/x-components.animatetranslate.md +1 -1
- package/docs/API-reference/api/x-components.animatewidth.md +1 -1
- package/docs/API-reference/api/x-components.animationprop.md +1 -1
- package/docs/API-reference/api/x-components.autoprogressbar.md +3 -3
- package/docs/API-reference/api/x-components.banner.md +114 -11
- package/docs/API-reference/api/x-components.bannerslist.md +9 -16
- package/docs/API-reference/api/x-components.baseaddtocart.md +2 -2
- package/docs/API-reference/api/x-components.basecolumnpickerdropdown.md +10 -8
- package/docs/API-reference/api/x-components.basecolumnpickerlist.md +4 -2
- package/docs/API-reference/api/x-components.basecurrency.md +2 -2
- package/docs/API-reference/api/x-components.basedropdown.md +10 -8
- package/docs/API-reference/api/x-components.baseeventbutton.md +8 -2
- package/docs/API-reference/api/x-components.baseeventsmodal.md +39 -21
- package/docs/API-reference/api/x-components.baseeventsmodalclose.md +5 -5
- package/docs/API-reference/api/x-components.baseeventsmodalopen.md +5 -5
- package/docs/API-reference/api/x-components.basegrid.md +11 -11
- package/docs/API-reference/api/x-components.baseheadertogglepanel.md +22 -11
- package/docs/API-reference/api/x-components.baseidmodal.md +22 -21
- package/docs/API-reference/api/x-components.baseidmodalclose.md +3 -3
- package/docs/API-reference/api/x-components.baseidmodalopen.md +3 -3
- package/docs/API-reference/api/x-components.baseidtogglepanel.md +33 -20
- package/docs/API-reference/api/x-components.baseidtogglepanelbutton.md +15 -17
- package/docs/API-reference/api/x-components.basekeyboardnavigation.md +38 -20
- package/docs/API-reference/api/x-components.basemodal.md +54 -25
- package/docs/API-reference/api/x-components.basepricefilterlabel.md +4 -2
- package/docs/API-reference/api/x-components.baserating.md +2 -2
- package/docs/API-reference/api/x-components.baseratingfilterlabel.md +2 -2
- package/docs/API-reference/api/x-components.baseresultcurrentprice.md +2 -2
- package/docs/API-reference/api/x-components.baseresultimage.md +10 -12
- package/docs/API-reference/api/x-components.baseresultlink.md +2 -2
- package/docs/API-reference/api/x-components.baseresultpreviousprice.md +2 -2
- package/docs/API-reference/api/x-components.baseresultrating.md +2 -2
- package/docs/API-reference/api/x-components.basescroll.md +59 -4
- package/docs/API-reference/api/x-components.basesuggestion.md +2 -2
- package/docs/API-reference/api/x-components.basesuggestions.md +48 -14
- package/docs/API-reference/api/x-components.baseswitch.md +10 -6
- package/docs/API-reference/api/x-components.basetabspanel.md +57 -13
- package/docs/API-reference/api/x-components.basetogglepanel.md +5 -7
- package/docs/API-reference/api/x-components.basevariablecolumngrid.md +30 -11
- package/docs/API-reference/api/x-components.clearfilters.md +16 -8
- package/docs/API-reference/api/x-components.clearhistoryqueries.md +8 -4
- package/docs/API-reference/api/x-components.clearsearchinput.md +7 -11
- package/docs/API-reference/api/x-components.closemainmodal.md +1 -1
- package/docs/API-reference/api/x-components.collapseheight.md +18 -10
- package/docs/API-reference/api/x-components.collapsewidth.md +18 -10
- package/docs/API-reference/api/x-components.crossfade.md +2 -2
- package/docs/API-reference/api/x-components.debounce.md +9 -12
- package/docs/API-reference/api/x-components.devicedetector.md +27 -12
- package/docs/API-reference/api/x-components.displayemitter.md +4 -4
- package/docs/API-reference/api/x-components.editablenumberrangefilter.md +44 -20
- package/docs/API-reference/api/x-components.empathize.md +39 -20
- package/docs/API-reference/api/x-components.excludefilterswithnoresults.md +14 -10
- package/docs/API-reference/api/x-components.experiencecontrols.md +2 -11
- package/docs/API-reference/api/x-components.extraparams.md +12 -18
- package/docs/API-reference/api/{x-components.extrapluginsoptions.vue.md → x-components.extrapluginsoptions.app.md} +4 -4
- package/docs/API-reference/api/x-components.extrapluginsoptions.md +1 -1
- package/docs/API-reference/api/x-components.facets.md +28 -4
- package/docs/API-reference/api/x-components.facetsprovider.md +22 -17
- package/docs/API-reference/api/x-components.fade.md +2 -2
- package/docs/API-reference/api/x-components.fadeandslide.md +18 -12
- package/docs/API-reference/api/x-components.fallbackdisclaimer.md +5 -4
- package/docs/API-reference/api/x-components.filterslist.md +28 -12
- package/docs/API-reference/api/x-components.filterssearch.md +30 -13
- package/docs/API-reference/api/x-components.fixedheaderandasideslayout.md +13 -19
- package/docs/API-reference/api/x-components.getactiveelement.md +26 -0
- package/docs/API-reference/api/x-components.getrootxcomponent.md +3 -3
- package/docs/API-reference/api/x-components.getstateandgettersfrommodule.md +2 -2
- package/docs/API-reference/api/x-components.globalxbus.md +332 -2
- package/docs/API-reference/api/x-components.hierarchicalfilter.md +195 -18
- package/docs/API-reference/api/x-components.highlight.md +62 -12
- package/docs/API-reference/api/x-components.historyqueries.md +6 -4
- package/docs/API-reference/api/x-components.historyqueriesswitch.md +5 -11
- package/docs/API-reference/api/x-components.historyquery.md +21 -10
- package/docs/API-reference/api/x-components.identifierresult.md +15 -13
- package/docs/API-reference/api/x-components.identifierresults.md +19 -13
- package/docs/API-reference/api/x-components.infinitescroll.md +4 -2
- package/docs/API-reference/api/x-components.initwrapper.app.md +2 -2
- package/docs/API-reference/api/x-components.initwrapper.md +2 -2
- package/docs/API-reference/api/x-components.initwrapper.plugin.md +1 -1
- package/docs/API-reference/api/x-components.installxoptions.installextraplugins.md +2 -4
- package/docs/API-reference/api/x-components.installxoptions.md +3 -5
- package/docs/API-reference/api/x-components.installxoptions.oncreateapp.md +1 -1
- package/docs/API-reference/api/x-components.installxoptions.plugin.md +1 -1
- package/docs/API-reference/api/{x-components.installxoptions.app.md → x-components.installxoptions.rootcomponent.md} +3 -3
- package/docs/API-reference/api/x-components.isxcomponent.md +2 -2
- package/docs/API-reference/api/x-components.itemslist.md +11 -14
- package/docs/API-reference/api/x-components.locationprovider.md +4 -2
- package/docs/API-reference/api/x-components.mainmodal.md +31 -8
- package/docs/API-reference/api/x-components.mainscroll.md +4 -8
- package/docs/API-reference/api/x-components.mainscrollitem.md +6 -13
- package/docs/API-reference/api/x-components.md +97 -181
- package/docs/API-reference/api/x-components.multicolumnmaxwidthlayout.md +17 -10
- package/docs/API-reference/api/x-components.myhistory.md +30 -10
- package/docs/API-reference/api/x-components.nextqueries.md +20 -4
- package/docs/API-reference/api/x-components.nextquerieslist.md +7 -10
- package/docs/API-reference/api/x-components.nextquery.md +25 -12
- package/docs/API-reference/api/x-components.nextquerypreview.md +16 -19
- package/docs/API-reference/api/x-components.noanimation.md +15 -0
- package/docs/API-reference/api/x-components.numberrangefilter.md +27 -11
- package/docs/API-reference/api/x-components.openmainmodal.md +1 -1
- package/docs/API-reference/api/x-components.pageloaderbutton.md +2 -2
- package/docs/API-reference/api/x-components.partialquerybutton.md +15 -16
- package/docs/API-reference/api/x-components.partialresultslist.md +25 -12
- package/docs/API-reference/api/x-components.popularsearch.md +14 -11
- package/docs/API-reference/api/x-components.popularsearches.md +6 -4
- package/docs/API-reference/api/x-components.preselectedfilters.md +4 -2
- package/docs/API-reference/api/x-components.promoted.md +16 -10
- package/docs/API-reference/api/x-components.promotedslist.md +9 -12
- package/docs/API-reference/api/x-components.queriespreviewmutations.md +1 -0
- package/docs/API-reference/api/x-components.queriespreviewmutations.updateaquerypreviewresult.md +27 -0
- package/docs/API-reference/api/x-components.querypreview.md +16 -4
- package/docs/API-reference/api/x-components.querypreviewbutton.md +21 -12
- package/docs/API-reference/api/x-components.querypreviewlist.md +6 -9
- package/docs/API-reference/api/x-components.querysuggestion.md +17 -10
- package/docs/API-reference/api/x-components.querysuggestions.md +6 -4
- package/docs/API-reference/api/x-components.querysuggestionsconfig.hidesessionqueries.md +36 -0
- package/docs/API-reference/api/x-components.querysuggestionsconfig.md +1 -0
- package/docs/API-reference/api/x-components.querysuggestionsgetter.md +1 -1
- package/docs/API-reference/api/x-components.querysuggestionsgetter.querysuggestions.md +2 -2
- package/docs/API-reference/api/x-components.querysuggestionsmutations.md +1 -0
- package/docs/API-reference/api/x-components.querysuggestionsmutations.setsearchedqueries.md +24 -0
- package/docs/API-reference/api/x-components.querysuggestionsstate.md +1 -0
- package/docs/API-reference/api/x-components.querysuggestionsstate.searchedqueries.md +13 -0
- package/docs/API-reference/api/x-components.recommendations.md +18 -13
- package/docs/API-reference/api/x-components.redirection.md +31 -20
- package/docs/API-reference/api/x-components.relatedtag.md +28 -19
- package/docs/API-reference/api/x-components.relatedtags.md +31 -4
- package/docs/API-reference/api/x-components.removehistoryquery.md +16 -4
- package/docs/API-reference/api/x-components.renderlessextraparams.md +14 -11
- package/docs/API-reference/api/x-components.renderlessfilter.md +28 -18
- package/docs/API-reference/api/x-components.resetstateforreloadwire.md +13 -0
- package/docs/API-reference/api/x-components.resultslist.md +10 -12
- package/docs/API-reference/api/x-components.resultvariantselector.md +4 -5
- package/docs/API-reference/api/x-components.resultvariantsprovider.md +4 -29
- package/docs/API-reference/api/x-components.rootstorestateandgetters.md +3 -1
- package/docs/API-reference/api/x-components.scroll.md +21 -10
- package/docs/API-reference/api/x-components.scrolltotop.md +28 -12
- package/docs/API-reference/api/x-components.searchbutton.md +6 -17
- package/docs/API-reference/api/x-components.searchinput.md +53 -25
- package/docs/API-reference/api/x-components.searchinputplaceholder.md +37 -23
- package/docs/API-reference/api/x-components.searchmutations.md +1 -0
- package/docs/API-reference/api/x-components.searchmutations.resetstateforreload.md +17 -0
- package/docs/API-reference/api/x-components.searchxevents.md +1 -0
- package/docs/API-reference/api/x-components.searchxevents.reloadsearchrequested.md +13 -0
- package/docs/API-reference/api/x-components.selectedfilters.md +16 -4
- package/docs/API-reference/api/x-components.selectedfilterslist.md +23 -14
- package/docs/API-reference/api/x-components.semanticqueries.md +4 -16
- package/docs/API-reference/api/x-components.semanticquery.md +17 -11
- package/docs/API-reference/api/x-components.setsearchedqueriesinsuggestions.md +13 -0
- package/docs/API-reference/api/x-components.setupdevtools.md +3 -3
- package/docs/API-reference/api/x-components.simplefilter.md +187 -11
- package/docs/API-reference/api/x-components.singlecolumnlayout.md +17 -10
- package/docs/API-reference/api/x-components.slicedfilters.md +34 -11
- package/docs/API-reference/api/x-components.slidingpanel.md +48 -12
- package/docs/API-reference/api/x-components.snippetcallbacks.md +3 -1
- package/docs/API-reference/api/x-components.snippetconfigextraparams.md +22 -13
- package/docs/API-reference/api/x-components.sortdropdown.md +11 -9
- package/docs/API-reference/api/x-components.sortedfilters.md +16 -10
- package/docs/API-reference/api/x-components.sortlist.md +12 -12
- package/docs/API-reference/api/x-components.sortpickerlist.md +12 -12
- package/docs/API-reference/api/x-components.spellcheck.md +5 -11
- package/docs/API-reference/api/x-components.spellcheckbutton.md +6 -16
- package/docs/API-reference/api/x-components.staggeredfadeandslide.md +38 -12
- package/docs/API-reference/api/x-components.tagging.md +30 -21
- package/docs/API-reference/api/x-components.urlhandler.md +5 -18
- package/docs/API-reference/api/x-components.use_x.md +7 -2
- package/docs/API-reference/api/x-components.usecollapseanimation.md +30 -0
- package/docs/API-reference/api/x-components.usedebounce.md +28 -0
- package/docs/API-reference/api/x-components.usedisableanimation.md +28 -0
- package/docs/API-reference/api/x-components.usefacets.md +34 -0
- package/docs/API-reference/api/x-components.usefiltersinjection.md +29 -0
- package/docs/API-reference/api/x-components.usescroll.md +36 -0
- package/docs/API-reference/api/x-components.usexbus.md +28 -0
- package/docs/API-reference/api/x-components.wiremetadata.component.md +1 -1
- package/docs/API-reference/api/x-components.wiremetadata.md +1 -1
- package/docs/API-reference/api/x-components.xeventstypes.md +1 -1
- package/docs/API-reference/api/x-components.xeventstypes.userselectedaresultvariant.md +2 -1
- package/docs/API-reference/api/x-components.xinjectkey.md +2 -2
- package/docs/API-reference/api/x-components.xinstaller.init.md +1 -1
- package/docs/API-reference/components/common/animations/x-components.no-animation.md +10 -0
- package/docs/API-reference/components/common/animations/x-components.staggered-fade-and-slide.md +12 -10
- package/docs/API-reference/components/common/layouts/x-components.fixed-header-and-asides-layout.md +7 -3
- package/docs/API-reference/components/common/layouts/x-components.multi-column-max-width-layout.md +8 -4
- package/docs/API-reference/components/common/layouts/x-components.single-column-layout.md +8 -4
- package/docs/API-reference/components/common/modals/x-components.base-events-modal.md +6 -6
- package/docs/API-reference/components/common/modals/x-components.base-id-modal-close.md +3 -4
- package/docs/API-reference/components/common/modals/x-components.base-id-modal-open.md +3 -4
- package/docs/API-reference/components/common/modals/x-components.base-id-modal.md +4 -4
- package/docs/API-reference/components/common/modals/x-components.base-modal.md +9 -7
- package/docs/API-reference/components/common/modals/x-components.main-modal.md +46 -4
- package/docs/API-reference/components/common/panels/x-components.base-header-toggle-panel.md +5 -4
- package/docs/API-reference/components/common/panels/x-components.base-id-toggle-panel.md +5 -5
- package/docs/API-reference/components/common/panels/x-components.base-tabs-panel.md +10 -6
- package/docs/API-reference/components/common/result/x-components.base-result-image.md +6 -6
- package/docs/API-reference/components/common/result/x-components.result-variant-selector.md +4 -5
- package/docs/API-reference/components/common/result/x-components.result-variants-provider.md +0 -6
- package/docs/API-reference/components/common/scroll/x-components.base-scroll.md +7 -7
- package/docs/API-reference/components/common/suggestions/x-components.base-suggestions.md +8 -7
- package/docs/API-reference/components/common/x-components.base-dropdown.md +7 -7
- package/docs/API-reference/components/common/x-components.base-event-button.md +4 -3
- package/docs/API-reference/components/common/x-components.base-keyboard-navigation.md +4 -4
- package/docs/API-reference/components/common/x-components.base-switch.md +7 -8
- package/docs/API-reference/components/common/x-components.base-variable-column-grid.md +5 -5
- package/docs/API-reference/components/common/x-components.display-emitter.md +0 -6
- package/docs/API-reference/components/common/x-components.global-x-bus.md +9 -3
- package/docs/API-reference/components/common/x-components.highlight.md +7 -11
- package/docs/API-reference/components/common/x-components.sliding-panel.md +2 -0
- package/docs/API-reference/components/device/x-components.device-detector.md +5 -5
- package/docs/API-reference/components/empathize/x-components.empathize.md +6 -6
- package/docs/API-reference/components/extra-params/x-components.extra-params.md +3 -3
- package/docs/API-reference/components/extra-params/x-components.renderless-extra-param.md +3 -9
- package/docs/API-reference/components/extra-params/x-components.snippet-config-extra-params.md +4 -7
- package/docs/API-reference/components/facets/x-components.clear-filters.md +4 -4
- package/docs/API-reference/components/facets/x-components.facets/facets-provider.md +1 -1
- package/docs/API-reference/components/facets/x-components.facets/facets.md +6 -6
- package/docs/API-reference/components/facets/x-components.filters/editable-number-range-filter.md +7 -5
- package/docs/API-reference/components/facets/x-components.filters/hierarchical-filter.md +8 -5
- package/docs/API-reference/components/facets/x-components.filters/number-range-filter.md +5 -4
- package/docs/API-reference/components/facets/x-components.filters/renderless-filter.md +6 -5
- package/docs/API-reference/components/facets/x-components.filters/simple-filter.md +6 -5
- package/docs/API-reference/components/facets/x-components.lists/exclude-filters-with-no-results.md +4 -4
- package/docs/API-reference/components/facets/x-components.lists/filters-list.md +5 -5
- package/docs/API-reference/components/facets/x-components.lists/filters-search.md +5 -5
- package/docs/API-reference/components/facets/x-components.lists/selected-filters-list.md +5 -5
- package/docs/API-reference/components/facets/x-components.lists/selected-filters.md +4 -10
- package/docs/API-reference/components/facets/x-components.lists/sliced-filters.md +13 -5
- package/docs/API-reference/components/facets/x-components.lists/sorted-filters.md +4 -4
- package/docs/API-reference/components/history-queries/x-components.history-query.md +5 -3
- package/docs/API-reference/components/history-queries/x-components.my-history.md +5 -4
- package/docs/API-reference/components/identifier-results/x-components.identifier-results.md +4 -4
- package/docs/API-reference/components/next-queries/x-components.next-queries-list.md +0 -7
- package/docs/API-reference/components/next-queries/x-components.next-queries.md +4 -4
- package/docs/API-reference/components/queries-preview/x-components.query-preview-button.md +4 -3
- package/docs/API-reference/components/queries-preview/x-components.query-preview.md +3 -4
- package/docs/API-reference/components/recommendations/x-components.recommendations.md +7 -8
- package/docs/API-reference/components/related-tags/x-components.related-tags.md +6 -5
- package/docs/API-reference/components/scroll/x-components.main-scroll-item.md +4 -4
- package/docs/API-reference/components/scroll/x-components.main-scroll.md +1 -7
- package/docs/API-reference/components/scroll/x-components.scroll-to-top.md +5 -5
- package/docs/API-reference/components/search/x-components.banner.md +4 -3
- package/docs/API-reference/components/search/x-components.banners-list.md +2 -10
- package/docs/API-reference/components/search/x-components.partial-results-list.md +4 -4
- package/docs/API-reference/components/search/x-components.promoted.md +4 -3
- package/docs/API-reference/components/search/x-components.promoteds-list.md +2 -10
- package/docs/API-reference/components/search/x-components.results-list.md +0 -7
- package/docs/API-reference/components/search-box/x-components.search-input-placeholder.md +6 -6
- package/docs/API-reference/components/search-box/x-components.search-input.md +6 -8
- package/docs/API-reference/components/semantic-queries/x-components.semantic-queries.md +4 -5
- package/docs/API-reference/components/semantic-queries/x-components.semantic-query.md +3 -3
- package/docs/API-reference/components/tagging/x-components.tagging.md +2 -2
- package/facets/index.js +3 -3
- package/js/_virtual/_plugin-vue_export-helper.js +10 -0
- package/js/_virtual/_plugin-vue_export-helper.js.map +1 -0
- package/js/components/animations/animate-clip-path/animate-clip-path.style.scss.js +3 -12
- package/js/components/animations/animate-clip-path/animate-clip-path.style.scss.js.map +1 -1
- package/js/components/animations/animate-scale/animate-scale.style.scss.js +3 -12
- package/js/components/animations/animate-scale/animate-scale.style.scss.js.map +1 -1
- package/js/components/animations/animate-translate/animate-translate.style.scss.js +3 -12
- package/js/components/animations/animate-translate/animate-translate.style.scss.js.map +1 -1
- package/js/components/animations/animate-width.vue.js +14 -56
- package/js/components/animations/animate-width.vue.js.map +1 -1
- package/js/components/animations/animate-width.vue2.js +3 -4
- package/js/components/animations/animate-width.vue2.js.map +1 -1
- package/js/components/animations/animate-width.vue3.js +3 -12
- package/js/components/animations/animate-width.vue3.js.map +1 -1
- package/js/components/animations/collapse-height.vue.js +20 -63
- package/js/components/animations/collapse-height.vue.js.map +1 -1
- package/js/components/animations/collapse-height.vue2.js +19 -20
- package/js/components/animations/collapse-height.vue2.js.map +1 -1
- package/js/components/animations/collapse-height.vue3.js +3 -12
- package/js/components/animations/collapse-height.vue3.js.map +1 -1
- package/js/components/animations/collapse-width.vue.js +20 -63
- package/js/components/animations/collapse-width.vue.js.map +1 -1
- package/js/components/animations/collapse-width.vue2.js +19 -20
- package/js/components/animations/collapse-width.vue2.js.map +1 -1
- package/js/components/animations/collapse-width.vue3.js +3 -12
- package/js/components/animations/collapse-width.vue3.js.map +1 -1
- package/js/components/animations/create-directional-animation-factory.js +11 -16
- package/js/components/animations/create-directional-animation-factory.js.map +1 -1
- package/js/components/animations/cross-fade.vue.js +17 -56
- package/js/components/animations/cross-fade.vue.js.map +1 -1
- package/js/components/animations/cross-fade.vue2.js +2 -3
- package/js/components/animations/cross-fade.vue2.js.map +1 -1
- package/js/components/animations/cross-fade.vue3.js +3 -12
- package/js/components/animations/cross-fade.vue3.js.map +1 -1
- package/js/components/animations/fade-and-slide.vue.js +20 -59
- package/js/components/animations/fade-and-slide.vue.js.map +1 -1
- package/js/components/animations/fade-and-slide.vue2.js +23 -27
- package/js/components/animations/fade-and-slide.vue2.js.map +1 -1
- package/js/components/animations/fade-and-slide.vue3.js +3 -12
- package/js/components/animations/fade-and-slide.vue3.js.map +1 -1
- package/js/components/animations/fade.vue.js +17 -56
- package/js/components/animations/fade.vue.js.map +1 -1
- package/js/components/animations/fade.vue2.js +2 -3
- package/js/components/animations/fade.vue2.js.map +1 -1
- package/js/components/animations/fade.vue3.js +3 -12
- package/js/components/animations/fade.vue3.js.map +1 -1
- package/js/components/animations/no-animation.vue.js +15 -0
- package/js/components/animations/no-animation.vue.js.map +1 -0
- package/js/components/animations/no-animation.vue2.js +6 -0
- package/js/components/animations/no-animation.vue2.js.map +1 -0
- package/js/components/animations/staggered-fade-and-slide.vue.js +20 -59
- package/js/components/animations/staggered-fade-and-slide.vue.js.map +1 -1
- package/js/components/animations/staggered-fade-and-slide.vue2.js +91 -26
- package/js/components/animations/staggered-fade-and-slide.vue2.js.map +1 -1
- package/js/components/animations/staggered-fade-and-slide.vue3.js +3 -12
- package/js/components/animations/staggered-fade-and-slide.vue3.js.map +1 -1
- package/js/components/animations/use-collapse-animation.js +58 -0
- package/js/components/animations/use-collapse-animation.js.map +1 -0
- package/js/components/animations/use-disable-animation.js +27 -0
- package/js/components/animations/use-disable-animation.js.map +1 -0
- package/js/components/auto-progress-bar.vue.js +25 -57
- package/js/components/auto-progress-bar.vue.js.map +1 -1
- package/js/components/auto-progress-bar.vue2.js +3 -2
- package/js/components/auto-progress-bar.vue2.js.map +1 -1
- package/js/components/auto-progress-bar.vue3.js +3 -12
- package/js/components/auto-progress-bar.vue3.js.map +1 -1
- package/js/components/base-dropdown.vue.js +109 -240
- package/js/components/base-dropdown.vue.js.map +1 -1
- package/js/components/base-dropdown.vue2.js +25 -7
- package/js/components/base-dropdown.vue2.js.map +1 -1
- package/js/components/base-dropdown.vue3.js +3 -12
- package/js/components/base-dropdown.vue3.js.map +1 -1
- package/js/components/base-event-button.vue.js +19 -54
- package/js/components/base-event-button.vue.js.map +1 -1
- package/js/components/base-event-button.vue2.js +11 -3
- package/js/components/base-event-button.vue2.js.map +1 -1
- package/js/components/base-grid.vue.js +58 -79
- package/js/components/base-grid.vue.js.map +1 -1
- package/js/components/base-grid.vue2.js +23 -56
- package/js/components/base-grid.vue2.js.map +1 -1
- package/js/components/base-grid.vue3.js +3 -12
- package/js/components/base-grid.vue3.js.map +1 -1
- package/js/components/base-keyboard-navigation.vue.js +18 -78
- package/js/components/base-keyboard-navigation.vue.js.map +1 -1
- package/js/components/base-keyboard-navigation.vue2.js +117 -89
- package/js/components/base-keyboard-navigation.vue2.js.map +1 -1
- package/js/components/base-rating.vue.js +62 -96
- package/js/components/base-rating.vue.js.map +1 -1
- package/js/components/base-rating.vue2.js +4 -4
- package/js/components/base-rating.vue2.js.map +1 -1
- package/js/components/base-rating.vue3.js +3 -12
- package/js/components/base-rating.vue3.js.map +1 -1
- package/js/components/base-switch.vue.js +25 -52
- package/js/components/base-switch.vue.js.map +1 -1
- package/js/components/base-switch.vue2.js +9 -10
- package/js/components/base-switch.vue2.js.map +1 -1
- package/js/components/base-switch.vue3.js +3 -12
- package/js/components/base-switch.vue3.js.map +1 -1
- package/js/components/base-variable-column-grid.vue.js +26 -65
- package/js/components/base-variable-column-grid.vue.js.map +1 -1
- package/js/components/base-variable-column-grid.vue2.js +65 -51
- package/js/components/base-variable-column-grid.vue2.js.map +1 -1
- package/js/components/column-picker/base-column-picker-dropdown.vue.js +31 -85
- package/js/components/column-picker/base-column-picker-dropdown.vue.js.map +1 -1
- package/js/components/column-picker/base-column-picker-dropdown.vue2.js +5 -5
- package/js/components/column-picker/base-column-picker-dropdown.vue2.js.map +1 -1
- package/js/components/column-picker/base-column-picker-list.vue.js +53 -89
- package/js/components/column-picker/base-column-picker-list.vue.js.map +1 -1
- package/js/components/column-picker/base-column-picker-list.vue2.js +5 -5
- package/js/components/column-picker/base-column-picker-list.vue2.js.map +1 -1
- package/js/components/currency/base-currency.vue.js +17 -45
- package/js/components/currency/base-currency.vue.js.map +1 -1
- package/js/components/currency/base-currency.vue2.js +2 -2
- package/js/components/currency/base-currency.vue2.js.map +1 -1
- package/js/components/decorators/injection.consts.js.map +1 -1
- package/js/components/display-emitter.vue.js +41 -44
- package/js/components/display-emitter.vue.js.map +1 -1
- package/js/components/display-emitter.vue2.js +3 -43
- package/js/components/display-emitter.vue2.js.map +1 -1
- package/js/components/filters/labels/base-price-filter-label.vue.js +84 -36
- package/js/components/filters/labels/base-price-filter-label.vue.js.map +1 -1
- package/js/components/filters/labels/base-price-filter-label.vue2.js +3 -89
- package/js/components/filters/labels/base-price-filter-label.vue2.js.map +1 -1
- package/js/components/filters/labels/base-rating-filter-label.vue.js +25 -67
- package/js/components/filters/labels/base-rating-filter-label.vue.js.map +1 -1
- package/js/components/filters/labels/base-rating-filter-label.vue2.js +4 -4
- package/js/components/filters/labels/base-rating-filter-label.vue2.js.map +1 -1
- package/js/components/global-x-bus.vue.js +31 -36
- package/js/components/global-x-bus.vue.js.map +1 -1
- package/js/components/global-x-bus.vue2.js +3 -36
- package/js/components/global-x-bus.vue2.js.map +1 -1
- package/js/components/highlight.vue.js +34 -86
- package/js/components/highlight.vue.js.map +1 -1
- package/js/components/highlight.vue2.js +111 -83
- package/js/components/highlight.vue2.js.map +1 -1
- package/js/components/icons/arrow-down.vue.js +31 -69
- package/js/components/icons/arrow-down.vue.js.map +1 -1
- package/js/components/icons/arrow-left.vue.js +31 -69
- package/js/components/icons/arrow-left.vue.js.map +1 -1
- package/js/components/icons/arrow-right.vue.js +31 -69
- package/js/components/icons/arrow-right.vue.js.map +1 -1
- package/js/components/icons/arrow-up.vue.js +31 -69
- package/js/components/icons/arrow-up.vue.js.map +1 -1
- package/js/components/icons/bag.vue.js +31 -69
- package/js/components/icons/bag.vue.js.map +1 -1
- package/js/components/icons/bar-code.vue.js +22 -59
- package/js/components/icons/bar-code.vue.js.map +1 -1
- package/js/components/icons/barcode-tiny.vue.js +22 -59
- package/js/components/icons/barcode-tiny.vue.js.map +1 -1
- package/js/components/icons/cart-filled.vue.js +37 -76
- package/js/components/icons/cart-filled.vue.js.map +1 -1
- package/js/components/icons/cart.vue.js +31 -69
- package/js/components/icons/cart.vue.js.map +1 -1
- package/js/components/icons/check-tiny.vue.js +23 -60
- package/js/components/icons/check-tiny.vue.js.map +1 -1
- package/js/components/icons/check.vue.js +23 -60
- package/js/components/icons/check.vue.js.map +1 -1
- package/js/components/icons/checkbox-selected-filled.vue.js +35 -73
- package/js/components/icons/checkbox-selected-filled.vue.js.map +1 -1
- package/js/components/icons/checkbox-selected.vue.js +34 -72
- package/js/components/icons/checkbox-selected.vue.js.map +1 -1
- package/js/components/icons/checkbox-unselected-filled.vue.js +27 -64
- package/js/components/icons/checkbox-unselected-filled.vue.js.map +1 -1
- package/js/components/icons/checkbox-unselected.vue.js +26 -63
- package/js/components/icons/checkbox-unselected.vue.js.map +1 -1
- package/js/components/icons/chevron-down.vue.js +23 -60
- package/js/components/icons/chevron-down.vue.js.map +1 -1
- package/js/components/icons/chevron-left.vue.js +23 -60
- package/js/components/icons/chevron-left.vue.js.map +1 -1
- package/js/components/icons/chevron-right.vue.js +23 -60
- package/js/components/icons/chevron-right.vue.js.map +1 -1
- package/js/components/icons/chevron-tiny-down.vue.js +23 -60
- package/js/components/icons/chevron-tiny-down.vue.js.map +1 -1
- package/js/components/icons/chevron-tiny-left.vue.js +23 -60
- package/js/components/icons/chevron-tiny-left.vue.js.map +1 -1
- package/js/components/icons/chevron-tiny-right.vue.js +23 -60
- package/js/components/icons/chevron-tiny-right.vue.js.map +1 -1
- package/js/components/icons/chevron-tiny-up.vue.js +23 -60
- package/js/components/icons/chevron-tiny-up.vue.js.map +1 -1
- package/js/components/icons/chevron-up.vue.js +23 -60
- package/js/components/icons/chevron-up.vue.js.map +1 -1
- package/js/components/icons/corner-arrow-left.vue.js +23 -60
- package/js/components/icons/corner-arrow-left.vue.js.map +1 -1
- package/js/components/icons/corner-arrow-right.vue.js +23 -60
- package/js/components/icons/corner-arrow-right.vue.js.map +1 -1
- package/js/components/icons/cross-tiny.vue.js +23 -60
- package/js/components/icons/cross-tiny.vue.js.map +1 -1
- package/js/components/icons/cross.vue.js +23 -60
- package/js/components/icons/cross.vue.js.map +1 -1
- package/js/components/icons/curated-check-filled.vue.js +34 -72
- package/js/components/icons/curated-check-filled.vue.js.map +1 -1
- package/js/components/icons/curated-check-tiny-filled.vue.js +34 -72
- package/js/components/icons/curated-check-tiny-filled.vue.js.map +1 -1
- package/js/components/icons/curated-check-tiny.vue.js +33 -71
- package/js/components/icons/curated-check-tiny.vue.js.map +1 -1
- package/js/components/icons/curated-check.vue.js +33 -71
- package/js/components/icons/curated-check.vue.js.map +1 -1
- package/js/components/icons/diagonal-arrow-left-down.vue.js +23 -60
- package/js/components/icons/diagonal-arrow-left-down.vue.js.map +1 -1
- package/js/components/icons/diagonal-arrow-left-top.vue.js +23 -60
- package/js/components/icons/diagonal-arrow-left-top.vue.js.map +1 -1
- package/js/components/icons/diagonal-arrow-right-down.vue.js +23 -60
- package/js/components/icons/diagonal-arrow-right-down.vue.js.map +1 -1
- package/js/components/icons/diagonal-arrow-right-top.vue.js +23 -60
- package/js/components/icons/diagonal-arrow-right-top.vue.js.map +1 -1
- package/js/components/icons/filters.vue.js +22 -59
- package/js/components/icons/filters.vue.js.map +1 -1
- package/js/components/icons/grid-1-col.vue.js +22 -59
- package/js/components/icons/grid-1-col.vue.js.map +1 -1
- package/js/components/icons/grid-2-col.vue.js +22 -59
- package/js/components/icons/grid-2-col.vue.js.map +1 -1
- package/js/components/icons/grid-2-rows.vue.js +34 -66
- package/js/components/icons/grid-2-rows.vue.js.map +1 -1
- package/js/components/icons/grid-4-col.vue.js +22 -59
- package/js/components/icons/grid-4-col.vue.js.map +1 -1
- package/js/components/icons/heart-filled.vue.js +24 -61
- package/js/components/icons/heart-filled.vue.js.map +1 -1
- package/js/components/icons/heart.vue.js +23 -60
- package/js/components/icons/heart.vue.js.map +1 -1
- package/js/components/icons/hide.vue.js +23 -60
- package/js/components/icons/hide.vue.js.map +1 -1
- package/js/components/icons/history-tiny.vue.js +31 -69
- package/js/components/icons/history-tiny.vue.js.map +1 -1
- package/js/components/icons/history.vue.js +31 -69
- package/js/components/icons/history.vue.js.map +1 -1
- package/js/components/icons/light-bulb-off.vue.js +29 -67
- package/js/components/icons/light-bulb-off.vue.js.map +1 -1
- package/js/components/icons/light-bulb-on.vue.js +36 -75
- package/js/components/icons/light-bulb-on.vue.js.map +1 -1
- package/js/components/icons/menu.vue.js +23 -60
- package/js/components/icons/menu.vue.js.map +1 -1
- package/js/components/icons/minus-tiny.vue.js +23 -60
- package/js/components/icons/minus-tiny.vue.js.map +1 -1
- package/js/components/icons/minus.vue.js +23 -60
- package/js/components/icons/minus.vue.js.map +1 -1
- package/js/components/icons/plus-tiny.vue.js +23 -60
- package/js/components/icons/plus-tiny.vue.js.map +1 -1
- package/js/components/icons/plus.vue.js +23 -60
- package/js/components/icons/plus.vue.js.map +1 -1
- package/js/components/icons/radiobutton-selected.vue.js +17 -75
- package/js/components/icons/radiobutton-selected.vue.js.map +1 -1
- package/js/components/icons/radiobutton-unselected.vue.js +35 -67
- package/js/components/icons/radiobutton-unselected.vue.js.map +1 -1
- package/js/components/icons/search-tiny.vue.js +23 -60
- package/js/components/icons/search-tiny.vue.js.map +1 -1
- package/js/components/icons/search.vue.js +23 -60
- package/js/components/icons/search.vue.js.map +1 -1
- package/js/components/icons/settings.vue.js +17 -76
- package/js/components/icons/settings.vue.js.map +1 -1
- package/js/components/icons/show.vue.js +33 -71
- package/js/components/icons/show.vue.js.map +1 -1
- package/js/components/icons/sort-az.vue.js +48 -88
- package/js/components/icons/sort-az.vue.js.map +1 -1
- package/js/components/icons/sort-price-down.vue.js +17 -96
- package/js/components/icons/sort-price-down.vue.js.map +1 -1
- package/js/components/icons/sort-price-up.vue.js +17 -96
- package/js/components/icons/sort-price-up.vue.js.map +1 -1
- package/js/components/icons/sort-relevancy.vue.js +39 -78
- package/js/components/icons/sort-relevancy.vue.js.map +1 -1
- package/js/components/icons/sort-za.vue.js +48 -88
- package/js/components/icons/sort-za.vue.js.map +1 -1
- package/js/components/icons/star-filled.vue.js +38 -70
- package/js/components/icons/star-filled.vue.js.map +1 -1
- package/js/components/icons/star.vue.js +25 -62
- package/js/components/icons/star.vue.js.map +1 -1
- package/js/components/icons/tag-filled.vue.js +32 -70
- package/js/components/icons/tag-filled.vue.js.map +1 -1
- package/js/components/icons/tag.vue.js +31 -69
- package/js/components/icons/tag.vue.js.map +1 -1
- package/js/components/icons/trash-open.vue.js +17 -96
- package/js/components/icons/trash-open.vue.js.map +1 -1
- package/js/components/icons/trash.vue.js +17 -96
- package/js/components/icons/trash.vue.js.map +1 -1
- package/js/components/icons/trending-tiny.vue.js +31 -69
- package/js/components/icons/trending-tiny.vue.js.map +1 -1
- package/js/components/icons/trending.vue.js +31 -69
- package/js/components/icons/trending.vue.js.map +1 -1
- package/js/components/icons/user-filled.vue.js +28 -66
- package/js/components/icons/user-filled.vue.js.map +1 -1
- package/js/components/icons/user.vue.js +23 -60
- package/js/components/icons/user.vue.js.map +1 -1
- package/js/components/items-list.vue.js +40 -74
- package/js/components/items-list.vue.js.map +1 -1
- package/js/components/items-list.vue2.js +15 -33
- package/js/components/items-list.vue2.js.map +1 -1
- package/js/components/layouts/fixed-header-and-asides-layout.vue.js +152 -230
- package/js/components/layouts/fixed-header-and-asides-layout.vue.js.map +1 -1
- package/js/components/layouts/fixed-header-and-asides-layout.vue2.js +27 -31
- package/js/components/layouts/fixed-header-and-asides-layout.vue2.js.map +1 -1
- package/js/components/layouts/fixed-header-and-asides-layout.vue3.js +3 -12
- package/js/components/layouts/fixed-header-and-asides-layout.vue3.js.map +1 -1
- package/js/components/layouts/multi-column-max-width-layout.vue.js +185 -280
- package/js/components/layouts/multi-column-max-width-layout.vue.js.map +1 -1
- package/js/components/layouts/multi-column-max-width-layout.vue2.js +20 -20
- package/js/components/layouts/multi-column-max-width-layout.vue2.js.map +1 -1
- package/js/components/layouts/multi-column-max-width-layout.vue3.js +3 -12
- package/js/components/layouts/multi-column-max-width-layout.vue3.js.map +1 -1
- package/js/components/layouts/multi-column-max-width-layout.vue4.js +3 -12
- package/js/components/layouts/multi-column-max-width-layout.vue4.js.map +1 -1
- package/js/components/layouts/single-column-layout.vue.js +159 -228
- package/js/components/layouts/single-column-layout.vue.js.map +1 -1
- package/js/components/layouts/single-column-layout.vue2.js +20 -20
- package/js/components/layouts/single-column-layout.vue2.js.map +1 -1
- package/js/components/layouts/single-column-layout.vue3.js +3 -12
- package/js/components/layouts/single-column-layout.vue3.js.map +1 -1
- package/js/components/location-provider.vue.js +27 -36
- package/js/components/location-provider.vue.js.map +1 -1
- package/js/components/location-provider.vue2.js +3 -28
- package/js/components/location-provider.vue2.js.map +1 -1
- package/js/components/modals/base-events-modal-close.vue.js +21 -59
- package/js/components/modals/base-events-modal-close.vue.js.map +1 -1
- package/js/components/modals/base-events-modal-close.vue2.js +4 -4
- package/js/components/modals/base-events-modal-close.vue2.js.map +1 -1
- package/js/components/modals/base-events-modal-open.vue.js +21 -59
- package/js/components/modals/base-events-modal-open.vue.js.map +1 -1
- package/js/components/modals/base-events-modal-open.vue2.js +4 -4
- package/js/components/modals/base-events-modal-open.vue2.js.map +1 -1
- package/js/components/modals/base-events-modal.vue.js +21 -60
- package/js/components/modals/base-events-modal.vue.js.map +1 -1
- package/js/components/modals/base-events-modal.vue2.js +72 -76
- package/js/components/modals/base-events-modal.vue2.js.map +1 -1
- package/js/components/modals/base-id-modal-close.vue.js +15 -67
- package/js/components/modals/base-id-modal-close.vue.js.map +1 -1
- package/js/components/modals/base-id-modal-close.vue2.js +16 -22
- package/js/components/modals/base-id-modal-close.vue2.js.map +1 -1
- package/js/components/modals/base-id-modal-open.vue.js +15 -67
- package/js/components/modals/base-id-modal-open.vue.js.map +1 -1
- package/js/components/modals/base-id-modal-open.vue2.js +16 -20
- package/js/components/modals/base-id-modal-open.vue2.js.map +1 -1
- package/js/components/modals/base-id-modal.vue.js +21 -60
- package/js/components/modals/base-id-modal.vue.js.map +1 -1
- package/js/components/modals/base-id-modal.vue2.js +89 -66
- package/js/components/modals/base-id-modal.vue2.js.map +1 -1
- package/js/components/modals/base-modal.vue.js +66 -97
- package/js/components/modals/base-modal.vue.js.map +1 -1
- package/js/components/modals/base-modal.vue2.js +191 -170
- package/js/components/modals/base-modal.vue2.js.map +1 -1
- package/js/components/modals/base-modal.vue3.js +3 -12
- package/js/components/modals/base-modal.vue3.js.map +1 -1
- package/js/components/modals/close-main-modal.vue.js +19 -58
- package/js/components/modals/close-main-modal.vue.js.map +1 -1
- package/js/components/modals/close-main-modal.vue2.js +4 -4
- package/js/components/modals/close-main-modal.vue2.js.map +1 -1
- package/js/components/modals/main-modal.vue.js +23 -64
- package/js/components/modals/main-modal.vue.js.map +1 -1
- package/js/components/modals/main-modal.vue2.js +20 -24
- package/js/components/modals/main-modal.vue2.js.map +1 -1
- package/js/components/modals/open-main-modal.vue.js +19 -58
- package/js/components/modals/open-main-modal.vue.js.map +1 -1
- package/js/components/modals/open-main-modal.vue2.js +4 -4
- package/js/components/modals/open-main-modal.vue2.js.map +1 -1
- package/js/components/page-loader-button.vue.js +48 -106
- package/js/components/page-loader-button.vue.js.map +1 -1
- package/js/components/page-loader-button.vue2.js +9 -8
- package/js/components/page-loader-button.vue2.js.map +1 -1
- package/js/components/panels/base-header-toggle-panel.vue.js +38 -73
- package/js/components/panels/base-header-toggle-panel.vue.js.map +1 -1
- package/js/components/panels/base-header-toggle-panel.vue2.js +60 -42
- package/js/components/panels/base-header-toggle-panel.vue2.js.map +1 -1
- package/js/components/panels/base-header-toggle-panel.vue3.js +3 -12
- package/js/components/panels/base-header-toggle-panel.vue3.js.map +1 -1
- package/js/components/panels/base-id-toggle-panel-button.vue.js +21 -59
- package/js/components/panels/base-id-toggle-panel-button.vue.js.map +1 -1
- package/js/components/panels/base-id-toggle-panel-button.vue2.js +58 -45
- package/js/components/panels/base-id-toggle-panel-button.vue2.js.map +1 -1
- package/js/components/panels/base-id-toggle-panel.vue.js +19 -49
- package/js/components/panels/base-id-toggle-panel.vue.js.map +1 -1
- package/js/components/panels/base-id-toggle-panel.vue2.js +89 -61
- package/js/components/panels/base-id-toggle-panel.vue2.js.map +1 -1
- package/js/components/panels/base-tabs-panel.vue.js +70 -141
- package/js/components/panels/base-tabs-panel.vue.js.map +1 -1
- package/js/components/panels/base-tabs-panel.vue2.js +112 -64
- package/js/components/panels/base-tabs-panel.vue2.js.map +1 -1
- package/js/components/panels/base-tabs-panel.vue3.js +3 -12
- package/js/components/panels/base-tabs-panel.vue3.js.map +1 -1
- package/js/components/panels/base-toggle-panel.vue.js +21 -55
- package/js/components/panels/base-toggle-panel.vue.js.map +1 -1
- package/js/components/panels/base-toggle-panel.vue2.js +2 -2
- package/js/components/panels/base-toggle-panel.vue2.js.map +1 -1
- package/js/components/result/base-result-add-to-cart.vue.js +20 -55
- package/js/components/result/base-result-add-to-cart.vue.js.map +1 -1
- package/js/components/result/base-result-add-to-cart.vue2.js +4 -4
- package/js/components/result/base-result-add-to-cart.vue2.js.map +1 -1
- package/js/components/result/base-result-current-price.vue.js +19 -58
- package/js/components/result/base-result-current-price.vue.js.map +1 -1
- package/js/components/result/base-result-current-price.vue2.js +4 -4
- package/js/components/result/base-result-current-price.vue2.js.map +1 -1
- package/js/components/result/base-result-fallback-image.vue.js +31 -64
- package/js/components/result/base-result-fallback-image.vue.js.map +1 -1
- package/js/components/result/base-result-image.vue.js +64 -94
- package/js/components/result/base-result-image.vue.js.map +1 -1
- package/js/components/result/base-result-image.vue2.js +24 -19
- package/js/components/result/base-result-image.vue2.js.map +1 -1
- package/js/components/result/base-result-image.vue3.js +3 -12
- package/js/components/result/base-result-image.vue3.js.map +1 -1
- package/js/components/result/base-result-link.vue.js +20 -64
- package/js/components/result/base-result-link.vue.js.map +1 -1
- package/js/components/result/base-result-link.vue2.js +7 -6
- package/js/components/result/base-result-link.vue2.js.map +1 -1
- package/js/components/result/base-result-link.vue3.js +3 -12
- package/js/components/result/base-result-link.vue3.js.map +1 -1
- package/js/components/result/base-result-placeholder-image.vue.js +30 -63
- package/js/components/result/base-result-placeholder-image.vue.js.map +1 -1
- package/js/components/result/base-result-previous-price.vue.js +21 -68
- package/js/components/result/base-result-previous-price.vue.js.map +1 -1
- package/js/components/result/base-result-previous-price.vue2.js +4 -4
- package/js/components/result/base-result-previous-price.vue2.js.map +1 -1
- package/js/components/result/base-result-rating.vue.js +41 -96
- package/js/components/result/base-result-rating.vue.js.map +1 -1
- package/js/components/result/base-result-rating.vue2.js +10 -8
- package/js/components/result/base-result-rating.vue2.js.map +1 -1
- package/js/components/result/base-result-rating.vue3.js +3 -12
- package/js/components/result/base-result-rating.vue3.js.map +1 -1
- package/js/components/result/result-variant-selector.vue.js +58 -128
- package/js/components/result/result-variant-selector.vue.js.map +1 -1
- package/js/components/result/result-variant-selector.vue2.js +30 -34
- package/js/components/result/result-variant-selector.vue2.js.map +1 -1
- package/js/components/result/result-variant-selector.vue3.js +3 -12
- package/js/components/result/result-variant-selector.vue3.js.map +1 -1
- package/js/components/result/result-variants-provider.vue.js +122 -36
- package/js/components/result/result-variants-provider.vue.js.map +1 -1
- package/js/components/result/result-variants-provider.vue2.js +3 -150
- package/js/components/result/result-variants-provider.vue2.js.map +1 -1
- package/js/components/scroll/base-scroll.vue.js +17 -49
- package/js/components/scroll/base-scroll.vue.js.map +1 -1
- package/js/components/scroll/base-scroll.vue2.js +77 -11
- package/js/components/scroll/base-scroll.vue2.js.map +1 -1
- package/js/components/scroll/use-scroll.js +219 -0
- package/js/components/scroll/use-scroll.js.map +1 -0
- package/js/components/sliding-panel.vue.js +66 -102
- package/js/components/sliding-panel.vue.js.map +1 -1
- package/js/components/sliding-panel.vue2.js +113 -137
- package/js/components/sliding-panel.vue2.js.map +1 -1
- package/js/components/sliding-panel.vue3.js +3 -12
- package/js/components/sliding-panel.vue3.js.map +1 -1
- package/js/components/snippet-callbacks.vue.js +9 -44
- package/js/components/snippet-callbacks.vue.js.map +1 -1
- package/js/components/snippet-callbacks.vue2.js +4 -4
- package/js/components/snippet-callbacks.vue2.js.map +1 -1
- package/js/components/suggestions/base-suggestion.vue.js +34 -70
- package/js/components/suggestions/base-suggestion.vue.js.map +1 -1
- package/js/components/suggestions/base-suggestion.vue2.js +9 -8
- package/js/components/suggestions/base-suggestion.vue2.js.map +1 -1
- package/js/components/suggestions/base-suggestions.vue.js +32 -65
- package/js/components/suggestions/base-suggestions.vue.js.map +1 -1
- package/js/components/suggestions/base-suggestions.vue2.js +115 -96
- package/js/components/suggestions/base-suggestions.vue2.js.map +1 -1
- package/js/components/suggestions/base-suggestions.vue3.js +3 -12
- package/js/components/suggestions/base-suggestions.vue3.js.map +1 -1
- package/js/components/x-component.utils.js.map +1 -1
- package/js/composables/{create-use-device.composable.js → create-use-device.js} +1 -1
- package/js/composables/create-use-device.js.map +1 -0
- package/js/composables/use-_x.js.map +1 -1
- package/js/composables/use-alias-api.js +1 -1
- package/js/composables/use-debounce.js +23 -0
- package/js/composables/use-debounce.js.map +1 -0
- package/js/composables/use-getter.js +1 -2
- package/js/composables/use-getter.js.map +1 -1
- package/js/composables/use-store.js +2 -2
- package/js/composables/use-store.js.map +1 -1
- package/js/composables/use-x-bus.js +26 -14
- package/js/composables/use-x-bus.js.map +1 -1
- package/js/directives/{infinite-scroll/infinite-scroll.js → infinite-scroll.js} +49 -54
- package/js/directives/infinite-scroll.js.map +1 -0
- package/js/index.js +16 -25
- package/js/index.js.map +1 -1
- package/js/plugins/devtools/devtools.plugin.js +2 -2
- package/js/plugins/devtools/devtools.plugin.js.map +1 -1
- package/js/plugins/x-emitters.js.map +1 -1
- package/js/plugins/x-plugin.js +6 -24
- package/js/plugins/x-plugin.js.map +1 -1
- package/js/services/directional-focus-navigation.service.js +6 -3
- package/js/services/directional-focus-navigation.service.js.map +1 -1
- package/js/store/utils/config-store.utils.js +1 -3
- package/js/store/utils/config-store.utils.js.map +1 -1
- package/js/store/utils/getters-proxy.utils.js +3 -2
- package/js/store/utils/getters-proxy.utils.js.map +1 -1
- package/js/store/utils/query.utils.js.map +1 -1
- package/js/store/utils/status-store.utils.js.map +1 -1
- package/js/store/x.module.js +1 -21
- package/js/store/x.module.js.map +1 -1
- package/js/utils/currency-formatter.js.map +1 -1
- package/js/utils/html.js +21 -1
- package/js/utils/html.js.map +1 -1
- package/js/wiring/namespaced-wires.operators.js.map +1 -1
- package/js/wiring/wiring.utils.js.map +1 -1
- package/js/x-installer/x-installer/x-installer.js +20 -48
- package/js/x-installer/x-installer/x-installer.js.map +1 -1
- package/js/x-modules/device/components/device-detector.vue.js +13 -49
- package/js/x-modules/device/components/device-detector.vue.js.map +1 -1
- package/js/x-modules/device/components/device-detector.vue2.js +104 -99
- package/js/x-modules/device/components/device-detector.vue2.js.map +1 -1
- package/js/x-modules/device/x-module.js +3 -1
- package/js/x-modules/device/x-module.js.map +1 -1
- package/js/x-modules/empathize/components/empathize.vue.js +32 -79
- package/js/x-modules/empathize/components/empathize.vue.js.map +1 -1
- package/js/x-modules/empathize/components/empathize.vue2.js +173 -106
- package/js/x-modules/empathize/components/empathize.vue2.js.map +1 -1
- package/js/x-modules/empathize/x-module.js +3 -1
- package/js/x-modules/empathize/x-module.js.map +1 -1
- package/js/x-modules/experience-controls/components/experience-controls.vue.js +30 -36
- package/js/x-modules/experience-controls/components/experience-controls.vue.js.map +1 -1
- package/js/x-modules/experience-controls/components/experience-controls.vue2.js +3 -36
- package/js/x-modules/experience-controls/components/experience-controls.vue2.js.map +1 -1
- package/js/x-modules/experience-controls/store/module.js +2 -3
- package/js/x-modules/experience-controls/store/module.js.map +1 -1
- package/js/x-modules/experience-controls/x-module.js +10 -1
- package/js/x-modules/experience-controls/x-module.js.map +1 -1
- package/js/x-modules/extra-params/components/extra-params.vue.js +32 -36
- package/js/x-modules/extra-params/components/extra-params.vue.js.map +1 -1
- package/js/x-modules/extra-params/components/extra-params.vue2.js +3 -181
- package/js/x-modules/extra-params/components/extra-params.vue2.js.map +1 -1
- package/js/x-modules/extra-params/components/renderless-extra-param.vue.js +37 -53
- package/js/x-modules/extra-params/components/renderless-extra-param.vue.js.map +1 -1
- package/js/x-modules/extra-params/components/renderless-extra-param.vue2.js +3 -194
- package/js/x-modules/extra-params/components/renderless-extra-param.vue2.js.map +1 -1
- package/js/x-modules/extra-params/components/snippet-config-extra-params.vue.js +9 -44
- package/js/x-modules/extra-params/components/snippet-config-extra-params.vue.js.map +1 -1
- package/js/x-modules/extra-params/components/snippet-config-extra-params.vue2.js +43 -69
- package/js/x-modules/extra-params/components/snippet-config-extra-params.vue2.js.map +1 -1
- package/js/x-modules/extra-params/x-module.js +10 -1
- package/js/x-modules/extra-params/x-module.js.map +1 -1
- package/js/x-modules/facets/components/clear-filters.vue.js +27 -71
- package/js/x-modules/facets/components/clear-filters.vue.js.map +1 -1
- package/js/x-modules/facets/components/clear-filters.vue2.js +39 -184
- package/js/x-modules/facets/components/clear-filters.vue2.js.map +1 -1
- package/js/x-modules/facets/components/facets/facets-provider.vue.js +4 -35
- package/js/x-modules/facets/components/facets/facets-provider.vue.js.map +1 -1
- package/js/x-modules/facets/components/facets/facets-provider.vue2.js +79 -221
- package/js/x-modules/facets/components/facets/facets-provider.vue2.js.map +1 -1
- package/js/x-modules/facets/components/facets/facets-provider.vue3.js +3 -12
- package/js/x-modules/facets/components/facets/facets-provider.vue3.js.map +1 -1
- package/js/x-modules/facets/components/facets/facets.vue.js +69 -96
- package/js/x-modules/facets/components/facets/facets.vue.js.map +1 -1
- package/js/x-modules/facets/components/facets/facets.vue2.js +119 -91
- package/js/x-modules/facets/components/facets/facets.vue2.js.map +1 -1
- package/js/x-modules/facets/components/facets/facets.vue3.js +3 -12
- package/js/x-modules/facets/components/facets/facets.vue3.js.map +1 -1
- package/js/x-modules/facets/components/filters/all-filter.vue.js +27 -66
- package/js/x-modules/facets/components/filters/all-filter.vue.js.map +1 -1
- package/js/x-modules/facets/components/filters/all-filter.vue2.js +55 -196
- package/js/x-modules/facets/components/filters/all-filter.vue2.js.map +1 -1
- package/js/x-modules/facets/components/filters/editable-number-range-filter.vue.js +75 -137
- package/js/x-modules/facets/components/filters/editable-number-range-filter.vue.js.map +1 -1
- package/js/x-modules/facets/components/filters/editable-number-range-filter.vue2.js +208 -331
- package/js/x-modules/facets/components/filters/editable-number-range-filter.vue2.js.map +1 -1
- package/js/x-modules/facets/components/filters/editable-number-range-filter.vue3.js +3 -12
- package/js/x-modules/facets/components/filters/editable-number-range-filter.vue3.js.map +1 -1
- package/js/x-modules/facets/components/filters/hierarchical-filter.vue.js +74 -170
- package/js/x-modules/facets/components/filters/hierarchical-filter.vue.js.map +1 -1
- package/js/x-modules/facets/components/filters/hierarchical-filter.vue2.js +105 -99
- package/js/x-modules/facets/components/filters/hierarchical-filter.vue2.js.map +1 -1
- package/js/x-modules/facets/components/filters/number-range-filter.vue.js +44 -102
- package/js/x-modules/facets/components/filters/number-range-filter.vue.js.map +1 -1
- package/js/x-modules/facets/components/filters/number-range-filter.vue2.js +51 -185
- package/js/x-modules/facets/components/filters/number-range-filter.vue2.js.map +1 -1
- package/js/x-modules/facets/components/filters/renderless-filter.vue.js +62 -36
- package/js/x-modules/facets/components/filters/renderless-filter.vue.js.map +1 -1
- package/js/x-modules/facets/components/filters/renderless-filter.vue2.js +3 -224
- package/js/x-modules/facets/components/filters/renderless-filter.vue2.js.map +1 -1
- package/js/x-modules/facets/components/filters/simple-filter.vue.js +44 -102
- package/js/x-modules/facets/components/filters/simple-filter.vue.js.map +1 -1
- package/js/x-modules/facets/components/filters/simple-filter.vue2.js +37 -185
- package/js/x-modules/facets/components/filters/simple-filter.vue2.js.map +1 -1
- package/js/x-modules/facets/components/lists/exclude-filters-with-no-results.vue.js +41 -36
- package/js/x-modules/facets/components/lists/exclude-filters-with-no-results.vue.js.map +1 -1
- package/js/x-modules/facets/components/lists/exclude-filters-with-no-results.vue2.js +3 -186
- package/js/x-modules/facets/components/lists/exclude-filters-with-no-results.vue2.js.map +1 -1
- package/js/x-modules/facets/components/lists/filters-list.vue.js +33 -65
- package/js/x-modules/facets/components/lists/filters-list.vue.js.map +1 -1
- package/js/x-modules/facets/components/lists/filters-list.vue2.js +70 -188
- package/js/x-modules/facets/components/lists/filters-list.vue2.js.map +1 -1
- package/js/x-modules/facets/components/lists/filters-list.vue3.js +3 -12
- package/js/x-modules/facets/components/lists/filters-list.vue3.js.map +1 -1
- package/js/x-modules/facets/components/lists/filters-search.vue.js +25 -70
- package/js/x-modules/facets/components/lists/filters-search.vue.js.map +1 -1
- package/js/x-modules/facets/components/lists/filters-search.vue2.js +88 -218
- package/js/x-modules/facets/components/lists/filters-search.vue2.js.map +1 -1
- package/js/x-modules/facets/components/lists/filters-search.vue3.js +3 -12
- package/js/x-modules/facets/components/lists/filters-search.vue3.js.map +1 -1
- package/js/x-modules/facets/components/lists/selected-filters-list.vue.js +72 -103
- package/js/x-modules/facets/components/lists/selected-filters-list.vue.js.map +1 -1
- package/js/x-modules/facets/components/lists/selected-filters-list.vue2.js +51 -34
- package/js/x-modules/facets/components/lists/selected-filters-list.vue2.js.map +1 -1
- package/js/x-modules/facets/components/lists/selected-filters.vue.js +30 -60
- package/js/x-modules/facets/components/lists/selected-filters.vue.js.map +1 -1
- package/js/x-modules/facets/components/lists/selected-filters.vue2.js +3 -172
- package/js/x-modules/facets/components/lists/selected-filters.vue2.js.map +1 -1
- package/js/x-modules/facets/components/lists/sliced-filters.vue.js +71 -108
- package/js/x-modules/facets/components/lists/sliced-filters.vue.js.map +1 -1
- package/js/x-modules/facets/components/lists/sliced-filters.vue2.js +87 -216
- package/js/x-modules/facets/components/lists/sliced-filters.vue2.js.map +1 -1
- package/js/x-modules/facets/components/lists/sorted-filters.vue.js +53 -36
- package/js/x-modules/facets/components/lists/sorted-filters.vue.js.map +1 -1
- package/js/x-modules/facets/components/lists/sorted-filters.vue2.js +3 -188
- package/js/x-modules/facets/components/lists/sorted-filters.vue2.js.map +1 -1
- package/js/x-modules/facets/components/preselected-filters.vue.js +67 -36
- package/js/x-modules/facets/components/preselected-filters.vue.js.map +1 -1
- package/js/x-modules/facets/components/preselected-filters.vue2.js +3 -78
- package/js/x-modules/facets/components/preselected-filters.vue2.js.map +1 -1
- package/js/x-modules/facets/composables/use-facets.js +58 -0
- package/js/x-modules/facets/composables/use-facets.js.map +1 -0
- package/js/x-modules/facets/{components/lists/filters-injection.mixin.js → composables/use-filters-injection.js} +29 -39
- package/js/x-modules/facets/composables/use-filters-injection.js.map +1 -0
- package/js/x-modules/facets/store/module.js +10 -11
- package/js/x-modules/facets/store/module.js.map +1 -1
- package/js/x-modules/facets/x-module.js +3 -1
- package/js/x-modules/facets/x-module.js.map +1 -1
- package/js/x-modules/history-queries/components/clear-history-queries.vue.js +24 -62
- package/js/x-modules/history-queries/components/clear-history-queries.vue.js.map +1 -1
- package/js/x-modules/history-queries/components/clear-history-queries.vue2.js +39 -41
- package/js/x-modules/history-queries/components/clear-history-queries.vue2.js.map +1 -1
- package/js/x-modules/history-queries/components/history-queries-switch.vue.js +13 -47
- package/js/x-modules/history-queries/components/history-queries-switch.vue.js.map +1 -1
- package/js/x-modules/history-queries/components/history-queries-switch.vue2.js +44 -41
- package/js/x-modules/history-queries/components/history-queries-switch.vue2.js.map +1 -1
- package/js/x-modules/history-queries/components/history-queries.vue.js +45 -128
- package/js/x-modules/history-queries/components/history-queries.vue.js.map +1 -1
- package/js/x-modules/history-queries/components/history-queries.vue2.js +26 -21
- package/js/x-modules/history-queries/components/history-queries.vue2.js.map +1 -1
- package/js/x-modules/history-queries/components/history-query.vue.js +43 -113
- package/js/x-modules/history-queries/components/history-query.vue.js.map +1 -1
- package/js/x-modules/history-queries/components/history-query.vue2.js +44 -32
- package/js/x-modules/history-queries/components/history-query.vue2.js.map +1 -1
- package/js/x-modules/history-queries/components/my-history.vue.js +81 -177
- package/js/x-modules/history-queries/components/my-history.vue.js.map +1 -1
- package/js/x-modules/history-queries/components/my-history.vue2.js +116 -96
- package/js/x-modules/history-queries/components/my-history.vue2.js.map +1 -1
- package/js/x-modules/history-queries/components/my-history.vue3.js +3 -12
- package/js/x-modules/history-queries/components/my-history.vue3.js.map +1 -1
- package/js/x-modules/history-queries/components/remove-history-query.vue.js +20 -52
- package/js/x-modules/history-queries/components/remove-history-query.vue.js.map +1 -1
- package/js/x-modules/history-queries/components/remove-history-query.vue2.js +35 -29
- package/js/x-modules/history-queries/components/remove-history-query.vue2.js.map +1 -1
- package/js/x-modules/history-queries/store/getters/history-queries.getter.js +1 -2
- package/js/x-modules/history-queries/store/getters/history-queries.getter.js.map +1 -1
- package/js/x-modules/history-queries/x-module.js +3 -1
- package/js/x-modules/history-queries/x-module.js.map +1 -1
- package/js/x-modules/identifier-results/components/identifier-result.vue.js +14 -50
- package/js/x-modules/identifier-results/components/identifier-result.vue.js.map +1 -1
- package/js/x-modules/identifier-results/components/identifier-result.vue2.js +51 -34
- package/js/x-modules/identifier-results/components/identifier-result.vue2.js.map +1 -1
- package/js/x-modules/identifier-results/components/identifier-results.vue.js +32 -64
- package/js/x-modules/identifier-results/components/identifier-results.vue.js.map +1 -1
- package/js/x-modules/identifier-results/components/identifier-results.vue2.js +46 -40
- package/js/x-modules/identifier-results/components/identifier-results.vue2.js.map +1 -1
- package/js/x-modules/identifier-results/components/identifier-results.vue3.js +3 -12
- package/js/x-modules/identifier-results/components/identifier-results.vue3.js.map +1 -1
- package/js/x-modules/identifier-results/x-module.js +3 -1
- package/js/x-modules/identifier-results/x-module.js.map +1 -1
- package/js/x-modules/next-queries/components/next-queries-list.vue.js +130 -78
- package/js/x-modules/next-queries/components/next-queries-list.vue.js.map +1 -1
- package/js/x-modules/next-queries/components/next-queries-list.vue2.js +3 -177
- package/js/x-modules/next-queries/components/next-queries-list.vue2.js.map +1 -1
- package/js/x-modules/next-queries/components/next-queries.vue.js +38 -113
- package/js/x-modules/next-queries/components/next-queries.vue.js.map +1 -1
- package/js/x-modules/next-queries/components/next-queries.vue2.js +44 -34
- package/js/x-modules/next-queries/components/next-queries.vue2.js.map +1 -1
- package/js/x-modules/next-queries/components/next-query-preview.vue.js +45 -90
- package/js/x-modules/next-queries/components/next-query-preview.vue.js.map +1 -1
- package/js/x-modules/next-queries/components/next-query-preview.vue2.js +52 -45
- package/js/x-modules/next-queries/components/next-query-preview.vue2.js.map +1 -1
- package/js/x-modules/next-queries/components/next-query.vue.js +24 -74
- package/js/x-modules/next-queries/components/next-query.vue.js.map +1 -1
- package/js/x-modules/next-queries/components/next-query.vue2.js +46 -39
- package/js/x-modules/next-queries/components/next-query.vue2.js.map +1 -1
- package/js/x-modules/next-queries/store/actions/fetch-next-query-preview.action.js +4 -4
- package/js/x-modules/next-queries/store/actions/fetch-next-query-preview.action.js.map +1 -1
- package/js/x-modules/next-queries/x-module.js +3 -1
- package/js/x-modules/next-queries/x-module.js.map +1 -1
- package/js/x-modules/popular-searches/components/popular-search.vue.js +24 -64
- package/js/x-modules/popular-searches/components/popular-search.vue.js.map +1 -1
- package/js/x-modules/popular-searches/components/popular-search.vue2.js +28 -28
- package/js/x-modules/popular-searches/components/popular-search.vue2.js.map +1 -1
- package/js/x-modules/popular-searches/components/popular-searches.vue.js +37 -108
- package/js/x-modules/popular-searches/components/popular-searches.vue.js.map +1 -1
- package/js/x-modules/popular-searches/components/popular-searches.vue2.js +22 -21
- package/js/x-modules/popular-searches/components/popular-searches.vue2.js.map +1 -1
- package/js/x-modules/popular-searches/x-module.js +3 -1
- package/js/x-modules/popular-searches/x-module.js.map +1 -1
- package/js/x-modules/queries-preview/components/query-preview-button.vue.js +27 -63
- package/js/x-modules/queries-preview/components/query-preview-button.vue.js.map +1 -1
- package/js/x-modules/queries-preview/components/query-preview-button.vue2.js +145 -184
- package/js/x-modules/queries-preview/components/query-preview-button.vue2.js.map +1 -1
- package/js/x-modules/queries-preview/components/query-preview-list.vue.js +51 -85
- package/js/x-modules/queries-preview/components/query-preview-list.vue.js.map +1 -1
- package/js/x-modules/queries-preview/components/query-preview-list.vue2.js +13 -14
- package/js/x-modules/queries-preview/components/query-preview-list.vue2.js.map +1 -1
- package/js/x-modules/queries-preview/components/query-preview.vue.js +38 -98
- package/js/x-modules/queries-preview/components/query-preview.vue.js.map +1 -1
- package/js/x-modules/queries-preview/components/query-preview.vue2.js +138 -51
- package/js/x-modules/queries-preview/components/query-preview.vue2.js.map +1 -1
- package/js/x-modules/queries-preview/store/module.js +9 -4
- package/js/x-modules/queries-preview/store/module.js.map +1 -1
- package/js/x-modules/queries-preview/x-module.js +3 -1
- package/js/x-modules/queries-preview/x-module.js.map +1 -1
- package/js/x-modules/query-suggestions/components/query-suggestion.vue.js +27 -72
- package/js/x-modules/query-suggestions/components/query-suggestion.vue.js.map +1 -1
- package/js/x-modules/query-suggestions/components/query-suggestion.vue2.js +36 -27
- package/js/x-modules/query-suggestions/components/query-suggestion.vue2.js.map +1 -1
- package/js/x-modules/query-suggestions/components/query-suggestions.vue.js +37 -108
- package/js/x-modules/query-suggestions/components/query-suggestions.vue.js.map +1 -1
- package/js/x-modules/query-suggestions/components/query-suggestions.vue2.js +26 -22
- package/js/x-modules/query-suggestions/components/query-suggestions.vue2.js.map +1 -1
- package/js/x-modules/query-suggestions/store/getters/query-suggestions.getter.js +10 -5
- package/js/x-modules/query-suggestions/store/getters/query-suggestions.getter.js.map +1 -1
- package/js/x-modules/query-suggestions/store/module.js +6 -1
- package/js/x-modules/query-suggestions/store/module.js.map +1 -1
- package/js/x-modules/query-suggestions/wiring.js +10 -1
- package/js/x-modules/query-suggestions/wiring.js.map +1 -1
- package/js/x-modules/query-suggestions/x-module.js +3 -1
- package/js/x-modules/query-suggestions/x-module.js.map +1 -1
- package/js/x-modules/recommendations/components/recommendations.vue.js +34 -84
- package/js/x-modules/recommendations/components/recommendations.vue.js.map +1 -1
- package/js/x-modules/recommendations/components/recommendations.vue2.js +62 -47
- package/js/x-modules/recommendations/components/recommendations.vue2.js.map +1 -1
- package/js/x-modules/recommendations/components/recommendations.vue3.js +3 -12
- package/js/x-modules/recommendations/components/recommendations.vue3.js.map +1 -1
- package/js/x-modules/recommendations/x-module.js +3 -1
- package/js/x-modules/recommendations/x-module.js.map +1 -1
- package/js/x-modules/related-tags/components/related-tag.vue.js +21 -60
- package/js/x-modules/related-tags/components/related-tag.vue.js.map +1 -1
- package/js/x-modules/related-tags/components/related-tag.vue2.js +106 -93
- package/js/x-modules/related-tags/components/related-tag.vue2.js.map +1 -1
- package/js/x-modules/related-tags/components/related-tags.vue.js +48 -107
- package/js/x-modules/related-tags/components/related-tags.vue.js.map +1 -1
- package/js/x-modules/related-tags/components/related-tags.vue2.js +48 -31
- package/js/x-modules/related-tags/components/related-tags.vue2.js.map +1 -1
- package/js/x-modules/related-tags/components/related-tags.vue3.js +3 -12
- package/js/x-modules/related-tags/components/related-tags.vue3.js.map +1 -1
- package/js/x-modules/related-tags/x-module.js +3 -1
- package/js/x-modules/related-tags/x-module.js.map +1 -1
- package/js/x-modules/scroll/components/main-scroll-item.vue.js +17 -56
- package/js/x-modules/scroll/components/main-scroll-item.vue.js.map +1 -1
- package/js/x-modules/scroll/components/main-scroll-item.vue2.js +17 -56
- package/js/x-modules/scroll/components/main-scroll-item.vue2.js.map +1 -1
- package/js/x-modules/scroll/components/main-scroll.vue.js +176 -49
- package/js/x-modules/scroll/components/main-scroll.vue.js.map +1 -1
- package/js/x-modules/scroll/components/main-scroll.vue2.js +3 -244
- package/js/x-modules/scroll/components/main-scroll.vue2.js.map +1 -1
- package/js/x-modules/scroll/components/scroll-to-top.vue.js +28 -68
- package/js/x-modules/scroll/components/scroll-to-top.vue.js.map +1 -1
- package/js/x-modules/scroll/components/scroll-to-top.vue2.js +193 -229
- package/js/x-modules/scroll/components/scroll-to-top.vue2.js.map +1 -1
- package/js/x-modules/scroll/components/scroll.const.js.map +1 -1
- package/js/x-modules/scroll/components/scroll.vue.js +23 -66
- package/js/x-modules/scroll/components/scroll.vue.js.map +1 -1
- package/js/x-modules/scroll/components/scroll.vue2.js +98 -85
- package/js/x-modules/scroll/components/scroll.vue2.js.map +1 -1
- package/js/x-modules/scroll/store/module.js +2 -4
- package/js/x-modules/scroll/store/module.js.map +1 -1
- package/js/x-modules/scroll/x-module.js +3 -1
- package/js/x-modules/scroll/x-module.js.map +1 -1
- package/js/x-modules/search/components/banner.vue.js +36 -81
- package/js/x-modules/search/components/banner.vue.js.map +1 -1
- package/js/x-modules/search/components/banner.vue2.js +44 -40
- package/js/x-modules/search/components/banner.vue2.js.map +1 -1
- package/js/x-modules/search/components/banner.vue3.js +3 -12
- package/js/x-modules/search/components/banner.vue3.js.map +1 -1
- package/js/x-modules/search/components/banners-list.vue.js +101 -78
- package/js/x-modules/search/components/banners-list.vue.js.map +1 -1
- package/js/x-modules/search/components/banners-list.vue2.js +3 -133
- package/js/x-modules/search/components/banners-list.vue2.js.map +1 -1
- package/js/x-modules/search/components/fallback-disclaimer.vue.js +20 -68
- package/js/x-modules/search/components/fallback-disclaimer.vue.js.map +1 -1
- package/js/x-modules/search/components/fallback-disclaimer.vue2.js +14 -157
- package/js/x-modules/search/components/fallback-disclaimer.vue2.js.map +1 -1
- package/js/x-modules/search/components/partial-query-button.vue.js +21 -56
- package/js/x-modules/search/components/partial-query-button.vue.js.map +1 -1
- package/js/x-modules/search/components/partial-query-button.vue2.js +42 -34
- package/js/x-modules/search/components/partial-query-button.vue2.js.map +1 -1
- package/js/x-modules/search/components/partial-results-list.vue.js +33 -64
- package/js/x-modules/search/components/partial-results-list.vue.js.map +1 -1
- package/js/x-modules/search/components/partial-results-list.vue2.js +48 -32
- package/js/x-modules/search/components/partial-results-list.vue2.js.map +1 -1
- package/js/x-modules/search/components/partial-results-list.vue3.js +3 -12
- package/js/x-modules/search/components/partial-results-list.vue3.js.map +1 -1
- package/js/x-modules/search/components/promoted.vue.js +31 -65
- package/js/x-modules/search/components/promoted.vue.js.map +1 -1
- package/js/x-modules/search/components/promoted.vue2.js +32 -24
- package/js/x-modules/search/components/promoted.vue2.js.map +1 -1
- package/js/x-modules/search/components/promoted.vue3.js +3 -12
- package/js/x-modules/search/components/promoted.vue3.js.map +1 -1
- package/js/x-modules/search/components/promoteds-list.vue.js +78 -78
- package/js/x-modules/search/components/promoteds-list.vue.js.map +1 -1
- package/js/x-modules/search/components/promoteds-list.vue2.js +3 -98
- package/js/x-modules/search/components/promoteds-list.vue2.js.map +1 -1
- package/js/x-modules/search/components/redirection.vue.js +14 -57
- package/js/x-modules/search/components/redirection.vue.js.map +1 -1
- package/js/x-modules/search/components/redirection.vue2.js +105 -84
- package/js/x-modules/search/components/redirection.vue2.js.map +1 -1
- package/js/x-modules/search/components/results-list.vue.js +76 -78
- package/js/x-modules/search/components/results-list.vue.js.map +1 -1
- package/js/x-modules/search/components/results-list.vue2.js +3 -131
- package/js/x-modules/search/components/results-list.vue2.js.map +1 -1
- package/js/x-modules/search/components/sort-dropdown.vue.js +40 -99
- package/js/x-modules/search/components/sort-dropdown.vue.js.map +1 -1
- package/js/x-modules/search/components/sort-dropdown.vue2.js +4 -16
- package/js/x-modules/search/components/sort-dropdown.vue2.js.map +1 -1
- package/js/x-modules/search/components/sort-list.vue.js +49 -80
- package/js/x-modules/search/components/sort-list.vue.js.map +1 -1
- package/js/x-modules/search/components/sort-list.vue2.js +4 -16
- package/js/x-modules/search/components/sort-list.vue2.js.map +1 -1
- package/js/x-modules/search/components/sort-list.vue3.js +3 -12
- package/js/x-modules/search/components/sort-list.vue3.js.map +1 -1
- package/js/x-modules/search/components/sort-picker-list.vue.js +45 -79
- package/js/x-modules/search/components/sort-picker-list.vue.js.map +1 -1
- package/js/x-modules/search/components/sort-picker-list.vue2.js +4 -16
- package/js/x-modules/search/components/sort-picker-list.vue2.js.map +1 -1
- package/js/x-modules/search/components/spellcheck-button.vue.js +28 -64
- package/js/x-modules/search/components/spellcheck-button.vue.js.map +1 -1
- package/js/x-modules/search/components/spellcheck-button.vue2.js +39 -35
- package/js/x-modules/search/components/spellcheck-button.vue2.js.map +1 -1
- package/js/x-modules/search/components/spellcheck.vue.js +20 -63
- package/js/x-modules/search/components/spellcheck.vue.js.map +1 -1
- package/js/x-modules/search/components/spellcheck.vue2.js +19 -164
- package/js/x-modules/search/components/spellcheck.vue2.js.map +1 -1
- package/js/x-modules/search/store/module.js +5 -1
- package/js/x-modules/search/store/module.js.map +1 -1
- package/js/x-modules/search/wiring.js +11 -1
- package/js/x-modules/search/wiring.js.map +1 -1
- package/js/x-modules/search/x-module.js +3 -1
- package/js/x-modules/search/x-module.js.map +1 -1
- package/js/x-modules/search-box/components/clear-search-input.vue.js +22 -60
- package/js/x-modules/search-box/components/clear-search-input.vue.js.map +1 -1
- package/js/x-modules/search-box/components/clear-search-input.vue2.js +19 -29
- package/js/x-modules/search-box/components/clear-search-input.vue2.js.map +1 -1
- package/js/x-modules/search-box/components/search-button.vue.js +24 -51
- package/js/x-modules/search-box/components/search-button.vue.js.map +1 -1
- package/js/x-modules/search-box/components/search-button.vue2.js +41 -44
- package/js/x-modules/search-box/components/search-button.vue2.js.map +1 -1
- package/js/x-modules/search-box/components/search-input-placeholder.vue.js +25 -60
- package/js/x-modules/search-box/components/search-input-placeholder.vue.js.map +1 -1
- package/js/x-modules/search-box/components/search-input-placeholder.vue2.js +157 -300
- package/js/x-modules/search-box/components/search-input-placeholder.vue2.js.map +1 -1
- package/js/x-modules/search-box/components/search-input-placeholder.vue3.js +3 -12
- package/js/x-modules/search-box/components/search-input-placeholder.vue3.js.map +1 -1
- package/js/x-modules/search-box/components/search-input-placeholder.vue4.js +3 -12
- package/js/x-modules/search-box/components/search-input-placeholder.vue4.js.map +1 -1
- package/js/x-modules/search-box/components/search-input.vue.js +31 -99
- package/js/x-modules/search-box/components/search-input.vue.js.map +1 -1
- package/js/x-modules/search-box/components/search-input.vue2.js +211 -198
- package/js/x-modules/search-box/components/search-input.vue2.js.map +1 -1
- package/js/x-modules/search-box/components/search-input.vue3.js +3 -12
- package/js/x-modules/search-box/components/search-input.vue3.js.map +1 -1
- package/js/x-modules/search-box/x-module.js +3 -1
- package/js/x-modules/search-box/x-module.js.map +1 -1
- package/js/x-modules/semantic-queries/components/semantic-queries.vue.js +32 -125
- package/js/x-modules/semantic-queries/components/semantic-queries.vue.js.map +1 -1
- package/js/x-modules/semantic-queries/components/semantic-queries.vue2.js +62 -181
- package/js/x-modules/semantic-queries/components/semantic-queries.vue2.js.map +1 -1
- package/js/x-modules/semantic-queries/components/semantic-query.vue.js +24 -72
- package/js/x-modules/semantic-queries/components/semantic-query.vue.js.map +1 -1
- package/js/x-modules/semantic-queries/components/semantic-query.vue2.js +25 -173
- package/js/x-modules/semantic-queries/components/semantic-query.vue2.js.map +1 -1
- package/js/x-modules/semantic-queries/x-module.js +3 -1
- package/js/x-modules/semantic-queries/x-module.js.map +1 -1
- package/js/x-modules/tagging/components/tagging.vue.js +95 -36
- package/js/x-modules/tagging/components/tagging.vue.js.map +1 -1
- package/js/x-modules/tagging/components/tagging.vue2.js +3 -86
- package/js/x-modules/tagging/components/tagging.vue2.js.map +1 -1
- package/js/x-modules/tagging/wiring.js +1 -1
- package/js/x-modules/tagging/wiring.js.map +1 -1
- package/js/x-modules/tagging/x-module.js +3 -1
- package/js/x-modules/tagging/x-module.js.map +1 -1
- package/js/x-modules/url/components/url-handler.vue.js +13 -47
- package/js/x-modules/url/components/url-handler.vue.js.map +1 -1
- package/js/x-modules/url/components/url-handler.vue2.js +293 -437
- package/js/x-modules/url/components/url-handler.vue2.js.map +1 -1
- package/js/x-modules/url/store/mutations/set-params.mutation.js +1 -2
- package/js/x-modules/url/store/mutations/set-params.mutation.js.map +1 -1
- package/js/x-modules/url/x-module.js +10 -1
- package/js/x-modules/url/x-module.js.map +1 -1
- package/package.json +22 -28
- package/query-suggestions/index.js +1 -1
- package/report/x-components.api.json +53477 -43719
- package/report/x-components.api.md +3146 -1787
- package/scroll/index.js +0 -1
- package/search/index.js +1 -1
- package/tools/inject-css.js +13 -0
- package/types/components/animations/animate-clip-path/animate-clip-path.factory.d.ts +1 -1
- package/types/components/animations/animate-clip-path/animate-clip-path.factory.d.ts.map +1 -1
- package/types/components/animations/animate-scale/animate-scale.factory.d.ts +1 -1
- package/types/components/animations/animate-scale/animate-scale.factory.d.ts.map +1 -1
- package/types/components/animations/animate-translate/animate-translate.factory.d.ts +1 -1
- package/types/components/animations/animate-translate/animate-translate.factory.d.ts.map +1 -1
- package/types/components/animations/animate-width.vue.d.ts +2 -2
- package/types/components/animations/animate-width.vue.d.ts.map +1 -1
- package/types/components/animations/collapse-height.vue.d.ts +21 -4
- package/types/components/animations/collapse-height.vue.d.ts.map +1 -1
- package/types/components/animations/collapse-width.vue.d.ts +21 -4
- package/types/components/animations/collapse-width.vue.d.ts.map +1 -1
- package/types/components/animations/create-directional-animation-factory.d.ts +3 -3
- package/types/components/animations/create-directional-animation-factory.d.ts.map +1 -1
- package/types/components/animations/cross-fade.vue.d.ts +3 -3
- package/types/components/animations/cross-fade.vue.d.ts.map +1 -1
- package/types/components/animations/fade-and-slide.vue.d.ts +22 -13
- package/types/components/animations/fade-and-slide.vue.d.ts.map +1 -1
- package/types/components/animations/fade.vue.d.ts +3 -3
- package/types/components/animations/fade.vue.d.ts.map +1 -1
- package/types/components/animations/index.d.ts +3 -3
- package/types/components/animations/index.d.ts.map +1 -1
- package/types/components/animations/no-animation.vue.d.ts +9 -0
- package/types/components/animations/no-animation.vue.d.ts.map +1 -0
- package/types/components/animations/staggered-fade-and-slide.vue.d.ts +44 -16
- package/types/components/animations/staggered-fade-and-slide.vue.d.ts.map +1 -1
- package/types/components/animations/use-collapse-animation.d.ts +19 -0
- package/types/components/animations/use-collapse-animation.d.ts.map +1 -0
- package/types/components/animations/use-disable-animation.d.ts +12 -0
- package/types/components/animations/use-disable-animation.d.ts.map +1 -0
- package/types/components/auto-progress-bar.vue.d.ts +5 -4
- package/types/components/auto-progress-bar.vue.d.ts.map +1 -1
- package/types/components/base-dropdown.vue.d.ts +12 -10
- package/types/components/base-dropdown.vue.d.ts.map +1 -1
- package/types/components/base-event-button.vue.d.ts +20 -3
- package/types/components/base-event-button.vue.d.ts.map +1 -1
- package/types/components/base-grid.vue.d.ts +16 -34
- package/types/components/base-grid.vue.d.ts.map +1 -1
- package/types/components/base-keyboard-navigation.vue.d.ts +44 -55
- package/types/components/base-keyboard-navigation.vue.d.ts.map +1 -1
- package/types/components/base-rating.vue.d.ts +3 -3
- package/types/components/base-rating.vue.d.ts.map +1 -1
- package/types/components/base-switch.vue.d.ts +11 -7
- package/types/components/base-switch.vue.d.ts.map +1 -1
- package/types/components/base-variable-column-grid.vue.d.ts +39 -18
- package/types/components/base-variable-column-grid.vue.d.ts.map +1 -1
- package/types/components/column-picker/base-column-picker-dropdown.vue.d.ts +12 -10
- package/types/components/column-picker/base-column-picker-dropdown.vue.d.ts.map +1 -1
- package/types/components/column-picker/base-column-picker-list.vue.d.ts +5 -3
- package/types/components/column-picker/base-column-picker-list.vue.d.ts.map +1 -1
- package/types/components/currency/base-currency.vue.d.ts +3 -3
- package/types/components/currency/base-currency.vue.d.ts.map +1 -1
- package/types/components/decorators/injection.consts.d.ts +12 -1
- package/types/components/decorators/injection.consts.d.ts.map +1 -1
- package/types/components/display-emitter.vue.d.ts +11 -29
- package/types/components/display-emitter.vue.d.ts.map +1 -1
- package/types/components/filters/labels/base-price-filter-label.vue.d.ts +6 -4
- package/types/components/filters/labels/base-price-filter-label.vue.d.ts.map +1 -1
- package/types/components/filters/labels/base-rating-filter-label.vue.d.ts +3 -3
- package/types/components/filters/labels/base-rating-filter-label.vue.d.ts.map +1 -1
- package/types/components/global-x-bus.vue.d.ts +334 -3
- package/types/components/global-x-bus.vue.d.ts.map +1 -1
- package/types/components/highlight.vue.d.ts +70 -77
- package/types/components/highlight.vue.d.ts.map +1 -1
- package/types/components/index.d.ts +0 -6
- package/types/components/index.d.ts.map +1 -1
- package/types/components/items-list.vue.d.ts +18 -45
- package/types/components/items-list.vue.d.ts.map +1 -1
- package/types/components/layouts/fixed-header-and-asides-layout.vue.d.ts +16 -12
- package/types/components/layouts/fixed-header-and-asides-layout.vue.d.ts.map +1 -1
- package/types/components/layouts/multi-column-max-width-layout.vue.d.ts +22 -13
- package/types/components/layouts/multi-column-max-width-layout.vue.d.ts.map +1 -1
- package/types/components/layouts/single-column-layout.vue.d.ts +22 -13
- package/types/components/layouts/single-column-layout.vue.d.ts.map +1 -1
- package/types/components/location-provider.vue.d.ts +5 -3
- package/types/components/location-provider.vue.d.ts.map +1 -1
- package/types/components/modals/base-events-modal-close.vue.d.ts +6 -6
- package/types/components/modals/base-events-modal-close.vue.d.ts.map +1 -1
- package/types/components/modals/base-events-modal-open.vue.d.ts +6 -6
- package/types/components/modals/base-events-modal-open.vue.d.ts.map +1 -1
- package/types/components/modals/base-events-modal.vue.d.ts +49 -50
- package/types/components/modals/base-events-modal.vue.d.ts.map +1 -1
- package/types/components/modals/base-id-modal-close.vue.d.ts +6 -14
- package/types/components/modals/base-id-modal-close.vue.d.ts.map +1 -1
- package/types/components/modals/base-id-modal-open.vue.d.ts +6 -14
- package/types/components/modals/base-id-modal-open.vue.d.ts.map +1 -1
- package/types/components/modals/base-id-modal.vue.d.ts +29 -32
- package/types/components/modals/base-id-modal.vue.d.ts.map +1 -1
- package/types/components/modals/base-modal.vue.d.ts +71 -98
- package/types/components/modals/base-modal.vue.d.ts.map +1 -1
- package/types/components/modals/close-main-modal.vue.d.ts +2 -2
- package/types/components/modals/close-main-modal.vue.d.ts.map +1 -1
- package/types/components/modals/main-modal.vue.d.ts +51 -9
- package/types/components/modals/main-modal.vue.d.ts.map +1 -1
- package/types/components/modals/open-main-modal.vue.d.ts +2 -2
- package/types/components/modals/open-main-modal.vue.d.ts.map +1 -1
- package/types/components/page-loader-button.vue.d.ts +3 -3
- package/types/components/page-loader-button.vue.d.ts.map +1 -1
- package/types/components/panels/base-header-toggle-panel.vue.d.ts +29 -35
- package/types/components/panels/base-header-toggle-panel.vue.d.ts.map +1 -1
- package/types/components/panels/base-id-toggle-panel-button.vue.d.ts +18 -23
- package/types/components/panels/base-id-toggle-panel-button.vue.d.ts.map +1 -1
- package/types/components/panels/base-id-toggle-panel.vue.d.ts +40 -34
- package/types/components/panels/base-id-toggle-panel.vue.d.ts.map +1 -1
- package/types/components/panels/base-tabs-panel.vue.d.ts +74 -30
- package/types/components/panels/base-tabs-panel.vue.d.ts.map +1 -1
- package/types/components/panels/base-toggle-panel.vue.d.ts +6 -8
- package/types/components/panels/base-toggle-panel.vue.d.ts.map +1 -1
- package/types/components/result/base-result-add-to-cart.vue.d.ts +3 -3
- package/types/components/result/base-result-add-to-cart.vue.d.ts.map +1 -1
- package/types/components/result/base-result-current-price.vue.d.ts +3 -3
- package/types/components/result/base-result-current-price.vue.d.ts.map +1 -1
- package/types/components/result/base-result-image.vue.d.ts +15 -37
- package/types/components/result/base-result-image.vue.d.ts.map +1 -1
- package/types/components/result/base-result-link.vue.d.ts +3 -3
- package/types/components/result/base-result-link.vue.d.ts.map +1 -1
- package/types/components/result/base-result-previous-price.vue.d.ts +3 -3
- package/types/components/result/base-result-previous-price.vue.d.ts.map +1 -1
- package/types/components/result/base-result-rating.vue.d.ts +3 -3
- package/types/components/result/base-result-rating.vue.d.ts.map +1 -1
- package/types/components/result/result-variant-selector.vue.d.ts +7 -16
- package/types/components/result/result-variant-selector.vue.d.ts.map +1 -1
- package/types/components/result/result-variants-provider.vue.d.ts +9 -42
- package/types/components/result/result-variants-provider.vue.d.ts.map +1 -1
- package/types/components/scroll/base-scroll.vue.d.ts +115 -6
- package/types/components/scroll/base-scroll.vue.d.ts.map +1 -1
- package/types/components/scroll/index.d.ts +1 -1
- package/types/components/scroll/index.d.ts.map +1 -1
- package/types/components/scroll/use-scroll.d.ts +48 -0
- package/types/components/scroll/use-scroll.d.ts.map +1 -0
- package/types/components/sliding-panel.vue.d.ts +53 -88
- package/types/components/sliding-panel.vue.d.ts.map +1 -1
- package/types/components/snippet-callbacks.vue.d.ts +4 -2
- package/types/components/snippet-callbacks.vue.d.ts.map +1 -1
- package/types/components/suggestions/base-suggestion.vue.d.ts +3 -3
- package/types/components/suggestions/base-suggestion.vue.d.ts.map +1 -1
- package/types/components/suggestions/base-suggestions.vue.d.ts +65 -46
- package/types/components/suggestions/base-suggestions.vue.d.ts.map +1 -1
- package/types/components/x-component.utils.d.ts +4 -4
- package/types/components/x-component.utils.d.ts.map +1 -1
- package/types/composables/{create-use-device.composable.d.ts → create-use-device.d.ts} +1 -1
- package/types/composables/create-use-device.d.ts.map +1 -0
- package/types/composables/index.d.ts +6 -6
- package/types/composables/index.d.ts.map +1 -1
- package/types/composables/use-$x.d.ts +6 -11
- package/types/composables/use-$x.d.ts.map +1 -1
- package/types/composables/use-debounce.d.ts +13 -0
- package/types/composables/use-debounce.d.ts.map +1 -0
- package/types/composables/use-getter.d.ts +0 -1
- package/types/composables/use-getter.d.ts.map +1 -1
- package/types/composables/use-store.d.ts.map +1 -1
- package/types/composables/use-x-bus.d.ts +12 -15
- package/types/composables/use-x-bus.d.ts.map +1 -1
- package/types/directives/{infinite-scroll/infinite-scroll.d.ts → infinite-scroll.d.ts} +7 -6
- package/types/directives/infinite-scroll.d.ts.map +1 -0
- package/types/plugins/devtools/devtools.plugin.d.ts +3 -3
- package/types/plugins/devtools/devtools.plugin.d.ts.map +1 -1
- package/types/plugins/index.d.ts +0 -2
- package/types/plugins/index.d.ts.map +1 -1
- package/types/plugins/x-emitters.d.ts.map +1 -1
- package/types/plugins/x-plugin.d.ts +6 -14
- package/types/plugins/x-plugin.d.ts.map +1 -1
- package/types/router.d.ts +1 -2
- package/types/router.d.ts.map +1 -1
- package/types/services/directional-focus-navigation.service.d.ts.map +1 -1
- package/types/store/store.types.d.ts +4 -1
- package/types/store/store.types.d.ts.map +1 -1
- package/types/store/utils/config-store.utils.d.ts.map +1 -1
- package/types/store/utils/getters-proxy.utils.d.ts +6 -5
- package/types/store/utils/getters-proxy.utils.d.ts.map +1 -1
- package/types/store/utils/query.utils.d.ts +1 -2
- package/types/store/utils/query.utils.d.ts.map +1 -1
- package/types/store/utils/status-store.utils.d.ts +4 -2
- package/types/store/utils/status-store.utils.d.ts.map +1 -1
- package/types/store/x.module.d.ts +1 -1
- package/types/store/x.module.d.ts.map +1 -1
- package/types/types/animation-prop.d.ts +1 -1
- package/types/types/animation-prop.d.ts.map +1 -1
- package/types/utils/currency-formatter.d.ts.map +1 -1
- package/types/utils/html.d.ts +14 -0
- package/types/utils/html.d.ts.map +1 -1
- package/types/utils/options-api.d.ts +1 -1
- package/types/utils/options-api.d.ts.map +1 -1
- package/types/wiring/events.types.d.ts +4 -2
- package/types/wiring/events.types.d.ts.map +1 -1
- package/types/wiring/namespaced-wires.operators.d.ts.map +1 -1
- package/types/wiring/wiring.types.d.ts +2 -1
- package/types/wiring/wiring.types.d.ts.map +1 -1
- package/types/wiring/wiring.utils.d.ts +2 -2
- package/types/wiring/wiring.utils.d.ts.map +1 -1
- package/types/x-installer/x-installer/types.d.ts +11 -39
- package/types/x-installer/x-installer/types.d.ts.map +1 -1
- package/types/x-installer/x-installer/x-installer.d.ts +13 -27
- package/types/x-installer/x-installer/x-installer.d.ts.map +1 -1
- package/types/x-modules/device/components/device-detector.vue.d.ts +37 -58
- package/types/x-modules/device/components/device-detector.vue.d.ts.map +1 -1
- package/types/x-modules/device/x-module.d.ts.map +1 -1
- package/types/x-modules/empathize/components/empathize.vue.d.ts +46 -82
- package/types/x-modules/empathize/components/empathize.vue.d.ts.map +1 -1
- package/types/x-modules/empathize/x-module.d.ts.map +1 -1
- package/types/x-modules/experience-controls/components/experience-controls.vue.d.ts +3 -12
- package/types/x-modules/experience-controls/components/experience-controls.vue.d.ts.map +1 -1
- package/types/x-modules/experience-controls/store/module.d.ts.map +1 -1
- package/types/x-modules/experience-controls/x-module.d.ts.map +1 -1
- package/types/x-modules/extra-params/components/extra-params.vue.d.ts +14 -23
- package/types/x-modules/extra-params/components/extra-params.vue.d.ts.map +1 -1
- package/types/x-modules/extra-params/components/renderless-extra-param.vue.d.ts +15 -33
- package/types/x-modules/extra-params/components/renderless-extra-param.vue.d.ts.map +1 -1
- package/types/x-modules/extra-params/components/snippet-config-extra-params.vue.d.ts +24 -46
- package/types/x-modules/extra-params/components/snippet-config-extra-params.vue.d.ts.map +1 -1
- package/types/x-modules/extra-params/x-module.d.ts.map +1 -1
- package/types/x-modules/facets/components/clear-filters.vue.d.ts +24 -22
- package/types/x-modules/facets/components/clear-filters.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/facets/facets-provider.vue.d.ts +30 -40
- package/types/x-modules/facets/components/facets/facets-provider.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/facets/facets.vue.d.ts +47 -52
- package/types/x-modules/facets/components/facets/facets.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/filters/all-filter.vue.d.ts +21 -32
- package/types/x-modules/facets/components/filters/all-filter.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/filters/editable-number-range-filter.vue.d.ts +58 -126
- package/types/x-modules/facets/components/filters/editable-number-range-filter.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/filters/hierarchical-filter.vue.d.ts +208 -45
- package/types/x-modules/facets/components/filters/hierarchical-filter.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/filters/number-range-filter.vue.d.ts +35 -18
- package/types/x-modules/facets/components/filters/number-range-filter.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/filters/renderless-filter.vue.d.ts +35 -37
- package/types/x-modules/facets/components/filters/renderless-filter.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/filters/simple-filter.vue.d.ts +195 -26
- package/types/x-modules/facets/components/filters/simple-filter.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/index.d.ts +0 -1
- package/types/x-modules/facets/components/index.d.ts.map +1 -1
- package/types/x-modules/facets/components/lists/exclude-filters-with-no-results.vue.d.ts +24 -13
- package/types/x-modules/facets/components/lists/exclude-filters-with-no-results.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/lists/filters-list.vue.d.ts +48 -20
- package/types/x-modules/facets/components/lists/filters-list.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/lists/filters-search.vue.d.ts +45 -33
- package/types/x-modules/facets/components/lists/filters-search.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/lists/selected-filters-list.vue.d.ts +31 -24
- package/types/x-modules/facets/components/lists/selected-filters-list.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/lists/selected-filters.vue.d.ts +18 -6
- package/types/x-modules/facets/components/lists/selected-filters.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/lists/sliced-filters.vue.d.ts +45 -39
- package/types/x-modules/facets/components/lists/sliced-filters.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/lists/sorted-filters.vue.d.ts +37 -12
- package/types/x-modules/facets/components/lists/sorted-filters.vue.d.ts.map +1 -1
- package/types/x-modules/facets/components/preselected-filters.vue.d.ts +5 -3
- package/types/x-modules/facets/components/preselected-filters.vue.d.ts.map +1 -1
- package/types/x-modules/facets/composables/index.d.ts +3 -0
- package/types/x-modules/facets/composables/index.d.ts.map +1 -0
- package/types/x-modules/facets/composables/use-facets.d.ts +23 -0
- package/types/x-modules/facets/composables/use-facets.d.ts.map +1 -0
- package/types/x-modules/facets/composables/use-filters-injection.d.ts +19 -0
- package/types/x-modules/facets/composables/use-filters-injection.d.ts.map +1 -0
- package/types/x-modules/facets/index.d.ts +1 -1
- package/types/x-modules/facets/index.d.ts.map +1 -1
- package/types/x-modules/facets/store/module.d.ts +1 -1
- package/types/x-modules/facets/store/module.d.ts.map +1 -1
- package/types/x-modules/facets/x-module.d.ts.map +1 -1
- package/types/x-modules/history-queries/components/clear-history-queries.vue.d.ts +7 -32
- package/types/x-modules/history-queries/components/clear-history-queries.vue.d.ts.map +1 -1
- package/types/x-modules/history-queries/components/history-queries-switch.vue.d.ts +6 -27
- package/types/x-modules/history-queries/components/history-queries-switch.vue.d.ts.map +1 -1
- package/types/x-modules/history-queries/components/history-queries.vue.d.ts +5 -11
- package/types/x-modules/history-queries/components/history-queries.vue.d.ts.map +1 -1
- package/types/x-modules/history-queries/components/history-query.vue.d.ts +29 -16
- package/types/x-modules/history-queries/components/history-query.vue.d.ts.map +1 -1
- package/types/x-modules/history-queries/components/my-history.vue.d.ts +38 -68
- package/types/x-modules/history-queries/components/my-history.vue.d.ts.map +1 -1
- package/types/x-modules/history-queries/components/remove-history-query.vue.d.ts +17 -11
- package/types/x-modules/history-queries/components/remove-history-query.vue.d.ts.map +1 -1
- package/types/x-modules/history-queries/store/getters/history-queries.getter.d.ts +1 -1
- package/types/x-modules/history-queries/store/getters/history-queries.getter.d.ts.map +1 -1
- package/types/x-modules/history-queries/x-module.d.ts.map +1 -1
- package/types/x-modules/identifier-results/components/identifier-result.vue.d.ts +18 -21
- package/types/x-modules/identifier-results/components/identifier-result.vue.d.ts.map +1 -1
- package/types/x-modules/identifier-results/components/identifier-results.vue.d.ts +22 -20
- package/types/x-modules/identifier-results/components/identifier-results.vue.d.ts.map +1 -1
- package/types/x-modules/identifier-results/x-module.d.ts.map +1 -1
- package/types/x-modules/next-queries/components/next-queries-list.vue.d.ts +18 -67
- package/types/x-modules/next-queries/components/next-queries-list.vue.d.ts.map +1 -1
- package/types/x-modules/next-queries/components/next-queries.vue.d.ts +25 -13
- package/types/x-modules/next-queries/components/next-queries.vue.d.ts.map +1 -1
- package/types/x-modules/next-queries/components/next-query-preview.vue.d.ts +23 -18
- package/types/x-modules/next-queries/components/next-query-preview.vue.d.ts.map +1 -1
- package/types/x-modules/next-queries/components/next-query.vue.d.ts +30 -14
- package/types/x-modules/next-queries/components/next-query.vue.d.ts.map +1 -1
- package/types/x-modules/next-queries/store/actions/fetch-next-query-preview.action.d.ts +4 -4
- package/types/x-modules/next-queries/x-module.d.ts.map +1 -1
- package/types/x-modules/popular-searches/components/popular-search.vue.d.ts +17 -8
- package/types/x-modules/popular-searches/components/popular-search.vue.d.ts.map +1 -1
- package/types/x-modules/popular-searches/components/popular-searches.vue.d.ts +5 -11
- package/types/x-modules/popular-searches/components/popular-searches.vue.d.ts.map +1 -1
- package/types/x-modules/popular-searches/x-module.d.ts.map +1 -1
- package/types/x-modules/queries-preview/components/query-preview-button.vue.d.ts +30 -16
- package/types/x-modules/queries-preview/components/query-preview-button.vue.d.ts.map +1 -1
- package/types/x-modules/queries-preview/components/query-preview-list.vue.d.ts +7 -10
- package/types/x-modules/queries-preview/components/query-preview-list.vue.d.ts.map +1 -1
- package/types/x-modules/queries-preview/components/query-preview.vue.d.ts +26 -41
- package/types/x-modules/queries-preview/components/query-preview.vue.d.ts.map +1 -1
- package/types/x-modules/queries-preview/store/module.d.ts.map +1 -1
- package/types/x-modules/queries-preview/store/types.d.ts +15 -3
- package/types/x-modules/queries-preview/store/types.d.ts.map +1 -1
- package/types/x-modules/queries-preview/x-module.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/components/query-suggestion.vue.d.ts +21 -24
- package/types/x-modules/query-suggestions/components/query-suggestion.vue.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/components/query-suggestions.vue.d.ts +5 -11
- package/types/x-modules/query-suggestions/components/query-suggestions.vue.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/config.types.d.ts +22 -0
- package/types/x-modules/query-suggestions/config.types.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/store/getters/query-suggestions.getter.d.ts +3 -3
- package/types/x-modules/query-suggestions/store/getters/query-suggestions.getter.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/store/module.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/store/types.d.ts +9 -1
- package/types/x-modules/query-suggestions/store/types.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/wiring.d.ts +9 -0
- package/types/x-modules/query-suggestions/wiring.d.ts.map +1 -1
- package/types/x-modules/recommendations/components/recommendations.vue.d.ts +24 -38
- package/types/x-modules/recommendations/components/recommendations.vue.d.ts.map +1 -1
- package/types/x-modules/recommendations/x-module.d.ts.map +1 -1
- package/types/x-modules/related-tags/components/related-tag.vue.d.ts +32 -54
- package/types/x-modules/related-tags/components/related-tag.vue.d.ts.map +1 -1
- package/types/x-modules/related-tags/components/related-tags.vue.d.ts +48 -9
- package/types/x-modules/related-tags/components/related-tags.vue.d.ts.map +1 -1
- package/types/x-modules/related-tags/x-module.d.ts.map +1 -1
- package/types/x-modules/scroll/components/index.d.ts +0 -1
- package/types/x-modules/scroll/components/index.d.ts.map +1 -1
- package/types/x-modules/scroll/components/main-scroll-item.vue.d.ts +12 -36
- package/types/x-modules/scroll/components/main-scroll-item.vue.d.ts.map +1 -1
- package/types/x-modules/scroll/components/main-scroll.vue.d.ts +9 -39
- package/types/x-modules/scroll/components/main-scroll.vue.d.ts.map +1 -1
- package/types/x-modules/scroll/components/scroll-to-top.vue.d.ts +35 -49
- package/types/x-modules/scroll/components/scroll-to-top.vue.d.ts.map +1 -1
- package/types/x-modules/scroll/components/scroll.const.d.ts +1 -1
- package/types/x-modules/scroll/components/scroll.const.d.ts.map +1 -1
- package/types/x-modules/scroll/components/scroll.vue.d.ts +25 -52
- package/types/x-modules/scroll/components/scroll.vue.d.ts.map +1 -1
- package/types/x-modules/scroll/store/module.d.ts.map +1 -1
- package/types/x-modules/scroll/x-module.d.ts.map +1 -1
- package/types/x-modules/search/components/banner.vue.d.ts +117 -23
- package/types/x-modules/search/components/banner.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/banners-list.vue.d.ts +12 -30
- package/types/x-modules/search/components/banners-list.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/fallback-disclaimer.vue.d.ts +6 -4
- package/types/x-modules/search/components/fallback-disclaimer.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/partial-query-button.vue.d.ts +17 -15
- package/types/x-modules/search/components/partial-query-button.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/partial-results-list.vue.d.ts +31 -14
- package/types/x-modules/search/components/partial-results-list.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/promoted.vue.d.ts +20 -8
- package/types/x-modules/search/components/promoted.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/promoteds-list.vue.d.ts +12 -26
- package/types/x-modules/search/components/promoteds-list.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/redirection.vue.d.ts +36 -43
- package/types/x-modules/search/components/redirection.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/results-list.vue.d.ts +13 -25
- package/types/x-modules/search/components/results-list.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/sort-dropdown.vue.d.ts +13 -11
- package/types/x-modules/search/components/sort-dropdown.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/sort-list.vue.d.ts +14 -14
- package/types/x-modules/search/components/sort-list.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/sort-picker-list.vue.d.ts +14 -14
- package/types/x-modules/search/components/sort-picker-list.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/spellcheck-button.vue.d.ts +7 -24
- package/types/x-modules/search/components/spellcheck-button.vue.d.ts.map +1 -1
- package/types/x-modules/search/components/spellcheck.vue.d.ts +6 -16
- package/types/x-modules/search/components/spellcheck.vue.d.ts.map +1 -1
- package/types/x-modules/search/events.types.d.ts +5 -1
- package/types/x-modules/search/events.types.d.ts.map +1 -1
- package/types/x-modules/search/store/module.d.ts.map +1 -1
- package/types/x-modules/search/store/types.d.ts +8 -5
- package/types/x-modules/search/store/types.d.ts.map +1 -1
- package/types/x-modules/search/wiring.d.ts +9 -0
- package/types/x-modules/search/wiring.d.ts.map +1 -1
- package/types/x-modules/search/x-module.d.ts.map +1 -1
- package/types/x-modules/search-box/components/clear-search-input.vue.d.ts +8 -14
- package/types/x-modules/search-box/components/clear-search-input.vue.d.ts.map +1 -1
- package/types/x-modules/search-box/components/search-button.vue.d.ts +8 -21
- package/types/x-modules/search-box/components/search-button.vue.d.ts.map +1 -1
- package/types/x-modules/search-box/components/search-input-placeholder.vue.d.ts +47 -88
- package/types/x-modules/search-box/components/search-input-placeholder.vue.d.ts.map +1 -1
- package/types/x-modules/search-box/components/search-input.vue.d.ts +58 -123
- package/types/x-modules/search-box/components/search-input.vue.d.ts.map +1 -1
- package/types/x-modules/semantic-queries/components/semantic-queries.vue.d.ts +7 -24
- package/types/x-modules/semantic-queries/components/semantic-queries.vue.d.ts.map +1 -1
- package/types/x-modules/semantic-queries/components/semantic-query.vue.d.ts +22 -21
- package/types/x-modules/semantic-queries/components/semantic-query.vue.d.ts.map +1 -1
- package/types/x-modules/semantic-queries/x-module.d.ts.map +1 -1
- package/types/x-modules/tagging/components/tagging.vue.d.ts +41 -44
- package/types/x-modules/tagging/components/tagging.vue.d.ts.map +1 -1
- package/types/x-modules/tagging/wiring.d.ts.map +1 -1
- package/types/x-modules/tagging/x-module.d.ts.map +1 -1
- package/types/x-modules/url/components/url-handler.vue.d.ts +6 -187
- package/types/x-modules/url/components/url-handler.vue.d.ts.map +1 -1
- package/types/x-modules/url/store/mutations/set-params.mutation.d.ts.map +1 -1
- package/types/x-modules/url/x-module.d.ts.map +1 -1
- package/docs/API-reference/api/x-components.allfilter.facet.md +0 -13
- package/docs/API-reference/api/x-components.allfilter.isselected.md +0 -13
- package/docs/API-reference/api/x-components.allfilter.selectedfiltersbyfacet.md +0 -13
- package/docs/API-reference/api/x-components.arrowdownicon.md +0 -11
- package/docs/API-reference/api/x-components.arrowlefticon.md +0 -11
- package/docs/API-reference/api/x-components.arrowrighticon.md +0 -11
- package/docs/API-reference/api/x-components.arrowupicon.md +0 -11
- package/docs/API-reference/api/x-components.bagicon.md +0 -11
- package/docs/API-reference/api/x-components.banner.banner.md +0 -13
- package/docs/API-reference/api/x-components.banner.imagefailed.md +0 -13
- package/docs/API-reference/api/x-components.barcodeicon.md +0 -11
- package/docs/API-reference/api/x-components.barcodetinyicon.md +0 -11
- package/docs/API-reference/api/x-components.baseeventsmodal.animation.md +0 -13
- package/docs/API-reference/api/x-components.baseeventsmodal.bodyclickevent.md +0 -13
- package/docs/API-reference/api/x-components.baseeventsmodal.emitbodyclickevent.md +0 -24
- package/docs/API-reference/api/x-components.baseeventsmodal.eventstoclosemodal.md +0 -13
- package/docs/API-reference/api/x-components.baseeventsmodal.eventstoopenmodal.md +0 -13
- package/docs/API-reference/api/x-components.baseeventsmodal.isopen.md +0 -13
- package/docs/API-reference/api/x-components.baseeventsmodal.openerelement.md +0 -13
- package/docs/API-reference/api/x-components.basefallbackimage.md +0 -11
- package/docs/API-reference/api/x-components.baseheadertogglepanel.animation.md +0 -13
- package/docs/API-reference/api/x-components.baseheadertogglepanel.startcollapsed.md +0 -13
- package/docs/API-reference/api/x-components.baseidmodal.animation.md +0 -13
- package/docs/API-reference/api/x-components.baseidmodal.closemodal.md +0 -24
- package/docs/API-reference/api/x-components.baseidmodal.emitclickoutofmodal.md +0 -24
- package/docs/API-reference/api/x-components.baseidmodal.isopen.md +0 -13
- package/docs/API-reference/api/x-components.baseidmodal.modalid.md +0 -13
- package/docs/API-reference/api/x-components.baseidmodal.openerelement.md +0 -13
- package/docs/API-reference/api/x-components.baseidmodal.openmodal.md +0 -25
- package/docs/API-reference/api/x-components.baseidtogglepanel.animation.md +0 -13
- package/docs/API-reference/api/x-components.baseidtogglepanel.emitstateevent.md +0 -21
- package/docs/API-reference/api/x-components.baseidtogglepanel.isopen.md +0 -13
- package/docs/API-reference/api/x-components.baseidtogglepanel.panelid.md +0 -13
- package/docs/API-reference/api/x-components.baseidtogglepanel.startopen.md +0 -13
- package/docs/API-reference/api/x-components.baseidtogglepanel.togglepanel.md +0 -24
- package/docs/API-reference/api/x-components.baseidtogglepanelbutton.ispanelopen.md +0 -13
- package/docs/API-reference/api/x-components.baseidtogglepanelbutton.panelid.md +0 -13
- package/docs/API-reference/api/x-components.baseidtogglepanelbutton.updatepanelstate.md +0 -25
- package/docs/API-reference/api/x-components.basekeyboardnavigation.elementtofocus.md +0 -13
- package/docs/API-reference/api/x-components.basekeyboardnavigation.eventsfordirectionlimit.md +0 -13
- package/docs/API-reference/api/x-components.basekeyboardnavigation.mounted.md +0 -15
- package/docs/API-reference/api/x-components.basekeyboardnavigation.navigationhijacker.md +0 -13
- package/docs/API-reference/api/x-components.basekeyboardnavigation.navigationhijackerevents.md +0 -18
- package/docs/API-reference/api/x-components.basekeyboardnavigation.navigationservice.md +0 -13
- package/docs/API-reference/api/x-components.basekeyboardnavigation.triggernavigation.md +0 -25
- package/docs/API-reference/api/x-components.basemodal._refs.md +0 -14
- package/docs/API-reference/api/x-components.basemodal.animation.md +0 -13
- package/docs/API-reference/api/x-components.basemodal.focusonopen.md +0 -13
- package/docs/API-reference/api/x-components.basemodal.iswaitingforleave.md +0 -13
- package/docs/API-reference/api/x-components.basemodal.mounted.md +0 -15
- package/docs/API-reference/api/x-components.basemodal.open.md +0 -13
- package/docs/API-reference/api/x-components.basemodal.overlayanimation.md +0 -13
- package/docs/API-reference/api/x-components.basemodal.previousbodyoverflow.md +0 -13
- package/docs/API-reference/api/x-components.basemodal.previoushtmloverflow.md +0 -13
- package/docs/API-reference/api/x-components.basemodal.referenceelement.md +0 -13
- package/docs/API-reference/api/x-components.basemodal.referenceselector.md +0 -13
- package/docs/API-reference/api/x-components.baseplaceholderimage.md +0 -11
- package/docs/API-reference/api/x-components.basesuggestions.animation.md +0 -13
- package/docs/API-reference/api/x-components.basesuggestions.maxitemstorender.md +0 -13
- package/docs/API-reference/api/x-components.basesuggestions.showfacets.md +0 -13
- package/docs/API-reference/api/x-components.basesuggestions.showplainsuggestion.md +0 -13
- package/docs/API-reference/api/x-components.basesuggestions.suggestions.md +0 -13
- package/docs/API-reference/api/x-components.basetabspanel.allowtabdeselect.md +0 -13
- package/docs/API-reference/api/x-components.basetabspanel.contentanimation.md +0 -13
- package/docs/API-reference/api/x-components.basetabspanel.initialtab.md +0 -13
- package/docs/API-reference/api/x-components.basetabspanel.tabsanimation.md +0 -13
- package/docs/API-reference/api/x-components.basevariablecolumngrid.animation.md +0 -13
- package/docs/API-reference/api/x-components.basevariablecolumngrid.items.md +0 -18
- package/docs/API-reference/api/x-components.cartfilledicon.md +0 -11
- package/docs/API-reference/api/x-components.carticon.md +0 -11
- package/docs/API-reference/api/x-components.checkboxselectedfilledicon.md +0 -11
- package/docs/API-reference/api/x-components.checkboxselectedicon.md +0 -11
- package/docs/API-reference/api/x-components.checkboxunselectedfilledicon.md +0 -11
- package/docs/API-reference/api/x-components.checkboxunselectedicon.md +0 -11
- package/docs/API-reference/api/x-components.checkicon.md +0 -11
- package/docs/API-reference/api/x-components.checktinyicon.md +0 -11
- package/docs/API-reference/api/x-components.chevrondownicon.md +0 -11
- package/docs/API-reference/api/x-components.chevronlefticon.md +0 -11
- package/docs/API-reference/api/x-components.chevronrighticon.md +0 -11
- package/docs/API-reference/api/x-components.chevrontinydownicon.md +0 -11
- package/docs/API-reference/api/x-components.chevrontinylefticon.md +0 -11
- package/docs/API-reference/api/x-components.chevrontinyrighticon.md +0 -11
- package/docs/API-reference/api/x-components.chevrontinyupicon.md +0 -11
- package/docs/API-reference/api/x-components.chevronupicon.md +0 -11
- package/docs/API-reference/api/x-components.clearsearchinput.dynamicclasses.md +0 -11
- package/docs/API-reference/api/x-components.clearsearchinput.isqueryempty.md +0 -11
- package/docs/API-reference/api/x-components.clearsearchinput.query.md +0 -11
- package/docs/API-reference/api/x-components.collapseheight.appear.md +0 -13
- package/docs/API-reference/api/x-components.collapsewidth.appear.md +0 -13
- package/docs/API-reference/api/x-components.cornerarrowleft.md +0 -11
- package/docs/API-reference/api/x-components.cornerarrowright.md +0 -11
- package/docs/API-reference/api/x-components.createcollapseanimationmixin.md +0 -26
- package/docs/API-reference/api/x-components.crossicon.md +0 -11
- package/docs/API-reference/api/x-components.crosstinyicon.md +0 -11
- package/docs/API-reference/api/x-components.curatedcheckfilledicon.md +0 -11
- package/docs/API-reference/api/x-components.curatedcheckicon.md +0 -11
- package/docs/API-reference/api/x-components.curatedchecktinyfilledicon.md +0 -11
- package/docs/API-reference/api/x-components.curatedchecktinyicon.md +0 -11
- package/docs/API-reference/api/x-components.devicedetector.breakpoints.md +0 -13
- package/docs/API-reference/api/x-components.devicedetector.force.md +0 -13
- package/docs/API-reference/api/x-components.devicedetector.throttlems.md +0 -13
- package/docs/API-reference/api/x-components.diagonalarrowleftdownicon.md +0 -11
- package/docs/API-reference/api/x-components.diagonalarrowlefttopicon.md +0 -11
- package/docs/API-reference/api/x-components.diagonalarrowrightdownicon.md +0 -11
- package/docs/API-reference/api/x-components.diagonalarrowrighttopicon.md +0 -11
- package/docs/API-reference/api/x-components.disableanimationmixin.animationname.md +0 -13
- package/docs/API-reference/api/x-components.disableanimationmixin.disableanimation.md +0 -13
- package/docs/API-reference/api/x-components.disableanimationmixin.md +0 -22
- package/docs/API-reference/api/x-components.editablenumberrangefilter.filter.md +0 -13
- package/docs/API-reference/api/x-components.editablenumberrangefilter.hasclearbutton.md +0 -13
- package/docs/API-reference/api/x-components.editablenumberrangefilter.isinstant.md +0 -13
- package/docs/API-reference/api/x-components.editablenumberrangefilter.rangefiltermax.md +0 -11
- package/docs/API-reference/api/x-components.editablenumberrangefilter.rangefiltermin.md +0 -11
- package/docs/API-reference/api/x-components.editablenumberrangefilter.resetranges.md +0 -17
- package/docs/API-reference/api/x-components.empathize._refs.md +0 -14
- package/docs/API-reference/api/x-components.empathize.animation.md +0 -13
- package/docs/API-reference/api/x-components.empathize.eventstocloseempathize.md +0 -13
- package/docs/API-reference/api/x-components.empathize.eventstoopenempathize.md +0 -13
- package/docs/API-reference/api/x-components.empathize.updated.md +0 -17
- package/docs/API-reference/api/x-components.excludefilterswithnoresults.render.md +0 -22
- package/docs/API-reference/api/x-components.experiencecontrols.oneventschanged.md +0 -24
- package/docs/API-reference/api/x-components.experiencecontrols.render.md +0 -15
- package/docs/API-reference/api/x-components.extraparams.created.md +0 -17
- package/docs/API-reference/api/x-components.extraparams.render.md +0 -15
- package/docs/API-reference/api/x-components.extraparams.storeextraparams.md +0 -13
- package/docs/API-reference/api/x-components.extraparams.values.md +0 -18
- package/docs/API-reference/api/x-components.facets.animation.md +0 -13
- package/docs/API-reference/api/x-components.facets.renderablefacets.md +0 -24
- package/docs/API-reference/api/x-components.facetsmixin.alwaysvisible.md +0 -13
- package/docs/API-reference/api/x-components.facetsmixin.facetsids.md +0 -13
- package/docs/API-reference/api/x-components.facetsmixin.md +0 -22
- package/docs/API-reference/api/x-components.facetsprovider.groupid.md +0 -13
- package/docs/API-reference/api/x-components.facetsprovider.providefacets.md +0 -17
- package/docs/API-reference/api/x-components.facetsprovider.render.md +0 -15
- package/docs/API-reference/api/x-components.fadeandslide.animationname.md +0 -13
- package/docs/API-reference/api/x-components.fadeandslide.appear.md +0 -13
- package/docs/API-reference/api/x-components.fadeandslide.tag.md +0 -13
- package/docs/API-reference/api/x-components.filtersicon.md +0 -11
- package/docs/API-reference/api/x-components.filtersinjectionmixin.filters.md +0 -13
- package/docs/API-reference/api/x-components.filtersinjectionmixin.injectedfilters.md +0 -13
- package/docs/API-reference/api/x-components.filtersinjectionmixin.md +0 -23
- package/docs/API-reference/api/x-components.filtersinjectionmixin.parentid.md +0 -13
- package/docs/API-reference/api/x-components.filterslist.animation.md +0 -13
- package/docs/API-reference/api/x-components.filterslist.cssclasses.md +0 -13
- package/docs/API-reference/api/x-components.filterslist.hasfilterstorender.md +0 -13
- package/docs/API-reference/api/x-components.filterssearch.debounceinms.md +0 -13
- package/docs/API-reference/api/x-components.filterssearch.filterssearchinputmessage.md +0 -11
- package/docs/API-reference/api/x-components.filterssearch.query.md +0 -11
- package/docs/API-reference/api/x-components.filterssearch.setquerydebounced.md +0 -11
- package/docs/API-reference/api/x-components.fixedheaderandasideslayout.isbackdropvisible.md +0 -11
- package/docs/API-reference/api/x-components.fixedheaderandasideslayout.leftasideanimation.md +0 -11
- package/docs/API-reference/api/x-components.fixedheaderandasideslayout.rightasideanimation.md +0 -11
- package/docs/API-reference/api/x-components.fixedheaderandasideslayout.scrollposition.md +0 -11
- package/docs/API-reference/api/x-components.fixedheaderandasideslayout.setposition.md +0 -22
- package/docs/API-reference/api/x-components.getter.md +0 -29
- package/docs/API-reference/api/x-components.grid1colicon.md +0 -11
- package/docs/API-reference/api/x-components.grid2colicon.md +0 -11
- package/docs/API-reference/api/x-components.grid2rowsicon.md +0 -11
- package/docs/API-reference/api/x-components.grid4colicon.md +0 -11
- package/docs/API-reference/api/x-components.hearticon.md +0 -11
- package/docs/API-reference/api/x-components.hearticonfilled.md +0 -11
- package/docs/API-reference/api/x-components.hideicon.md +0 -11
- package/docs/API-reference/api/x-components.hierarchicalfilter.childrenanimation.md +0 -13
- package/docs/API-reference/api/x-components.hierarchicalfilter.clickevents.md +0 -13
- package/docs/API-reference/api/x-components.hierarchicalfilter.filter.md +0 -13
- package/docs/API-reference/api/x-components.hierarchicalfilter.isfilterpartiallyselected.md +0 -22
- package/docs/API-reference/api/x-components.highlight.highlight.md +0 -13
- package/docs/API-reference/api/x-components.highlight.matchclass.md +0 -13
- package/docs/API-reference/api/x-components.highlight.text.md +0 -13
- package/docs/API-reference/api/x-components.historyicon.md +0 -11
- package/docs/API-reference/api/x-components.historyqueriesswitch.hashistoryqueries.md +0 -13
- package/docs/API-reference/api/x-components.historyqueriesswitch.historyqueries.md +0 -13
- package/docs/API-reference/api/x-components.historyquery.suggestion.md +0 -13
- package/docs/API-reference/api/x-components.historytinyicon.md +0 -11
- package/docs/API-reference/api/x-components.identifierresult.highlightedqueryhtml.md +0 -13
- package/docs/API-reference/api/x-components.identifierresult.identifierhighlightregexp.md +0 -13
- package/docs/API-reference/api/x-components.identifierresult.query.md +0 -13
- package/docs/API-reference/api/x-components.identifierresult.result.md +0 -13
- package/docs/API-reference/api/x-components.identifierresults.animation.md +0 -13
- package/docs/API-reference/api/x-components.identifierresults.identifierresults.md +0 -13
- package/docs/API-reference/api/x-components.identifierresults.maxitemstorender.md +0 -13
- package/docs/API-reference/api/x-components.identifierresults.resultclickextraevents.md +0 -13
- package/docs/API-reference/api/x-components.infinitescroll.oninfinitescrollend.md +0 -11
- package/docs/API-reference/api/x-components.installxoptions.vue.md +0 -13
- package/docs/API-reference/api/x-components.installxoptions.vueoptions.md +0 -26
- package/docs/API-reference/api/x-components.lightbulboff.md +0 -11
- package/docs/API-reference/api/x-components.lightbulbon.md +0 -11
- package/docs/API-reference/api/x-components.menuicon.md +0 -11
- package/docs/API-reference/api/x-components.minusicon.md +0 -11
- package/docs/API-reference/api/x-components.minustinyicon.md +0 -11
- package/docs/API-reference/api/x-components.multicolumnmaxwidthlayout.asideanimation.md +0 -13
- package/docs/API-reference/api/x-components.myhistory.animation.md +0 -13
- package/docs/API-reference/api/x-components.myhistory.locale.md +0 -13
- package/docs/API-reference/api/x-components.nextqueries.highlightcurated.md +0 -13
- package/docs/API-reference/api/x-components.nextqueries.suggestions.md +0 -13
- package/docs/API-reference/api/x-components.nextquery.events.md +0 -13
- package/docs/API-reference/api/x-components.nextquery.highlightcurated.md +0 -13
- package/docs/API-reference/api/x-components.nextquery.suggestion.md +0 -13
- package/docs/API-reference/api/x-components.nextquerypreview.maxitemstorender.md +0 -13
- package/docs/API-reference/api/x-components.nextquerypreview.mounted.md +0 -17
- package/docs/API-reference/api/x-components.nextquerypreview.previewresults.md +0 -13
- package/docs/API-reference/api/x-components.nextquerypreview.suggestion.md +0 -13
- package/docs/API-reference/api/x-components.nextquerypreview.suggestionresults.md +0 -13
- package/docs/API-reference/api/x-components.numberrangefilter.clickevents.md +0 -13
- package/docs/API-reference/api/x-components.numberrangefilter.filter.md +0 -13
- package/docs/API-reference/api/x-components.partialquerybutton.emitevents.md +0 -17
- package/docs/API-reference/api/x-components.partialquerybutton.query.md +0 -13
- package/docs/API-reference/api/x-components.partialresultslist.animation.md +0 -13
- package/docs/API-reference/api/x-components.partialresultslist.items.md +0 -13
- package/docs/API-reference/api/x-components.partialresultslist.maxitemstorender.md +0 -13
- package/docs/API-reference/api/x-components.plusicon.md +0 -11
- package/docs/API-reference/api/x-components.plustinyicon.md +0 -11
- package/docs/API-reference/api/x-components.popularsearch.events.md +0 -13
- package/docs/API-reference/api/x-components.popularsearch.suggestion.md +0 -13
- package/docs/API-reference/api/x-components.promoted.promoted.md +0 -13
- package/docs/API-reference/api/x-components.querypreviewbutton.fullquerypreviewinfo.md +0 -13
- package/docs/API-reference/api/x-components.querypreviewbutton.params.md +0 -13
- package/docs/API-reference/api/x-components.querypreviewbutton.querypreviewinfo.md +0 -13
- package/docs/API-reference/api/x-components.querysuggestion.suggestion.md +0 -13
- package/docs/API-reference/api/x-components.radiobuttonselectedicon.md +0 -11
- package/docs/API-reference/api/x-components.radiobuttonunselectedicon.md +0 -11
- package/docs/API-reference/api/x-components.recommendations.animation.md +0 -13
- package/docs/API-reference/api/x-components.recommendations.maxitemstorender.md +0 -13
- package/docs/API-reference/api/x-components.recommendations.resultclickextraevents.md +0 -13
- package/docs/API-reference/api/x-components.recommendations.storedrecommendations.md +0 -13
- package/docs/API-reference/api/x-components.redirection.abortredirect.md +0 -17
- package/docs/API-reference/api/x-components.redirection.delayinseconds.md +0 -18
- package/docs/API-reference/api/x-components.redirection.isredirecting.md +0 -13
- package/docs/API-reference/api/x-components.redirection.mode.md +0 -13
- package/docs/API-reference/api/x-components.redirection.redirect.md +0 -17
- package/docs/API-reference/api/x-components.redirection.redirections.md +0 -11
- package/docs/API-reference/api/x-components.relatedtag.blurrelatedtag.md +0 -17
- package/docs/API-reference/api/x-components.relatedtag.clickrelatedtag.md +0 -17
- package/docs/API-reference/api/x-components.relatedtag.emitevents.md +0 -17
- package/docs/API-reference/api/x-components.relatedtag.highlightcurated.md +0 -13
- package/docs/API-reference/api/x-components.relatedtag.relatedtag.md +0 -13
- package/docs/API-reference/api/x-components.relatedtags.animation.md +0 -13
- package/docs/API-reference/api/x-components.relatedtags.highlightcurated.md +0 -13
- package/docs/API-reference/api/x-components.relatedtags.maxitemstorender.md +0 -13
- package/docs/API-reference/api/x-components.relatedtags.relatedtags.md +0 -11
- package/docs/API-reference/api/x-components.relatedtags.storedrelatedtags.md +0 -11
- package/docs/API-reference/api/x-components.removehistoryquery.historyquery.md +0 -13
- package/docs/API-reference/api/x-components.removehistoryquery.removehistoryqueryevent.md +0 -18
- package/docs/API-reference/api/x-components.renderlessextraparams.name.md +0 -13
- package/docs/API-reference/api/x-components.renderlessextraparams.stateparams.md +0 -13
- package/docs/API-reference/api/x-components.renderlessfilter.clickevents.md +0 -13
- package/docs/API-reference/api/x-components.renderlessfilter.filter.md +0 -13
- package/docs/API-reference/api/x-components.renderlessfilter.render.md +0 -22
- package/docs/API-reference/api/x-components.scroll.id.md +0 -13
- package/docs/API-reference/api/x-components.scrollmixin._el.md +0 -13
- package/docs/API-reference/api/x-components.scrollmixin.distancetobottom.md +0 -13
- package/docs/API-reference/api/x-components.scrollmixin.firstelementthresholdpx.md +0 -13
- package/docs/API-reference/api/x-components.scrollmixin.md +0 -27
- package/docs/API-reference/api/x-components.scrollmixin.reseton.md +0 -13
- package/docs/API-reference/api/x-components.scrollmixin.resetonchange.md +0 -13
- package/docs/API-reference/api/x-components.scrollmixin.throtteledcall.md +0 -11
- package/docs/API-reference/api/x-components.scrollmixin.throttlems.md +0 -13
- package/docs/API-reference/api/x-components.scrolltotop.animation.md +0 -13
- package/docs/API-reference/api/x-components.scrolltotop.scrollid.md +0 -13
- package/docs/API-reference/api/x-components.scrolltotop.thresholdpx.md +0 -13
- package/docs/API-reference/api/x-components.searchbutton.dynamicclasses.md +0 -11
- package/docs/API-reference/api/x-components.searchbutton.emitevents.md +0 -17
- package/docs/API-reference/api/x-components.searchbutton.isqueryempty.md +0 -11
- package/docs/API-reference/api/x-components.searchbutton.query.md +0 -11
- package/docs/API-reference/api/x-components.searchicon.md +0 -11
- package/docs/API-reference/api/x-components.searchinput._refs.md +0 -13
- package/docs/API-reference/api/x-components.searchinput.autocompletekeyboardkeys.md +0 -13
- package/docs/API-reference/api/x-components.searchinput.autocompletesuggestionsevent.md +0 -13
- package/docs/API-reference/api/x-components.searchinput.autofocus.md +0 -13
- package/docs/API-reference/api/x-components.searchinput.debounceduseracceptedaquery.md +0 -11
- package/docs/API-reference/api/x-components.searchinput.instant.md +0 -13
- package/docs/API-reference/api/x-components.searchinput.instantdebounceinms.md +0 -13
- package/docs/API-reference/api/x-components.searchinput.maxlength.md +0 -13
- package/docs/API-reference/api/x-components.searchinput.mounted.md +0 -15
- package/docs/API-reference/api/x-components.searchinput.query.md +0 -11
- package/docs/API-reference/api/x-components.searchinput.searchinputmessage.md +0 -11
- package/docs/API-reference/api/x-components.searchinputplaceholder.animateonlyonhover.md +0 -13
- package/docs/API-reference/api/x-components.searchinputplaceholder.animation.md +0 -13
- package/docs/API-reference/api/x-components.searchinputplaceholder.animationintervalms.md +0 -13
- package/docs/API-reference/api/x-components.searchinputplaceholder.beforedestroy.md +0 -15
- package/docs/API-reference/api/x-components.searchinputplaceholder.messages.md +0 -13
- package/docs/API-reference/api/x-components.searchinputplaceholder.onuserblurredsearchbox.md +0 -15
- package/docs/API-reference/api/x-components.searchinputplaceholder.onuserfocusedsearchbox.md +0 -15
- package/docs/API-reference/api/x-components.searchinputplaceholder.onuserhoveredinsearchbox.md +0 -15
- package/docs/API-reference/api/x-components.searchinputplaceholder.onuserhoveredoutsearchbox.md +0 -15
- package/docs/API-reference/api/x-components.searchtinyicon.md +0 -11
- package/docs/API-reference/api/x-components.selectedfilterslist.animation.md +0 -13
- package/docs/API-reference/api/x-components.semanticqueries.findsemanticquery.md +0 -26
- package/docs/API-reference/api/x-components.semanticqueries.suggestions.md +0 -13
- package/docs/API-reference/api/x-components.semanticquery.query.md +0 -13
- package/docs/API-reference/api/x-components.semanticquery.suggestion.md +0 -13
- package/docs/API-reference/api/x-components.settingsicon.md +0 -11
- package/docs/API-reference/api/x-components.showicon.md +0 -11
- package/docs/API-reference/api/x-components.simplefilter.clickevents.md +0 -13
- package/docs/API-reference/api/x-components.simplefilter.filter.md +0 -13
- package/docs/API-reference/api/x-components.singlecolumnlayout.asideanimation.md +0 -13
- package/docs/API-reference/api/x-components.slicedfilters.max.md +0 -13
- package/docs/API-reference/api/x-components.slicedfilters.showmorefilters.md +0 -13
- package/docs/API-reference/api/x-components.slidingpanel.resetoncontentchange.md +0 -13
- package/docs/API-reference/api/x-components.slidingpanel.scrollfactor.md +0 -13
- package/docs/API-reference/api/x-components.slidingpanel.showbuttons.md +0 -13
- package/docs/API-reference/api/x-components.snippetconfigextraparams.excludedextraparams.md +0 -13
- package/docs/API-reference/api/x-components.snippetconfigextraparams.values.md +0 -13
- package/docs/API-reference/api/x-components.sortazicon.md +0 -11
- package/docs/API-reference/api/x-components.sortedfilters.render.md +0 -22
- package/docs/API-reference/api/x-components.sortpricedownicon.md +0 -11
- package/docs/API-reference/api/x-components.sortpriceupicon.md +0 -11
- package/docs/API-reference/api/x-components.sortrelevancyicon.md +0 -11
- package/docs/API-reference/api/x-components.sortzaicon.md +0 -11
- package/docs/API-reference/api/x-components.spellcheck.query.md +0 -13
- package/docs/API-reference/api/x-components.spellcheck.spellcheckedquery.md +0 -13
- package/docs/API-reference/api/x-components.spellcheckbutton.emitevents.md +0 -17
- package/docs/API-reference/api/x-components.spellcheckbutton.spellcheckedquery.md +0 -13
- package/docs/API-reference/api/x-components.staggeredfadeandslide.animationname.md +0 -13
- package/docs/API-reference/api/x-components.staggeredfadeandslide.appear.md +0 -13
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.beforecreate.md +0 -15
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.beforeupdate.md +0 -15
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.md +0 -34
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.mounted.md +0 -15
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.moveclass.md +0 -13
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.name.md +0 -13
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.render.md +0 -22
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.staggering.md +0 -13
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.tag.md +0 -13
- package/docs/API-reference/api/x-components.staggeringtransitiongroup.updated.md +0 -15
- package/docs/API-reference/api/x-components.starfilledicon.md +0 -11
- package/docs/API-reference/api/x-components.staricon.md +0 -11
- package/docs/API-reference/api/x-components.state.md +0 -29
- package/docs/API-reference/api/x-components.tagfilledicon.md +0 -11
- package/docs/API-reference/api/x-components.tagging.activeconsent.md +0 -18
- package/docs/API-reference/api/x-components.tagging.clickedresultstoragekey.md +0 -13
- package/docs/API-reference/api/x-components.tagging.clickedresultstoragettlms.md +0 -13
- package/docs/API-reference/api/x-components.tagging.config.md +0 -11
- package/docs/API-reference/api/x-components.tagging.consent.md +0 -13
- package/docs/API-reference/api/x-components.tagging.created.md +0 -17
- package/docs/API-reference/api/x-components.tagging.render.md +0 -15
- package/docs/API-reference/api/x-components.tagicon.md +0 -11
- package/docs/API-reference/api/x-components.trashicon.md +0 -11
- package/docs/API-reference/api/x-components.trashopenicon.md +0 -11
- package/docs/API-reference/api/x-components.trendingicon.md +0 -11
- package/docs/API-reference/api/x-components.trendingtinyicon.md +0 -11
- package/docs/API-reference/api/x-components.urlhandler.created.md +0 -17
- package/docs/API-reference/api/x-components.urlhandler.initialextraparams.md +0 -11
- package/docs/API-reference/api/x-components.urlhandler.updateurlwithpush.md +0 -24
- package/docs/API-reference/api/x-components.urlhandler.updateurlwithreplace.md +0 -24
- package/docs/API-reference/api/x-components.usenoelementrender.md +0 -28
- package/docs/API-reference/api/x-components.useregisterxmodule.md +0 -24
- package/docs/API-reference/api/x-components.userfilledicon.md +0 -11
- package/docs/API-reference/api/x-components.usericon.md +0 -11
- package/docs/API-reference/api/x-components.usexcomponentapi.md +0 -15
- package/docs/API-reference/api/x-components.vueconstructorpartialargument.md +0 -13
- package/docs/API-reference/api/x-components.windowscroll.beforedestroy.md +0 -17
- package/docs/API-reference/api/x-components.windowscroll.id.md +0 -13
- package/docs/API-reference/api/x-components.windowscroll.md +0 -30
- package/docs/API-reference/api/x-components.windowscroll.mounted.md +0 -15
- package/docs/API-reference/api/x-components.windowscroll.render.md +0 -15
- package/docs/API-reference/api/x-components.windowscroll.scrollableelement.md +0 -13
- package/docs/API-reference/api/x-components.xcomponentmixin.md +0 -26
- package/docs/API-reference/api/x-components.xemit.md +0 -27
- package/docs/API-reference/api/x-components.xinject.md +0 -41
- package/docs/API-reference/api/x-components.xon.md +0 -31
- package/docs/API-reference/api/x-components.xprovide.md +0 -38
- package/docs/API-reference/components/common/animations/x-components.staggering-transition-group.md +0 -34
- package/docs/API-reference/components/scroll/x-components.window-scroll.md +0 -157
- package/js/__stubs__/filters-stubs.factory.js +0 -24
- package/js/__stubs__/filters-stubs.factory.js.map +0 -1
- package/js/components/animations/animations.mixin.js +0 -59
- package/js/components/animations/animations.mixin.js.map +0 -1
- package/js/components/animations/disable-animation.mixin.js +0 -31
- package/js/components/animations/disable-animation.mixin.js.map +0 -1
- package/js/components/animations/staggering-transition-group.vue.js +0 -39
- package/js/components/animations/staggering-transition-group.vue.js.map +0 -1
- package/js/components/animations/staggering-transition-group.vue2.js +0 -318
- package/js/components/animations/staggering-transition-group.vue2.js.map +0 -1
- package/js/components/animations/staggering-transition-group.vue3.js +0 -16
- package/js/components/animations/staggering-transition-group.vue3.js.map +0 -1
- package/js/components/decorators/bus.decorators.js +0 -112
- package/js/components/decorators/bus.decorators.js.map +0 -1
- package/js/components/decorators/debounce.decorators.js +0 -35
- package/js/components/decorators/debounce.decorators.js.map +0 -1
- package/js/components/decorators/injection.decorators.js +0 -192
- package/js/components/decorators/injection.decorators.js.map +0 -1
- package/js/components/decorators/store.decorators.js +0 -51
- package/js/components/decorators/store.decorators.js.map +0 -1
- package/js/components/dynamic-props.mixin.js +0 -29
- package/js/components/dynamic-props.mixin.js.map +0 -1
- package/js/components/icons/arrow-down.vue2.js +0 -4
- package/js/components/icons/arrow-down.vue2.js.map +0 -1
- package/js/components/icons/arrow-left.vue2.js +0 -4
- package/js/components/icons/arrow-left.vue2.js.map +0 -1
- package/js/components/icons/arrow-right.vue2.js +0 -4
- package/js/components/icons/arrow-right.vue2.js.map +0 -1
- package/js/components/icons/arrow-up.vue2.js +0 -4
- package/js/components/icons/arrow-up.vue2.js.map +0 -1
- package/js/components/icons/bag.vue2.js +0 -4
- package/js/components/icons/bag.vue2.js.map +0 -1
- package/js/components/icons/bar-code.vue2.js +0 -4
- package/js/components/icons/bar-code.vue2.js.map +0 -1
- package/js/components/icons/barcode-tiny.vue2.js +0 -4
- package/js/components/icons/barcode-tiny.vue2.js.map +0 -1
- package/js/components/icons/cart-filled.vue2.js +0 -4
- package/js/components/icons/cart-filled.vue2.js.map +0 -1
- package/js/components/icons/cart.vue2.js +0 -4
- package/js/components/icons/cart.vue2.js.map +0 -1
- package/js/components/icons/check-tiny.vue2.js +0 -4
- package/js/components/icons/check-tiny.vue2.js.map +0 -1
- package/js/components/icons/check.vue2.js +0 -4
- package/js/components/icons/check.vue2.js.map +0 -1
- package/js/components/icons/checkbox-selected-filled.vue2.js +0 -4
- package/js/components/icons/checkbox-selected-filled.vue2.js.map +0 -1
- package/js/components/icons/checkbox-selected.vue2.js +0 -4
- package/js/components/icons/checkbox-selected.vue2.js.map +0 -1
- package/js/components/icons/checkbox-unselected-filled.vue2.js +0 -4
- package/js/components/icons/checkbox-unselected-filled.vue2.js.map +0 -1
- package/js/components/icons/checkbox-unselected.vue2.js +0 -4
- package/js/components/icons/checkbox-unselected.vue2.js.map +0 -1
- package/js/components/icons/chevron-down.vue2.js +0 -4
- package/js/components/icons/chevron-down.vue2.js.map +0 -1
- package/js/components/icons/chevron-left.vue2.js +0 -4
- package/js/components/icons/chevron-left.vue2.js.map +0 -1
- package/js/components/icons/chevron-right.vue2.js +0 -4
- package/js/components/icons/chevron-right.vue2.js.map +0 -1
- package/js/components/icons/chevron-tiny-down.vue2.js +0 -4
- package/js/components/icons/chevron-tiny-down.vue2.js.map +0 -1
- package/js/components/icons/chevron-tiny-left.vue2.js +0 -4
- package/js/components/icons/chevron-tiny-left.vue2.js.map +0 -1
- package/js/components/icons/chevron-tiny-right.vue2.js +0 -4
- package/js/components/icons/chevron-tiny-right.vue2.js.map +0 -1
- package/js/components/icons/chevron-tiny-up.vue2.js +0 -4
- package/js/components/icons/chevron-tiny-up.vue2.js.map +0 -1
- package/js/components/icons/chevron-up.vue2.js +0 -4
- package/js/components/icons/chevron-up.vue2.js.map +0 -1
- package/js/components/icons/corner-arrow-left.vue2.js +0 -4
- package/js/components/icons/corner-arrow-left.vue2.js.map +0 -1
- package/js/components/icons/corner-arrow-right.vue2.js +0 -4
- package/js/components/icons/corner-arrow-right.vue2.js.map +0 -1
- package/js/components/icons/cross-tiny.vue2.js +0 -4
- package/js/components/icons/cross-tiny.vue2.js.map +0 -1
- package/js/components/icons/cross.vue2.js +0 -4
- package/js/components/icons/cross.vue2.js.map +0 -1
- package/js/components/icons/curated-check-filled.vue2.js +0 -4
- package/js/components/icons/curated-check-filled.vue2.js.map +0 -1
- package/js/components/icons/curated-check-tiny-filled.vue2.js +0 -4
- package/js/components/icons/curated-check-tiny-filled.vue2.js.map +0 -1
- package/js/components/icons/curated-check-tiny.vue2.js +0 -4
- package/js/components/icons/curated-check-tiny.vue2.js.map +0 -1
- package/js/components/icons/curated-check.vue2.js +0 -4
- package/js/components/icons/curated-check.vue2.js.map +0 -1
- package/js/components/icons/diagonal-arrow-left-down.vue2.js +0 -4
- package/js/components/icons/diagonal-arrow-left-down.vue2.js.map +0 -1
- package/js/components/icons/diagonal-arrow-left-top.vue2.js +0 -4
- package/js/components/icons/diagonal-arrow-left-top.vue2.js.map +0 -1
- package/js/components/icons/diagonal-arrow-right-down.vue2.js +0 -4
- package/js/components/icons/diagonal-arrow-right-down.vue2.js.map +0 -1
- package/js/components/icons/diagonal-arrow-right-top.vue2.js +0 -4
- package/js/components/icons/diagonal-arrow-right-top.vue2.js.map +0 -1
- package/js/components/icons/filters.vue2.js +0 -4
- package/js/components/icons/filters.vue2.js.map +0 -1
- package/js/components/icons/grid-1-col.vue2.js +0 -4
- package/js/components/icons/grid-1-col.vue2.js.map +0 -1
- package/js/components/icons/grid-2-col.vue2.js +0 -4
- package/js/components/icons/grid-2-col.vue2.js.map +0 -1
- package/js/components/icons/grid-2-rows.vue2.js +0 -4
- package/js/components/icons/grid-2-rows.vue2.js.map +0 -1
- package/js/components/icons/grid-4-col.vue2.js +0 -4
- package/js/components/icons/grid-4-col.vue2.js.map +0 -1
- package/js/components/icons/heart-filled.vue2.js +0 -4
- package/js/components/icons/heart-filled.vue2.js.map +0 -1
- package/js/components/icons/heart.vue2.js +0 -4
- package/js/components/icons/heart.vue2.js.map +0 -1
- package/js/components/icons/hide.vue2.js +0 -4
- package/js/components/icons/hide.vue2.js.map +0 -1
- package/js/components/icons/history-tiny.vue2.js +0 -4
- package/js/components/icons/history-tiny.vue2.js.map +0 -1
- package/js/components/icons/history.vue2.js +0 -4
- package/js/components/icons/history.vue2.js.map +0 -1
- package/js/components/icons/light-bulb-off.vue2.js +0 -4
- package/js/components/icons/light-bulb-off.vue2.js.map +0 -1
- package/js/components/icons/light-bulb-on.vue2.js +0 -4
- package/js/components/icons/light-bulb-on.vue2.js.map +0 -1
- package/js/components/icons/menu.vue2.js +0 -4
- package/js/components/icons/menu.vue2.js.map +0 -1
- package/js/components/icons/minus-tiny.vue2.js +0 -4
- package/js/components/icons/minus-tiny.vue2.js.map +0 -1
- package/js/components/icons/minus.vue2.js +0 -4
- package/js/components/icons/minus.vue2.js.map +0 -1
- package/js/components/icons/plus-tiny.vue2.js +0 -4
- package/js/components/icons/plus-tiny.vue2.js.map +0 -1
- package/js/components/icons/plus.vue2.js +0 -4
- package/js/components/icons/plus.vue2.js.map +0 -1
- package/js/components/icons/radiobutton-selected.vue2.js +0 -4
- package/js/components/icons/radiobutton-selected.vue2.js.map +0 -1
- package/js/components/icons/radiobutton-unselected.vue2.js +0 -4
- package/js/components/icons/radiobutton-unselected.vue2.js.map +0 -1
- package/js/components/icons/search-tiny.vue2.js +0 -4
- package/js/components/icons/search-tiny.vue2.js.map +0 -1
- package/js/components/icons/search.vue2.js +0 -4
- package/js/components/icons/search.vue2.js.map +0 -1
- package/js/components/icons/settings.vue2.js +0 -4
- package/js/components/icons/settings.vue2.js.map +0 -1
- package/js/components/icons/show.vue2.js +0 -4
- package/js/components/icons/show.vue2.js.map +0 -1
- package/js/components/icons/sort-az.vue2.js +0 -4
- package/js/components/icons/sort-az.vue2.js.map +0 -1
- package/js/components/icons/sort-price-down.vue2.js +0 -4
- package/js/components/icons/sort-price-down.vue2.js.map +0 -1
- package/js/components/icons/sort-price-up.vue2.js +0 -4
- package/js/components/icons/sort-price-up.vue2.js.map +0 -1
- package/js/components/icons/sort-relevancy.vue2.js +0 -4
- package/js/components/icons/sort-relevancy.vue2.js.map +0 -1
- package/js/components/icons/sort-za.vue2.js +0 -4
- package/js/components/icons/sort-za.vue2.js.map +0 -1
- package/js/components/icons/star-filled.vue2.js +0 -4
- package/js/components/icons/star-filled.vue2.js.map +0 -1
- package/js/components/icons/star.vue2.js +0 -4
- package/js/components/icons/star.vue2.js.map +0 -1
- package/js/components/icons/tag-filled.vue2.js +0 -4
- package/js/components/icons/tag-filled.vue2.js.map +0 -1
- package/js/components/icons/tag.vue2.js +0 -4
- package/js/components/icons/tag.vue2.js.map +0 -1
- package/js/components/icons/trash-open.vue2.js +0 -4
- package/js/components/icons/trash-open.vue2.js.map +0 -1
- package/js/components/icons/trash.vue2.js +0 -4
- package/js/components/icons/trash.vue2.js.map +0 -1
- package/js/components/icons/trending-tiny.vue2.js +0 -4
- package/js/components/icons/trending-tiny.vue2.js.map +0 -1
- package/js/components/icons/trending.vue2.js +0 -4
- package/js/components/icons/trending.vue2.js.map +0 -1
- package/js/components/icons/user-filled.vue2.js +0 -4
- package/js/components/icons/user-filled.vue2.js.map +0 -1
- package/js/components/icons/user.vue2.js +0 -4
- package/js/components/icons/user.vue2.js.map +0 -1
- package/js/components/layouts/layouts.mixin.js +0 -35
- package/js/components/layouts/layouts.mixin.js.map +0 -1
- package/js/components/no-element.js +0 -17
- package/js/components/no-element.js.map +0 -1
- package/js/components/result/base-result-fallback-image.vue2.js +0 -4
- package/js/components/result/base-result-fallback-image.vue2.js.map +0 -1
- package/js/components/result/base-result-placeholder-image.vue2.js +0 -4
- package/js/components/result/base-result-placeholder-image.vue2.js.map +0 -1
- package/js/components/scroll/scroll.mixin.js +0 -288
- package/js/components/scroll/scroll.mixin.js.map +0 -1
- package/js/components/x-component.mixin.js +0 -21
- package/js/components/x-component.mixin.js.map +0 -1
- package/js/composables/create-use-device.composable.js.map +0 -1
- package/js/composables/use-no-element-render.js +0 -17
- package/js/composables/use-no-element-render.js.map +0 -1
- package/js/composables/use-register-x-module.js +0 -17
- package/js/composables/use-register-x-module.js.map +0 -1
- package/js/directives/infinite-scroll/infinite-scroll.js.map +0 -1
- package/js/plugins/x-plugin.alias.js +0 -133
- package/js/plugins/x-plugin.alias.js.map +0 -1
- package/js/plugins/x-plugin.mixin.js +0 -71
- package/js/plugins/x-plugin.mixin.js.map +0 -1
- package/js/x-modules/facets/components/facets.mixin.js +0 -67
- package/js/x-modules/facets/components/facets.mixin.js.map +0 -1
- package/js/x-modules/facets/components/lists/filters-injection.mixin.js.map +0 -1
- package/js/x-modules/scroll/components/window-scroll.vue.js +0 -39
- package/js/x-modules/scroll/components/window-scroll.vue.js.map +0 -1
- package/js/x-modules/scroll/components/window-scroll.vue2.js +0 -220
- package/js/x-modules/scroll/components/window-scroll.vue2.js.map +0 -1
- package/types/__stubs__/filters-stubs.factory.d.ts +0 -92
- package/types/__stubs__/filters-stubs.factory.d.ts.map +0 -1
- package/types/components/animations/animations.mixin.d.ts +0 -15
- package/types/components/animations/animations.mixin.d.ts.map +0 -1
- package/types/components/animations/disable-animation.mixin.d.ts +0 -28
- package/types/components/animations/disable-animation.mixin.d.ts.map +0 -1
- package/types/components/animations/staggering-transition-group.vue.d.ts +0 -288
- package/types/components/animations/staggering-transition-group.vue.d.ts.map +0 -1
- package/types/components/decorators/bus.decorators.d.ts +0 -30
- package/types/components/decorators/bus.decorators.d.ts.map +0 -1
- package/types/components/decorators/debounce.decorators.d.ts +0 -16
- package/types/components/decorators/debounce.decorators.d.ts.map +0 -1
- package/types/components/decorators/injection.decorators.d.ts +0 -83
- package/types/components/decorators/injection.decorators.d.ts.map +0 -1
- package/types/components/decorators/store.decorators.d.ts +0 -25
- package/types/components/decorators/store.decorators.d.ts.map +0 -1
- package/types/components/dynamic-props.mixin.d.ts +0 -23
- package/types/components/dynamic-props.mixin.d.ts.map +0 -1
- package/types/components/icons/arrow-down.vue.d.ts +0 -3
- package/types/components/icons/arrow-down.vue.d.ts.map +0 -1
- package/types/components/icons/arrow-left.vue.d.ts +0 -3
- package/types/components/icons/arrow-left.vue.d.ts.map +0 -1
- package/types/components/icons/arrow-right.vue.d.ts +0 -3
- package/types/components/icons/arrow-right.vue.d.ts.map +0 -1
- package/types/components/icons/arrow-up.vue.d.ts +0 -3
- package/types/components/icons/arrow-up.vue.d.ts.map +0 -1
- package/types/components/icons/bag.vue.d.ts +0 -3
- package/types/components/icons/bag.vue.d.ts.map +0 -1
- package/types/components/icons/bar-code.vue.d.ts +0 -3
- package/types/components/icons/bar-code.vue.d.ts.map +0 -1
- package/types/components/icons/barcode-tiny.vue.d.ts +0 -3
- package/types/components/icons/barcode-tiny.vue.d.ts.map +0 -1
- package/types/components/icons/cart-filled.vue.d.ts +0 -3
- package/types/components/icons/cart-filled.vue.d.ts.map +0 -1
- package/types/components/icons/cart.vue.d.ts +0 -3
- package/types/components/icons/cart.vue.d.ts.map +0 -1
- package/types/components/icons/check-tiny.vue.d.ts +0 -3
- package/types/components/icons/check-tiny.vue.d.ts.map +0 -1
- package/types/components/icons/check.vue.d.ts +0 -3
- package/types/components/icons/check.vue.d.ts.map +0 -1
- package/types/components/icons/checkbox-selected-filled.vue.d.ts +0 -3
- package/types/components/icons/checkbox-selected-filled.vue.d.ts.map +0 -1
- package/types/components/icons/checkbox-selected.vue.d.ts +0 -3
- package/types/components/icons/checkbox-selected.vue.d.ts.map +0 -1
- package/types/components/icons/checkbox-unselected-filled.vue.d.ts +0 -3
- package/types/components/icons/checkbox-unselected-filled.vue.d.ts.map +0 -1
- package/types/components/icons/checkbox-unselected.vue.d.ts +0 -3
- package/types/components/icons/checkbox-unselected.vue.d.ts.map +0 -1
- package/types/components/icons/chevron-down.vue.d.ts +0 -3
- package/types/components/icons/chevron-down.vue.d.ts.map +0 -1
- package/types/components/icons/chevron-left.vue.d.ts +0 -3
- package/types/components/icons/chevron-left.vue.d.ts.map +0 -1
- package/types/components/icons/chevron-right.vue.d.ts +0 -3
- package/types/components/icons/chevron-right.vue.d.ts.map +0 -1
- package/types/components/icons/chevron-tiny-down.vue.d.ts +0 -3
- package/types/components/icons/chevron-tiny-down.vue.d.ts.map +0 -1
- package/types/components/icons/chevron-tiny-left.vue.d.ts +0 -3
- package/types/components/icons/chevron-tiny-left.vue.d.ts.map +0 -1
- package/types/components/icons/chevron-tiny-right.vue.d.ts +0 -3
- package/types/components/icons/chevron-tiny-right.vue.d.ts.map +0 -1
- package/types/components/icons/chevron-tiny-up.vue.d.ts +0 -3
- package/types/components/icons/chevron-tiny-up.vue.d.ts.map +0 -1
- package/types/components/icons/chevron-up.vue.d.ts +0 -3
- package/types/components/icons/chevron-up.vue.d.ts.map +0 -1
- package/types/components/icons/corner-arrow-left.vue.d.ts +0 -3
- package/types/components/icons/corner-arrow-left.vue.d.ts.map +0 -1
- package/types/components/icons/corner-arrow-right.vue.d.ts +0 -3
- package/types/components/icons/corner-arrow-right.vue.d.ts.map +0 -1
- package/types/components/icons/cross-tiny.vue.d.ts +0 -3
- package/types/components/icons/cross-tiny.vue.d.ts.map +0 -1
- package/types/components/icons/cross.vue.d.ts +0 -3
- package/types/components/icons/cross.vue.d.ts.map +0 -1
- package/types/components/icons/curated-check-filled.vue.d.ts +0 -3
- package/types/components/icons/curated-check-filled.vue.d.ts.map +0 -1
- package/types/components/icons/curated-check-tiny-filled.vue.d.ts +0 -3
- package/types/components/icons/curated-check-tiny-filled.vue.d.ts.map +0 -1
- package/types/components/icons/curated-check-tiny.vue.d.ts +0 -3
- package/types/components/icons/curated-check-tiny.vue.d.ts.map +0 -1
- package/types/components/icons/curated-check.vue.d.ts +0 -3
- package/types/components/icons/curated-check.vue.d.ts.map +0 -1
- package/types/components/icons/diagonal-arrow-left-down.vue.d.ts +0 -3
- package/types/components/icons/diagonal-arrow-left-down.vue.d.ts.map +0 -1
- package/types/components/icons/diagonal-arrow-left-top.vue.d.ts +0 -3
- package/types/components/icons/diagonal-arrow-left-top.vue.d.ts.map +0 -1
- package/types/components/icons/diagonal-arrow-right-down.vue.d.ts +0 -3
- package/types/components/icons/diagonal-arrow-right-down.vue.d.ts.map +0 -1
- package/types/components/icons/diagonal-arrow-right-top.vue.d.ts +0 -3
- package/types/components/icons/diagonal-arrow-right-top.vue.d.ts.map +0 -1
- package/types/components/icons/filters.vue.d.ts +0 -3
- package/types/components/icons/filters.vue.d.ts.map +0 -1
- package/types/components/icons/grid-1-col.vue.d.ts +0 -3
- package/types/components/icons/grid-1-col.vue.d.ts.map +0 -1
- package/types/components/icons/grid-2-col.vue.d.ts +0 -3
- package/types/components/icons/grid-2-col.vue.d.ts.map +0 -1
- package/types/components/icons/grid-2-rows.vue.d.ts +0 -3
- package/types/components/icons/grid-2-rows.vue.d.ts.map +0 -1
- package/types/components/icons/grid-4-col.vue.d.ts +0 -3
- package/types/components/icons/grid-4-col.vue.d.ts.map +0 -1
- package/types/components/icons/heart-filled.vue.d.ts +0 -3
- package/types/components/icons/heart-filled.vue.d.ts.map +0 -1
- package/types/components/icons/heart.vue.d.ts +0 -3
- package/types/components/icons/heart.vue.d.ts.map +0 -1
- package/types/components/icons/hide.vue.d.ts +0 -3
- package/types/components/icons/hide.vue.d.ts.map +0 -1
- package/types/components/icons/history-tiny.vue.d.ts +0 -3
- package/types/components/icons/history-tiny.vue.d.ts.map +0 -1
- package/types/components/icons/history.vue.d.ts +0 -3
- package/types/components/icons/history.vue.d.ts.map +0 -1
- package/types/components/icons/light-bulb-off.vue.d.ts +0 -3
- package/types/components/icons/light-bulb-off.vue.d.ts.map +0 -1
- package/types/components/icons/light-bulb-on.vue.d.ts +0 -3
- package/types/components/icons/light-bulb-on.vue.d.ts.map +0 -1
- package/types/components/icons/menu.vue.d.ts +0 -3
- package/types/components/icons/menu.vue.d.ts.map +0 -1
- package/types/components/icons/minus-tiny.vue.d.ts +0 -3
- package/types/components/icons/minus-tiny.vue.d.ts.map +0 -1
- package/types/components/icons/minus.vue.d.ts +0 -3
- package/types/components/icons/minus.vue.d.ts.map +0 -1
- package/types/components/icons/plus-tiny.vue.d.ts +0 -3
- package/types/components/icons/plus-tiny.vue.d.ts.map +0 -1
- package/types/components/icons/plus.vue.d.ts +0 -3
- package/types/components/icons/plus.vue.d.ts.map +0 -1
- package/types/components/icons/radiobutton-selected.vue.d.ts +0 -3
- package/types/components/icons/radiobutton-selected.vue.d.ts.map +0 -1
- package/types/components/icons/radiobutton-unselected.vue.d.ts +0 -3
- package/types/components/icons/radiobutton-unselected.vue.d.ts.map +0 -1
- package/types/components/icons/search-tiny.vue.d.ts +0 -3
- package/types/components/icons/search-tiny.vue.d.ts.map +0 -1
- package/types/components/icons/search.vue.d.ts +0 -3
- package/types/components/icons/search.vue.d.ts.map +0 -1
- package/types/components/icons/settings.vue.d.ts +0 -3
- package/types/components/icons/settings.vue.d.ts.map +0 -1
- package/types/components/icons/show.vue.d.ts +0 -3
- package/types/components/icons/show.vue.d.ts.map +0 -1
- package/types/components/icons/sort-az.vue.d.ts +0 -3
- package/types/components/icons/sort-az.vue.d.ts.map +0 -1
- package/types/components/icons/sort-price-down.vue.d.ts +0 -3
- package/types/components/icons/sort-price-down.vue.d.ts.map +0 -1
- package/types/components/icons/sort-price-up.vue.d.ts +0 -3
- package/types/components/icons/sort-price-up.vue.d.ts.map +0 -1
- package/types/components/icons/sort-relevancy.vue.d.ts +0 -3
- package/types/components/icons/sort-relevancy.vue.d.ts.map +0 -1
- package/types/components/icons/sort-za.vue.d.ts +0 -3
- package/types/components/icons/sort-za.vue.d.ts.map +0 -1
- package/types/components/icons/star-filled.vue.d.ts +0 -3
- package/types/components/icons/star-filled.vue.d.ts.map +0 -1
- package/types/components/icons/star.vue.d.ts +0 -3
- package/types/components/icons/star.vue.d.ts.map +0 -1
- package/types/components/icons/tag-filled.vue.d.ts +0 -3
- package/types/components/icons/tag-filled.vue.d.ts.map +0 -1
- package/types/components/icons/tag.vue.d.ts +0 -3
- package/types/components/icons/tag.vue.d.ts.map +0 -1
- package/types/components/icons/trash-open.vue.d.ts +0 -3
- package/types/components/icons/trash-open.vue.d.ts.map +0 -1
- package/types/components/icons/trash.vue.d.ts +0 -3
- package/types/components/icons/trash.vue.d.ts.map +0 -1
- package/types/components/icons/trending-tiny.vue.d.ts +0 -3
- package/types/components/icons/trending-tiny.vue.d.ts.map +0 -1
- package/types/components/icons/trending.vue.d.ts +0 -3
- package/types/components/icons/trending.vue.d.ts.map +0 -1
- package/types/components/icons/user-filled.vue.d.ts +0 -3
- package/types/components/icons/user-filled.vue.d.ts.map +0 -1
- package/types/components/icons/user.vue.d.ts +0 -3
- package/types/components/icons/user.vue.d.ts.map +0 -1
- package/types/components/layouts/layouts.mixin.d.ts +0 -24
- package/types/components/layouts/layouts.mixin.d.ts.map +0 -1
- package/types/components/no-element.d.ts +0 -8
- package/types/components/no-element.d.ts.map +0 -1
- package/types/components/result/base-result-fallback-image.vue.d.ts +0 -3
- package/types/components/result/base-result-fallback-image.vue.d.ts.map +0 -1
- package/types/components/result/base-result-placeholder-image.vue.d.ts +0 -3
- package/types/components/result/base-result-placeholder-image.vue.d.ts.map +0 -1
- package/types/components/scroll/scroll.mixin.d.ts +0 -212
- package/types/components/scroll/scroll.mixin.d.ts.map +0 -1
- package/types/components/x-component.mixin.d.ts +0 -14
- package/types/components/x-component.mixin.d.ts.map +0 -1
- package/types/composables/create-use-device.composable.d.ts.map +0 -1
- package/types/composables/use-no-element-render.d.ts +0 -14
- package/types/composables/use-no-element-render.d.ts.map +0 -1
- package/types/composables/use-register-x-module.d.ts +0 -12
- package/types/composables/use-register-x-module.d.ts.map +0 -1
- package/types/directives/infinite-scroll/index.d.ts +0 -3
- package/types/directives/infinite-scroll/index.d.ts.map +0 -1
- package/types/directives/infinite-scroll/infinite-scroll.d.ts.map +0 -1
- package/types/directives/infinite-scroll/infinite-scroll.types.d.ts +0 -25
- package/types/directives/infinite-scroll/infinite-scroll.types.d.ts.map +0 -1
- package/types/plugins/x-plugin.alias.d.ts +0 -12
- package/types/plugins/x-plugin.alias.d.ts.map +0 -1
- package/types/plugins/x-plugin.mixin.d.ts +0 -49
- package/types/plugins/x-plugin.mixin.d.ts.map +0 -1
- package/types/x-modules/facets/components/facets.mixin.d.ts +0 -60
- package/types/x-modules/facets/components/facets.mixin.d.ts.map +0 -1
- package/types/x-modules/facets/components/lists/filters-injection.mixin.d.ts +0 -57
- package/types/x-modules/facets/components/lists/filters-injection.mixin.d.ts.map +0 -1
- package/types/x-modules/scroll/components/window-scroll.vue.d.ts +0 -47
- package/types/x-modules/scroll/components/window-scroll.vue.d.ts.map +0 -1
package/js/plugins/x-plugin.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { deepMerge } from '@empathyco/x-deep-merge';
|
|
2
2
|
import { forEach } from '@empathyco/x-utils';
|
|
3
|
-
import
|
|
3
|
+
import { createStore } from 'vuex';
|
|
4
4
|
import { cleanGettersProxyCache } from '../store/utils/getters-proxy.utils.js';
|
|
5
5
|
import { RootXStoreModule } from '../store/x.module.js';
|
|
6
6
|
import { sendWiringToDevtools } from './devtools/wiring.devtools.js';
|
|
7
7
|
import { bus } from './x-bus.js';
|
|
8
8
|
import { registerStoreEmitters } from './x-emitters.js';
|
|
9
|
-
import { createXComponentAPIMixin } from './x-plugin.mixin.js';
|
|
10
9
|
import { assertXPluginOptionsAreValid } from './x-plugin.utils.js';
|
|
11
10
|
|
|
12
11
|
/**
|
|
@@ -131,23 +130,22 @@ class XPlugin {
|
|
|
131
130
|
/**
|
|
132
131
|
* Installs the plugin into the Vue instance.
|
|
133
132
|
*
|
|
134
|
-
* @param
|
|
133
|
+
* @param app - The Vue application instance.
|
|
135
134
|
* @param options - The options to install this plugin with.
|
|
136
135
|
* @throws If the XPlugin has already been installed, or the options are not valid.
|
|
137
136
|
*
|
|
138
137
|
* @internal
|
|
139
138
|
*/
|
|
140
|
-
install(
|
|
139
|
+
install(app, options) {
|
|
141
140
|
if (this.isInstalled) {
|
|
142
141
|
throw new Error('XPlugin has already been installed');
|
|
143
142
|
}
|
|
144
143
|
assertXPluginOptionsAreValid(options);
|
|
145
144
|
XPlugin.instance = this;
|
|
146
|
-
this.
|
|
145
|
+
this.app = app;
|
|
147
146
|
this.options = options;
|
|
148
147
|
this.adapter = options.adapter;
|
|
149
148
|
this.registerStore();
|
|
150
|
-
this.applyMixins();
|
|
151
149
|
this.registerInitialModules();
|
|
152
150
|
this.registerPendingXModules();
|
|
153
151
|
this.isInstalled = true;
|
|
@@ -263,26 +261,10 @@ class XPlugin {
|
|
|
263
261
|
* @internal
|
|
264
262
|
*/
|
|
265
263
|
registerStore() {
|
|
266
|
-
this.
|
|
267
|
-
|
|
268
|
-
this.store =
|
|
269
|
-
this.options.store ??
|
|
270
|
-
new Store({
|
|
271
|
-
strict: process.env.NODE_ENV !== 'production'
|
|
272
|
-
});
|
|
273
|
-
if (!this.options.store) {
|
|
274
|
-
this.vue.prototype.$store = this.store;
|
|
275
|
-
}
|
|
264
|
+
this.store = this.options.store ?? createStore({});
|
|
265
|
+
this.app.use(this.store);
|
|
276
266
|
this.store.registerModule('x', RootXStoreModule);
|
|
277
267
|
}
|
|
278
|
-
/**
|
|
279
|
-
* Applies the {@link createXComponentAPIMixin} mixin in the global Vue.
|
|
280
|
-
*
|
|
281
|
-
* @internal
|
|
282
|
-
*/
|
|
283
|
-
applyMixins() {
|
|
284
|
-
this.vue.mixin(createXComponentAPIMixin(this.bus));
|
|
285
|
-
}
|
|
286
268
|
/**
|
|
287
269
|
* Registers the initial {@link XModule | XModules} during the {@link XPlugin} installation.
|
|
288
270
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"x-plugin.js","sources":["../../../src/plugins/x-plugin.ts"],"sourcesContent":["import { deepMerge } from '@empathyco/x-deep-merge';\nimport { forEach, Dictionary } from '@empathyco/x-utils';\nimport { PluginObject, VueConstructor } from 'vue';\nimport Vuex, { Module, Store } from 'vuex';\nimport { XComponentsAdapter } from '@empathyco/x-types';\nimport { EventPayload, SubjectPayload, XBus } from '@empathyco/x-bus';\nimport { Observable } from 'rxjs';\nimport { AnyXStoreModule, RootXStoreState } from '../store/store.types';\nimport { cleanGettersProxyCache } from '../store/utils/getters-proxy.utils';\nimport { RootXStoreModule } from '../store/x.module';\nimport { XEvent, XEventsTypes } from '../wiring/events.types';\nimport { AnyWire, WireMetadata } from '../wiring/wiring.types';\nimport { AnyXModule, XModuleName } from '../x-modules/x-modules.types';\nimport { sendWiringToDevtools } from './devtools/wiring.devtools';\nimport { bus } from './x-bus';\nimport { registerStoreEmitters } from './x-emitters';\nimport { createXComponentAPIMixin } from './x-plugin.mixin';\nimport { AnyXStoreModuleOption, XModuleOptions, XPluginOptions } from './x-plugin.types';\nimport { assertXPluginOptionsAreValid } from './x-plugin.utils';\n\n/**\n * Vue plugin that initializes the properties needed by the x-components, and exposes the events bus\n * and the adapter after it has been installed.\n *\n * @public\n */\nexport class XPlugin implements PluginObject<XPluginOptions> {\n /**\n * {@link @empathyco/x-typesm#XComponentsAdapter | XComponentsAdapter} Is the middleware\n * between the components and our API where data can be mapped to client needs.\n * This property is only available after installing the plugin.\n *\n * @returns The installed adapter.\n * @throws If this property is accessed before calling `Vue.use(xPlugin)`.\n * @public\n */\n public static get adapter(): XComponentsAdapter {\n return this.getInstance().adapter;\n }\n\n /**\n * Exposed {@link @empathyco/x-bus#XBus}, so any kind of application can subscribe to\n * {@link XEventsTypes} without having to pass through a component.\n * This property is only available after installing the plugin.\n *\n * @returns The installed bus.\n * @throws If this property is accessed before calling `Vue.use(xPlugin)`.\n * @public\n */\n public static get bus(): XBus<XEventsTypes, WireMetadata> {\n return this.getInstance().bus;\n }\n\n /**\n * {@link https://vuex.vuejs.org | Vuex Store} Is the place where all shared data\n * is saved.\n *\n * @returns The installed store.\n * @throws If this property is accessed before calling `Vue.use(xPlugin)`.\n * @public\n */\n public static get store(): Store<RootXStoreState> {\n return this.getInstance().store;\n }\n\n /**\n * Safely retrieves the installed instance of the XPlugin.\n *\n * @returns The installed instance of the XPlugin.\n * @throws If this method is called before calling `Vue.use(xPlugin)`.\n * @internal\n */\n protected static getInstance(): XPlugin {\n if (!this.instance) {\n throw Error(\"XPlugin must be installed before accessing it's API.\");\n }\n return this.instance;\n }\n\n /**\n * Record of modules that have been tried to be installed before the installation of the plugin.\n *\n * @internal\n */\n protected static pendingXModules: Partial<Record<XModuleName, AnyXModule>> = {};\n\n /**\n * Instance of the installed plugin. Used to expose the bus and the adapter.\n *\n * @internal\n */\n protected static instance?: XPlugin;\n\n public wiring: Partial<Record<XModuleName, Partial<Record<XEvent, string[]>>>> = {};\n /**\n * Bus for retrieving the observables when registering the wiring.\n *\n * @internal\n */\n protected bus: XBus<XEventsTypes, WireMetadata>;\n\n /**\n * Adapter for the API, responsible for transforming requests and responses.\n *\n * @internal\n */\n protected adapter!: XComponentsAdapter;\n\n /**\n * Set of the already installed {@link XModule | XModules} to avoid re-registering them.\n *\n * @internal\n */\n protected installedXModules = new Set<string>();\n\n /**\n * True if the plugin has been installed in a Vue instance, in this case\n * {@link XModule |Xmodules} will be installed immediately. False otherwise, in this case\n * {@link XModule | XModules} will be installed lazily when the {@link XPlugin#install} method\n * is called.\n *\n * @internal\n */\n protected isInstalled = false;\n\n /**\n * The installation options of the plugin, where all the customization of\n * {@link XModule | XModules} is done.\n *\n * @internal\n */\n protected options!: XPluginOptions;\n\n /**\n * The Vuex store, to pass to the wires for its registration, and to register the store\n * modules on it.\n *\n * @internal\n */\n protected store!: Store<any>;\n /**\n * The global Vue, passed by the installation method. Used to apply the global mixin\n * {@link createXComponentAPIMixin}, and install the {@link https://vuex.vuejs.org/ | Vuex}\n * plugin.\n *\n * @internal\n */\n protected vue!: VueConstructor;\n\n /**\n * Creates a new instance of the XPlugin with the given bus passed as parameter.\n *\n * @param bus - The {@link @empathyco/x-bus#XBus} implementation to use for the plugin.\n *\n * @public\n */\n public constructor(bus: XBus<XEventsTypes, WireMetadata>) {\n this.bus = bus;\n }\n\n /**\n * If the plugin has already been installed, it immediately registers a {@link XModule}. If it\n * has not been installed yet, it stores the module in a list until the plugin is installed.\n *\n * @param xModule - The module to register.\n *\n * @public\n */\n static registerXModule(xModule: AnyXModule): void {\n if (this.instance) {\n this.instance.registerXModule(xModule);\n } else {\n this.lazyRegisterXModule(xModule);\n }\n }\n\n /**\n * Utility method for resetting the installed instance of the plugin.\n *\n * @remarks Use only for testing.\n *\n * @internal\n */\n static resetInstance(): void {\n cleanGettersProxyCache();\n this.instance = undefined;\n }\n\n /**\n * Stores the {@link XModule} in a dictionary, so it can be registered later in the installation\n * process.\n *\n * @param xModule - The module to register.\n *\n * @internal\n */\n protected static lazyRegisterXModule(xModule: AnyXModule): void {\n this.pendingXModules[xModule.name] = xModule;\n }\n\n /**\n * Installs the plugin into the Vue instance.\n *\n * @param vue - The GlobalVue object.\n * @param options - The options to install this plugin with.\n * @throws If the XPlugin has already been installed, or the options are not valid.\n *\n * @internal\n */\n install(vue: VueConstructor, options?: XPluginOptions): void {\n if (this.isInstalled) {\n throw new Error('XPlugin has already been installed');\n }\n assertXPluginOptionsAreValid(options);\n XPlugin.instance = this;\n this.vue = vue;\n this.options = options;\n this.adapter = options.adapter;\n this.registerStore();\n this.applyMixins();\n this.registerInitialModules();\n this.registerPendingXModules();\n this.isInstalled = true;\n }\n\n /**\n * Performs the registration of a {@link XModule}.\n *\n * @param xModule - The module to register.\n *\n * @internal\n */\n protected registerXModule(xModule: AnyXModule): void {\n if (!this.installedXModules.has(xModule.name)) {\n const customizedXModule = this.customizeXModule(xModule);\n this.registerStoreModule(customizedXModule);\n this.registerStoreEmitters(customizedXModule);\n this.registerWiring(customizedXModule);\n // The wiring must be registered after the store emitters\n // to allow lazy loaded modules work properly.\n this.installedXModules.add(xModule.name);\n this.bus.emit('ModuleRegistered', xModule.name);\n }\n }\n\n /**\n * Performs a customization of a {@link XModule} using the XPlugin public and private options.\n *\n * @param xModule - The module to customize.\n * @returns The customized xModule.\n *\n * @internal\n */\n protected customizeXModule({\n name,\n wiring,\n storeModule,\n storeEmitters,\n ...restXModule\n }: AnyXModule): AnyXModule {\n const { wiring: wiringOptions, config }: XModuleOptions<XModuleName> =\n this.options.xModules?.[name] ?? {};\n\n const { storeModule: storeModuleOptions, storeEmitters: emittersOptions } =\n this.options.__PRIVATE__xModules?.[name] ?? {};\n\n return {\n name,\n wiring: wiringOptions ? deepMerge({}, wiring, wiringOptions) : wiring,\n storeModule: this.customizeStoreModule(storeModule, storeModuleOptions ?? {}, config),\n storeEmitters: emittersOptions\n ? deepMerge({}, storeEmitters, emittersOptions)\n : storeEmitters,\n ...restXModule\n };\n }\n\n /**\n * Performs the registration of the wiring, retrieving the observable for each event, and\n * executing each wire.\n *\n * @param xModule - The {@link XModule} to register its wiring.\n *\n * @internal\n */\n protected registerWiring({ wiring, name }: AnyXModule): void {\n sendWiringToDevtools(name, wiring);\n forEach(wiring, (event, wires: Dictionary<AnyWire>) => {\n // Obtain the observable\n const observable = this.bus.on(event, true) as unknown as Observable<\n SubjectPayload<EventPayload<XEventsTypes, typeof event>, WireMetadata>\n >;\n // Register event wires\n forEach(wires, (_, wire) => {\n wire(observable, this.store as Store<RootXStoreState>, this.bus.on.bind(this.bus));\n });\n });\n }\n\n /**\n * Registers a {@link https://vuex.vuejs.org/ | Vuex} store module under the 'x' module.\n *\n * @param xModule - The {@link XModule} to register its Store Module.\n *\n * @internal\n */\n protected registerStoreModule({ name, storeModule }: AnyXModule): void {\n (storeModule as Module<any, any>).namespaced = true;\n this.store.registerModule(['x', name], storeModule);\n }\n\n /**\n * Overrides a {@link https://vuex.vuejs.org/ | Vuex} store module definition.\n *\n * Priority of configuration merging.\n * 1st {@link XPluginOptions.xModules | xModules XPlugin option}.\n * 2nd {@link XPluginOptions.__PRIVATE__xModules | Private xModules XPlugin option}.\n * 3rd {@link XStoreModule.state | Default state of the xModule}.\n *\n * @param defaultModule - The default store module to override.\n * @param moduleOptions - The state, actions, mutations and getters to override the defaultModule.\n * @param configOptions - The state config to override the moduleOptions.\n * @returns The {@link XStoreModule} customized.\n *\n * @internal\n */\n protected customizeStoreModule(\n { state: defaultState, ...actionsGettersMutations }: AnyXStoreModule,\n { state: xModuleState, ...newActionsGettersMutations }: AnyXStoreModuleOption,\n configOptions: unknown\n ): AnyXStoreModule {\n const configOptionsObject = configOptions ? { config: configOptions } : {};\n const customizedModule = deepMerge({}, actionsGettersMutations, newActionsGettersMutations);\n customizedModule.state = deepMerge(defaultState(), xModuleState, configOptionsObject);\n return customizedModule;\n }\n\n /**\n * Registers the store emitters, making them emit the event when the part of the state selected\n * changes.\n *\n * @param xModule - The {@link XModule} to register its Store Emitters.\n *\n * @internal\n */\n protected registerStoreEmitters(xModule: AnyXModule): void {\n registerStoreEmitters(xModule, this.bus, this.store);\n }\n\n /**\n * Registers the {@link https://vuex.vuejs.org/ | Vuex} store. If the store has not been passed\n * through the {@link XPluginOptions} object, it creates one, and injects it in the Vue\n * prototype. Then it registers an x module in the store, to safe scope all the\n * {@link XModule | XModules} dynamically installed.\n *\n * @internal\n */\n protected registerStore(): void {\n this.vue.use(Vuex); // We can safely install Vuex because if it is already installed Vue\n // will simply ignore it\n this.store =\n this.options.store ??\n new Store({\n strict: process.env.NODE_ENV !== 'production'\n });\n if (!this.options.store) {\n this.vue.prototype.$store = this.store;\n }\n this.store.registerModule('x', RootXStoreModule);\n }\n\n /**\n * Applies the {@link createXComponentAPIMixin} mixin in the global Vue.\n *\n * @internal\n */\n protected applyMixins(): void {\n this.vue.mixin(createXComponentAPIMixin(this.bus));\n }\n\n /**\n * Registers the initial {@link XModule | XModules} during the {@link XPlugin} installation.\n *\n * @internal\n */\n protected registerInitialModules(): void {\n this.options.initialXModules?.forEach(xModule => {\n this.registerXModule(xModule);\n });\n }\n\n /**\n * Registers the pending {@link XModule | XModules}, that requested to be registered before the\n * installation of the plugin.\n *\n * @internal\n */\n protected registerPendingXModules(): void {\n forEach(XPlugin.pendingXModules, (_, xModule) => {\n this.registerXModule(xModule);\n });\n XPlugin.pendingXModules = {};\n }\n}\n\n/**\n * Vue plugin that modifies each component instance, extending them with the\n * {@link XComponentAPI | X Component API }.\n *\n * @example\n * Minimal installation example. An API adapter is needed to connect the X Components with the\n * suggestions, search, or tagging APIs. In this example we are using the default Empathy's platform\n * adapter.\n *\n * ```typescript\n * import { platformAdapter } from '@empathyco/x-adapter-platform';\n * Vue.use(xPlugin, { adapter: platformAdapter });\n * ```\n *\n * @example\n * If you are using {@link https://vuex.vuejs.org/ | Vuex} in your project you must install its\n * plugin, and instantiate a store before installing the XPlugin:\n * ```typescript\n * Vue.use(Vuex);\n * const store = new Store({ ... });\n * Vue.use(xPlugin, { adapter, store });\n * ```\n * @public\n */\nexport const xPlugin = new XPlugin(bus);\n"],"names":[],"mappings":";;;;;;;;;;;AAoBA;;;;;AAKG;MACU,OAAO,CAAA;AAClB;;;;;;;;AAQG;AACI,IAAA,WAAW,OAAO,GAAA;AACvB,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC;KACnC;AAED;;;;;;;;AAQG;AACI,IAAA,WAAW,GAAG,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC;KAC/B;AAED;;;;;;;AAOG;AACI,IAAA,WAAW,KAAK,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC;KACjC;AAED;;;;;;AAMG;AACO,IAAA,OAAO,WAAW,GAAA;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAClB,YAAA,MAAM,KAAK,CAAC,sDAAsD,CAAC,CAAC;AACrE,SAAA;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAwED;;;;;;AAMG;AACH,IAAA,WAAA,CAAmB,GAAqC,EAAA;QA/DjD,IAAM,CAAA,MAAA,GAAoE,EAAE,CAAC;AAepF;;;;AAIG;AACO,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAEhD;;;;;;;AAOG;QACO,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAkC5B,QAAA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;KAChB;AAED;;;;;;;AAOG;IACH,OAAO,eAAe,CAAC,OAAmB,EAAA;QACxC,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;AACxC,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACnC,SAAA;KACF;AAED;;;;;;AAMG;AACH,IAAA,OAAO,aAAa,GAAA;AAClB,QAAA,sBAAsB,EAAE,CAAC;AACzB,QAAA,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;KAC3B;AAED;;;;;;;AAOG;IACO,OAAO,mBAAmB,CAAC,OAAmB,EAAA;QACtD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;KAC9C;AAED;;;;;;;;AAQG;IACH,OAAO,CAAC,GAAmB,EAAE,OAAwB,EAAA;QACnD,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;AACvD,SAAA;QACD,4BAA4B,CAAC,OAAO,CAAC,CAAC;AACtC,QAAA,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,uBAAuB,EAAE,CAAC;AAC/B,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;KACzB;AAED;;;;;;AAMG;AACO,IAAA,eAAe,CAAC,OAAmB,EAAA;QAC3C,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC7C,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;AACzD,YAAA,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;AAC5C,YAAA,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;AAC9C,YAAA,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;;;YAGvC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;AACjD,SAAA;KACF;AAED;;;;;;;AAOG;AACO,IAAA,gBAAgB,CAAC,EACzB,IAAI,EACJ,MAAM,EACN,WAAW,EACX,aAAa,EACb,GAAG,WAAW,EACH,EAAA;AACX,QAAA,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAEtC,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,GACvE,IAAI,CAAC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAEjD,OAAO;YACL,IAAI;AACJ,YAAA,MAAM,EAAE,aAAa,GAAG,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,MAAM;AACrE,YAAA,WAAW,EAAE,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,kBAAkB,IAAI,EAAE,EAAE,MAAM,CAAC;AACrF,YAAA,aAAa,EAAE,eAAe;kBAC1B,SAAS,CAAC,EAAE,EAAE,aAAa,EAAE,eAAe,CAAC;AAC/C,kBAAE,aAAa;AACjB,YAAA,GAAG,WAAW;SACf,CAAC;KACH;AAED;;;;;;;AAOG;AACO,IAAA,cAAc,CAAC,EAAE,MAAM,EAAE,IAAI,EAAc,EAAA;AACnD,QAAA,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACnC,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,KAA0B,KAAI;;AAEpD,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAEzC,CAAC;;YAEF,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,KAAI;gBACzB,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAA+B,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACrF,aAAC,CAAC,CAAC;AACL,SAAC,CAAC,CAAC;KACJ;AAED;;;;;;AAMG;AACO,IAAA,mBAAmB,CAAC,EAAE,IAAI,EAAE,WAAW,EAAc,EAAA;AAC5D,QAAA,WAAgC,CAAC,UAAU,GAAG,IAAI,CAAC;AACpD,QAAA,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;KACrD;AAED;;;;;;;;;;;;;;AAcG;AACO,IAAA,oBAAoB,CAC5B,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,uBAAuB,EAAmB,EACpE,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,0BAA0B,EAAyB,EAC7E,aAAsB,EAAA;AAEtB,QAAA,MAAM,mBAAmB,GAAG,aAAa,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;QAC3E,MAAM,gBAAgB,GAAG,SAAS,CAAC,EAAE,EAAE,uBAAuB,EAAE,0BAA0B,CAAC,CAAC;AAC5F,QAAA,gBAAgB,CAAC,KAAK,GAAG,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC;AACtF,QAAA,OAAO,gBAAgB,CAAC;KACzB;AAED;;;;;;;AAOG;AACO,IAAA,qBAAqB,CAAC,OAAmB,EAAA;QACjD,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KACtD;AAED;;;;;;;AAOG;IACO,aAAa,GAAA;QACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;;AAEnB,QAAA,IAAI,CAAC,KAAK;YACR,IAAI,CAAC,OAAO,CAAC,KAAK;AAClB,gBAAA,IAAI,KAAK,CAAC;AACR,oBAAA,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;AAC9C,iBAAA,CAAC,CAAC;AACL,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YACvB,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;AACxC,SAAA;QACD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;KAClD;AAED;;;;AAIG;IACO,WAAW,GAAA;AACnB,QAAA,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;KACpD;AAED;;;;AAIG;IACO,sBAAsB,GAAA;QAC9B,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,OAAO,IAAG;AAC9C,YAAA,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;AAChC,SAAC,CAAC,CAAC;KACJ;AAED;;;;;AAKG;IACO,uBAAuB,GAAA;QAC/B,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,OAAO,KAAI;AAC9C,YAAA,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;AAChC,SAAC,CAAC,CAAC;AACH,QAAA,OAAO,CAAC,eAAe,GAAG,EAAE,CAAC;KAC9B;;AAnUD;;;;AAIG;AACc,OAAe,CAAA,eAAA,GAA6C,EAAE,CAAC;AAiUlF;;;;;;;;;;;;;;;;;;;;;;;AAuBG;MACU,OAAO,GAAG,IAAI,OAAO,CAAC,GAAG;;;;"}
|
|
1
|
+
{"version":3,"file":"x-plugin.js","sources":["../../../src/plugins/x-plugin.ts"],"sourcesContent":["import { deepMerge } from '@empathyco/x-deep-merge';\nimport { forEach, Dictionary } from '@empathyco/x-utils';\nimport { App } from 'vue';\nimport { createStore, Module, Store } from 'vuex';\nimport { XComponentsAdapter } from '@empathyco/x-types';\nimport { EventPayload, SubjectPayload, XBus } from '@empathyco/x-bus';\nimport { Observable } from 'rxjs';\nimport { AnyXStoreModule, RootXStoreState } from '../store/store.types';\nimport { cleanGettersProxyCache } from '../store/utils/getters-proxy.utils';\nimport { RootXStoreModule } from '../store/x.module';\nimport { XEvent, XEventsTypes } from '../wiring/events.types';\nimport { AnyWire, WireMetadata } from '../wiring/wiring.types';\nimport { AnyXModule, XModuleName } from '../x-modules/x-modules.types';\nimport { sendWiringToDevtools } from './devtools/wiring.devtools';\nimport { bus } from './x-bus';\nimport { registerStoreEmitters } from './x-emitters';\nimport { AnyXStoreModuleOption, XModuleOptions, XPluginOptions } from './x-plugin.types';\nimport { assertXPluginOptionsAreValid } from './x-plugin.utils';\n\n/**\n * Vue plugin that initializes the properties needed by the x-components, and exposes the events bus\n * and the adapter after it has been installed.\n *\n * @public\n */\nexport class XPlugin {\n /**\n * {@link @empathyco/x-typesm#XComponentsAdapter | XComponentsAdapter} Is the middleware\n * between the components and our API where data can be mapped to client needs.\n * This property is only available after installing the plugin.\n *\n * @returns The installed adapter.\n * @throws If this property is accessed before calling `Vue.use(xPlugin)`.\n * @public\n */\n public static get adapter(): XComponentsAdapter {\n return this.getInstance().adapter;\n }\n\n /**\n * Exposed {@link @empathyco/x-bus#XBus}, so any kind of application can subscribe to\n * {@link XEventsTypes} without having to pass through a component.\n * This property is only available after installing the plugin.\n *\n * @returns The installed bus.\n * @throws If this property is accessed before calling `Vue.use(xPlugin)`.\n * @public\n */\n public static get bus(): XBus<XEventsTypes, WireMetadata> {\n return this.getInstance().bus;\n }\n\n /**\n * {@link https://vuex.vuejs.org | Vuex Store} Is the place where all shared data\n * is saved.\n *\n * @returns The installed store.\n * @throws If this property is accessed before calling `Vue.use(xPlugin)`.\n * @public\n */\n public static get store(): Store<RootXStoreState> {\n return this.getInstance().store;\n }\n\n /**\n * Safely retrieves the installed instance of the XPlugin.\n *\n * @returns The installed instance of the XPlugin.\n * @throws If this method is called before calling `Vue.use(xPlugin)`.\n * @internal\n */\n protected static getInstance(): XPlugin {\n if (!this.instance) {\n throw Error(\"XPlugin must be installed before accessing it's API.\");\n }\n return this.instance;\n }\n\n /**\n * Record of modules that have been tried to be installed before the installation of the plugin.\n *\n * @internal\n */\n protected static pendingXModules: Partial<Record<XModuleName, AnyXModule>> = {};\n\n /**\n * Instance of the installed plugin. Used to expose the bus and the adapter.\n *\n * @internal\n */\n protected static instance?: XPlugin;\n\n public wiring: Partial<Record<XModuleName, Partial<Record<XEvent, string[]>>>> = {};\n /**\n * Bus for retrieving the observables when registering the wiring.\n *\n * @internal\n */\n protected bus: XBus<XEventsTypes, WireMetadata>;\n\n /**\n * Adapter for the API, responsible for transforming requests and responses.\n *\n * @internal\n */\n protected adapter!: XComponentsAdapter;\n\n /**\n * Set of the already installed {@link XModule | XModules} to avoid re-registering them.\n *\n * @internal\n */\n protected installedXModules = new Set<string>();\n\n /**\n * True if the plugin has been installed in a Vue instance, in this case\n * {@link XModule |Xmodules} will be installed immediately. False otherwise, in this case\n * {@link XModule | XModules} will be installed lazily when the {@link XPlugin#install} method\n * is called.\n *\n * @internal\n */\n protected isInstalled = false;\n\n /**\n * The installation options of the plugin, where all the customization of\n * {@link XModule | XModules} is done.\n *\n * @internal\n */\n protected options!: XPluginOptions;\n\n /**\n * The Vuex store, to pass to the wires for its registration, and to register the store\n * modules on it.\n *\n * @internal\n */\n protected store!: Store<any>;\n\n /**\n * The Vue application instance, passed by the installation method.\n *\n * @internal\n */\n protected app!: App;\n\n /**\n * Creates a new instance of the XPlugin with the given bus passed as parameter.\n *\n * @param bus - The {@link @empathyco/x-bus#XBus} implementation to use for the plugin.\n *\n * @public\n */\n public constructor(bus: XBus<XEventsTypes, WireMetadata>) {\n this.bus = bus;\n }\n\n /**\n * If the plugin has already been installed, it immediately registers a {@link XModule}. If it\n * has not been installed yet, it stores the module in a list until the plugin is installed.\n *\n * @param xModule - The module to register.\n *\n * @public\n */\n static registerXModule(xModule: AnyXModule): void {\n if (this.instance) {\n this.instance.registerXModule(xModule);\n } else {\n this.lazyRegisterXModule(xModule);\n }\n }\n\n /**\n * Utility method for resetting the installed instance of the plugin.\n *\n * @remarks Use only for testing.\n *\n * @internal\n */\n static resetInstance(): void {\n cleanGettersProxyCache();\n this.instance = undefined;\n }\n\n /**\n * Stores the {@link XModule} in a dictionary, so it can be registered later in the installation\n * process.\n *\n * @param xModule - The module to register.\n *\n * @internal\n */\n protected static lazyRegisterXModule(xModule: AnyXModule): void {\n this.pendingXModules[xModule.name] = xModule;\n }\n\n /**\n * Installs the plugin into the Vue instance.\n *\n * @param app - The Vue application instance.\n * @param options - The options to install this plugin with.\n * @throws If the XPlugin has already been installed, or the options are not valid.\n *\n * @internal\n */\n install(app: App, options?: XPluginOptions): void {\n if (this.isInstalled) {\n throw new Error('XPlugin has already been installed');\n }\n assertXPluginOptionsAreValid(options);\n XPlugin.instance = this;\n this.app = app;\n this.options = options;\n this.adapter = options.adapter;\n this.registerStore();\n this.registerInitialModules();\n this.registerPendingXModules();\n this.isInstalled = true;\n }\n\n /**\n * Performs the registration of a {@link XModule}.\n *\n * @param xModule - The module to register.\n *\n * @internal\n */\n protected registerXModule(xModule: AnyXModule): void {\n if (!this.installedXModules.has(xModule.name)) {\n const customizedXModule = this.customizeXModule(xModule);\n this.registerStoreModule(customizedXModule);\n this.registerStoreEmitters(customizedXModule);\n this.registerWiring(customizedXModule);\n // The wiring must be registered after the store emitters\n // to allow lazy loaded modules work properly.\n this.installedXModules.add(xModule.name);\n this.bus.emit('ModuleRegistered', xModule.name);\n }\n }\n\n /**\n * Performs a customization of a {@link XModule} using the XPlugin public and private options.\n *\n * @param xModule - The module to customize.\n * @returns The customized xModule.\n *\n * @internal\n */\n protected customizeXModule({\n name,\n wiring,\n storeModule,\n storeEmitters,\n ...restXModule\n }: AnyXModule): AnyXModule {\n const { wiring: wiringOptions, config }: XModuleOptions<XModuleName> =\n this.options.xModules?.[name] ?? {};\n\n const { storeModule: storeModuleOptions, storeEmitters: emittersOptions } =\n this.options.__PRIVATE__xModules?.[name] ?? {};\n\n return {\n name,\n wiring: wiringOptions ? deepMerge({}, wiring, wiringOptions) : wiring,\n storeModule: this.customizeStoreModule(storeModule, storeModuleOptions ?? {}, config),\n storeEmitters: emittersOptions\n ? deepMerge({}, storeEmitters, emittersOptions)\n : storeEmitters,\n ...restXModule\n };\n }\n\n /**\n * Performs the registration of the wiring, retrieving the observable for each event, and\n * executing each wire.\n *\n * @param xModule - The {@link XModule} to register its wiring.\n *\n * @internal\n */\n protected registerWiring({ wiring, name }: AnyXModule): void {\n sendWiringToDevtools(name, wiring);\n forEach(wiring, (event, wires: Dictionary<AnyWire>) => {\n // Obtain the observable\n const observable = this.bus.on(event, true) as unknown as Observable<\n SubjectPayload<EventPayload<XEventsTypes, typeof event>, WireMetadata>\n >;\n // Register event wires\n forEach(wires, (_, wire) => {\n wire(observable, this.store as Store<RootXStoreState>, this.bus.on.bind(this.bus));\n });\n });\n }\n\n /**\n * Registers a {@link https://vuex.vuejs.org/ | Vuex} store module under the 'x' module.\n *\n * @param xModule - The {@link XModule} to register its Store Module.\n *\n * @internal\n */\n protected registerStoreModule({ name, storeModule }: AnyXModule): void {\n (storeModule as Module<any, any>).namespaced = true;\n this.store.registerModule(['x', name], storeModule);\n }\n\n /**\n * Overrides a {@link https://vuex.vuejs.org/ | Vuex} store module definition.\n *\n * Priority of configuration merging.\n * 1st {@link XPluginOptions.xModules | xModules XPlugin option}.\n * 2nd {@link XPluginOptions.__PRIVATE__xModules | Private xModules XPlugin option}.\n * 3rd {@link XStoreModule.state | Default state of the xModule}.\n *\n * @param defaultModule - The default store module to override.\n * @param moduleOptions - The state, actions, mutations and getters to override the defaultModule.\n * @param configOptions - The state config to override the moduleOptions.\n * @returns The {@link XStoreModule} customized.\n *\n * @internal\n */\n protected customizeStoreModule(\n { state: defaultState, ...actionsGettersMutations }: AnyXStoreModule,\n { state: xModuleState, ...newActionsGettersMutations }: AnyXStoreModuleOption,\n configOptions: unknown\n ): AnyXStoreModule {\n const configOptionsObject = configOptions ? { config: configOptions } : {};\n const customizedModule = deepMerge({}, actionsGettersMutations, newActionsGettersMutations);\n customizedModule.state = deepMerge(defaultState(), xModuleState, configOptionsObject);\n return customizedModule;\n }\n\n /**\n * Registers the store emitters, making them emit the event when the part of the state selected\n * changes.\n *\n * @param xModule - The {@link XModule} to register its Store Emitters.\n *\n * @internal\n */\n protected registerStoreEmitters(xModule: AnyXModule): void {\n registerStoreEmitters(xModule, this.bus, this.store);\n }\n\n /**\n * Registers the {@link https://vuex.vuejs.org/ | Vuex} store. If the store has not been passed\n * through the {@link XPluginOptions} object, it creates one, and injects it in the Vue\n * prototype. Then it registers an x module in the store, to safe scope all the\n * {@link XModule | XModules} dynamically installed.\n *\n * @internal\n */\n protected registerStore(): void {\n this.store = this.options.store ?? createStore({});\n this.app.use(this.store);\n this.store.registerModule('x', RootXStoreModule);\n }\n /**\n * Registers the initial {@link XModule | XModules} during the {@link XPlugin} installation.\n *\n * @internal\n */\n protected registerInitialModules(): void {\n this.options.initialXModules?.forEach(xModule => {\n this.registerXModule(xModule);\n });\n }\n\n /**\n * Registers the pending {@link XModule | XModules}, that requested to be registered before the\n * installation of the plugin.\n *\n * @internal\n */\n protected registerPendingXModules(): void {\n forEach(XPlugin.pendingXModules, (_, xModule) => {\n this.registerXModule(xModule);\n });\n XPlugin.pendingXModules = {};\n }\n}\n\n/**\n * Vue plugin that modifies each component instance, extending them with the\n * {@link XComponentAPI | X Component API }.\n *\n * @example\n * Minimal installation example. An API adapter is needed to connect the X Components with the\n * suggestions, search, or tagging APIs. In this example we are using the default Empathy's platform\n * adapter.\n *\n * ```typescript\n * import { platformAdapter } from '@empathyco/x-adapter-platform';\n * Vue.use(xPlugin, { adapter: platformAdapter });\n * ```\n *\n * @example\n * If you are using {@link https://vuex.vuejs.org/ | Vuex} in your project you must install its\n * plugin, and instantiate a store before installing the XPlugin:\n * ```typescript\n * Vue.use(Vuex);\n * const store = new Store({ ... });\n * Vue.use(xPlugin, { adapter, store });\n * ```\n * @public\n */\nexport const xPlugin = new XPlugin(bus);\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { FOCUSABLE_SELECTORS } from '../utils/focus.js';
|
|
2
|
+
import { getActiveElement } from '../utils/html.js';
|
|
2
3
|
|
|
3
4
|
/**
|
|
4
5
|
* Implementation of {@link SpatialNavigation} using directional focus.
|
|
@@ -91,9 +92,11 @@ class DirectionalFocusNavigationService {
|
|
|
91
92
|
* SHIFT+TAB keys.
|
|
92
93
|
*/
|
|
93
94
|
updateOrigin() {
|
|
94
|
-
const newOrigin =
|
|
95
|
-
|
|
96
|
-
|
|
95
|
+
const newOrigin = getActiveElement();
|
|
96
|
+
if (newOrigin) {
|
|
97
|
+
this.origin = newOrigin;
|
|
98
|
+
this.originRect = newOrigin.getBoundingClientRect();
|
|
99
|
+
}
|
|
97
100
|
}
|
|
98
101
|
/**
|
|
99
102
|
* Finds the closest candidate to the origin from a list of candidates.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directional-focus-navigation.service.js","sources":["../../../src/services/directional-focus-navigation.service.ts"],"sourcesContent":["import { FOCUSABLE_SELECTORS } from '../utils/focus';\nimport { ArrowKey } from '../utils/types';\nimport {\n AbsoluteDistances,\n Intersection,\n Point,\n Points,\n SpatialNavigation\n} from './services.types';\n\n/**\n * Implementation of {@link SpatialNavigation} using directional focus.\n *\n * @public\n */\nexport class DirectionalFocusNavigationService implements SpatialNavigation {\n /**\n * The HTMLElement that is currently on focus and used as reference to navigateTo from.\n */\n private origin!: HTMLElement;\n\n /**\n * The DOMRect of the origin Element.\n */\n private originRect!: DOMRect;\n\n /**\n * Direction of the navigation.\n */\n private direction!: ArrowKey;\n\n /**\n * Weight of the projected intersection area weight in the\n * {@link DirectionalFocusNavigationService.getDistanceScore | getDistanceScore} formula.\n */\n private readonly intersectionAreaWeight = 100;\n\n /**\n * Weight of the absolute distance on the orthogonal axis between to elements when navigating\n * left or right. Used to calculate the displacement in\n * {@link DirectionalFocusNavigationService.getDisplacementAndAlignment |\n * getDisplacementAndAlignment}.\n */\n private readonly orthogonalWeightHorizontal = 30;\n\n /**\n * Weight of the absolute distance on the orthogonal axis between to elements when navigating\n * up or down. Used to calculate the displacement in\n * {@link DirectionalFocusNavigationService.getDisplacementAndAlignment |\n * getDisplacementAndAlignment}.\n */\n private readonly orthogonalWeightVertical = 2;\n\n /**\n * Weight of the degree of alignment between two elements when calculating the alignment in\n * {@link DirectionalFocusNavigationService.getDisplacementAndAlignment |\n * getDisplacementAndAlignment}.\n */\n private readonly alignWeight = 5;\n\n /**\n * Set of functions to filter out candidates based on the navigation's direction.\n */\n private readonly filterFunction = {\n ArrowUp: (candidateRect: DOMRect) => this.isBelow(this.originRect, candidateRect),\n ArrowRight: (candidateRect: DOMRect) => this.isRightSide(candidateRect, this.originRect),\n ArrowDown: (candidateRect: DOMRect) => this.isBelow(candidateRect, this.originRect),\n ArrowLeft: (candidateRect: DOMRect) => this.isRightSide(this.originRect, candidateRect)\n };\n\n /**\n * Constructor for the {@link DirectionalFocusNavigationService}.\n *\n * @param container - The element that contains the navigable elements.\n * @param focusableSelectors - A comma separated string with the focusable selectors to look up.\n */\n public constructor(\n /**\n * The {@link https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement | HTMLElement} that\n * contains the navigable elements.\n */\n private readonly container: HTMLElement,\n /**\n * Comma separated focusable selectors to look up.\n */\n private readonly focusableSelectors = FOCUSABLE_SELECTORS\n ) {}\n\n /**\n * Get the element that would be the next one to be navigated to based on the direction of the\n * arrow key pressed. If there are no possible candidates the element to focus would be the one on\n * currently on focus or the first one in the container.\n *\n * @param arrowKey - The arrow key that was pressed.\n *\n * @returns The element to navigate to.\n */\n navigateTo(arrowKey: ArrowKey): HTMLElement {\n const rawCandidates = this.getFocusableElements();\n this.direction = arrowKey;\n this.updateOrigin();\n\n return this.getBestCandidate(rawCandidates);\n }\n\n /**\n * Gets focusable elements within the container.\n *\n * @returns List of focusable elements.\n * @internal\n */\n private getFocusableElements(): HTMLElement[] {\n return Array.from(this.container.querySelectorAll(this.focusableSelectors));\n }\n\n /**\n * Updates the origin with the current document active element.\n *\n * @remarks\n * This also covers cases when the user might have iterated through the DOM using the TAB or\n * SHIFT+TAB keys.\n */\n private updateOrigin(): void {\n const newOrigin = document.activeElement as HTMLElement;\n this.origin = newOrigin;\n this.originRect = newOrigin.getBoundingClientRect();\n }\n\n /**\n * Finds the closest candidate to the origin from a list of candidates.\n *\n * @remarks\n * If there are no candidates the origin will be retrieved as best candidate.\n *\n * @param rawCandidates - List of all candidates.\n *\n * @returns The closest candidate to the origin or origin if there's none.\n * @internal\n */\n private getBestCandidate(rawCandidates: HTMLElement[]): HTMLElement {\n const candidates = this.filterCandidates(rawCandidates);\n let bestCandidate = this.origin;\n\n candidates.reduce((bestCurrentScore: number, candidate) => {\n const bestScore = Math.min(bestCurrentScore, this.getDistanceScore(candidate));\n if (bestScore !== bestCurrentScore) {\n bestCandidate = candidate;\n }\n return bestScore;\n }, Number.MAX_SAFE_INTEGER);\n\n return bestCandidate;\n }\n\n /**\n * Filters out candidates that can't be candidates based on the direction of the navigation and\n * if they are visible and enabled.\n *\n * @param rawCandidates - List of all candidates.\n *\n * @returns List of filtered candidates.\n * @internal\n */\n private filterCandidates(rawCandidates: HTMLElement[]): HTMLElement[] {\n return rawCandidates.filter(candidate => this.isValidCandidate(candidate));\n }\n\n /**\n * Checks if the provided candidate is not the origin, is visible, enabled and in the correct\n * direction to be a valid candidate.\n *\n * @param candidate - The candidate element.\n * @returns If the candidate is valid for the navigation.\n * @internal\n */\n private isValidCandidate(candidate: HTMLElement): boolean {\n return (\n candidate !== this.origin &&\n this.isCandidateVisible(candidate) &&\n this.hasFocusCompatibleAttributes(candidate) &&\n this.isInNavigateDirection(candidate)\n );\n }\n\n /**\n * Checks if the provided candidate is visible.\n *\n * @param candidate - The candidate element.\n * @returns If the candidate is visible.\n * @internal\n */\n private isCandidateVisible(candidate: HTMLElement): boolean {\n const candidateStyle = window.getComputedStyle(candidate, null);\n\n return !!(\n candidate.offsetWidth &&\n candidate.offsetHeight &&\n candidateStyle.visibility === 'visible'\n );\n }\n\n /**\n * Checks if the provided candidate is disabled and if the tabindex allows the element to be\n * focused.\n *\n * @param candidate - The candidate element.\n * @returns If candidate's attributes allow it to be focused.\n * @internal\n */\n private hasFocusCompatibleAttributes(candidate: HTMLElement): boolean {\n return !candidate.getAttribute('disabled') && candidate.getAttribute('tabindex') !== '-1';\n }\n\n /**\n * Checks if the provided candidate is in the direction the navigation is going.\n *\n * @param candidate - The candidate element.\n * @returns If the candidate is in the correct direction.\n * @internal\n */\n private isInNavigateDirection(candidate: HTMLElement): boolean {\n return this.filterFunction[this.direction](candidate.getBoundingClientRect());\n }\n\n /**\n * Calculates the candidate's score for it to be the next element to navigateTo to based on a\n * formula that takes into account euclidean distance, displacement, alignment and\n * intersection area relative to the origin element.\n *\n * @param candidate - The candidate element.\n *\n * @returns The candidate score for best candidate.\n * @internal\n */\n private getDistanceScore(candidate: HTMLElement): number {\n const candidateRect = candidate.getBoundingClientRect();\n const { 0: candidatePoint, 1: originPoint } = this.getComparisionPoints(candidateRect);\n const absoluteDistances: AbsoluteDistances = {\n x: Math.abs(candidatePoint.x - originPoint.x),\n y: Math.abs(candidatePoint.y - originPoint.y)\n };\n const euclideanDistance = Math.sqrt(\n Math.pow(absoluteDistances.x, 2) + Math.pow(absoluteDistances.y, 2)\n );\n const intersection = this.getIntersection(this.originRect, candidateRect);\n const { displacement, alignment } = this.getDisplacementAndAlignment(\n candidateRect,\n intersection,\n absoluteDistances\n );\n const projectedArea = Math.sqrt(intersection.area) / this.intersectionAreaWeight;\n\n return euclideanDistance + displacement - alignment - projectedArea;\n }\n\n /**\n * Gets the closest point to origin within the candidate and to the candidate within the origin\n * based on the navigation direction.\n *\n * @param candidateRect - The DOMRect of the candidate.\n *\n * @returns The candidate's closest Points to the origin.\n * @internal\n */\n private getComparisionPoints(candidateRect: DOMRect): Points {\n const points: Points = [\n { x: 0, y: 0 },\n { x: 0, y: 0 }\n ];\n\n return {\n ...this.setParallelPointValues(points, candidateRect),\n ...this.setOrthogonalPointValues(points, candidateRect)\n };\n }\n\n /**\n * Set parallel values between candidate and origin based on the navigation direction and\n * returns them.\n *\n * @param points - Current values for the candidate and origin's points.\n * @param candidateRect - The DOMRect of the candidate.\n *\n * @returns Candidate and origin points with parallel values set.\n * @internal\n */\n private setParallelPointValues(\n { 0: candidatePoint, 1: originPoint }: Points,\n candidateRect: DOMRect\n ): Points {\n switch (this.direction) {\n case 'ArrowUp':\n candidatePoint.y = Math.min(candidateRect.bottom, this.originRect.top);\n originPoint.y = this.originRect.top;\n break;\n case 'ArrowDown':\n candidatePoint.y = Math.max(candidateRect.top, this.originRect.bottom);\n originPoint.y = this.originRect.bottom;\n break;\n case 'ArrowRight':\n candidatePoint.x = Math.max(candidateRect.left, this.originRect.right);\n originPoint.x = this.originRect.right;\n break;\n case 'ArrowLeft':\n candidatePoint.x = Math.min(candidateRect.right, this.originRect.left);\n originPoint.x = this.originRect.left;\n break;\n }\n\n return [candidatePoint, originPoint];\n }\n\n /**\n * Set orthogonal values between candidate and origin based on the navigation direction and\n * returns them.\n *\n * @param points - Current values for the candidate and origin's points.\n * @param candidateRect - The DOMRect of the candidate.\n *\n * @returns Candidate and origin points with orthogonal values set.\n * @internal\n */\n private setOrthogonalPointValues(\n { 0: candidatePoint, 1: originPoint }: Points,\n candidateRect: DOMRect\n ): Points {\n switch (this.direction) {\n case 'ArrowUp':\n case 'ArrowDown':\n if (this.isRightSide(this.originRect, candidateRect)) {\n candidatePoint.x = Math.min(candidateRect.right, this.originRect.left);\n originPoint.x = this.originRect.left;\n } else if (this.isRightSide(candidateRect, this.originRect)) {\n candidatePoint.x = Math.max(candidateRect.left, this.originRect.right);\n originPoint.x = this.originRect.right;\n } else {\n candidatePoint.x = Math.max(this.originRect.left, candidateRect.left);\n originPoint.x = candidatePoint.x;\n }\n break;\n\n case 'ArrowRight':\n case 'ArrowLeft':\n if (this.isBelow(this.originRect, candidateRect)) {\n candidatePoint.y = Math.min(candidateRect.bottom, this.originRect.top);\n originPoint.y = this.originRect.top;\n } else if (this.isBelow(candidateRect, this.originRect)) {\n candidatePoint.y = Math.max(candidateRect.top, this.originRect.bottom);\n originPoint.y = this.originRect.bottom;\n } else {\n candidatePoint.y = Math.max(this.originRect.top, candidateRect.top);\n originPoint.y = candidatePoint.y;\n }\n break;\n }\n\n return [candidatePoint, originPoint];\n }\n\n /**\n * Calculates the displacement and alignment values for the candidate relative to the origin.\n *\n * @param candidateRect - The DOMRect of the candidate.\n * @param intersection - Projected intersection between candidate and origin.\n * @param absoluteDistances - Absolute distances between candidate and origin points.\n *\n * @returns Displacement and alignment values.\n * @internal\n */\n private getDisplacementAndAlignment(\n candidateRect: DOMRect,\n intersection: Intersection,\n absoluteDistances: AbsoluteDistances\n ): { displacement: number; alignment: number } {\n const areAligned = this.areAligned(this.originRect, candidateRect);\n\n let alignBias = 0;\n let orthogonalBias = 0;\n let displacement = 0;\n\n switch (this.direction) {\n case 'ArrowUp':\n case 'ArrowDown':\n if (areAligned) {\n alignBias = Math.min(intersection.width / this.originRect.width, 1);\n } else {\n orthogonalBias = this.originRect.width / 2;\n }\n\n displacement = (absoluteDistances.x + orthogonalBias) * this.orthogonalWeightVertical;\n break;\n\n case 'ArrowRight':\n case 'ArrowLeft':\n if (areAligned) {\n alignBias = Math.min(intersection.height / this.originRect.height, 1);\n } else {\n orthogonalBias = this.originRect.height / 2;\n }\n\n displacement = (absoluteDistances.y + orthogonalBias) * this.orthogonalWeightHorizontal;\n break;\n }\n\n return { displacement, alignment: alignBias * this.alignWeight };\n }\n\n /**\n * Calculates the projected intersection between two\n * {@link https://developer.mozilla.org/en-US/docs/Web/API/DOMRect | rects}.\n *\n * @param rect1 - First {@link https://developer.mozilla.org/en-US/docs/Web/API/DOMRect | rect}.\n * @param rect2 - Second {@link https://developer.mozilla.org/en-US/docs/Web/API/DOMRect | rect}.\n *\n * @returns The intersection.\n * @internal\n */\n private getIntersection(rect1: DOMRect, rect2: DOMRect): Intersection {\n const intersection: Intersection = { width: 0, height: 0, area: 0 };\n\n const topLeftPoint: Point = {\n x: Math.max(rect1.left, rect2.left),\n y: Math.max(rect1.top, rect2.top)\n };\n const bottomRightPoint: Point = {\n x: Math.min(rect1.right, rect2.right),\n y: Math.min(rect1.bottom, rect2.bottom)\n };\n\n intersection.width = Math.abs(topLeftPoint.x - bottomRightPoint.x);\n intersection.height = Math.abs(topLeftPoint.y - bottomRightPoint.y);\n\n if (topLeftPoint.x < bottomRightPoint.x || topLeftPoint.y < bottomRightPoint.y) {\n intersection.area = intersection.width * intersection.height;\n }\n\n return intersection;\n }\n\n /**\n * Checks that both DOMRect are aligned based on the provided direction.\n *\n * @param rect1 - The first DOMRect.\n * @param rect2 - The DOMRect that the first one will be compared to.\n *\n * @returns If the DOMRect are aligned.\n * @internal\n */\n private areAligned(rect1: DOMRect, rect2: DOMRect): boolean {\n return this.direction === 'ArrowLeft' || this.direction === 'ArrowRight'\n ? rect1.bottom > rect2.top && rect1.top < rect2.bottom\n : rect1.right > rect2.left && rect1.left < rect2.right;\n }\n\n /**\n * Checks that the first DOMRect is below the second one.\n *\n * @param rect1 - The first DOMRect.\n * @param rect2 - The DOMRect that the first one will be compared to.\n *\n * @returns If it's below.\n * @internal\n */\n private isBelow(rect1: DOMRect, rect2: DOMRect): boolean {\n return (\n rect1.top >= rect2.bottom ||\n (rect1.top >= rect2.top &&\n rect1.bottom > rect2.bottom &&\n rect1.left < rect2.right &&\n rect1.right > rect2.left)\n );\n }\n\n /**\n * Checks that the first DOMRect is to the right side of the second one.\n *\n * @param rect1 - The first DOMRect.\n * @param rect2 - The DOMRect that the first one will be compared to.\n *\n * @returns If it's to the right side.\n * @internal\n */\n private isRightSide(rect1: DOMRect, rect2: DOMRect): boolean {\n return (\n rect1.left >= rect2.right ||\n (rect1.left >= rect2.left &&\n rect1.right > rect2.right &&\n rect1.bottom > rect2.top &&\n rect1.top < rect2.bottom)\n );\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"directional-focus-navigation.service.js","sources":["../../../src/services/directional-focus-navigation.service.ts"],"sourcesContent":["import { FOCUSABLE_SELECTORS } from '../utils/focus';\nimport { ArrowKey } from '../utils/types';\nimport { getActiveElement } from '../utils/html';\nimport {\n AbsoluteDistances,\n Intersection,\n Point,\n Points,\n SpatialNavigation\n} from './services.types';\n\n/**\n * Implementation of {@link SpatialNavigation} using directional focus.\n *\n * @public\n */\nexport class DirectionalFocusNavigationService implements SpatialNavigation {\n /**\n * The HTMLElement that is currently on focus and used as reference to navigateTo from.\n */\n private origin!: HTMLElement;\n\n /**\n * The DOMRect of the origin Element.\n */\n private originRect!: DOMRect;\n\n /**\n * Direction of the navigation.\n */\n private direction!: ArrowKey;\n\n /**\n * Weight of the projected intersection area weight in the\n * {@link DirectionalFocusNavigationService.getDistanceScore | getDistanceScore} formula.\n */\n private readonly intersectionAreaWeight = 100;\n\n /**\n * Weight of the absolute distance on the orthogonal axis between to elements when navigating\n * left or right. Used to calculate the displacement in\n * {@link DirectionalFocusNavigationService.getDisplacementAndAlignment |\n * getDisplacementAndAlignment}.\n */\n private readonly orthogonalWeightHorizontal = 30;\n\n /**\n * Weight of the absolute distance on the orthogonal axis between to elements when navigating\n * up or down. Used to calculate the displacement in\n * {@link DirectionalFocusNavigationService.getDisplacementAndAlignment |\n * getDisplacementAndAlignment}.\n */\n private readonly orthogonalWeightVertical = 2;\n\n /**\n * Weight of the degree of alignment between two elements when calculating the alignment in\n * {@link DirectionalFocusNavigationService.getDisplacementAndAlignment |\n * getDisplacementAndAlignment}.\n */\n private readonly alignWeight = 5;\n\n /**\n * Set of functions to filter out candidates based on the navigation's direction.\n */\n private readonly filterFunction = {\n ArrowUp: (candidateRect: DOMRect) => this.isBelow(this.originRect, candidateRect),\n ArrowRight: (candidateRect: DOMRect) => this.isRightSide(candidateRect, this.originRect),\n ArrowDown: (candidateRect: DOMRect) => this.isBelow(candidateRect, this.originRect),\n ArrowLeft: (candidateRect: DOMRect) => this.isRightSide(this.originRect, candidateRect)\n };\n\n /**\n * Constructor for the {@link DirectionalFocusNavigationService}.\n *\n * @param container - The element that contains the navigable elements.\n * @param focusableSelectors - A comma separated string with the focusable selectors to look up.\n */\n public constructor(\n /**\n * The {@link https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement | HTMLElement} that\n * contains the navigable elements.\n */\n private readonly container: HTMLElement,\n /**\n * Comma separated focusable selectors to look up.\n */\n private readonly focusableSelectors = FOCUSABLE_SELECTORS\n ) {}\n\n /**\n * Get the element that would be the next one to be navigated to based on the direction of the\n * arrow key pressed. If there are no possible candidates the element to focus would be the one on\n * currently on focus or the first one in the container.\n *\n * @param arrowKey - The arrow key that was pressed.\n *\n * @returns The element to navigate to.\n */\n navigateTo(arrowKey: ArrowKey): HTMLElement {\n const rawCandidates = this.getFocusableElements();\n this.direction = arrowKey;\n this.updateOrigin();\n\n return this.getBestCandidate(rawCandidates);\n }\n\n /**\n * Gets focusable elements within the container.\n *\n * @returns List of focusable elements.\n * @internal\n */\n private getFocusableElements(): HTMLElement[] {\n return Array.from(this.container.querySelectorAll(this.focusableSelectors));\n }\n\n /**\n * Updates the origin with the current document active element.\n *\n * @remarks\n * This also covers cases when the user might have iterated through the DOM using the TAB or\n * SHIFT+TAB keys.\n */\n private updateOrigin(): void {\n const newOrigin = getActiveElement();\n if (newOrigin) {\n this.origin = newOrigin as HTMLElement;\n this.originRect = newOrigin.getBoundingClientRect();\n }\n }\n\n /**\n * Finds the closest candidate to the origin from a list of candidates.\n *\n * @remarks\n * If there are no candidates the origin will be retrieved as best candidate.\n *\n * @param rawCandidates - List of all candidates.\n *\n * @returns The closest candidate to the origin or origin if there's none.\n * @internal\n */\n private getBestCandidate(rawCandidates: HTMLElement[]): HTMLElement {\n const candidates = this.filterCandidates(rawCandidates);\n let bestCandidate = this.origin;\n\n candidates.reduce((bestCurrentScore: number, candidate) => {\n const bestScore = Math.min(bestCurrentScore, this.getDistanceScore(candidate));\n if (bestScore !== bestCurrentScore) {\n bestCandidate = candidate;\n }\n return bestScore;\n }, Number.MAX_SAFE_INTEGER);\n\n return bestCandidate;\n }\n\n /**\n * Filters out candidates that can't be candidates based on the direction of the navigation and\n * if they are visible and enabled.\n *\n * @param rawCandidates - List of all candidates.\n *\n * @returns List of filtered candidates.\n * @internal\n */\n private filterCandidates(rawCandidates: HTMLElement[]): HTMLElement[] {\n return rawCandidates.filter(candidate => this.isValidCandidate(candidate));\n }\n\n /**\n * Checks if the provided candidate is not the origin, is visible, enabled and in the correct\n * direction to be a valid candidate.\n *\n * @param candidate - The candidate element.\n * @returns If the candidate is valid for the navigation.\n * @internal\n */\n private isValidCandidate(candidate: HTMLElement): boolean {\n return (\n candidate !== this.origin &&\n this.isCandidateVisible(candidate) &&\n this.hasFocusCompatibleAttributes(candidate) &&\n this.isInNavigateDirection(candidate)\n );\n }\n\n /**\n * Checks if the provided candidate is visible.\n *\n * @param candidate - The candidate element.\n * @returns If the candidate is visible.\n * @internal\n */\n private isCandidateVisible(candidate: HTMLElement): boolean {\n const candidateStyle = window.getComputedStyle(candidate, null);\n\n return !!(\n candidate.offsetWidth &&\n candidate.offsetHeight &&\n candidateStyle.visibility === 'visible'\n );\n }\n\n /**\n * Checks if the provided candidate is disabled and if the tabindex allows the element to be\n * focused.\n *\n * @param candidate - The candidate element.\n * @returns If candidate's attributes allow it to be focused.\n * @internal\n */\n private hasFocusCompatibleAttributes(candidate: HTMLElement): boolean {\n return !candidate.getAttribute('disabled') && candidate.getAttribute('tabindex') !== '-1';\n }\n\n /**\n * Checks if the provided candidate is in the direction the navigation is going.\n *\n * @param candidate - The candidate element.\n * @returns If the candidate is in the correct direction.\n * @internal\n */\n private isInNavigateDirection(candidate: HTMLElement): boolean {\n return this.filterFunction[this.direction](candidate.getBoundingClientRect());\n }\n\n /**\n * Calculates the candidate's score for it to be the next element to navigateTo to based on a\n * formula that takes into account euclidean distance, displacement, alignment and\n * intersection area relative to the origin element.\n *\n * @param candidate - The candidate element.\n *\n * @returns The candidate score for best candidate.\n * @internal\n */\n private getDistanceScore(candidate: HTMLElement): number {\n const candidateRect = candidate.getBoundingClientRect();\n const { 0: candidatePoint, 1: originPoint } = this.getComparisionPoints(candidateRect);\n const absoluteDistances: AbsoluteDistances = {\n x: Math.abs(candidatePoint.x - originPoint.x),\n y: Math.abs(candidatePoint.y - originPoint.y)\n };\n const euclideanDistance = Math.sqrt(\n Math.pow(absoluteDistances.x, 2) + Math.pow(absoluteDistances.y, 2)\n );\n const intersection = this.getIntersection(this.originRect, candidateRect);\n const { displacement, alignment } = this.getDisplacementAndAlignment(\n candidateRect,\n intersection,\n absoluteDistances\n );\n const projectedArea = Math.sqrt(intersection.area) / this.intersectionAreaWeight;\n\n return euclideanDistance + displacement - alignment - projectedArea;\n }\n\n /**\n * Gets the closest point to origin within the candidate and to the candidate within the origin\n * based on the navigation direction.\n *\n * @param candidateRect - The DOMRect of the candidate.\n *\n * @returns The candidate's closest Points to the origin.\n * @internal\n */\n private getComparisionPoints(candidateRect: DOMRect): Points {\n const points: Points = [\n { x: 0, y: 0 },\n { x: 0, y: 0 }\n ];\n\n return {\n ...this.setParallelPointValues(points, candidateRect),\n ...this.setOrthogonalPointValues(points, candidateRect)\n };\n }\n\n /**\n * Set parallel values between candidate and origin based on the navigation direction and\n * returns them.\n *\n * @param points - Current values for the candidate and origin's points.\n * @param candidateRect - The DOMRect of the candidate.\n *\n * @returns Candidate and origin points with parallel values set.\n * @internal\n */\n private setParallelPointValues(\n { 0: candidatePoint, 1: originPoint }: Points,\n candidateRect: DOMRect\n ): Points {\n switch (this.direction) {\n case 'ArrowUp':\n candidatePoint.y = Math.min(candidateRect.bottom, this.originRect.top);\n originPoint.y = this.originRect.top;\n break;\n case 'ArrowDown':\n candidatePoint.y = Math.max(candidateRect.top, this.originRect.bottom);\n originPoint.y = this.originRect.bottom;\n break;\n case 'ArrowRight':\n candidatePoint.x = Math.max(candidateRect.left, this.originRect.right);\n originPoint.x = this.originRect.right;\n break;\n case 'ArrowLeft':\n candidatePoint.x = Math.min(candidateRect.right, this.originRect.left);\n originPoint.x = this.originRect.left;\n break;\n }\n\n return [candidatePoint, originPoint];\n }\n\n /**\n * Set orthogonal values between candidate and origin based on the navigation direction and\n * returns them.\n *\n * @param points - Current values for the candidate and origin's points.\n * @param candidateRect - The DOMRect of the candidate.\n *\n * @returns Candidate and origin points with orthogonal values set.\n * @internal\n */\n private setOrthogonalPointValues(\n { 0: candidatePoint, 1: originPoint }: Points,\n candidateRect: DOMRect\n ): Points {\n switch (this.direction) {\n case 'ArrowUp':\n case 'ArrowDown':\n if (this.isRightSide(this.originRect, candidateRect)) {\n candidatePoint.x = Math.min(candidateRect.right, this.originRect.left);\n originPoint.x = this.originRect.left;\n } else if (this.isRightSide(candidateRect, this.originRect)) {\n candidatePoint.x = Math.max(candidateRect.left, this.originRect.right);\n originPoint.x = this.originRect.right;\n } else {\n candidatePoint.x = Math.max(this.originRect.left, candidateRect.left);\n originPoint.x = candidatePoint.x;\n }\n break;\n\n case 'ArrowRight':\n case 'ArrowLeft':\n if (this.isBelow(this.originRect, candidateRect)) {\n candidatePoint.y = Math.min(candidateRect.bottom, this.originRect.top);\n originPoint.y = this.originRect.top;\n } else if (this.isBelow(candidateRect, this.originRect)) {\n candidatePoint.y = Math.max(candidateRect.top, this.originRect.bottom);\n originPoint.y = this.originRect.bottom;\n } else {\n candidatePoint.y = Math.max(this.originRect.top, candidateRect.top);\n originPoint.y = candidatePoint.y;\n }\n break;\n }\n\n return [candidatePoint, originPoint];\n }\n\n /**\n * Calculates the displacement and alignment values for the candidate relative to the origin.\n *\n * @param candidateRect - The DOMRect of the candidate.\n * @param intersection - Projected intersection between candidate and origin.\n * @param absoluteDistances - Absolute distances between candidate and origin points.\n *\n * @returns Displacement and alignment values.\n * @internal\n */\n private getDisplacementAndAlignment(\n candidateRect: DOMRect,\n intersection: Intersection,\n absoluteDistances: AbsoluteDistances\n ): { displacement: number; alignment: number } {\n const areAligned = this.areAligned(this.originRect, candidateRect);\n\n let alignBias = 0;\n let orthogonalBias = 0;\n let displacement = 0;\n\n switch (this.direction) {\n case 'ArrowUp':\n case 'ArrowDown':\n if (areAligned) {\n alignBias = Math.min(intersection.width / this.originRect.width, 1);\n } else {\n orthogonalBias = this.originRect.width / 2;\n }\n\n displacement = (absoluteDistances.x + orthogonalBias) * this.orthogonalWeightVertical;\n break;\n\n case 'ArrowRight':\n case 'ArrowLeft':\n if (areAligned) {\n alignBias = Math.min(intersection.height / this.originRect.height, 1);\n } else {\n orthogonalBias = this.originRect.height / 2;\n }\n\n displacement = (absoluteDistances.y + orthogonalBias) * this.orthogonalWeightHorizontal;\n break;\n }\n\n return { displacement, alignment: alignBias * this.alignWeight };\n }\n\n /**\n * Calculates the projected intersection between two\n * {@link https://developer.mozilla.org/en-US/docs/Web/API/DOMRect | rects}.\n *\n * @param rect1 - First {@link https://developer.mozilla.org/en-US/docs/Web/API/DOMRect | rect}.\n * @param rect2 - Second {@link https://developer.mozilla.org/en-US/docs/Web/API/DOMRect | rect}.\n *\n * @returns The intersection.\n * @internal\n */\n private getIntersection(rect1: DOMRect, rect2: DOMRect): Intersection {\n const intersection: Intersection = { width: 0, height: 0, area: 0 };\n\n const topLeftPoint: Point = {\n x: Math.max(rect1.left, rect2.left),\n y: Math.max(rect1.top, rect2.top)\n };\n const bottomRightPoint: Point = {\n x: Math.min(rect1.right, rect2.right),\n y: Math.min(rect1.bottom, rect2.bottom)\n };\n\n intersection.width = Math.abs(topLeftPoint.x - bottomRightPoint.x);\n intersection.height = Math.abs(topLeftPoint.y - bottomRightPoint.y);\n\n if (topLeftPoint.x < bottomRightPoint.x || topLeftPoint.y < bottomRightPoint.y) {\n intersection.area = intersection.width * intersection.height;\n }\n\n return intersection;\n }\n\n /**\n * Checks that both DOMRect are aligned based on the provided direction.\n *\n * @param rect1 - The first DOMRect.\n * @param rect2 - The DOMRect that the first one will be compared to.\n *\n * @returns If the DOMRect are aligned.\n * @internal\n */\n private areAligned(rect1: DOMRect, rect2: DOMRect): boolean {\n return this.direction === 'ArrowLeft' || this.direction === 'ArrowRight'\n ? rect1.bottom > rect2.top && rect1.top < rect2.bottom\n : rect1.right > rect2.left && rect1.left < rect2.right;\n }\n\n /**\n * Checks that the first DOMRect is below the second one.\n *\n * @param rect1 - The first DOMRect.\n * @param rect2 - The DOMRect that the first one will be compared to.\n *\n * @returns If it's below.\n * @internal\n */\n private isBelow(rect1: DOMRect, rect2: DOMRect): boolean {\n return (\n rect1.top >= rect2.bottom ||\n (rect1.top >= rect2.top &&\n rect1.bottom > rect2.bottom &&\n rect1.left < rect2.right &&\n rect1.right > rect2.left)\n );\n }\n\n /**\n * Checks that the first DOMRect is to the right side of the second one.\n *\n * @param rect1 - The first DOMRect.\n * @param rect2 - The DOMRect that the first one will be compared to.\n *\n * @returns If it's to the right side.\n * @internal\n */\n private isRightSide(rect1: DOMRect, rect2: DOMRect): boolean {\n return (\n rect1.left >= rect2.right ||\n (rect1.left >= rect2.left &&\n rect1.right > rect2.right &&\n rect1.bottom > rect2.top &&\n rect1.top < rect2.bottom)\n );\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import Vue from 'vue';
|
|
2
|
-
|
|
3
1
|
/**
|
|
4
2
|
* Sets the request config. Can be used as a mutation.
|
|
5
3
|
*
|
|
@@ -9,7 +7,7 @@ import Vue from 'vue';
|
|
|
9
7
|
* @public
|
|
10
8
|
*/
|
|
11
9
|
function setConfig(state, config) {
|
|
12
|
-
|
|
10
|
+
state.config = config;
|
|
13
11
|
}
|
|
14
12
|
/**
|
|
15
13
|
* Merges a new config with the current one. Can be used as a mutation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-store.utils.js","sources":["../../../../src/store/utils/config-store.utils.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"config-store.utils.js","sources":["../../../../src/store/utils/config-store.utils.ts"],"sourcesContent":["/**\n * Config mutations, containing a method to change the current config and other to merge\n * a new one.\n *\n * @public\n */\nexport interface ConfigMutations<T extends { config: T['config'] }> {\n /**\n * Sets the module config.\n *\n * @param config - The new config.\n */\n setConfig(config: T['config']): void;\n /**\n * Merges a new config with the current one.\n *\n * @param config - The config to be merged.\n */\n mergeConfig(config: T['config']): void;\n}\n\n/**\n * Sets the request config. Can be used as a mutation.\n *\n * @param state - The {@link https://vuex.vuejs.org/guide/state.html | state} provided by Vuex.\n * @param config - The new config.\n *\n * @public\n */\nexport function setConfig<T extends { config: T['config'] }>(state: T, config: T['config']): void {\n state.config = config;\n}\n\n/**\n * Merges a new config with the current one. Can be used as a mutation.\n *\n * @param state - The {@link https://vuex.vuejs.org/guide/state.html | state} provided by Vuex.\n * @param config - The config to be merged.\n *\n * @public\n */\nexport function mergeConfig<T extends { config: T['config'] }>(\n state: T,\n config: Partial<T['config']>\n): void {\n Object.assign(<object>state.config, config);\n}\n"],"names":[],"mappings":"AAqBA;;;;;;;AAOG;AACa,SAAA,SAAS,CAAoC,KAAQ,EAAE,MAAmB,EAAA;AACxF,IAAA,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;AACxB,CAAC;AAED;;;;;;;AAOG;AACa,SAAA,WAAW,CACzB,KAAQ,EACR,MAA4B,EAAA;IAE5B,MAAM,CAAC,MAAM,CAAS,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC9C;;;;"}
|
|
@@ -77,10 +77,11 @@ function defineGetterProxy(safeGettersProxy, getterName, fullPathGetterName, get
|
|
|
77
77
|
enumerable: true
|
|
78
78
|
});
|
|
79
79
|
}
|
|
80
|
-
/**
|
|
80
|
+
/**
|
|
81
|
+
* Clean the cache (This is for testing purpose).
|
|
81
82
|
*
|
|
82
83
|
* @internal
|
|
83
|
-
|
|
84
|
+
*/
|
|
84
85
|
function cleanGettersProxyCache() {
|
|
85
86
|
cache = {};
|
|
86
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getters-proxy.utils.js","sources":["../../../../src/store/utils/getters-proxy.utils.ts"],"sourcesContent":["import { reduce, Dictionary } from '@empathyco/x-utils';\nimport {
|
|
1
|
+
{"version":3,"file":"getters-proxy.utils.js","sources":["../../../../src/store/utils/getters-proxy.utils.ts"],"sourcesContent":["import { reduce, Dictionary } from '@empathyco/x-utils';\nimport { ExtractGetters, XModuleName } from '../../x-modules/x-modules.types';\nimport { AnyXStoreModule } from '../store.types';\n\ntype Getters = { [ModuleName in XModuleName]?: ExtractGetters<ModuleName> };\nlet cache: Getters = {};\n/**\n * Creates or return a proxy object of the getters of the storeModule passed.\n *\n * @param getters - The Vuex Store Getters.\n * @param moduleName - The name of the module.\n * @param storeModule - The store module.\n * @returns A {@link GettersTree} object with only the getters of the {@link XModule}.\n *\n * @internal\n *\n * @remarks This proxy will be used by the stateSelector, of the module. This is done to ensure that\n * a Vuex stateSelector can only access the getters of the {@link XModule} where it is registered.\n * This function task can be done with {@link getGettersProxy}, just without passing the\n * storeModule. But in that case every time we register emitters in a module, it will loop over all\n * the getters of all the store. This way, passing the moduleNeeded, it only loops over the getters\n * of that module. It is a performance question to have this two different implementations.\n *\n */\nexport function getGettersProxyFromModule<ModuleName extends XModuleName>(\n getters: Dictionary,\n moduleName: ModuleName,\n storeModule: AnyXStoreModule\n): ExtractGetters<ModuleName> {\n /* TODO: Review why TS is not able to exclude undefined types from the Getters cache */\n const cachedGetter = cache[moduleName];\n if (isCacheGetterDefined<ModuleName>(cachedGetter)) {\n return cachedGetter;\n }\n const modulePath = `x/${moduleName}/`;\n const safeGetters = reduce(\n storeModule.getters as Dictionary,\n (safeGettersProxy, getterName) =>\n defineGetterProxy(safeGettersProxy, getterName, `${modulePath}${getterName}`, getters),\n {} as ExtractGetters<ModuleName>\n );\n cache[moduleName] = safeGetters as unknown as Getters[ModuleName];\n return safeGetters;\n}\n\n/**\n * Creates or return a proxy object of the getters of the module with the moduleName passed.\n *\n * @param getters - The Vuex Store Getters.\n * @param moduleName - The name of the module.\n * @returns A {@link GettersTree} object with only the getters of the {@link XModule}.\n *\n * @internal\n *\n * @remarks This proxy will be used wireCommit to pass the module state and getters, to a function\n * that will return the payload to commit the mutation.\n */\nexport function getGettersProxy<ModuleName extends XModuleName>(\n getters: Dictionary,\n moduleName: ModuleName\n): ExtractGetters<ModuleName> {\n /* TODO: Review why TS is not able to exclude undefined types from the Getters cache */\n const cachedGetter = cache[moduleName];\n if (isCacheGetterDefined<ModuleName>(cachedGetter)) {\n return cachedGetter;\n }\n const modulePath = `x/${moduleName}/`;\n const getterKeys: string[] = Object.keys(getters).filter(getterKey =>\n getterKey.startsWith(modulePath)\n );\n const safeGetters = getterKeys.reduce((safeGettersProxy, fullPathGetterName) => {\n const getterName = fullPathGetterName.replace(modulePath, '');\n return defineGetterProxy(safeGettersProxy, getterName, fullPathGetterName, getters);\n }, {} as ExtractGetters<ModuleName>);\n cache[moduleName] = safeGetters as unknown as Getters[ModuleName];\n return safeGetters;\n}\n\n/**\n * Defines a JS getter in safeGettersProxy object that returns the Vuex getter value.\n *\n * @param safeGettersProxy - The object where the proxy will be defined.\n * @param getterName - The name of the Getter without path. For example: 'trimQuery'.\n * @param fullPathGetterName - The name of the getter to be accessed with the full path.\n * For example: 'x/searchBox/trimmedQuery'.\n * @param getters - The Vuex Store Getters.\n * @returns The same safeGetterProxy with new get defined.\n *\n * @internal\n */\nfunction defineGetterProxy<ModuleName extends XModuleName>(\n safeGettersProxy: ExtractGetters<ModuleName>,\n getterName: string,\n fullPathGetterName: string,\n getters: Dictionary\n): ExtractGetters<ModuleName> {\n return Object.defineProperty(safeGettersProxy, getterName, {\n get() {\n return getters[fullPathGetterName];\n },\n enumerable: true\n });\n}\n\n/**\n * Clean the cache (This is for testing purpose).\n *\n * @internal\n */\nexport function cleanGettersProxyCache(): void {\n cache = {};\n}\n\n/**\n * Checks if the getter cached is defined.\n *\n * @param cachedGetter - The getter cached.\n * @returns If the getters is defined or not.\n *\n * @internal\n */\nfunction isCacheGetterDefined<ModuleName extends XModuleName>(\n cachedGetter: ExtractGetters<ModuleName> | undefined | unknown\n): cachedGetter is ExtractGetters<ModuleName> {\n return cachedGetter !== undefined;\n}\n"],"names":[],"mappings":";;AAKA,IAAI,KAAK,GAAY,EAAE,CAAC;AACxB;;;;;;;;;;;;;;;;;AAiBG;SACa,yBAAyB,CACvC,OAAmB,EACnB,UAAsB,EACtB,WAA4B,EAAA;;AAG5B,IAAA,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;AACvC,IAAA,IAAI,oBAAoB,CAAa,YAAY,CAAC,EAAE;AAClD,QAAA,OAAO,YAAY,CAAC;AACrB,KAAA;AACD,IAAA,MAAM,UAAU,GAAG,CAAK,EAAA,EAAA,UAAU,GAAG,CAAC;AACtC,IAAA,MAAM,WAAW,GAAG,MAAM,CACxB,WAAW,CAAC,OAAqB,EACjC,CAAC,gBAAgB,EAAE,UAAU,KAC3B,iBAAiB,CAAC,gBAAgB,EAAE,UAAU,EAAE,CAAA,EAAG,UAAU,CAAG,EAAA,UAAU,CAAE,CAAA,EAAE,OAAO,CAAC,EACxF,EAAgC,CACjC,CAAC;AACF,IAAA,KAAK,CAAC,UAAU,CAAC,GAAG,WAA6C,CAAC;AAClE,IAAA,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;;;;;;AAWG;AACa,SAAA,eAAe,CAC7B,OAAmB,EACnB,UAAsB,EAAA;;AAGtB,IAAA,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;AACvC,IAAA,IAAI,oBAAoB,CAAa,YAAY,CAAC,EAAE;AAClD,QAAA,OAAO,YAAY,CAAC;AACrB,KAAA;AACD,IAAA,MAAM,UAAU,GAAG,CAAK,EAAA,EAAA,UAAU,GAAG,CAAC;IACtC,MAAM,UAAU,GAAa,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,SAAS,IAChE,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,CACjC,CAAC;IACF,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,kBAAkB,KAAI;QAC7E,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO,iBAAiB,CAAC,gBAAgB,EAAE,UAAU,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;KACrF,EAAE,EAAgC,CAAC,CAAC;AACrC,IAAA,KAAK,CAAC,UAAU,CAAC,GAAG,WAA6C,CAAC;AAClE,IAAA,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;;;;;;AAWG;AACH,SAAS,iBAAiB,CACxB,gBAA4C,EAC5C,UAAkB,EAClB,kBAA0B,EAC1B,OAAmB,EAAA;AAEnB,IAAA,OAAO,MAAM,CAAC,cAAc,CAAC,gBAAgB,EAAE,UAAU,EAAE;QACzD,GAAG,GAAA;AACD,YAAA,OAAO,OAAO,CAAC,kBAAkB,CAAC,CAAC;SACpC;AACD,QAAA,UAAU,EAAE,IAAI;AACjB,KAAA,CAAC,CAAC;AACL,CAAC;AAED;;;;AAIG;SACa,sBAAsB,GAAA;IACpC,KAAK,GAAG,EAAE,CAAC;AACb,CAAC;AAED;;;;;;;AAOG;AACH,SAAS,oBAAoB,CAC3B,YAA8D,EAAA;IAE9D,OAAO,YAAY,KAAK,SAAS,CAAC;AACpC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.utils.js","sources":["../../../../src/store/utils/query.utils.ts"],"sourcesContent":["import { RelatedTag } from '@empathyco/x-types';\n\n/**\n * Query state type, containing a property to hold the current query of the module.\n *\n * @public\n */\nexport interface QueryState {\n /** The query of the module. Different modules may have queries that differ in value
|
|
1
|
+
{"version":3,"file":"query.utils.js","sources":["../../../../src/store/utils/query.utils.ts"],"sourcesContent":["import { RelatedTag } from '@empathyco/x-types';\n\n/**\n * Query state type, containing a property to hold the current query of the module.\n *\n * @public\n */\nexport interface QueryState {\n /** The query of the module. Different modules may have queries that differ in value or time. */\n query: string;\n}\n\n/**\n * The {@link QueryState} mutations.\n *\n * @public\n */\nexport interface QueryMutations {\n /**\n * Sets the query.\n *\n * @param query - The new query.\n */\n setQuery(query: string): void;\n}\n\n/**\n * Options to create a getter that combines the query with the selected related tags.\n *\n * @public\n */\nexport interface CreateRelatedTagsQueryGetterOptions<State, Getters> {\n /**\n * Retrieves the selected related tags of the module.\n *\n * @param state - The state of the module.\n * @param getters - The getters of the module.\n * @returns The list of selected related tags.\n */\n getRelatedTags: (state: State, getters: Getters) => RelatedTag[];\n}\n\n/**\n * Sets the query of the module.\n *\n * @param state - State of the module.\n * @param query - The new query to set.\n * @public\n */\nexport function setQuery(state: QueryState, query: string): void {\n state.query = query;\n}\n\n/**\n * Creates a getter that combines the current selected related tags and the query of the module.\n *\n * @param options - Options on how the getter should behave.\n * @returns A getter that combines the selected related tags with the query.\n * @public\n */\nexport function createRelatedTagsQueryGetter<State extends QueryState, Getters>({\n getRelatedTags\n}: CreateRelatedTagsQueryGetterOptions<State, Getters>): (\n state: State,\n getters: Getters\n) => string {\n return function relatedTagsQuery(state, getters) {\n const query = state.query.trim();\n return query ? getRelatedTags(state, getters).reduce(concatRelatedTag, query).trim() : '';\n };\n}\n\n/**\n * Joins a query and a related tag respecting the tag position.\n *\n * @param partialQuery - The query to concatenate the related tag with.\n * @param relatedTag - The related tag to concatenate.\n * @returns The query and the related tag joined.\n * @internal\n */\nfunction concatRelatedTag(\n partialQuery: string,\n { tag, query: relatedTagQuery }: RelatedTag\n): string {\n return relatedTagQuery.startsWith(tag) ? `${tag} ${partialQuery}` : `${partialQuery} ${tag}`;\n}\n"],"names":[],"mappings":"AA0CA;;;;;;AAMG;AACa,SAAA,QAAQ,CAAC,KAAiB,EAAE,KAAa,EAAA;AACvD,IAAA,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;AAMG;AACa,SAAA,4BAA4B,CAAoC,EAC9E,cAAc,EACsC,EAAA;AAIpD,IAAA,OAAO,SAAS,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAA;QAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACjC,OAAO,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC;AAC5F,KAAC,CAAC;AACJ,CAAC;AAED;;;;;;;AAOG;AACH,SAAS,gBAAgB,CACvB,YAAoB,EACpB,EAAE,GAAG,EAAE,KAAK,EAAE,eAAe,EAAc,EAAA;IAE3C,OAAO,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAG,EAAA,GAAG,IAAI,YAAY,CAAA,CAAE,GAAG,GAAG,YAAY,CAAA,CAAA,EAAI,GAAG,CAAA,CAAE,CAAC;AAC/F;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-store.utils.js","sources":["../../../../src/store/utils/status-store.utils.ts"],"sourcesContent":["/**\n * Status state type, containing a property to hold the status property.\n *\n * @public\n */\nexport interface StatusState {\n
|
|
1
|
+
{"version":3,"file":"status-store.utils.js","sources":["../../../../src/store/utils/status-store.utils.ts"],"sourcesContent":["/**\n * Status state type, containing a property to hold the status property.\n *\n * @public\n */\nexport interface StatusState {\n /**\n * The request status. Useful for changing the displayed component depending on whether the\n * request has succeeded, has not been fulfilled or has failed.\n */\n status: RequestStatus;\n}\n\n/**\n * Status mutations, containing a method to change the current status.\n *\n * @public\n */\nexport interface StatusMutations {\n /**\n * Sets the request status.\n *\n * @param status - The new request status.\n */\n setStatus(status: RequestStatus): void;\n}\n\n/**\n * The possible status of a request:\n * - Success: The request has resolved successfully.\n * - Loading: The request is in process, waiting for a response.\n * - Error: The request has failed.\n *\n * @public\n */\nexport type RequestStatus = 'success' | 'loading' | 'error' | 'initial';\n\n/**\n * Sets the request status. Can be used as a mutation.\n *\n * @param state - The {@link https://vuex.vuejs.org/guide/state.html | state} provided by Vuex.\n * @param status - The new request status.\n * @public\n */\nexport function setStatus(state: StatusState, status: RequestStatus): void {\n state.status = status;\n}\n"],"names":[],"mappings":"AAqCA;;;;;;AAMG;AACa,SAAA,SAAS,CAAC,KAAkB,EAAE,MAAqB,EAAA;AACjE,IAAA,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;AACxB;;;;"}
|
package/js/store/x.module.js
CHANGED
|
@@ -5,27 +5,7 @@
|
|
|
5
5
|
* @internal
|
|
6
6
|
*/
|
|
7
7
|
const RootXStoreModule = {
|
|
8
|
-
state: () => ({
|
|
9
|
-
device: null,
|
|
10
|
-
empathize: null,
|
|
11
|
-
extraParams: null,
|
|
12
|
-
facets: null,
|
|
13
|
-
historyQueries: null,
|
|
14
|
-
identifierResults: null,
|
|
15
|
-
nextQueries: null,
|
|
16
|
-
popularSearches: null,
|
|
17
|
-
queriesPreview: null,
|
|
18
|
-
querySuggestions: null,
|
|
19
|
-
recommendations: null,
|
|
20
|
-
relatedTags: null,
|
|
21
|
-
scroll: null,
|
|
22
|
-
search: null,
|
|
23
|
-
searchBox: null,
|
|
24
|
-
semanticQueries: null,
|
|
25
|
-
tagging: null,
|
|
26
|
-
url: null,
|
|
27
|
-
experienceControls: null
|
|
28
|
-
}),
|
|
8
|
+
state: () => ({}),
|
|
29
9
|
namespaced: true
|
|
30
10
|
};
|
|
31
11
|
|
package/js/store/x.module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"x.module.js","sources":["../../../src/store/x.module.ts"],"sourcesContent":["import { Module } from 'vuex';\nimport { RootXStoreState } from './store.types';\n\n/**\n * The type of the x module state has a property for each other sub-module assigned to `null`,\n * so we can avoid re-executing getters every time\n * the `store.registerModule` method is called.\n *\n * @internal\n */\nexport type XModuleState = { [Key in keyof RootXStoreState['x']]: null };\n\n/**\n * The main module of the X Store. All of the other {@link XModule | XModules} will be\n * registered as a sub-module of this one.\n *\n * @internal\n */\nexport const RootXStoreModule: Module<
|
|
1
|
+
{"version":3,"file":"x.module.js","sources":["../../../src/store/x.module.ts"],"sourcesContent":["import { Module } from 'vuex';\nimport { RootXStoreState } from './store.types';\n\n/**\n * The type of the x module state has a property for each other sub-module assigned to `null`,\n * so we can avoid re-executing getters every time\n * the `store.registerModule` method is called.\n *\n * @internal\n */\nexport type XModuleState = { [Key in keyof RootXStoreState['x']]: null };\n\n/**\n * The main module of the X Store. All of the other {@link XModule | XModules} will be\n * registered as a sub-module of this one.\n *\n * @internal\n */\nexport const RootXStoreModule: Module<any, any> = {\n state: () => ({}),\n namespaced: true\n};\n"],"names":[],"mappings":"AAYA;;;;;AAKG;AACU,MAAA,gBAAgB,GAAqB;AAChD,IAAA,KAAK,EAAE,OAAO,EAAE,CAAC;AACjB,IAAA,UAAU,EAAE,IAAI;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"currency-formatter.js","sources":["../../../src/utils/currency-formatter.ts"],"sourcesContent":["/**\n * Regex to detect the format.\n */\nconst FORMAT_REGEX = /(i([^id]+))?i+(([^id?]+)(d+)(\\?)?)?/;\n\n/**\n * Configuration for format currency.\n */\ninterface CurrencyConfig {\n /** The character between a group of three integer 'i's and the following one. */\n integerSeparator: string;\n
|
|
1
|
+
{"version":3,"file":"currency-formatter.js","sources":["../../../src/utils/currency-formatter.ts"],"sourcesContent":["/**\n * Regex to detect the format.\n */\nconst FORMAT_REGEX = /(i([^id]+))?i+(([^id?]+)(d+)(\\?)?)?/;\n\n/**\n * Configuration for format currency.\n */\ninterface CurrencyConfig {\n /** The character between a group of three integer 'i's and the following one. */\n integerSeparator: string;\n /**\n * The character between a group of three integer 'i's and the following one. It also\n * supports more than one single character.\n */\n decimalSeparator: string;\n /** Length of decimals numbers. It counts the number of 'd's after the integer part. */\n decimalsNumber: number;\n /** Boolean value to hide or show the decimal part when it has 0. */\n hideIntegerDecimals: boolean;\n}\n\n/**\n * Parts of number: integer and decimal.\n */\ninterface NumberParts {\n /** Integer part of the number as string. */\n integer: string;\n /** Decimal part of the number as string. */\n decimal: string;\n}\n\n/**\n * Format a value with a given format.\n *\n * @param value - Numeric value to be formatted.\n * @param format - Format or mask to be defined as string.\n *\n * @remarks\n * Format:\n * - Use 'i' to define integer numbers.\n * - Use 'd' to define decimal numbers. You can define the length of the decimal part. If the\n * doesn't include decimals, it is filled with zeros until reach the length defined with 'd's.\n * - Integer separator must be defined between the 3rd and the 4th integer 'i' of a group.\n * - Decimal separator must be defined between the last 'i' and the first 'd'. It can be more\n * than one character.\n * - Set whatever you need around the integers and decimals marks.\n * - Default mask: 'i.iii,dd' which returns '1.345,67'.\n * - If you want to hide the decimal part if it's zero (non significant), you can add the `?` symbol\n * after the decimal characters (e.g. 'i.iii,dd?', for `1234` you would get `1.234` instead of\n * `1.234,00`). It defines the value of `hideIntegerDecimals`:\n * - If true (exists) and the value is an integer without decimals, the decimal non significant\n * zeroes are hidden.\n * - If false, the default behaviour will fill with zeros the remaining length until getting\n * the one defined with the 'd's.\n *\n * @returns Formatted number.\n *\n * @public\n */\nexport function currencyFormatter(value: number, format = 'i.iii,dd'): string {\n const { integer, decimal } = numberParts(value);\n const { decimalSeparator, decimalsNumber, integerSeparator, hideIntegerDecimals } =\n currencyConfig(format);\n\n const formattedInteger = formatInteger(integer, integerSeparator);\n const formattedDecimal = formatDecimal(decimal, {\n decimalsNumber,\n hideIntegerDecimals,\n decimalSeparator\n });\n return format.replace(FORMAT_REGEX, `${formattedInteger}${formattedDecimal}`);\n}\n\n/**\n * Returns the formatted integer part. This computed returns:\n * - integer part with the integer separator added.\n *\n * @param integer - Integer value as a string.\n * @param integerSeparator - Separator to apply in the integer side.\n *\n * The regexp adds the integer separator for each thousand group (each 3 numbers).\n *\n * @returns Formatted integer.\n *\n * @internal\n */\nfunction formatInteger(integer: string, integerSeparator: string): string {\n return integer.replace(/\\B(?=(\\d{3})+(?!\\d))/g, integerSeparator);\n}\n\n/**\n * Returns the formatted decimal. This computed returns:\n * - decimal part filled with zeros until complete remaining slots defined with the decimal\n * length in the format.\n * - decimal part truncated. The decimal numbers length, defined with the number of 'd's in the\n * format prop. This must MATCH with the number of decimals provided from the adapter.\n *\n * @param decimal - Decimal part as a string.\n * @param CurrencyConfig - From which the `decimalsNumber`, `decimalsSeparator` and\n * `hideIntegerDecimals` are obtained.\n *\n * @returns Formatted integer.\n *\n * @internal\n */\nfunction formatDecimal(\n decimal: string,\n {\n decimalsNumber,\n decimalSeparator,\n hideIntegerDecimals\n }: Omit<CurrencyConfig, 'integerSeparator'>\n): string {\n return hideIntegerDecimals && !+decimal\n ? ''\n : `${decimalSeparator}${decimal.padEnd(decimalsNumber, '0').substring(0, decimalsNumber)}`;\n}\n\n/**\n * Function that divide fhe format passed as value for get integerSeparator, decimalSeparator\n * and decimalsNumber.\n *\n * @param format - Format or mask to apply to the value.\n *\n * @returns Object with properties of the currency config.\n *\n * @internal\n */\nfunction currencyConfig(format: string): CurrencyConfig {\n const [\n ,\n ,\n integerSeparator = '',\n ,\n decimalSeparator = '',\n decimals = '',\n hideIntegerDecimals = ''\n ] = FORMAT_REGEX.exec(format) ?? [];\n return {\n integerSeparator,\n decimalSeparator,\n decimalsNumber: decimals.length,\n hideIntegerDecimals: !!hideIntegerDecimals\n };\n}\n\n/**\n * Divide the number in two parts by separator '.', one of them is the integer number and other\n * the decimals numbers.\n *\n * @param value - Numeric value to be formatted.\n *\n * @returns Parts of number.\n *\n * @internal\n */\nfunction numberParts(value: number): NumberParts {\n const [integer, decimal = ''] = `${value}`.split('.');\n return {\n integer,\n decimal\n };\n}\n"],"names":[],"mappings":"AAAA;;AAEG;AACH,MAAM,YAAY,GAAG,qCAAqC,CAAC;AA6B3D;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BG;SACa,iBAAiB,CAAC,KAAa,EAAE,MAAM,GAAG,UAAU,EAAA;IAClE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;AAChD,IAAA,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,GAC/E,cAAc,CAAC,MAAM,CAAC,CAAC;IAEzB,MAAM,gBAAgB,GAAG,aAAa,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAClE,IAAA,MAAM,gBAAgB,GAAG,aAAa,CAAC,OAAO,EAAE;QAC9C,cAAc;QACd,mBAAmB;QACnB,gBAAgB;AACjB,KAAA,CAAC,CAAC;AACH,IAAA,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAG,EAAA,gBAAgB,CAAG,EAAA,gBAAgB,CAAE,CAAA,CAAC,CAAC;AAChF,CAAC;AAED;;;;;;;;;;;;AAYG;AACH,SAAS,aAAa,CAAC,OAAe,EAAE,gBAAwB,EAAA;IAC9D,OAAO,OAAO,CAAC,OAAO,CAAC,uBAAuB,EAAE,gBAAgB,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;;;;;;;;AAcG;AACH,SAAS,aAAa,CACpB,OAAe,EACf,EACE,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACsB,EAAA;AAE3C,IAAA,OAAO,mBAAmB,IAAI,CAAC,CAAC,OAAO;AACrC,UAAE,EAAE;UACF,GAAG,gBAAgB,CAAA,EAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,CAAC;AAC/F,CAAC;AAED;;;;;;;;;AASG;AACH,SAAS,cAAc,CAAC,MAAc,EAAA;AACpC,IAAA,MAAM,KAGJ,gBAAgB,GAAG,EAAE,IAErB,gBAAgB,GAAG,EAAE,EACrB,QAAQ,GAAG,EAAE,EACb,mBAAmB,GAAG,EAAE,CACzB,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACpC,OAAO;QACL,gBAAgB;QAChB,gBAAgB;QAChB,cAAc,EAAE,QAAQ,CAAC,MAAM;QAC/B,mBAAmB,EAAE,CAAC,CAAC,mBAAmB;KAC3C,CAAC;AACJ,CAAC;AAED;;;;;;;;;AASG;AACH,SAAS,WAAW,CAAC,KAAa,EAAA;AAChC,IAAA,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,EAAE,CAAC,GAAG,CAAG,EAAA,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtD,OAAO;QACL,OAAO;QACP,OAAO;KACR,CAAC;AACJ;;;;"}
|
package/js/utils/html.js
CHANGED
|
@@ -26,7 +26,27 @@ function isElementEqualOrContained(a, b) {
|
|
|
26
26
|
*/
|
|
27
27
|
function getTargetElement(event) {
|
|
28
28
|
return event.composedPath()[0];
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Retrieves the currently active element from the specified document or shadow root.
|
|
32
|
+
* This function is recursive to handle nested shadow DOMs, ensuring the actual active
|
|
33
|
+
* element is returned even if it resides deep within multiple shadow DOM layers.
|
|
34
|
+
*
|
|
35
|
+
* @param root - The root document or shadow root from which to retrieve the active element.
|
|
36
|
+
* Defaults to the global document if not specified.
|
|
37
|
+
* @returns The active element if one exists, or null if no active element can be found.
|
|
38
|
+
* In the context of shadow DOM, this will return the deepest active element
|
|
39
|
+
* within nested shadow roots.
|
|
40
|
+
*
|
|
41
|
+
* @public
|
|
42
|
+
*/
|
|
43
|
+
function getActiveElement(root = document) {
|
|
44
|
+
let current = root.activeElement;
|
|
45
|
+
while (current?.shadowRoot) {
|
|
46
|
+
current = current.shadowRoot.activeElement;
|
|
47
|
+
}
|
|
48
|
+
return current;
|
|
29
49
|
}
|
|
30
50
|
|
|
31
|
-
export { getTargetElement, isElementEqualOrContained };
|
|
51
|
+
export { getActiveElement, getTargetElement, isElementEqualOrContained };
|
|
32
52
|
//# sourceMappingURL=html.js.map
|
package/js/utils/html.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.js","sources":["../../../src/utils/html.ts"],"sourcesContent":["/**\n * Returns true if the two elements are the same, or if `b` is a child of `a`.\n *\n * @param a - The element to check if it is equal to `b` or if it contains `b`.\n * @param b - The element to check if it is equal to `a` or contained inside it.\n * @returns True if `a` is equal to `b` or if it contains `b`.\n *\n * @public\n */\nexport function isElementEqualOrContained(a: Element, b: Element): boolean {\n return a === b || a.contains(b);\n}\n\n/**\n * Returns the target element for a given event. The target element is obtained from `composedPath`\n * Event method because if the event is triggered inside a Shadow DOM context, `event.target` points\n * to Shadow DOM element, not the element that triggered the event. `composedPath` method also is\n * available in a non-shadow DOM context.\n *\n * @remarks In a shadow DOM context, this function only works if the Shadow DOM uses `open`\n * encapsulation mode.\n *\n * @param event - Event which takes place in the DOM.\n * @returns Target Element of the event.\n *\n * @public\n */\nexport function getTargetElement(event: Event): Element {\n return event.composedPath()[0] as Element;\n}\n"],"names":[],"mappings":"AAAA;;;;;;;;AAQG;AACa,SAAA,yBAAyB,CAAC,CAAU,EAAE,CAAU,EAAA;IAC9D,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;;AAaG;AACG,SAAU,gBAAgB,CAAC,KAAY,EAAA;AAC3C,IAAA,OAAO,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAY,CAAC;AAC5C;;;;"}
|
|
1
|
+
{"version":3,"file":"html.js","sources":["../../../src/utils/html.ts"],"sourcesContent":["/**\n * Returns true if the two elements are the same, or if `b` is a child of `a`.\n *\n * @param a - The element to check if it is equal to `b` or if it contains `b`.\n * @param b - The element to check if it is equal to `a` or contained inside it.\n * @returns True if `a` is equal to `b` or if it contains `b`.\n *\n * @public\n */\nexport function isElementEqualOrContained(a: Element, b: Element): boolean {\n return a === b || a.contains(b);\n}\n\n/**\n * Returns the target element for a given event. The target element is obtained from `composedPath`\n * Event method because if the event is triggered inside a Shadow DOM context, `event.target` points\n * to Shadow DOM element, not the element that triggered the event. `composedPath` method also is\n * available in a non-shadow DOM context.\n *\n * @remarks In a shadow DOM context, this function only works if the Shadow DOM uses `open`\n * encapsulation mode.\n *\n * @param event - Event which takes place in the DOM.\n * @returns Target Element of the event.\n *\n * @public\n */\nexport function getTargetElement(event: Event): Element {\n return event.composedPath()[0] as Element;\n}\n\n/**\n * Retrieves the currently active element from the specified document or shadow root.\n * This function is recursive to handle nested shadow DOMs, ensuring the actual active\n * element is returned even if it resides deep within multiple shadow DOM layers.\n *\n * @param root - The root document or shadow root from which to retrieve the active element.\n * Defaults to the global document if not specified.\n * @returns The active element if one exists, or null if no active element can be found.\n * In the context of shadow DOM, this will return the deepest active element\n * within nested shadow roots.\n *\n * @public\n */\nexport function getActiveElement(root: Document | ShadowRoot = document): Element | null {\n let current = root.activeElement;\n while (current?.shadowRoot) {\n current = current.shadowRoot.activeElement;\n }\n return current;\n}\n"],"names":[],"mappings":"AAAA;;;;;;;;AAQG;AACa,SAAA,yBAAyB,CAAC,CAAU,EAAE,CAAU,EAAA;IAC9D,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;;AAaG;AACG,SAAU,gBAAgB,CAAC,KAAY,EAAA;AAC3C,IAAA,OAAO,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAY,CAAC;AAC5C,CAAC;AAED;;;;;;;;;;;;AAYG;AACa,SAAA,gBAAgB,CAAC,IAAA,GAA8B,QAAQ,EAAA;AACrE,IAAA,IAAI,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;IACjC,OAAO,OAAO,EAAE,UAAU,EAAE;AAC1B,QAAA,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;AAC5C,KAAA;AACD,IAAA,OAAO,OAAO,CAAC;AACjB;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespaced-wires.operators.js","sources":["../../../src/wiring/namespaced-wires.operators.ts"],"sourcesContent":["import { XModuleName } from '../x-modules/x-modules.types';\nimport { NamespacedTimeWireOperator } from './namespaced-wiring.types';\nimport { debounce, throttle } from './wires.operators';\nimport { getStateAndGettersFromModule } from './wiring.utils';\n\n/**\n * Type safe debounce operator which creates a function which can only access the Module of\n * the {@link https://vuex.vuejs.org/ | Vuex} Store passed as parameter.\n *\n * @param moduleName - The {@link XModuleName} to create the operator wire.\n * @returns A function which creates a wire that uses the {@link debounce} wire operator to\n * execute the `wire` after the time has passed without invoking it. This debounce time\n * is given by the execution of the `timeRetrieving` function.\n *\n * @public\n */\nexport function namespacedDebounce<ModuleName extends XModuleName>(\n moduleName: ModuleName\n): NamespacedTimeWireOperator<ModuleName> {\n return createNamespacedTimeWireOperator(moduleName, debounce);\n}\n\n/**\n * Type safe throttle operator which creates a function which can only access the Module of\n * the {@link https://vuex.vuejs.org/ | Vuex} Store passed as parameter.\n *\n * @param moduleName - The {@link XModuleName} to create the operator wire.\n * @returns A function which creates a wire that uses the {@link throttle} wire operator to\n * execute the `wire` once every couple of milliseconds. This throttle time is given by\n * the execution of the `timeRetrieving` function.\n *\n * @public\n */\nexport function namespacedThrottle<ModuleName extends XModuleName>(\n moduleName: ModuleName\n): NamespacedTimeWireOperator<ModuleName> {\n return createNamespacedTimeWireOperator(moduleName, throttle);\n}\n\n/**\n * Creates a function which creates a namespaced wire that uses the {@link debounce} or\n * {@link throttle} time wire operator.\n *\n * @param moduleName - The {@link XModuleName} to create the operator wire.\n * @param timingOperator - The time wire operator {@link debounce} or {@link throttle}.\n * @returns A function which creates a namespaced time wire operator.\n *\n * @internal\n */\nfunction createNamespacedTimeWireOperator<ModuleName extends XModuleName>(\n moduleName: ModuleName,\n timingOperator: typeof throttle | typeof debounce\n): NamespacedTimeWireOperator<ModuleName> {\n return (wire, timeSelector, options) =>\n timingOperator(\n wire,\n ({ state, getters }) =>\n timeSelector(getStateAndGettersFromModule(state, getters, moduleName)),\n options\n );\n}\n"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"namespaced-wires.operators.js","sources":["../../../src/wiring/namespaced-wires.operators.ts"],"sourcesContent":["import { Dictionary } from '@empathyco/x-utils';\nimport { XModuleName } from '../x-modules/x-modules.types';\nimport { NamespacedTimeWireOperator } from './namespaced-wiring.types';\nimport { debounce, throttle } from './wires.operators';\nimport { getStateAndGettersFromModule } from './wiring.utils';\n\n/**\n * Type safe debounce operator which creates a function which can only access the Module of\n * the {@link https://vuex.vuejs.org/ | Vuex} Store passed as parameter.\n *\n * @param moduleName - The {@link XModuleName} to create the operator wire.\n * @returns A function which creates a wire that uses the {@link debounce} wire operator to\n * execute the `wire` after the time has passed without invoking it. This debounce time\n * is given by the execution of the `timeRetrieving` function.\n *\n * @public\n */\nexport function namespacedDebounce<ModuleName extends XModuleName>(\n moduleName: ModuleName\n): NamespacedTimeWireOperator<ModuleName> {\n return createNamespacedTimeWireOperator(moduleName, debounce);\n}\n\n/**\n * Type safe throttle operator which creates a function which can only access the Module of\n * the {@link https://vuex.vuejs.org/ | Vuex} Store passed as parameter.\n *\n * @param moduleName - The {@link XModuleName} to create the operator wire.\n * @returns A function which creates a wire that uses the {@link throttle} wire operator to\n * execute the `wire` once every couple of milliseconds. This throttle time is given by\n * the execution of the `timeRetrieving` function.\n *\n * @public\n */\nexport function namespacedThrottle<ModuleName extends XModuleName>(\n moduleName: ModuleName\n): NamespacedTimeWireOperator<ModuleName> {\n return createNamespacedTimeWireOperator(moduleName, throttle);\n}\n\n/**\n * Creates a function which creates a namespaced wire that uses the {@link debounce} or\n * {@link throttle} time wire operator.\n *\n * @param moduleName - The {@link XModuleName} to create the operator wire.\n * @param timingOperator - The time wire operator {@link debounce} or {@link throttle}.\n * @returns A function which creates a namespaced time wire operator.\n *\n * @internal\n */\nfunction createNamespacedTimeWireOperator<ModuleName extends XModuleName>(\n moduleName: ModuleName,\n timingOperator: typeof throttle | typeof debounce\n): NamespacedTimeWireOperator<ModuleName> {\n return (wire, timeSelector, options) =>\n timingOperator(\n wire,\n ({ state, getters }) =>\n timeSelector(getStateAndGettersFromModule(state, getters as Dictionary, moduleName)),\n options\n );\n}\n"],"names":[],"mappings":";;;AAMA;;;;;;;;;;AAUG;AACG,SAAU,kBAAkB,CAChC,UAAsB,EAAA;AAEtB,IAAA,OAAO,gCAAgC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;;AAUG;AACG,SAAU,kBAAkB,CAChC,UAAsB,EAAA;AAEtB,IAAA,OAAO,gCAAgC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;AASG;AACH,SAAS,gCAAgC,CACvC,UAAsB,EACtB,cAAiD,EAAA;AAEjD,IAAA,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,KACjC,cAAc,CACZ,IAAI,EACJ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KACjB,YAAY,CAAC,4BAA4B,CAAC,KAAK,EAAE,OAAqB,EAAE,UAAU,CAAC,CAAC,EACtF,OAAO,CACR,CAAC;AACN;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wiring.utils.js","sources":["../../../src/wiring/wiring.utils.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"wiring.utils.js","sources":["../../../src/wiring/wiring.utils.ts"],"sourcesContent":["import { Dictionary } from '@empathyco/x-utils';\nimport { RootXStoreState, StoreModuleStateAndGetters } from '../store/store.types';\nimport { getGettersProxy } from '../store/utils/getters-proxy.utils';\nimport { ExtractState, XModuleName } from '../x-modules/x-modules.types';\nimport { Wiring } from './wiring.types';\n\n/**\n * Util function to generate type-safe wiring.\n * If TypeScript ever accepts the PR about generic type inference this function can be removed.\n *\n * @param wiring - The wiring to create.\n * @returns Type-safe wiring.\n *\n * @public\n */\nexport function createWiring<T extends Partial<Wiring>>(wiring: T): T {\n return wiring;\n}\n\n/**\n * Returns an object with the getters and state of a module of store defined by the moduleName\n * parameter.\n *\n * @param state - The Vuex store State.\n * @param getters - The Vuex store Getters.\n * @param moduleName - The {@link XModuleName} of the module.\n * @returns The {@link StoreModuleStateAndGetters} with the Getters and the State of the\n * {@link XStoreModule | Store Module} defined by moduleName.\n *\n * @public\n */\nexport function getStateAndGettersFromModule<ModuleName extends XModuleName>(\n state: RootXStoreState,\n getters: Dictionary,\n moduleName: ModuleName\n): StoreModuleStateAndGetters<ModuleName> {\n return {\n state: state.x[moduleName] as unknown as ExtractState<ModuleName>,\n getters: getGettersProxy(getters, moduleName)\n };\n}\n"],"names":[],"mappings":";;AAMA;;;;;;;;AAQG;AACG,SAAU,YAAY,CAA4B,MAAS,EAAA;AAC/D,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;AAWG;SACa,4BAA4B,CAC1C,KAAsB,EACtB,OAAmB,EACnB,UAAsB,EAAA;IAEtB,OAAO;AACL,QAAA,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAwC;AACjE,QAAA,OAAO,EAAE,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC;KAC9C,CAAC;AACJ;;;;"}
|