@empathyco/x-components 3.0.0-alpha.112 → 3.0.0-alpha.115
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 +39 -0
- package/design-system/full-theme.css +50 -49
- package/docs/API-reference/api/index.md +1 -1
- package/docs/API-reference/api/x-adapter-platform.bannermutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.facetconfig.md +21 -0
- package/docs/API-reference/api/x-adapter-platform.facetconfig.modelname.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.facetconfig.schema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.facetmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.facetsconfig.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.getfacetconfig.md +26 -0
- package/docs/API-reference/api/x-adapter-platform.hierarchicalfiltermutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.identifierresultsendpointadapter.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.identifierresultsrequestmapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.identifierresultsrequestschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.identifierresultsresponsemapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.identifierresultsresponseschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.md +102 -0
- package/docs/API-reference/api/x-adapter-platform.nextqueriesendpointadapter.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.nextqueriesrequestmapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.nextqueriesrequestmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.nextqueriesresponsemapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.nextqueriesresponsemutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.nextquerymutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.numberfiltermutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformadapter.identifierresults.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformadapter.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformadapter.nextqueries.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformadapter.popularsearches.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformadapter.querysuggestions.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformadapter.recommendations.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformadapter.relatedtags.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformadapter.search.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformadapter.tagging.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformbanner.id.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformbanner.image_url.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformbanner.md +24 -0
- package/docs/API-reference/api/x-adapter-platform.platformbanner.tagging.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformbanner.title.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformbanner.url.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformfacet.facet.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformfacet.md +21 -0
- package/docs/API-reference/api/x-adapter-platform.platformfacet.values.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformfilter.count.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformfilter.filter.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformfilter.id.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformfilter.md +23 -0
- package/docs/API-reference/api/x-adapter-platform.platformfilter.value.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformhierarchicalfilter.children.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformhierarchicalfilter.md +21 -0
- package/docs/API-reference/api/x-adapter-platform.platformidentifierresultsrequest.md +15 -0
- package/docs/API-reference/api/x-adapter-platform.platformidentifierresultsresponse.catalog.md +16 -0
- package/docs/API-reference/api/x-adapter-platform.platformidentifierresultsresponse.md +20 -0
- package/docs/API-reference/api/x-adapter-platform.platformnextqueriesrequest.md +15 -0
- package/docs/API-reference/api/x-adapter-platform.platformnextqueriesresponse.data.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformnextqueriesresponse.md +20 -0
- package/docs/API-reference/api/x-adapter-platform.platformnextquery.md +22 -0
- package/docs/API-reference/api/x-adapter-platform.platformnextquery.position.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformnextquery.query.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformnextquery.source.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformpopularsearchesrequest.md +15 -0
- package/docs/API-reference/api/x-adapter-platform.platformpopularsearchesresponse.md +20 -0
- package/docs/API-reference/api/x-adapter-platform.platformpopularsearchesresponse.toptrends.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformpromoted.id.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformpromoted.image_url.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformpromoted.md +24 -0
- package/docs/API-reference/api/x-adapter-platform.platformpromoted.tagging.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformpromoted.title.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformpromoted.url.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformquerysuggestionsrequest.md +15 -0
- package/docs/API-reference/api/x-adapter-platform.platformquerysuggestionsresponse.md +20 -0
- package/docs/API-reference/api/x-adapter-platform.platformquerysuggestionsresponse.toptrends.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformrecommendationsrequest.md +15 -0
- package/docs/API-reference/api/x-adapter-platform.platformrecommendationsresponse.md +20 -0
- package/docs/API-reference/api/x-adapter-platform.platformrecommendationsresponse.topclicked.md +14 -0
- package/docs/API-reference/api/x-adapter-platform.platformredirection.id.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformredirection.md +22 -0
- package/docs/API-reference/api/x-adapter-platform.platformredirection.tagging.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformredirection.url.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformrelatedtag.md +23 -0
- package/docs/API-reference/api/x-adapter-platform.platformrelatedtag.position.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformrelatedtag.query.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformrelatedtag.source.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformrelatedtag.tag.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformrelatedtagsrequest.md +15 -0
- package/docs/API-reference/api/x-adapter-platform.platformrelatedtagsresponse.data.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformrelatedtagsresponse.md +21 -0
- package/docs/API-reference/api/x-adapter-platform.platformrelatedtagsresponse.status.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformresult.id.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformresult.image.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformresult.md +25 -0
- package/docs/API-reference/api/x-adapter-platform.platformresult.name.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformresult.price.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformresult.tagging.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformresult.url.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformsearchrequest.md +15 -0
- package/docs/API-reference/api/x-adapter-platform.platformsearchresponse.banner.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformsearchresponse.catalog.md +19 -0
- package/docs/API-reference/api/x-adapter-platform.platformsearchresponse.direct.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformsearchresponse.md +23 -0
- package/docs/API-reference/api/x-adapter-platform.platformsearchresponse.promoted.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.platformsuggestion.md +20 -0
- package/docs/API-reference/api/x-adapter-platform.platformsuggestion.title_raw.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformtagging.add2cart.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformtagging.checkout.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformtagging.click.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.platformtagging.md +22 -0
- package/docs/API-reference/api/x-adapter-platform.popularsearchesendpointadapter.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.popularsearchesrequestmapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.popularsearchesrequestmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.popularsearchesresponsemapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.popularsearchesresponsemutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.promotedmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.querysuggestionsendpointadapter.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.querysuggestionsrequestmapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.querysuggestionsrequestmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.querysuggestionsresponsemapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.querysuggestionsresponsemutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.recommendationsendpointadapter.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.recommendationsrequestmapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.recommendationsrequestmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.recommendationsresponsemapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.recommendationsresponsemutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.redirectionmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.relatedtagmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.relatedtagsendpointadapter.md +13 -0
- package/docs/API-reference/api/x-adapter-platform.relatedtagsrequestmapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.relatedtagsrequestmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.relatedtagsresponsemapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.relatedtagsresponsemutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.resultschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.searchendpointadapter.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.searchrequestmapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.searchrequestmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.searchresponsefacetsmapper.md +27 -0
- package/docs/API-reference/api/x-adapter-platform.searchresponsemapper.md +21 -0
- package/docs/API-reference/api/x-adapter-platform.searchresponsemutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.simplefiltermutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.suggestionmutableschema.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.taggingendpointadapter.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.taggingrequestmapper.md +11 -0
- package/docs/API-reference/api/x-adapter-platform.taggingrequestmutableschema.md +11 -0
- package/docs/API-reference/api/x-components.fetchandsaveidentifierresults.md +1 -1
- package/docs/API-reference/api/x-components.fetchandsaveidentifierresultswire.md +1 -1
- package/docs/API-reference/api/x-components.fetchandsavenextquerieswire.md +1 -1
- package/docs/API-reference/api/x-components.fetchandsavepopularsearches.md +1 -1
- package/docs/API-reference/api/x-components.fetchandsavequerysuggestions.md +1 -1
- package/docs/API-reference/api/x-components.fetchandsaverecommendations.md +1 -1
- package/docs/API-reference/api/x-components.fetchandsaverelatedtagswire.md +1 -1
- package/docs/API-reference/api/x-components.fetchandsavesuggestionswire.md +1 -1
- package/docs/API-reference/api/x-components.identifierresultsactions.fetchandsaveidentifierresults.md +2 -2
- package/docs/API-reference/api/x-components.identifierresultsactions.fetchidentifierresults.md +2 -2
- package/docs/API-reference/api/x-components.identifierresultsgetters.identifierresultsrequest.md +1 -1
- package/docs/API-reference/api/x-components.identifierresultsgetters.md +1 -1
- package/docs/API-reference/api/x-components.identifierresultsxevents.identifierresultsrequestchanged.md +1 -1
- package/docs/API-reference/api/x-components.identifierresultsxevents.md +1 -1
- package/docs/API-reference/api/x-components.popularsearchesactions.fetchandsavesuggestions.md +2 -2
- package/docs/API-reference/api/x-components.popularsearchesactions.fetchsuggestions.md +2 -2
- package/docs/API-reference/api/x-components.popularsearchesgetters.md +1 -1
- package/docs/API-reference/api/x-components.popularsearchesgetters.request.md +1 -1
- package/docs/API-reference/api/x-components.popularsearchesxevents.md +1 -1
- package/docs/API-reference/api/x-components.popularsearchesxevents.popularsearchesrequestchanged.md +2 -2
- package/docs/API-reference/api/x-components.privatexmoduleoptions.md +1 -1
- package/docs/API-reference/api/x-components.privatexmoduleoptions.storeemitters.md +1 -1
- package/docs/API-reference/api/x-components.querysuggestionsactions.fetchandsavesuggestions.md +2 -2
- package/docs/API-reference/api/x-components.querysuggestionsactions.fetchsuggestions.md +2 -2
- package/docs/API-reference/api/x-components.querysuggestionsgetters.md +1 -1
- package/docs/API-reference/api/x-components.querysuggestionsgetters.request.md +1 -1
- package/docs/API-reference/api/x-components.querysuggestionsxevents.md +1 -1
- package/docs/API-reference/api/x-components.querysuggestionsxevents.querysuggestionsrequestchanged.md +1 -1
- package/docs/API-reference/api/x-components.recommendationsactions.fetchandsaverecommendations.md +2 -2
- package/docs/API-reference/api/x-components.recommendationsactions.fetchrecommendations.md +2 -2
- package/docs/API-reference/api/x-components.recommendationsgetters.md +1 -1
- package/docs/API-reference/api/x-components.recommendationsgetters.request.md +1 -1
- package/docs/API-reference/api/x-components.recommendationsxevents.md +1 -1
- package/docs/API-reference/api/x-components.recommendationsxevents.recommendationsrequestchanged.md +1 -1
- package/docs/API-reference/api/x-components.xeventstypes.md +0 -1
- package/docs/API-reference/api/x-components.xplugin.adapter.md +2 -2
- package/docs/API-reference/api/x-components.xplugin.md +3 -5
- package/docs/API-reference/api/x-components.xpluginoptions.adapter.md +1 -1
- package/docs/API-reference/api/x-components.xpluginoptions.md +1 -1
- package/docs/API-reference/components/extra-params/x-components.snippet-config-extra-params.md +4 -4
- package/docs/build-search-ui/web-archetype-development-guide.md +2 -5
- package/docs/build-search-ui/web-x-components-development-guide.md +22 -52
- package/js/plugins/x-emitters.js.map +1 -1
- package/js/plugins/x-plugin.js +7 -21
- package/js/plugins/x-plugin.js.map +1 -1
- package/js/x-installer/x-installer/x-installer.js +1 -42
- package/js/x-installer/x-installer/x-installer.js.map +1 -1
- 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.vue_rollup-plugin-vue_script.vue.js +0 -2
- package/js/x-modules/extra-params/components/snippet-config-extra-params.vue_rollup-plugin-vue_script.vue.js.map +1 -1
- package/js/x-modules/identifier-results/store/actions/fetch-and-save-identifier-results.action.js.map +1 -1
- package/js/x-modules/identifier-results/store/actions/fetch-identifier-results.action.js +1 -1
- package/js/x-modules/identifier-results/store/actions/fetch-identifier-results.action.js.map +1 -1
- package/js/x-modules/identifier-results/store/getters/identifier-results-request.getter.js +2 -2
- package/js/x-modules/identifier-results/store/getters/identifier-results-request.getter.js.map +1 -1
- package/js/x-modules/next-queries/store/actions/fetch-and-save-next-queries.action.js.map +1 -1
- package/js/x-modules/next-queries/store/actions/fetch-next-queries.action.js +1 -1
- package/js/x-modules/next-queries/store/actions/fetch-next-queries.action.js.map +1 -1
- package/js/x-modules/next-queries/store/getters/request.getter.js +1 -1
- package/js/x-modules/next-queries/store/getters/request.getter.js.map +1 -1
- package/js/x-modules/popular-searches/store/actions/fetch-and-save-suggestions.action.js.map +1 -1
- package/js/x-modules/popular-searches/store/actions/fetch-suggestions.action.js +1 -3
- package/js/x-modules/popular-searches/store/actions/fetch-suggestions.action.js.map +1 -1
- package/js/x-modules/popular-searches/store/getters/request.getter.js +1 -1
- package/js/x-modules/popular-searches/store/getters/request.getter.js.map +1 -1
- package/js/x-modules/query-suggestions/store/actions/fetch-and-save-suggestions.action.js.map +1 -1
- package/js/x-modules/query-suggestions/store/actions/fetch-suggestions.action.js +1 -1
- package/js/x-modules/query-suggestions/store/actions/fetch-suggestions.action.js.map +1 -1
- package/js/x-modules/query-suggestions/store/getters/request.getter.js +1 -1
- package/js/x-modules/query-suggestions/store/getters/request.getter.js.map +1 -1
- package/js/x-modules/recommendations/store/actions/fetch-and-save-recommendations.action.js.map +1 -1
- package/js/x-modules/recommendations/store/actions/fetch-recommendations.action.js +1 -3
- package/js/x-modules/recommendations/store/actions/fetch-recommendations.action.js.map +1 -1
- package/js/x-modules/recommendations/store/getters/request.getter.js +1 -1
- package/js/x-modules/recommendations/store/getters/request.getter.js.map +1 -1
- package/js/x-modules/related-tags/store/actions/fetch-and-save-related-tags.action.js.map +1 -1
- package/js/x-modules/related-tags/store/actions/fetch-related-tags.action.js +1 -3
- package/js/x-modules/related-tags/store/actions/fetch-related-tags.action.js.map +1 -1
- package/js/x-modules/related-tags/store/getters/request.getter.js +1 -1
- package/js/x-modules/related-tags/store/getters/request.getter.js.map +1 -1
- package/js/x-modules/search/store/actions/fetch-and-save-search-response.action.js.map +1 -1
- package/js/x-modules/search/store/actions/reset-state.action.js +8 -7
- package/js/x-modules/search/store/actions/reset-state.action.js.map +1 -1
- package/js/x-modules/search/store/getters/request.getter.js +1 -1
- package/js/x-modules/search/store/getters/request.getter.js.map +1 -1
- package/js/x-modules/tagging/store/actions/track.action.js +1 -1
- package/js/x-modules/tagging/store/actions/track.action.js.map +1 -1
- package/package.json +5 -5
- package/report/tsdoc-metadata.json +1 -1
- package/report/x-adapter-platform.api.json +5578 -0
- package/report/x-components.api.json +369 -705
- package/report/x-components.api.md +47 -50
- package/types/adapter/e2e-adapter.d.ts +29 -0
- package/types/adapter/e2e-adapter.d.ts.map +1 -0
- package/types/plugins/x-emitters.d.ts.map +1 -1
- package/types/plugins/x-plugin.d.ts +12 -21
- package/types/plugins/x-plugin.d.ts.map +1 -1
- package/types/plugins/x-plugin.types.d.ts +18 -8
- package/types/plugins/x-plugin.types.d.ts.map +1 -1
- package/types/views/base-config.d.ts.map +1 -1
- package/types/wiring/events.types.d.ts +0 -5
- package/types/wiring/events.types.d.ts.map +1 -1
- package/types/x-installer/x-installer/x-installer.d.ts +0 -20
- package/types/x-installer/x-installer/x-installer.d.ts.map +1 -1
- package/types/x-modules/extra-params/components/snippet-config-extra-params.vue.d.ts.map +1 -1
- package/types/x-modules/identifier-results/events.types.d.ts +2 -3
- package/types/x-modules/identifier-results/events.types.d.ts.map +1 -1
- package/types/x-modules/identifier-results/store/actions/fetch-and-save-identifier-results.action.d.ts +2 -2
- package/types/x-modules/identifier-results/store/actions/fetch-and-save-identifier-results.action.d.ts.map +1 -1
- package/types/x-modules/identifier-results/store/emitters.d.ts +1 -1
- package/types/x-modules/identifier-results/store/types.d.ts +4 -5
- package/types/x-modules/identifier-results/store/types.d.ts.map +1 -1
- package/types/x-modules/identifier-results/wiring.d.ts +2 -2
- package/types/x-modules/identifier-results/wiring.d.ts.map +1 -1
- package/types/x-modules/next-queries/events.types.d.ts +1 -2
- package/types/x-modules/next-queries/events.types.d.ts.map +1 -1
- package/types/x-modules/next-queries/store/actions/fetch-and-save-next-queries.action.d.ts +1 -1
- package/types/x-modules/next-queries/store/actions/fetch-and-save-next-queries.action.d.ts.map +1 -1
- package/types/x-modules/next-queries/store/emitters.d.ts +1 -1
- package/types/x-modules/next-queries/store/types.d.ts +1 -2
- package/types/x-modules/next-queries/store/types.d.ts.map +1 -1
- package/types/x-modules/next-queries/wiring.d.ts +2 -2
- package/types/x-modules/next-queries/wiring.d.ts.map +1 -1
- package/types/x-modules/popular-searches/events.types.d.ts +3 -4
- package/types/x-modules/popular-searches/events.types.d.ts.map +1 -1
- package/types/x-modules/popular-searches/store/actions/fetch-and-save-suggestions.action.d.ts +2 -2
- package/types/x-modules/popular-searches/store/actions/fetch-and-save-suggestions.action.d.ts.map +1 -1
- package/types/x-modules/popular-searches/store/actions/fetch-suggestions.action.d.ts.map +1 -1
- package/types/x-modules/popular-searches/store/emitters.d.ts +1 -1
- package/types/x-modules/popular-searches/store/types.d.ts +4 -5
- package/types/x-modules/popular-searches/store/types.d.ts.map +1 -1
- package/types/x-modules/popular-searches/wiring.d.ts +1 -1
- package/types/x-modules/query-suggestions/events.types.d.ts +2 -3
- package/types/x-modules/query-suggestions/events.types.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/store/actions/fetch-and-save-suggestions.action.d.ts +2 -2
- package/types/x-modules/query-suggestions/store/actions/fetch-and-save-suggestions.action.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/store/emitters.d.ts +1 -1
- package/types/x-modules/query-suggestions/store/types.d.ts +4 -5
- package/types/x-modules/query-suggestions/store/types.d.ts.map +1 -1
- package/types/x-modules/query-suggestions/wiring.d.ts +2 -2
- package/types/x-modules/query-suggestions/wiring.d.ts.map +1 -1
- package/types/x-modules/recommendations/events.types.d.ts +2 -3
- package/types/x-modules/recommendations/events.types.d.ts.map +1 -1
- package/types/x-modules/recommendations/store/actions/fetch-and-save-recommendations.action.d.ts +2 -2
- package/types/x-modules/recommendations/store/actions/fetch-and-save-recommendations.action.d.ts.map +1 -1
- package/types/x-modules/recommendations/store/actions/fetch-recommendations.action.d.ts.map +1 -1
- package/types/x-modules/recommendations/store/emitters.d.ts +1 -1
- package/types/x-modules/recommendations/store/types.d.ts +4 -5
- package/types/x-modules/recommendations/store/types.d.ts.map +1 -1
- package/types/x-modules/recommendations/wiring.d.ts +1 -1
- package/types/x-modules/related-tags/events.types.d.ts +1 -2
- package/types/x-modules/related-tags/events.types.d.ts.map +1 -1
- package/types/x-modules/related-tags/store/actions/fetch-and-save-related-tags.action.d.ts +1 -1
- package/types/x-modules/related-tags/store/actions/fetch-and-save-related-tags.action.d.ts.map +1 -1
- package/types/x-modules/related-tags/store/actions/fetch-related-tags.action.d.ts.map +1 -1
- package/types/x-modules/related-tags/store/emitters.d.ts +1 -1
- package/types/x-modules/related-tags/store/types.d.ts +1 -2
- package/types/x-modules/related-tags/store/types.d.ts.map +1 -1
- package/types/x-modules/related-tags/wiring.d.ts +2 -2
- package/types/x-modules/related-tags/wiring.d.ts.map +1 -1
- package/types/x-modules/search/store/actions/reset-state.action.d.ts +1 -0
- package/types/x-modules/search/store/actions/reset-state.action.d.ts.map +1 -1
- package/types/x-modules/search/store/types.d.ts +1 -2
- package/types/x-modules/search/store/types.d.ts.map +1 -1
- package/types/x-modules/search/types.d.ts +1 -1
- package/types/x-modules/search/types.d.ts.map +1 -1
- package/docs/API-reference/api/x-adapter.ancestorbinding.default.md +0 -11
- package/docs/API-reference/api/x-adapter.ancestorbinding.md +0 -21
- package/docs/API-reference/api/x-adapter.ancestorbinding.whenanyancestoris.md +0 -11
- package/docs/API-reference/api/x-adapter.ancestorconstantbinding.md +0 -20
- package/docs/API-reference/api/x-adapter.ancestorconstantbinding.toconstantwhenanyancestoris.md +0 -11
- package/docs/API-reference/api/x-adapter.beacontrackingrequestor._constructor_.md +0 -13
- package/docs/API-reference/api/x-adapter.beacontrackingrequestor.md +0 -27
- package/docs/API-reference/api/x-adapter.beacontrackingrequestor.request.md +0 -22
- package/docs/API-reference/api/x-adapter.beforerequest.md +0 -15
- package/docs/API-reference/api/x-adapter.beforerequestcontext.feature.md +0 -11
- package/docs/API-reference/api/x-adapter.beforerequestcontext.md +0 -24
- package/docs/API-reference/api/x-adapter.beforerequestcontext.rawrequest.md +0 -11
- package/docs/API-reference/api/x-adapter.beforerequestcontext.request.md +0 -11
- package/docs/API-reference/api/x-adapter.beforerequestcontext.requestoptions.md +0 -11
- package/docs/API-reference/api/x-adapter.beforerequestcontext.url.md +0 -11
- package/docs/API-reference/api/x-adapter.beforeresponsetransform.md +0 -15
- package/docs/API-reference/api/x-adapter.beforeresponsetransformcontext.md +0 -21
- package/docs/API-reference/api/x-adapter.beforeresponsetransformcontext.rawresponse.md +0 -11
- package/docs/API-reference/api/x-adapter.binding.md +0 -15
- package/docs/API-reference/api/x-adapter.bindingdictionary.md +0 -15
- package/docs/API-reference/api/x-adapter.bindings.md +0 -13
- package/docs/API-reference/api/x-adapter.cacheservice.clear.md +0 -15
- package/docs/API-reference/api/x-adapter.cacheservice.getitem.md +0 -22
- package/docs/API-reference/api/x-adapter.cacheservice.md +0 -23
- package/docs/API-reference/api/x-adapter.cacheservice.removeitem.md +0 -22
- package/docs/API-reference/api/x-adapter.cacheservice.setitem.md +0 -24
- package/docs/API-reference/api/x-adapter.classbinding.md +0 -15
- package/docs/API-reference/api/x-adapter.clicksrecommendationsrequest.md +0 -22
- package/docs/API-reference/api/x-adapter.clicksrecommendationsrequest.productids.md +0 -11
- package/docs/API-reference/api/x-adapter.clicksrecommendationsrequest.section.md +0 -11
- package/docs/API-reference/api/x-adapter.clicksrecommendationsresponse.md +0 -22
- package/docs/API-reference/api/x-adapter.clicksrecommendationsresponse.results.md +0 -11
- package/docs/API-reference/api/x-adapter.clicksrecommendationsresponse.totalresults.md +0 -11
- package/docs/API-reference/api/x-adapter.configchangedlistener.md +0 -13
- package/docs/API-reference/api/x-adapter.constantbinding.md +0 -15
- package/docs/API-reference/api/x-adapter.containerconfigparser._constructor_.md +0 -21
- package/docs/API-reference/api/x-adapter.containerconfigparser.md +0 -26
- package/docs/API-reference/api/x-adapter.containerconfigparser.parse.md +0 -15
- package/docs/API-reference/api/x-adapter.contextualbinding.md +0 -15
- package/docs/API-reference/api/x-adapter.deeppartial.md +0 -17
- package/docs/API-reference/api/x-adapter.default_cache_config.md +0 -18
- package/docs/API-reference/api/x-adapter.default_empathy_adapter_config.md +0 -13
- package/docs/API-reference/api/x-adapter.dependencies.md +0 -70
- package/docs/API-reference/api/x-adapter.dictionary.md +0 -13
- package/docs/API-reference/api/x-adapter.dynamicbinding.md +0 -20
- package/docs/API-reference/api/x-adapter.dynamicbinding.todynamic.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapter._constructor_.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapter.addconfigchangedlistener.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapter.cache.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapter.config.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapter.configchangedlisteners.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapter.getclicksrecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.getnextqueries.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.getqueriesrecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.getrelatedtags.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.getsectionrecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.getsuggestions.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.gettoprecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.getuserrecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.invalidatecache.md +0 -15
- package/docs/API-reference/api/x-adapter.empathyadapter.md +0 -51
- package/docs/API-reference/api/x-adapter.empathyadapter.notifyconfigchangedlisteners.md +0 -15
- package/docs/API-reference/api/x-adapter.empathyadapter.removeconfigchangedlistener.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapter.requestors.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapter.search.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.searchbyid.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapter.setconfig.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapter.track.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder._constructor_.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.adapterclass.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.addclassmapper.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.addclassrequestmapper.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.addhook.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.addmapper.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.addrequestmapper.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.build.md +0 -15
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.completepartialfacetsconfig.md +0 -15
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.config.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.configurator.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.configurecontainer.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.container.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.createmapperclass.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.createrequestmapperclass.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.defaultbindingsconfig.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.enablecache.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.initcontainerbindings.md +0 -15
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.md +0 -65
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.onbeforerequest.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.onbeforeresponsetransformed.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.onresponsetransformed.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.replaceclassmapper.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.replaceclassrequestmapper.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.replacemapper.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.replacerequestmapper.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setenvironment.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setfacetconfig.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setfeatureconfig.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setinstance.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setlang.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setqueryconfig.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setrequestparams.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setresulttrackingconfig.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setscope.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.setuserinfo.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterbuilder.withconfiguration.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyadapterconfig.env.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapterconfig.features.md +0 -13
- package/docs/API-reference/api/x-adapter.empathyadapterconfig.instance.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyadapterconfig.mappings.md +0 -17
- package/docs/API-reference/api/x-adapter.empathyadapterconfig.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyadapterconfig.requestparams.md +0 -15
- package/docs/API-reference/api/x-adapter.empathyadapterconfigchangedlistener.md +0 -15
- package/docs/API-reference/api/x-adapter.empathybanner.id.md +0 -11
- package/docs/API-reference/api/x-adapter.empathybanner.imagename.md +0 -11
- package/docs/API-reference/api/x-adapter.empathybanner.md +0 -24
- package/docs/API-reference/api/x-adapter.empathybanner.title.md +0 -11
- package/docs/API-reference/api/x-adapter.empathybanner.trackable_url.md +0 -11
- package/docs/API-reference/api/x-adapter.empathybanner.url.md +0 -11
- package/docs/API-reference/api/x-adapter.empathybannermapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathybannermapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathybannermapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathybooleanfiltermapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathybooleanfiltermapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathycacheservice._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathycacheservice.clear.md +0 -15
- package/docs/API-reference/api/x-adapter.empathycacheservice.getitem.md +0 -22
- package/docs/API-reference/api/x-adapter.empathycacheservice.hash.md +0 -22
- package/docs/API-reference/api/x-adapter.empathycacheservice.md +0 -39
- package/docs/API-reference/api/x-adapter.empathycacheservice.minutestomilliseconds.md +0 -22
- package/docs/API-reference/api/x-adapter.empathycacheservice.removeitem.md +0 -22
- package/docs/API-reference/api/x-adapter.empathycacheservice.setitem.md +0 -24
- package/docs/API-reference/api/x-adapter.empathycacheservice.storageservice.md +0 -11
- package/docs/API-reference/api/x-adapter.empathycacheservice.transformkey.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyclicksrecommendationsrequest.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyclicksrecommendationsrequest.productid.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyclicksrecommendationsrequestmapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyclicksrecommendationsrequestmapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathydirect.id.md +0 -11
- package/docs/API-reference/api/x-adapter.empathydirect.md +0 -22
- package/docs/API-reference/api/x-adapter.empathydirect.trackable_url.md +0 -11
- package/docs/API-reference/api/x-adapter.empathydirect.url.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyendpointsservice._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyendpointsservice.buildurl.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyendpointsservice.md +0 -27
- package/docs/API-reference/api/x-adapter.empathyfacet.facet.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyfacet.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyfacet.values.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyfacetfiltermapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyfacetfiltermapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyfacetmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyfacetmapper.facetsconfig.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyfacetmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyfacetmapper.md +0 -33
- package/docs/API-reference/api/x-adapter.empathyfilter.count.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyfilter.filter.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyfilter.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyfilter.selected.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyfilter.value.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyfilter.values.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyhierarchicalfacetmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyhierarchicalfacetmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyhierarchicalfacetmapper.mapdeepfilter.md +0 -25
- package/docs/API-reference/api/x-adapter.empathyhierarchicalfacetmapper.mapfilter.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyhierarchicalfacetmapper.mapfilterstree.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyhierarchicalfacetmapper.md +0 -35
- package/docs/API-reference/api/x-adapter.empathyhierarchicalfiltermapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyhierarchicalfiltermapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathynextqueriesrequest.lang.md +0 -11
- package/docs/API-reference/api/x-adapter.empathynextqueriesrequest.md +0 -21
- package/docs/API-reference/api/x-adapter.empathynextqueriesrequest.q.md +0 -11
- package/docs/API-reference/api/x-adapter.empathynextquery.md +0 -21
- package/docs/API-reference/api/x-adapter.empathynextquery.query.md +0 -11
- package/docs/API-reference/api/x-adapter.empathynextquery.source.md +0 -11
- package/docs/API-reference/api/x-adapter.empathynextquerymapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathynextquerymapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathynumberrangefacetmapper._constructor_.md +0 -21
- package/docs/API-reference/api/x-adapter.empathynumberrangefacetmapper.facetsconfig.md +0 -11
- package/docs/API-reference/api/x-adapter.empathynumberrangefacetmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathynumberrangefacetmapper.mapfilter.md +0 -11
- package/docs/API-reference/api/x-adapter.empathynumberrangefacetmapper.mapfilters.md +0 -25
- package/docs/API-reference/api/x-adapter.empathynumberrangefacetmapper.md +0 -35
- package/docs/API-reference/api/x-adapter.empathynumberrangefiltermapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathynumberrangefiltermapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathypartialresult.docs.md +0 -11
- package/docs/API-reference/api/x-adapter.empathypartialresult.md +0 -22
- package/docs/API-reference/api/x-adapter.empathypartialresult.numfound.md +0 -11
- package/docs/API-reference/api/x-adapter.empathypartialresult.suggestion.md +0 -11
- package/docs/API-reference/api/x-adapter.empathypartialresultmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathypartialresultmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathypartialresultmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathypromoted.id.md +0 -11
- package/docs/API-reference/api/x-adapter.empathypromoted.imagename.md +0 -11
- package/docs/API-reference/api/x-adapter.empathypromoted.md +0 -24
- package/docs/API-reference/api/x-adapter.empathypromoted.title.md +0 -11
- package/docs/API-reference/api/x-adapter.empathypromoted.trackable_url.md +0 -11
- package/docs/API-reference/api/x-adapter.empathypromoted.url.md +0 -11
- package/docs/API-reference/api/x-adapter.empathypromotedmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathypromotedmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathypromotedmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathyqueriesrecommendationsrequest.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyqueriesrecommendationsrequest.query.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyqueriesrecommendationsrequestmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyqueriesrecommendationsrequestmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyqueriesrecommendationsrequestmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathyqueryablerequestmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyqueryablerequestmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyqueryablerequestmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathyredirectionmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyredirectionmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyredirectionmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathyrelatedtag.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyrelatedtag.query.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyrelatedtag.source.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyrelatedtag.tag.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyrelatedtagmapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyrelatedtagmapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyrelatedtagsrequest.lang.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyrelatedtagsrequest.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyrelatedtagsrequest.q.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyrequestfiltersmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyrequestfiltersmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyrequestfiltersmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathyrequestfilterssolrsyntaxmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyrequestfilterssolrsyntaxmapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyrequestfilterssolrsyntaxmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathyrequestparamsmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyrequestparamsmapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyrequestparamsmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathyrequestquerymapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathyrequestquerymapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyrequestquerymapper.md +0 -28
- package/docs/API-reference/api/x-adapter.empathyrequestquerymapper.normalizequery.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyrequestsortmapper.map.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyrequestsortmapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyresult.eb_sku.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyresult.ebtagging.md +0 -16
- package/docs/API-reference/api/x-adapter.empathyresult.id.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyresult.image.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyresult.iswishlisted.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyresult.md +0 -29
- package/docs/API-reference/api/x-adapter.empathyresult.name.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyresult.originalprice.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyresult.price.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyresult.rating.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyresult.url.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyresultmapper._constructor_.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyresultmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyresultmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathyresultquerytaggingmapper._constructor_.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyresultquerytaggingmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathyresultquerytaggingmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathysearchbyidrequest.catalogue.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchbyidrequest.lang.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchbyidrequest.md +0 -25
- package/docs/API-reference/api/x-adapter.empathysearchbyidrequest.q.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchbyidrequest.rows.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchbyidrequest.store.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchbyidrequest.warehouse.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.catalogue.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.filter.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.lang.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.md +0 -31
- package/docs/API-reference/api/x-adapter.empathysearchrequest.origin.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.q.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.rows.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.scope.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.sort.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.sortdirection.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.start.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.store.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequest.warehouse.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysearchrequestmapper._constructor_.md +0 -22
- package/docs/API-reference/api/x-adapter.empathysearchrequestmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathysearchrequestmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathysectionrecommendationsrequest.md +0 -21
- package/docs/API-reference/api/x-adapter.empathysectionrecommendationsrequest.section.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysectionrecommendationsrequestmapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathysectionrecommendationsrequestmapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathysimplefacetmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathysimplefacetmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathysimplefacetmapper.mapfilter.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysimplefacetmapper.mapfilters.md +0 -24
- package/docs/API-reference/api/x-adapter.empathysimplefacetmapper.md +0 -34
- package/docs/API-reference/api/x-adapter.empathysimplefiltermapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathysimplefiltermapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathysimplerequestmapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathysimplerequestmapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathysimplevaluemapper.map.md +0 -22
- package/docs/API-reference/api/x-adapter.empathysimplevaluemapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathysuggestion.facets.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysuggestion.md +0 -22
- package/docs/API-reference/api/x-adapter.empathysuggestion.title.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysuggestion.title_raw.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysuggestionfacetsmapper._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.empathysuggestionfacetsmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathysuggestionfacetsmapper.md +0 -27
- package/docs/API-reference/api/x-adapter.empathysuggestionmapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.empathysuggestionmapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathysuggestionsrequest.catalogue.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysuggestionsrequest.lang.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysuggestionsrequest.md +0 -25
- package/docs/API-reference/api/x-adapter.empathysuggestionsrequest.q.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysuggestionsrequest.rows.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysuggestionsrequest.store.md +0 -11
- package/docs/API-reference/api/x-adapter.empathysuggestionsrequest.warehouse.md +0 -11
- package/docs/API-reference/api/x-adapter.empathytaggingmapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathytaggingmapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathytoprecommendationsrequest.catalogue.md +0 -11
- package/docs/API-reference/api/x-adapter.empathytoprecommendationsrequest.lang.md +0 -11
- package/docs/API-reference/api/x-adapter.empathytoprecommendationsrequest.md +0 -27
- package/docs/API-reference/api/x-adapter.empathytoprecommendationsrequest.origin.md +0 -11
- package/docs/API-reference/api/x-adapter.empathytoprecommendationsrequest.q.md +0 -11
- package/docs/API-reference/api/x-adapter.empathytoprecommendationsrequest.rows.md +0 -11
- package/docs/API-reference/api/x-adapter.empathytoprecommendationsrequest.scope.md +0 -11
- package/docs/API-reference/api/x-adapter.empathytoprecommendationsrequest.store.md +0 -11
- package/docs/API-reference/api/x-adapter.empathytoprecommendationsrequest.warehouse.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyuserinfomapper.map.md +0 -23
- package/docs/API-reference/api/x-adapter.empathyuserinfomapper.md +0 -21
- package/docs/API-reference/api/x-adapter.empathyuserinforequest.md +0 -22
- package/docs/API-reference/api/x-adapter.empathyuserinforequest.session.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyuserinforequest.user.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyuserinforequest.user_type.md +0 -11
- package/docs/API-reference/api/x-adapter.empathyuserrecommendationsrequest.md +0 -15
- package/docs/API-reference/api/x-adapter.endpointsservice.buildurl.md +0 -22
- package/docs/API-reference/api/x-adapter.endpointsservice.md +0 -20
- package/docs/API-reference/api/x-adapter.entitynames.md +0 -15
- package/docs/API-reference/api/x-adapter.extraparamsrequest.md +0 -13
- package/docs/API-reference/api/x-adapter.facetconfig.isdynamic.md +0 -11
- package/docs/API-reference/api/x-adapter.facetconfig.md +0 -22
- package/docs/API-reference/api/x-adapter.facetconfig.modelname.md +0 -11
- package/docs/API-reference/api/x-adapter.facetconfig.template.md +0 -11
- package/docs/API-reference/api/x-adapter.facetsconfig.default.md +0 -11
- package/docs/API-reference/api/x-adapter.facetsconfig.md +0 -21
- package/docs/API-reference/api/x-adapter.facetsconfig.named.md +0 -11
- package/docs/API-reference/api/x-adapter.featureconfig.cachettlinminutes.md +0 -11
- package/docs/API-reference/api/x-adapter.featureconfig.endpoint.md +0 -11
- package/docs/API-reference/api/x-adapter.featureconfig.md +0 -22
- package/docs/API-reference/api/x-adapter.featureconfig.responsepaths.md +0 -11
- package/docs/API-reference/api/x-adapter.featurenames.md +0 -13
- package/docs/API-reference/api/x-adapter.featurerequestor._constructor_.md +0 -28
- package/docs/API-reference/api/x-adapter.featurerequestor.beforerequest.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.beforeresponsetransformed.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.config.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.endpointsservice.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.feature.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.featureconfig.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.httpclient.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.maprequest.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.md +0 -45
- package/docs/API-reference/api/x-adapter.featurerequestor.request.md +0 -23
- package/docs/API-reference/api/x-adapter.featurerequestor.responsemappers.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.responsetransformed.md +0 -11
- package/docs/API-reference/api/x-adapter.featurerequestor.runhooks.md +0 -23
- package/docs/API-reference/api/x-adapter.featurerequestor.transformresponse.md +0 -23
- package/docs/API-reference/api/x-adapter.featurerequestor.transformresponseselection.md +0 -24
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.clicksrecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.md +0 -30
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.nextqueries.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.queriesrecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.relatedtags.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.search.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.searchbyid.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.sectionrecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.suggestions.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.toprecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.track.md +0 -11
- package/docs/API-reference/api/x-adapter.featuresresponsetypes.userrecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.fetchhttpclient._constructor_.md +0 -20
- package/docs/API-reference/api/x-adapter.fetchhttpclient.buildurl.md +0 -23
- package/docs/API-reference/api/x-adapter.fetchhttpclient.cache.md +0 -11
- package/docs/API-reference/api/x-adapter.fetchhttpclient.cancelpreviousrequest.md +0 -22
- package/docs/API-reference/api/x-adapter.fetchhttpclient.createabortcontroller.md +0 -22
- package/docs/API-reference/api/x-adapter.fetchhttpclient.get.md +0 -24
- package/docs/API-reference/api/x-adapter.fetchhttpclient.getrequestoptions.md +0 -23
- package/docs/API-reference/api/x-adapter.fetchhttpclient.md +0 -40
- package/docs/API-reference/api/x-adapter.fetchhttpclient.parseresponse.md +0 -22
- package/docs/API-reference/api/x-adapter.fetchhttpclient.requestsabortcontrollers.md +0 -11
- package/docs/API-reference/api/x-adapter.fetchhttpclient.storeincache.md +0 -23
- package/docs/API-reference/api/x-adapter.filterablerequest.filters.md +0 -11
- package/docs/API-reference/api/x-adapter.filterablerequest.md +0 -20
- package/docs/API-reference/api/x-adapter.filtervaluemapperparams.config.md +0 -11
- package/docs/API-reference/api/x-adapter.filtervaluemapperparams.filter.md +0 -11
- package/docs/API-reference/api/x-adapter.filtervaluemapperparams.md +0 -25
- package/docs/API-reference/api/x-adapter.httpclient.get.md +0 -24
- package/docs/API-reference/api/x-adapter.httpclient.md +0 -20
- package/docs/API-reference/api/x-adapter.mapfn.md +0 -15
- package/docs/API-reference/api/x-adapter.mapper.map.md +0 -24
- package/docs/API-reference/api/x-adapter.mapper.md +0 -20
- package/docs/API-reference/api/x-adapter.maprequest.md +0 -15
- package/docs/API-reference/api/x-adapter.mapresponse.md +0 -15
- package/docs/API-reference/api/x-adapter.md +0 -178
- package/docs/API-reference/api/x-adapter.newable.md +0 -13
- package/docs/API-reference/api/x-adapter.nextqueriesrequest.md +0 -15
- package/docs/API-reference/api/x-adapter.nextqueriesresponse.md +0 -20
- package/docs/API-reference/api/x-adapter.nextqueriesresponse.nextqueries.md +0 -11
- package/docs/API-reference/api/x-adapter.pageablerequest.md +0 -21
- package/docs/API-reference/api/x-adapter.pageablerequest.rows.md +0 -11
- package/docs/API-reference/api/x-adapter.pageablerequest.start.md +0 -11
- package/docs/API-reference/api/x-adapter.parentbinding.default.md +0 -11
- package/docs/API-reference/api/x-adapter.parentbinding.md +0 -21
- package/docs/API-reference/api/x-adapter.parentbinding.wheninjectedinto.md +0 -11
- package/docs/API-reference/api/x-adapter.parentconstantbinding.md +0 -20
- package/docs/API-reference/api/x-adapter.parentconstantbinding.toconstantwheninjectedinto.md +0 -11
- package/docs/API-reference/api/x-adapter.pipemappers.md +0 -24
- package/docs/API-reference/api/x-adapter.primitive.md +0 -13
- package/docs/API-reference/api/x-adapter.queriesrecommendationsrequest.md +0 -22
- package/docs/API-reference/api/x-adapter.queriesrecommendationsrequest.queries.md +0 -11
- package/docs/API-reference/api/x-adapter.queriesrecommendationsrequest.section.md +0 -11
- package/docs/API-reference/api/x-adapter.queriesrecommendationsresponse.md +0 -22
- package/docs/API-reference/api/x-adapter.queriesrecommendationsresponse.results.md +0 -11
- package/docs/API-reference/api/x-adapter.queriesrecommendationsresponse.totalresults.md +0 -11
- package/docs/API-reference/api/x-adapter.queryablerequest.md +0 -20
- package/docs/API-reference/api/x-adapter.queryablerequest.query.md +0 -11
- package/docs/API-reference/api/x-adapter.queryconfig.maxlength.md +0 -11
- package/docs/API-reference/api/x-adapter.queryconfig.maxwords.md +0 -11
- package/docs/API-reference/api/x-adapter.queryconfig.md +0 -21
- package/docs/API-reference/api/x-adapter.relatedtagsrequest.md +0 -15
- package/docs/API-reference/api/x-adapter.relatedtagsresponse.md +0 -20
- package/docs/API-reference/api/x-adapter.relatedtagsresponse.relatedtags.md +0 -11
- package/docs/API-reference/api/x-adapter.requesterror._constructor_.md +0 -21
- package/docs/API-reference/api/x-adapter.requesterror.md +0 -28
- package/docs/API-reference/api/x-adapter.requesterror.message.md +0 -11
- package/docs/API-reference/api/x-adapter.requesterror.response.md +0 -11
- package/docs/API-reference/api/x-adapter.requestmapper.md +0 -15
- package/docs/API-reference/api/x-adapter.requestmappercontext.feature.md +0 -11
- package/docs/API-reference/api/x-adapter.requestmappercontext.md +0 -22
- package/docs/API-reference/api/x-adapter.requestmappercontext.requestoptions.md +0 -11
- package/docs/API-reference/api/x-adapter.requestmappercontext.url.md +0 -11
- package/docs/API-reference/api/x-adapter.requestoptions.headers.md +0 -11
- package/docs/API-reference/api/x-adapter.requestoptions.md +0 -22
- package/docs/API-reference/api/x-adapter.requestoptions.requestid.md +0 -11
- package/docs/API-reference/api/x-adapter.requestoptions.ttlinminutes.md +0 -11
- package/docs/API-reference/api/x-adapter.requestor.md +0 -20
- package/docs/API-reference/api/x-adapter.requestor.request.md +0 -23
- package/docs/API-reference/api/x-adapter.requestors._constructor_.md +0 -30
- package/docs/API-reference/api/x-adapter.requestors.clicksrecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.md +0 -37
- package/docs/API-reference/api/x-adapter.requestors.nextqueries.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.queriesrecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.relatedtags.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.search.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.searchbyid.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.sectionrecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.suggestions.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.toprecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.track.md +0 -11
- package/docs/API-reference/api/x-adapter.requestors.userrecommendations.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemapper.md +0 -15
- package/docs/API-reference/api/x-adapter.responsemappercontext.md +0 -23
- package/docs/API-reference/api/x-adapter.responsemappercontext.rawrequest.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappercontext.rawresponse.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappercontext.request.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers._constructor_.md +0 -32
- package/docs/API-reference/api/x-adapter.responsemappers.banners.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.facets.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.md +0 -39
- package/docs/API-reference/api/x-adapter.responsemappers.nextqueries.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.partialresults.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.promoteds.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.querytagging.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.redirections.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.relatedtags.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.results.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.showtagging.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.spellcheck.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.suggestions.md +0 -11
- package/docs/API-reference/api/x-adapter.responsemappers.totalresults.md +0 -11
- package/docs/API-reference/api/x-adapter.responsetransformed.md +0 -15
- package/docs/API-reference/api/x-adapter.responsetransformedcontext.md +0 -21
- package/docs/API-reference/api/x-adapter.responsetransformedcontext.response.md +0 -11
- package/docs/API-reference/api/x-adapter.searchadapter.addconfigchangedlistener.md +0 -22
- package/docs/API-reference/api/x-adapter.searchadapter.getclicksrecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.getnextqueries.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.getqueriesrecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.getrelatedtags.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.getsectionrecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.getsuggestions.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.gettoprecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.getuserrecommendations.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.invalidatecache.md +0 -15
- package/docs/API-reference/api/x-adapter.searchadapter.md +0 -34
- package/docs/API-reference/api/x-adapter.searchadapter.removeconfigchangedlistener.md +0 -22
- package/docs/API-reference/api/x-adapter.searchadapter.search.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.searchbyid.md +0 -23
- package/docs/API-reference/api/x-adapter.searchadapter.setconfig.md +0 -22
- package/docs/API-reference/api/x-adapter.searchadapter.track.md +0 -22
- package/docs/API-reference/api/x-adapter.searchbyidrequest.md +0 -15
- package/docs/API-reference/api/x-adapter.searchbyidresponse.md +0 -20
- package/docs/API-reference/api/x-adapter.searchbyidresponse.results.md +0 -11
- package/docs/API-reference/api/x-adapter.searchrequest.md +0 -21
- package/docs/API-reference/api/x-adapter.searchrequest.sort.md +0 -11
- package/docs/API-reference/api/x-adapter.searchresponse.banners.md +0 -11
- package/docs/API-reference/api/x-adapter.searchresponse.facets.md +0 -11
- package/docs/API-reference/api/x-adapter.searchresponse.md +0 -28
- package/docs/API-reference/api/x-adapter.searchresponse.partialresults.md +0 -11
- package/docs/API-reference/api/x-adapter.searchresponse.promoteds.md +0 -11
- package/docs/API-reference/api/x-adapter.searchresponse.querytagging.md +0 -11
- package/docs/API-reference/api/x-adapter.searchresponse.redirections.md +0 -11
- package/docs/API-reference/api/x-adapter.searchresponse.results.md +0 -11
- package/docs/API-reference/api/x-adapter.searchresponse.spellcheck.md +0 -11
- package/docs/API-reference/api/x-adapter.searchresponse.totalresults.md +0 -11
- package/docs/API-reference/api/x-adapter.sectionrecommendationsrequest.md +0 -21
- package/docs/API-reference/api/x-adapter.sectionrecommendationsrequest.section.md +0 -11
- package/docs/API-reference/api/x-adapter.sectionrecommendationsresponse.md +0 -21
- package/docs/API-reference/api/x-adapter.sectionrecommendationsresponse.results.md +0 -11
- package/docs/API-reference/api/x-adapter.simpleconstantbinding.md +0 -20
- package/docs/API-reference/api/x-adapter.simpleconstantbinding.toconstant.md +0 -11
- package/docs/API-reference/api/x-adapter.suggestionsrequest.md +0 -15
- package/docs/API-reference/api/x-adapter.suggestionsresponse.md +0 -20
- package/docs/API-reference/api/x-adapter.suggestionsresponse.suggestions.md +0 -11
- package/docs/API-reference/api/x-adapter.toprecommendationsrequest.md +0 -15
- package/docs/API-reference/api/x-adapter.toprecommendationsresponse.md +0 -20
- package/docs/API-reference/api/x-adapter.toprecommendationsresponse.results.md +0 -11
- package/docs/API-reference/api/x-adapter.trackablerequest.md +0 -20
- package/docs/API-reference/api/x-adapter.trackablerequest.origin.md +0 -11
- package/docs/API-reference/api/x-adapter.trackableshowresponse.md +0 -20
- package/docs/API-reference/api/x-adapter.trackableshowresponse.showtagging.md +0 -11
- package/docs/API-reference/api/x-adapter.trackingrequest.md +0 -21
- package/docs/API-reference/api/x-adapter.trackingrequest.params.md +0 -11
- package/docs/API-reference/api/x-adapter.trackingrequest.url.md +0 -11
- package/docs/API-reference/api/x-adapter.trackingresultconfig.add2cart.md +0 -11
- package/docs/API-reference/api/x-adapter.trackingresultconfig.checkout.md +0 -11
- package/docs/API-reference/api/x-adapter.trackingresultconfig.click.md +0 -11
- package/docs/API-reference/api/x-adapter.trackingresultconfig.md +0 -22
- package/docs/API-reference/api/x-adapter.usercontextrequest.md +0 -22
- package/docs/API-reference/api/x-adapter.usercontextrequest.session.md +0 -11
- package/docs/API-reference/api/x-adapter.usercontextrequest.user.md +0 -11
- package/docs/API-reference/api/x-adapter.usercontextrequest.usertype.md +0 -11
- package/docs/API-reference/api/x-adapter.userrecommendationsrequest.md +0 -21
- package/docs/API-reference/api/x-adapter.userrecommendationsrequest.section.md +0 -11
- package/docs/API-reference/api/x-adapter.userrecommendationsresponse.md +0 -22
- package/docs/API-reference/api/x-adapter.userrecommendationsresponse.results.md +0 -11
- package/docs/API-reference/api/x-adapter.userrecommendationsresponse.totalresults.md +0 -11
- package/docs/API-reference/api/x-components.xeventstypes.adapterconfigchanged.md +0 -13
- package/report/x-adapter.api.json +0 -23458
- package/types/adapter/mocked-adapter.d.ts +0 -18
- package/types/adapter/mocked-adapter.d.ts.map +0 -1
- package/types/adapter/real-adapter.d.ts +0 -2
- package/types/adapter/real-adapter.d.ts.map +0 -1
- package/types/adapter/util.d.ts +0 -12
- package/types/adapter/util.d.ts.map +0 -1
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## PrivateXModuleOptions.storeEmitters property
|
|
6
6
|
|
|
7
|
-
The options to override events that will be emitted when
|
|
7
|
+
The options to override events that will be emitted when the getters value or the state of the store changes.
|
|
8
8
|
|
|
9
9
|
<b>Signature:</b>
|
|
10
10
|
|
package/docs/API-reference/api/x-components.querysuggestionsactions.fetchandsavesuggestions.md
CHANGED
|
@@ -9,14 +9,14 @@ Requests and saves to the state a list of suggestions.
|
|
|
9
9
|
<b>Signature:</b>
|
|
10
10
|
|
|
11
11
|
```typescript
|
|
12
|
-
fetchAndSaveSuggestions(request:
|
|
12
|
+
fetchAndSaveSuggestions(request: QuerySuggestionsRequest | null): void;
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
## Parameters
|
|
16
16
|
|
|
17
17
|
| Parameter | Type | Description |
|
|
18
18
|
| --- | --- | --- |
|
|
19
|
-
| request |
|
|
19
|
+
| request | QuerySuggestionsRequest \| null | |
|
|
20
20
|
|
|
21
21
|
<b>Returns:</b>
|
|
22
22
|
|
|
@@ -9,14 +9,14 @@ Requests and returns a list of suggestions based on the module state.
|
|
|
9
9
|
<b>Signature:</b>
|
|
10
10
|
|
|
11
11
|
```typescript
|
|
12
|
-
fetchSuggestions(request:
|
|
12
|
+
fetchSuggestions(request: QuerySuggestionsRequest | null): Suggestion[];
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
## Parameters
|
|
16
16
|
|
|
17
17
|
| Parameter | Type | Description |
|
|
18
18
|
| --- | --- | --- |
|
|
19
|
-
| request |
|
|
19
|
+
| request | QuerySuggestionsRequest \| null | |
|
|
20
20
|
|
|
21
21
|
<b>Returns:</b>
|
|
22
22
|
|
|
@@ -18,5 +18,5 @@ export interface QuerySuggestionsGetters
|
|
|
18
18
|
| --- | --- | --- |
|
|
19
19
|
| [normalizedQuery](./x-components.querysuggestionsgetters.normalizedquery.md) | string | The normalized module's query. |
|
|
20
20
|
| [querySuggestions](./x-components.querysuggestionsgetters.querysuggestions.md) | Suggestion\[\] | The full list of queries suggestions related to the query search. |
|
|
21
|
-
| [request](./x-components.querysuggestionsgetters.request.md) |
|
|
21
|
+
| [request](./x-components.querysuggestionsgetters.request.md) | QuerySuggestionsRequest \| null | The adapter request object for retrieving the query suggestions, or null if there is not valid data to create a request. |
|
|
22
22
|
|
|
@@ -18,6 +18,6 @@ export interface QuerySuggestionsXEvents
|
|
|
18
18
|
| --- | --- | --- |
|
|
19
19
|
| [QuerySuggestionsChanged](./x-components.querysuggestionsxevents.querysuggestionschanged.md) | Suggestion\[\] | Query suggestions have been changed. Payload: The new [query suggestions](./x-types.suggestion.md)<!-- -->. |
|
|
20
20
|
| [QuerySuggestionsDisplayed](./x-components.querysuggestionsxevents.querysuggestionsdisplayed.md) | Suggestion\[\] | The query suggestions have been displayed. Payload: The displayed [query suggestions](./x-types.suggestion.md)<!-- -->. |
|
|
21
|
-
| [QuerySuggestionsRequestChanged](./x-components.querysuggestionsxevents.querysuggestionsrequestchanged.md) |
|
|
21
|
+
| [QuerySuggestionsRequestChanged](./x-components.querysuggestionsxevents.querysuggestionsrequestchanged.md) | QuerySuggestionsRequest \| null | Any property of the query-suggestions request has changed. Payload: The new query suggestions request or <code>null</code> if there is not enough data in the state to conform a valid request. |
|
|
22
22
|
| [UserSelectedAQuerySuggestion](./x-components.querysuggestionsxevents.userselectedaquerysuggestion.md) | Suggestion | User selected a query suggestion Payload: The [query suggestion](./x-types.suggestion.md) that the user selected. |
|
|
23
23
|
|
package/docs/API-reference/api/x-components.recommendationsactions.fetchandsaverecommendations.md
CHANGED
|
@@ -9,14 +9,14 @@ Requests and saves to the state a list of recommendations.
|
|
|
9
9
|
<b>Signature:</b>
|
|
10
10
|
|
|
11
11
|
```typescript
|
|
12
|
-
fetchAndSaveRecommendations(request:
|
|
12
|
+
fetchAndSaveRecommendations(request: RecommendationsRequest | null): void;
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
## Parameters
|
|
16
16
|
|
|
17
17
|
| Parameter | Type | Description |
|
|
18
18
|
| --- | --- | --- |
|
|
19
|
-
| request |
|
|
19
|
+
| request | RecommendationsRequest \| null | |
|
|
20
20
|
|
|
21
21
|
<b>Returns:</b>
|
|
22
22
|
|
|
@@ -9,14 +9,14 @@ Requests and returns a list of recommendations based on the module state.
|
|
|
9
9
|
<b>Signature:</b>
|
|
10
10
|
|
|
11
11
|
```typescript
|
|
12
|
-
fetchRecommendations(request:
|
|
12
|
+
fetchRecommendations(request: RecommendationsRequest | null): Result[];
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
## Parameters
|
|
16
16
|
|
|
17
17
|
| Parameter | Type | Description |
|
|
18
18
|
| --- | --- | --- |
|
|
19
|
-
| request |
|
|
19
|
+
| request | RecommendationsRequest \| null | |
|
|
20
20
|
|
|
21
21
|
<b>Returns:</b>
|
|
22
22
|
|
|
@@ -16,5 +16,5 @@ export interface RecommendationsGetters
|
|
|
16
16
|
|
|
17
17
|
| Property | Type | Description |
|
|
18
18
|
| --- | --- | --- |
|
|
19
|
-
| [request](./x-components.recommendationsgetters.request.md) |
|
|
19
|
+
| [request](./x-components.recommendationsgetters.request.md) | RecommendationsRequest | The adapter request object for retrieving the recommendations. |
|
|
20
20
|
|
|
@@ -17,6 +17,6 @@ export interface RecommendationsXEvents
|
|
|
17
17
|
| Property | Type | Description |
|
|
18
18
|
| --- | --- | --- |
|
|
19
19
|
| [RecommendationsChanged](./x-components.recommendationsxevents.recommendationschanged.md) | Result\[\] | Recommendations have been changed. Payload: The new [recommendations](./x-types.result.md)<!-- -->. |
|
|
20
|
-
| [RecommendationsRequestChanged](./x-components.recommendationsxevents.recommendationsrequestchanged.md) |
|
|
20
|
+
| [RecommendationsRequestChanged](./x-components.recommendationsxevents.recommendationsrequestchanged.md) | RecommendationsRequest | Any property of the recommendations request has changed. Payload: The new recommendations request or <code>null</code> if there is not enough data in the state to conform a valid request. |
|
|
21
21
|
| [UserClickedARecommendation](./x-components.recommendationsxevents.userclickedarecommendation.md) | Result | A recommendation result has been clicked. Payload: The [result](./x-types.result.md)<!-- -->. |
|
|
22
22
|
|
|
@@ -21,7 +21,6 @@ Aside from common [XEvents](./x-components.xevent.md)<!-- -->, this interface al
|
|
|
21
21
|
|
|
22
22
|
| Property | Type | Description |
|
|
23
23
|
| --- | --- | --- |
|
|
24
|
-
| [AdapterConfigChanged](./x-components.xeventstypes.adapterconfigchanged.md) | unknown | The search adapter configuration has changed Payload: The new search adapter configuration. |
|
|
25
24
|
| [ColumnsNumberProvided](./x-components.xeventstypes.columnsnumberprovided.md) | number | The number of columns of a grid has changed. Payload: the columns number. |
|
|
26
25
|
| [SnippetCallbackExecuted](./x-components.xeventstypes.snippetcallbackexecuted.md) | { event: [XEvent](./x-components.xevent.md)<!-- -->; callbackReturn: unknown; payload: [ExtractPayload](./x-components.extractpayload.md)<!-- --><[XEvent](./x-components.xevent.md)<!-- -->>; metadata: [WireMetadata](./x-components.wiremetadata.md)<!-- -->; } | A callback from the snippet has been executed. Payload: An object containing the event that executed the callback, the callback result, and the original event payload and metadata. |
|
|
27
26
|
| [SuggestionsDisplayed](./x-components.xeventstypes.suggestionsdisplayed.md) | Suggestion\[\] | Any kind of suggestions have been displayed (query-suggestions, popular searches...) Payload: The displayed [suggestions](./x-types.suggestion.md)<!-- -->. |
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
|
|
5
5
|
## XPlugin.adapter property
|
|
6
6
|
|
|
7
|
-
[
|
|
7
|
+
[PlatformAdapter](./x-adapter-platform.platformadapter.md) Is the middleware between the components and our API where data can be mapped to client needs. This property is only available after installing the plugin.
|
|
8
8
|
|
|
9
9
|
<b>Signature:</b>
|
|
10
10
|
|
|
11
11
|
```typescript
|
|
12
|
-
static get adapter():
|
|
12
|
+
static get adapter(): PlatformAdapter;
|
|
13
13
|
```
|
|
@@ -17,15 +17,13 @@ xPlugin: XPlugin
|
|
|
17
17
|
Minimal installation example. A search adapter is needed for the plugin to work, and connect to the API.
|
|
18
18
|
|
|
19
19
|
```typescript
|
|
20
|
-
|
|
21
|
-
.
|
|
22
|
-
.build();
|
|
23
|
-
Vue.use(xPlugin, { adapter });
|
|
20
|
+
import { platformAdapter } from '@empathyco/x-adapter-platform';
|
|
21
|
+
Vue.use(xPlugin, { adapter: platformAdapter });
|
|
24
22
|
```
|
|
25
23
|
|
|
26
24
|
## Example 2
|
|
27
25
|
|
|
28
|
-
If you are using [Vuex](https://vuex.vuejs.org/) in your project you must install its plugin, and instantiate
|
|
26
|
+
If you are using [Vuex](https://vuex.vuejs.org/) in your project you must install its plugin, and instantiate a store before installing the XPlugin:
|
|
29
27
|
|
|
30
28
|
```typescript
|
|
31
29
|
Vue.use(Vuex);
|
|
@@ -17,7 +17,7 @@ export interface XPluginOptions
|
|
|
17
17
|
| Property | Type | Description |
|
|
18
18
|
| --- | --- | --- |
|
|
19
19
|
| [\_\_PRIVATE\_\_xModules?](./x-components.xpluginoptions.__private__xmodules.md) | [PrivateXModulesOptions](./x-components.privatexmodulesoptions.md) | <i>(Optional)</i> Override the [XModules](./x-components.xmodule.md) store module and store emitters. It must be used only in exceptional cases. |
|
|
20
|
-
| [adapter](./x-components.xpluginoptions.adapter.md) |
|
|
20
|
+
| [adapter](./x-components.xpluginoptions.adapter.md) | PlatformAdapter | The adapter transforms the request for the the search and tagging APIs and its responses. |
|
|
21
21
|
| [initialXModules?](./x-components.xpluginoptions.initialxmodules.md) | [AnyXModule](./x-components.anyxmodule.md)<!-- -->\[\] | <i>(Optional)</i> A [XModules](./x-components.xmodule.md) to be registered during the [XPlugin](./x-components.xplugin.md) installation. |
|
|
22
22
|
| [store?](./x-components.xpluginoptions.store.md) | Store<any> | <i>(Optional)</i> A Vuex store to install the X module. If not passed a new one will be created and injected into every component. |
|
|
23
23
|
| [xModules?](./x-components.xpluginoptions.xmodules.md) | [XModulesOptions](./x-components.xmodulesoptions.md) | <i>(Optional)</i> Override the [XModules](./x-components.xmodule.md) config state and its wiring. |
|
package/docs/API-reference/components/extra-params/x-components.snippet-config-extra-params.md
CHANGED
|
@@ -11,10 +11,10 @@ objects of every x-module.
|
|
|
11
11
|
|
|
12
12
|
## Props
|
|
13
13
|
|
|
14
|
-
| Name | Description | Type | Default
|
|
15
|
-
| -------------------------------- | ---------------------------------------------------------------------------------------------- | ----------------------- |
|
|
16
|
-
| <code>values</code> | A Dictionary where the keys are the extra param names and its values. | <code>Dictionary</code> | <code></code>
|
|
17
|
-
| <code>excludedExtraParams</code> | Collection of properties from the snippet config to exclude from the<br />extra params object. | <code>Array</code> | <code>(): Array<keyof SnippetConfig> => [<br /> 'callbacks',<br /> 'productId',<br /> '
|
|
14
|
+
| Name | Description | Type | Default |
|
|
15
|
+
| -------------------------------- | ---------------------------------------------------------------------------------------------- | ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
16
|
+
| <code>values</code> | A Dictionary where the keys are the extra param names and its values. | <code>Dictionary</code> | <code></code> |
|
|
17
|
+
| <code>excludedExtraParams</code> | Collection of properties from the snippet config to exclude from the<br />extra params object. | <code>Array</code> | <code>(): Array<keyof SnippetConfig> => [<br /> 'callbacks',<br /> 'productId',<br /> 'searchLang',<br /> 'consent',<br /> 'documentDirection',<br /> 'currency',<br /> 'filters'<br />]</code> |
|
|
18
18
|
|
|
19
19
|
## See it in action
|
|
20
20
|
|
|
@@ -103,10 +103,7 @@ Interface X Archetype repository.
|
|
|
103
103
|
## Configuring the search adapter
|
|
104
104
|
|
|
105
105
|
Before using your project, configure the Empathy Search Adapter in the
|
|
106
|
-
`x-archetype/src/adapter/adapter.ts` file
|
|
107
|
-
the Empathy Search API. The Empathy Search Adapter contains a sample configuration for setup, global
|
|
108
|
-
configurations, or mappers that points to a demo environment. You need to adjust the configuration
|
|
109
|
-
according to the search features you use in your project.
|
|
106
|
+
`x-archetype/src/adapter/adapter.ts` file to make it work with the Empathy Search API.
|
|
110
107
|
|
|
111
108
|
Export the required search adapter with your configuration as you will need it for the search
|
|
112
109
|
[xPlugin configuration](#configuring-the-plugin).
|
|
@@ -114,7 +111,7 @@ Export the required search adapter with your configuration as you will need it f
|
|
|
114
111
|
::: interact
|
|
115
112
|
|
|
116
113
|
For detailed information about other configuration options in the Empathy Search Adapter, go to the
|
|
117
|
-
[x-adapter repository](https://github.com/empathyco/x/tree/main/packages/
|
|
114
|
+
[x-adapter repository](https://github.com/empathyco/x/tree/main/packages/x-adapter).
|
|
118
115
|
|
|
119
116
|
:::
|
|
120
117
|
|
|
@@ -33,8 +33,8 @@ You can find the X Components library in the
|
|
|
33
33
|
To integrate the X Components in a frontend UI, you need:
|
|
34
34
|
|
|
35
35
|
- **Empathy Search API** to retrieve search data (or any other search API)
|
|
36
|
-
- A **search adapter** to communicate with the search API. You can use the
|
|
37
|
-
|
|
36
|
+
- A **search adapter** to communicate with the search API. You can use the
|
|
37
|
+
[Empathy Platform Adapter](https://github.com/empathyco/x/tree/main/packages/x-adapter-platform)
|
|
38
38
|
- Your commerce store built on a **Vue** project, or on a **React** project using the
|
|
39
39
|
[React Wrapper](https://github.com/empathyco/x/tree/main/packages/react-wrapper).
|
|
40
40
|
|
|
@@ -56,59 +56,36 @@ To build your search and discovery UI, the following project dependencies are re
|
|
|
56
56
|
Interface X Components Vue.js library to implement out-of-the-box search UI components
|
|
57
57
|
in a couple of minutes.
|
|
58
58
|
|
|
59
|
-
- **x-adapter**
|
|
60
|
-
([`@empathyco/x-adapter`](https://github.com/empathyco/x/tree/main/packages/
|
|
61
|
-
search adapter connector that tells the app how to communicate with the Empathy Search API
|
|
62
|
-
using, translating the response into understandable information for X Components. If
|
|
63
|
-
not using the Empathy Search API, you need to build your own search adapter.
|
|
59
|
+
- **x-adapter-platform**
|
|
60
|
+
([`@empathyco/x-adapter-platform`](https://github.com/empathyco/x/tree/main/packages/x-adapter-platform)):
|
|
61
|
+
A search adapter connector that tells the app how to communicate with the Empathy Search API
|
|
62
|
+
you’re using, translating the response into understandable information for X Components. If
|
|
63
|
+
you are not using the Empathy Search API, you need to build your own search adapter. In order to
|
|
64
|
+
build your own search adapter, you can either extend the **x-adapter-platform** or create a new
|
|
65
|
+
one from scratch using the
|
|
66
|
+
[`@empathyco/x-adapter`](https://github.com/empathyco/x/tree/main/packages/x-adapter) package.
|
|
64
67
|
|
|
65
68
|
- **x-types**
|
|
66
69
|
([`@empathyco/x-types`](https://github.com/empathyco/x/tree/main/packages/search-types)): The data
|
|
67
70
|
model used in the X Components to define types.
|
|
68
71
|
|
|
69
|
-
- **reflect-metadata**: Polyfill that allows the internal decorators of X Components to be
|
|
70
|
-
used. This is only required if you use the Empathy search adapter (`x-adapter`).
|
|
71
|
-
|
|
72
72
|
Install the project dependencies via `npm` as follows:
|
|
73
73
|
|
|
74
74
|
```batch
|
|
75
75
|
//Install the dependencies via npm.
|
|
76
|
-
npm install --save @empathyco/x-components @empathyco/x-types @empathyco/x-adapter
|
|
76
|
+
npm install --save @empathyco/x-components @empathyco/x-types @empathyco/x-adapter-platform
|
|
77
77
|
```
|
|
78
78
|
|
|
79
79
|
## Configuring the search adapter
|
|
80
80
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
If you are using the Empathy search API and the Empathy Search Adapter (`x-adapter`), make sure you
|
|
84
|
-
have imported the `reflect-metadata` polyfill before executing any code of the search adapter.
|
|
85
|
-
|
|
86
|
-
:::
|
|
87
|
-
|
|
88
|
-
Next, construct the search adapter. You will need the search adapter in the
|
|
89
|
-
[xPlugin configuration](#configuring-the-plugin).
|
|
90
|
-
|
|
91
|
-
Empathy Search Adapter is a library for making it easier to consume search APIs. The project
|
|
92
|
-
contains two main parts: an **implementation** to consume the Empathy Search API, and an
|
|
93
|
-
**interface** that you can use to build your own adapter for other APIs.
|
|
81
|
+
You will need the search adapter in the [xPlugin configuration](#3-configure-the-plugin).
|
|
94
82
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
import 'reflect-metadata';
|
|
102
|
-
import { EmpathyAdapterBuilder } from '@empathyco/x-adapter';
|
|
103
|
-
|
|
104
|
-
// Construct the EmpathyAdapterBuilder
|
|
105
|
-
export const adapter = new EmpathyAdapterBuilder()
|
|
106
|
-
.withConfiguration({ instance: 'my-instance-id' })
|
|
107
|
-
.setLang('es')
|
|
108
|
-
.setScope('demo')
|
|
109
|
-
.setFeatureConfig('search', { endpoint: 'http://my-search-API-url' })
|
|
110
|
-
.build();
|
|
111
|
-
```
|
|
83
|
+
There are two libraries for making it easier to consume search APIs. The
|
|
84
|
+
[`@empathyco/x-adapter`](https://github.com/empathyco/x/tree/main/packages/x-adapter), which is the
|
|
85
|
+
interface you can use to build your own adapter for other APIs, and the
|
|
86
|
+
[`@empathyco/x-adapter-platform`](https://github.com/empathyco/x/tree/main/packages/x-adapter-platform),
|
|
87
|
+
which is the implementation to consume the Empathy Search Platform API, and it can be extended in
|
|
88
|
+
case your search API is similar to it.
|
|
112
89
|
|
|
113
90
|
::: warning
|
|
114
91
|
|
|
@@ -117,7 +94,7 @@ If you do not use the Empathy Search API, you need to build your own adapter.
|
|
|
117
94
|
:::
|
|
118
95
|
|
|
119
96
|
For more information, see
|
|
120
|
-
[Using the Empathy Search Adapter](https://github.com/empathyco/x/tree/main/packages/
|
|
97
|
+
[Using the Empathy Search Adapter](https://github.com/empathyco/x/tree/main/packages/x-adapter).
|
|
121
98
|
|
|
122
99
|
## Configuring the plugin
|
|
123
100
|
|
|
@@ -139,16 +116,9 @@ import { store } from './my-store';
|
|
|
139
116
|
Then, **configure** the xPlugin. It has two key options you need to configure:
|
|
140
117
|
|
|
141
118
|
1. **Adapter**: A search adapter is required to connect and communicate with the search API. Here
|
|
142
|
-
you’re using the `
|
|
143
|
-
If you are not using the Empathy Search API, you need to build your own adapter.
|
|
144
|
-
[
|
|
145
|
-
|
|
146
|
-
::: develop
|
|
147
|
-
|
|
148
|
-
When using your own adapter, remember to configure the `instance`, `language`, `scope`, and
|
|
149
|
-
`endpoint` methods.
|
|
150
|
-
|
|
151
|
-
:::
|
|
119
|
+
you’re using the `XAdapterPlatform` to communicate specifically with the Empathy Search Platform
|
|
120
|
+
API. If you are not using the Empathy Search Platform API, you need to build your own adapter.
|
|
121
|
+
See [Configure the search adapter](#2-configure-the-search-adapter).
|
|
152
122
|
|
|
153
123
|
2. **Store**: The Vuex store. If you use a store for Vuex, you need to provide the store you’re
|
|
154
124
|
currently using for your project to the Vue instance.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"x-emitters.js","sources":["../../../src/plugins/x-emitters.ts"],"sourcesContent":["import { forEach, Dictionary } from '@empathyco/x-utils';\nimport { Store } from 'vuex';\nimport { getGettersProxyFromModule } from '../store/utils/getters-proxy.utils';\nimport { AnySimpleStateSelector, AnyStateSelector } from '../store/utils/store-emitters.utils';\nimport { debounce } from '../utils/debounce';\nimport { DebouncedFunction } from '../utils/types';\nimport { XEvent } from '../wiring/events.types';\nimport { AnyXModule } from '../x-modules/x-modules.types';\nimport { XBus } from './x-bus.types';\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 * @param bus - The {@Link XBus} to emit the events by the Emitters.\n * @param store - The Vuex store to access to state and getters to watch them.\n *\n * @internal\n */\nexport function registerStoreEmitters(\n { name, storeEmitters, storeModule }: AnyXModule,\n bus: XBus,\n store: Store<any>\n): void {\n const safeGettersProxy = getGettersProxyFromModule(store.getters, name, storeModule);\n forEach(storeEmitters, (event, stateSelector: AnySimpleStateSelector | AnyStateSelector) => {\n const { selector, immediate, filter, ...options } = normalizeStateSelector(\n stateSelector,\n event\n );\n\n const emit = (value:
|
|
1
|
+
{"version":3,"file":"x-emitters.js","sources":["../../../src/plugins/x-emitters.ts"],"sourcesContent":["import { forEach, Dictionary } from '@empathyco/x-utils';\nimport { Store } from 'vuex';\nimport { getGettersProxyFromModule } from '../store/utils/getters-proxy.utils';\nimport { AnySimpleStateSelector, AnyStateSelector } from '../store/utils/store-emitters.utils';\nimport { debounce } from '../utils/debounce';\nimport { DebouncedFunction } from '../utils/types';\nimport { XEvent, XEventPayload } from '../wiring/events.types';\nimport { AnyXModule } from '../x-modules/x-modules.types';\nimport { XBus } from './x-bus.types';\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 * @param bus - The {@Link XBus} to emit the events by the Emitters.\n * @param store - The Vuex store to access to state and getters to watch them.\n *\n * @internal\n */\nexport function registerStoreEmitters(\n { name, storeEmitters, storeModule }: AnyXModule,\n bus: XBus,\n store: Store<any>\n): void {\n const safeGettersProxy = getGettersProxyFromModule(store.getters, name, storeModule);\n forEach(storeEmitters, (event, stateSelector: AnySimpleStateSelector | AnyStateSelector) => {\n const { selector, immediate, filter, ...options } = normalizeStateSelector(\n stateSelector,\n event\n );\n\n const emit = (\n value: XEventPayload<typeof event>,\n oldValue?: XEventPayload<typeof event>\n ): void => {\n bus.emit(event, value, { moduleName: name, oldValue });\n };\n const watcherSelector = (): XEventPayload<typeof event> =>\n selector(store.state.x[name], safeGettersProxy);\n const debouncedEffect = debounceWatcherEffect(event, (newValue, oldValue) => {\n if (filter(newValue, oldValue)) {\n emit(newValue, oldValue);\n }\n });\n\n store.watch(watcherSelector, debouncedEffect, options);\n\n if (immediate) {\n Promise.resolve().then(() => {\n emit(watcherSelector());\n });\n }\n });\n}\n\n/**\n * This function \"wraps\" the watcher effect (the callback of the watcher) with debounce to avoid\n * repeating events and request. Right now this function wraps every effect in a debounce and adds\n * an extra debounce to the \"SecondLevelEvent\" events, to try to delay this events after the state\n * change events.\n *\n * @param event - The {@link XEvent} to emit.\n * @param watcherEffect - The callback to execute.\n * @returns A new function with the `watcherEffect` callback wrapped in debounce.\n */\nfunction debounceWatcherEffect<Event extends XEvent = XEvent>(\n event: Event,\n watcherEffect: (newValue: XEventPayload<Event>, oldValue: XEventPayload<Event>) => void\n): (newValue: XEventPayload<Event>, oldValue: XEventPayload<Event>) => void {\n /*\n * Due the debounce added to the watch callback, the `oldValue` would be the one from the last\n * watcher execution instead of the last callback execution. This would cause problems receiving\n * unstable oldValues, used in the Emitter filter.\n * To solve this, we store the `oldValue` of the watcher in the `previousValue` variable, and we\n * keep there until the watcher callback is finally executed (after the debounce). Then this\n * `previousValue` is cleared to store the next `oldValue`.\n */\n let previousValue: XEventPayload<Event> | undefined = undefined;\n\n let watcherCallback = debounce(\n (newValue: XEventPayload<Event>, oldValue: XEventPayload<Event>): void => {\n watcherEffect(newValue, oldValue);\n previousValue = undefined;\n },\n 0\n );\n /* Only applying the extra debounce to the \"SecondLevelEvent\" events to avoid repeating outer\n * effects (requests, URL changes). If we only apply the debounce to all the events we still have\n * the problem of outer effects. */\n if (isSecondLevelEventEmitter(event)) {\n const previousCallback = watcherCallback;\n const debouncedPreviousCallback = debounce(previousCallback, 0);\n watcherCallback = ((n, o) => {\n previousCallback.cancel();\n debouncedPreviousCallback(n, o);\n }) as DebouncedFunction<any>;\n }\n\n return (newValue, oldValue) => {\n previousValue = previousValue !== undefined ? previousValue : oldValue;\n watcherCallback(newValue, previousValue);\n };\n}\n\n/**\n * Transforms a {@link AnySimpleStateSelector} into a {@link AnyStateSelector}, and sets\n * default values for its properties.\n *\n * @param stateSelector - The state selector to normalize.\n * @param event - The event name of the emitter.\n * @returns A {@link AnyStateSelector} with all the properties set.\n *\n * @internal\n */\nfunction normalizeStateSelector(\n stateSelector: AnySimpleStateSelector | AnyStateSelector,\n event: XEvent\n): Required<AnyStateSelector> {\n const normalizedSelector = isSimpleSelector(stateSelector)\n ? { selector: stateSelector }\n : stateSelector;\n return {\n deep: false,\n immediate: false,\n filter: isSecondLevelEventEmitter(event)\n ? (newValue, oldValue) => !hasPayloadChanged(newValue, oldValue)\n : () => true,\n ...normalizedSelector\n };\n}\n\n/**\n * Checks if a the type of the store emitter selector is simple or complex. This selector can be\n * a function if it is simple or an object with the selector and other options if it is complex.\n *\n * @param stateSelector - The store emitter selector.\n * @returns A boolean which flags if the stateSelector is simple (function) or complex (object).\n *\n * @internal\n */\nexport function isSimpleSelector(\n stateSelector: AnySimpleStateSelector | AnyStateSelector\n): stateSelector is AnySimpleStateSelector {\n return typeof stateSelector === 'function';\n}\n\n// TODO: Generalize the Naming of the Events to take this into account\nconst secondLevelEvents: RegExp[] = [/RequestChanged$/, /UrlStateChanged$/];\n\n/**\n * Function to detect if an {@link XEvent} is a \"SecondLevelEvent\", to treat it differently.\n *\n * @param event - The name of the {@link XEvent} to check.\n * @returns True if is an `SecondLevelEvent`, False otherwise.\n *\n * @internal\n */\nfunction isSecondLevelEventEmitter(event: XEvent): boolean {\n return secondLevelEvents.some(regex => regex.test(event));\n}\n/**\n * Function to filter if a payload of an {@link XEvent} has really changed or not. It only\n * compares the first level of fields and not deeply, to avoid CPU consuming task here.\n *\n * @param request1 - First request to compare.\n * @param request2 - Second request to compare.\n * @returns True if the two objects are different, false otherwise.\n *\n * @internal\n */\nfunction hasPayloadChanged<T extends Dictionary>(request1?: T, request2?: T): boolean {\n if (request1 === request2) {\n return true;\n }\n if (!request1 || !request2) {\n return false;\n }\n const keys1 = Object.keys(request1);\n const keys2 = Object.keys(request2);\n if (keys1.length !== keys2.length) {\n return false;\n }\n return !keys1.some(key => request1[key] !== request2[key]);\n}\n"],"names":[],"mappings":";;;;AAUA;;;;;;;;;;SAUgB,qBAAqB,CACnC,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAc,EAChD,GAAS,EACT,KAAiB;IAEjB,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACrF,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,aAAwD;QACrF,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,GAAG,sBAAsB,CACxE,aAAa,EACb,KAAK,CACN,CAAC;QAEF,MAAM,IAAI,GAAG,CACX,KAAkC,EAClC,QAAsC;YAEtC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;SACxD,CAAC;QACF,MAAM,eAAe,GAAG,MACtB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAClD,MAAM,eAAe,GAAG,qBAAqB,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ;YACtE,IAAI,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE;gBAC9B,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;aAC1B;SACF,CAAC,CAAC;QAEH,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;QAEvD,IAAI,SAAS,EAAE;YACb,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;gBACrB,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;aACzB,CAAC,CAAC;SACJ;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;AAUA,SAAS,qBAAqB,CAC5B,KAAY,EACZ,aAAuF;;;;;;;;;IAUvF,IAAI,aAAa,GAAqC,SAAS,CAAC;IAEhE,IAAI,eAAe,GAAG,QAAQ,CAC5B,CAAC,QAA8B,EAAE,QAA8B;QAC7D,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAClC,aAAa,GAAG,SAAS,CAAC;KAC3B,EACD,CAAC,CACF,CAAC;;;;IAIF,IAAI,yBAAyB,CAAC,KAAK,CAAC,EAAE;QACpC,MAAM,gBAAgB,GAAG,eAAe,CAAC;QACzC,MAAM,yBAAyB,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAChE,eAAe,IAAI,CAAC,CAAC,EAAE,CAAC;YACtB,gBAAgB,CAAC,MAAM,EAAE,CAAC;YAC1B,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACjC,CAA2B,CAAC;KAC9B;IAED,OAAO,CAAC,QAAQ,EAAE,QAAQ;QACxB,aAAa,GAAG,aAAa,KAAK,SAAS,GAAG,aAAa,GAAG,QAAQ,CAAC;QACvE,eAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;KAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;AAUA,SAAS,sBAAsB,CAC7B,aAAwD,EACxD,KAAa;IAEb,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,aAAa,CAAC;UACtD,EAAE,QAAQ,EAAE,aAAa,EAAE;UAC3B,aAAa,CAAC;IAClB,OAAO;QACL,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE,yBAAyB,CAAC,KAAK,CAAC;cACpC,CAAC,QAAQ,EAAE,QAAQ,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC;cAC9D,MAAM,IAAI;QACd,GAAG,kBAAkB;KACtB,CAAC;AACJ,CAAC;AAED;;;;;;;;;SASgB,gBAAgB,CAC9B,aAAwD;IAExD,OAAO,OAAO,aAAa,KAAK,UAAU,CAAC;AAC7C,CAAC;AAED;AACA,MAAM,iBAAiB,GAAa,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;AAE5E;;;;;;;;AAQA,SAAS,yBAAyB,CAAC,KAAa;IAC9C,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5D,CAAC;AACD;;;;;;;;;;AAUA,SAAS,iBAAiB,CAAuB,QAAY,EAAE,QAAY;IACzE,IAAI,QAAQ,KAAK,QAAQ,EAAE;QACzB,OAAO,IAAI,CAAC;KACb;IACD,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE;QACjC,OAAO,KAAK,CAAC;KACd;IACD,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7D;;;;"}
|
package/js/plugins/x-plugin.js
CHANGED
|
@@ -42,8 +42,8 @@ class XPlugin {
|
|
|
42
42
|
this.bus = bus;
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
45
|
-
* {@link @empathyco/x-adapter#
|
|
46
|
-
* the components and our API where data can be mapped to client needs.
|
|
45
|
+
* {@link @empathyco/x-adapter-platform#PlatformAdapter | PlatformAdapter} Is the middleware
|
|
46
|
+
* between the components and our API where data can be mapped to client needs.
|
|
47
47
|
* This property is only available after installing the plugin.
|
|
48
48
|
*
|
|
49
49
|
* @returns The installed adapter.
|
|
@@ -117,7 +117,7 @@ class XPlugin {
|
|
|
117
117
|
this.instance = undefined;
|
|
118
118
|
}
|
|
119
119
|
/**
|
|
120
|
-
* Stores the {@link XModule} in a dictionary, so it can be registered later in the
|
|
120
|
+
* Stores the {@link XModule} in a dictionary, so it can be registered later in the installation
|
|
121
121
|
* process.
|
|
122
122
|
*
|
|
123
123
|
* @param xModule - The module to register.
|
|
@@ -145,7 +145,6 @@ class XPlugin {
|
|
|
145
145
|
this.vue = vue;
|
|
146
146
|
this.options = options;
|
|
147
147
|
this.adapter = options.adapter;
|
|
148
|
-
this.createAdapterConfigChangedListener();
|
|
149
148
|
this.registerStore();
|
|
150
149
|
this.applyMixins();
|
|
151
150
|
this.registerFilters();
|
|
@@ -256,7 +255,7 @@ class XPlugin {
|
|
|
256
255
|
/**
|
|
257
256
|
* Registers the {@link https://vuex.vuejs.org/ | Vuex} store. If the store has not been passed
|
|
258
257
|
* through the {@link XPluginOptions} object, it creates one, and injects it in the Vue
|
|
259
|
-
* prototype. Then it
|
|
258
|
+
* prototype. Then it registers an x module in the store, to safe scope all the
|
|
260
259
|
* {@link XModule | XModules} dynamically installed.
|
|
261
260
|
*
|
|
262
261
|
* @internal
|
|
@@ -304,17 +303,6 @@ class XPlugin {
|
|
|
304
303
|
});
|
|
305
304
|
XPlugin.pendingXModules = {};
|
|
306
305
|
}
|
|
307
|
-
/**
|
|
308
|
-
* If the received adapter supports it, it registers a listener to emit the
|
|
309
|
-
* {@link XEventsTypes.AdapterConfigChanged} event whenever the config of it changes.
|
|
310
|
-
*
|
|
311
|
-
* @internal
|
|
312
|
-
*/
|
|
313
|
-
createAdapterConfigChangedListener() {
|
|
314
|
-
this.options.adapter.addConfigChangedListener?.(newAdapterConfig => {
|
|
315
|
-
this.bus.emit('AdapterConfigChanged', newAdapterConfig);
|
|
316
|
-
});
|
|
317
|
-
}
|
|
318
306
|
/**
|
|
319
307
|
* Registers filters globally.
|
|
320
308
|
*
|
|
@@ -338,15 +326,13 @@ XPlugin.pendingXModules = {};
|
|
|
338
326
|
* Minimal installation example. A search adapter is needed for the plugin to work, and connect to
|
|
339
327
|
* the API.
|
|
340
328
|
* ```typescript
|
|
341
|
-
*
|
|
342
|
-
* .
|
|
343
|
-
* .build();
|
|
344
|
-
* Vue.use(xPlugin, { adapter });
|
|
329
|
+
* import { platformAdapter } from '@empathyco/x-adapter-platform';
|
|
330
|
+
* Vue.use(xPlugin, { adapter: platformAdapter });
|
|
345
331
|
* ```
|
|
346
332
|
*
|
|
347
333
|
* @example
|
|
348
334
|
* If you are using {@link https://vuex.vuejs.org/ | Vuex} in your project you must install its
|
|
349
|
-
* plugin, and instantiate
|
|
335
|
+
* plugin, and instantiate a store before installing the XPlugin:
|
|
350
336
|
* ```typescript
|
|
351
337
|
* Vue.use(Vuex);
|
|
352
338
|
* const store = new Store({ ... });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"x-plugin.js","sources":["../../../src/plugins/x-plugin.ts"],"sourcesContent":["import { SearchAdapter } from '@empathyco/x-adapter';\nimport { 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 { FILTERS_REGISTRY } from '../filters/filters.registry';\nimport { AnyXStoreModule, RootXStoreState } from '../store/store.types';\nimport { cleanGettersProxyCache } from '../store/utils/getters-proxy.utils';\nimport { RootXStoreModule } from '../store/x.module';\nimport { AnyWire } from '../wiring/wiring.types';\nimport { AnyXModule, XModuleName } from '../x-modules/x-modules.types';\nimport { bus } from './x-bus';\nimport { XBus } from './x-bus.types';\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-adapter#SearchAdapter | SearchAdapter} Is the middleware between\n * 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(): SearchAdapter {\n return this.getInstance().adapter;\n }\n\n /**\n * Exposed {@link XBus}, so any kind of application can subscribe to {@link XEventsTypes}\n * 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 {\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 /**\n * Bus for retrieving the observables when registering the wiring.\n *\n * @internal\n */\n protected bus: XBus;\n\n /**\n * Adapter for the API, responsible for transforming requests and responses.\n *\n * @internal\n */\n protected adapter!: SearchAdapter;\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 install 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 install 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 XBus} implementation to use for the plugin.\n *\n * @public\n */\n public constructor(bus: XBus) {\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 install\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.createAdapterConfigChangedListener();\n this.registerStore();\n this.applyMixins();\n this.registerFilters();\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 // The wiring must be registered after the store emitters\n // to allow lazy loaded modules work properly.\n this.registerWiring(customizedXModule);\n this.installedXModules.add(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 }: AnyXModule): void {\n forEach(wiring, (event, wires: Dictionary<AnyWire>) => {\n // Obtain the observable\n const observable = this.bus.on(event, true);\n // Register event wires\n forEach(wires, (_, wire) => {\n wire(observable, this.store, 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 register 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 * If the received adapter supports it, it registers a listener to emit the\n * {@link XEventsTypes.AdapterConfigChanged} event whenever the config of it changes.\n *\n * @internal\n */\n protected createAdapterConfigChangedListener(): void {\n this.options.adapter.addConfigChangedListener?.(newAdapterConfig => {\n this.bus.emit('AdapterConfigChanged', newAdapterConfig);\n });\n }\n\n /**\n * Registers filters globally.\n *\n * @internal\n */\n protected registerFilters(): void {\n forEach(FILTERS_REGISTRY, (filterName, filterFunction) =>\n this.vue.filter(filterName, filterFunction)\n );\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. A search adapter is needed for the plugin to work, and connect to\n * the API.\n * ```typescript\n * const adapter = new EmpathyAdapterBuilder()\n * .withConfiguration({instance: 'my-instance-id'})\n * .build();\n * Vue.use(xPlugin, { adapter });\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 an 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
|
+
{"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 { PlatformAdapter } from '@empathyco/x-adapter-platform';\nimport { FILTERS_REGISTRY } from '../filters/filters.registry';\nimport { AnyXStoreModule, RootXStoreState } from '../store/store.types';\nimport { cleanGettersProxyCache } from '../store/utils/getters-proxy.utils';\nimport { RootXStoreModule } from '../store/x.module';\nimport { AnyWire } from '../wiring/wiring.types';\nimport { AnyXModule, XModuleName } from '../x-modules/x-modules.types';\nimport { bus } from './x-bus';\nimport { XBus } from './x-bus.types';\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-adapter-platform#PlatformAdapter | PlatformAdapter} 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(): PlatformAdapter {\n return this.getInstance().adapter;\n }\n\n /**\n * Exposed {@link XBus}, so any kind of application can subscribe to {@link XEventsTypes}\n * 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 {\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 /**\n * Bus for retrieving the observables when registering the wiring.\n *\n * @internal\n */\n protected bus: XBus;\n\n /**\n * Adapter for the API, responsible for transforming requests and responses.\n *\n * @internal\n */\n protected adapter!: PlatformAdapter;\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 XBus} implementation to use for the plugin.\n *\n * @public\n */\n public constructor(bus: XBus) {\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.registerFilters();\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 // The wiring must be registered after the store emitters\n // to allow lazy loaded modules work properly.\n this.registerWiring(customizedXModule);\n this.installedXModules.add(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 }: AnyXModule): void {\n forEach(wiring, (event, wires: Dictionary<AnyWire>) => {\n // Obtain the observable\n const observable = this.bus.on(event, true);\n // Register event wires\n forEach(wires, (_, wire) => {\n wire(observable, this.store, 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 * Registers filters globally.\n *\n * @internal\n */\n protected registerFilters(): void {\n forEach(FILTERS_REGISTRY, (filterName, filterFunction) =>\n this.vue.filter(filterName, filterFunction)\n );\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. A search adapter is needed for the plugin to work, and connect to\n * the API.\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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"}
|