@athoscommerce/snap-preact 1.10.1-beta.150 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.js +25 -62
- package/dist/cjs/components/src/components/Atoms/Icon/paths.js +0 -13
- package/dist/cjs/components/src/components/Atoms/Image/Image.js +10 -2
- package/dist/cjs/components/src/components/Atoms/ProductDetail/ProductDetail.js +98 -0
- package/dist/cjs/components/src/components/Atoms/ProductDetail/index.js +7 -0
- package/dist/cjs/components/src/components/Atoms/TemplateSelect/TemplateSelect.js +16 -3
- package/dist/cjs/components/src/components/Molecules/CalloutBadge/CalloutBadge.js +4 -1
- package/dist/cjs/components/src/components/Molecules/Gallery/Gallery.js +298 -0
- package/dist/cjs/components/src/components/{Templates/Chat → Molecules/Gallery}/index.js +1 -1
- package/dist/cjs/components/src/components/Molecules/Grid/Grid.js +9 -13
- package/dist/cjs/components/src/components/Molecules/List/List.js +9 -13
- package/dist/cjs/components/src/components/Molecules/Modal/Modal.js +21 -2
- package/dist/cjs/components/src/components/Molecules/OverlayBadge/OverlayBadge.js +1 -1
- package/dist/cjs/components/src/components/Molecules/ProductDetailTable/ProductDetailTable.js +115 -0
- package/dist/cjs/components/src/components/Molecules/{ChatResultsDisplay → ProductDetailTable}/index.js +1 -1
- package/dist/cjs/components/src/components/Molecules/QuantityPicker/QuantityPicker.js +136 -0
- package/dist/cjs/components/src/components/Molecules/{ChatResult → QuantityPicker}/index.js +1 -1
- package/dist/cjs/components/src/components/Molecules/RadioList/RadioList.js +9 -13
- package/dist/cjs/components/src/components/Molecules/Result/Result.js +28 -36
- package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.js +2 -28
- package/dist/cjs/components/src/components/Molecules/Select/Select.js +9 -13
- package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.js +33 -26
- package/dist/cjs/components/src/components/Molecules/Slideshow/Slideshow.js +37 -8
- package/dist/cjs/components/src/components/Molecules/Swatches/Swatches.js +1 -1
- package/dist/cjs/components/src/components/Molecules/TabSelection/TabSelection.js +108 -0
- package/dist/cjs/components/src/components/{Templates/ChatButton → Molecules/TabSelection}/index.js +1 -1
- package/dist/cjs/components/src/components/Molecules/TemplatesEditor/TemplatesEditor.js +1 -1
- package/dist/cjs/components/src/components/Molecules/VariantSelection/VariantSelection.js +7 -1
- package/dist/cjs/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.js +25 -10
- package/dist/cjs/components/src/components/Organisms/Layout/Layout.js +15 -1
- package/dist/cjs/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.js +612 -0
- package/dist/cjs/components/src/components/{Molecules/ChatMessageUser → Organisms/QuickviewLayout}/index.js +1 -1
- package/dist/cjs/components/src/components/Organisms/Results/Results.js +4 -4
- package/dist/cjs/components/src/components/Organisms/Toolbar/Toolbar.js +2 -1
- package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +13 -11
- package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +13 -11
- package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +12 -10
- package/dist/cjs/components/src/components/Templates/QuickviewModal/QuickviewModal.js +153 -0
- package/dist/cjs/components/src/components/{Molecules/ChatMessageText → Templates/QuickviewModal}/index.js +1 -1
- package/dist/cjs/components/src/components/Templates/QuickviewSlideout/QuickviewSlideout.js +124 -0
- package/dist/cjs/components/src/components/Templates/QuickviewSlideout/index.js +17 -0
- package/dist/cjs/components/src/components/Templates/Recommendation/Recommendation.js +2 -1
- package/dist/cjs/components/src/components/Templates/RecommendationBundle/RecommendationBundle.js +2 -1
- package/dist/cjs/components/src/components/Templates/RecommendationGrid/RecommendationGrid.js +2 -1
- package/dist/cjs/components/src/components/Templates/Search/Search.js +10 -3
- package/dist/cjs/components/src/hooks/useA11y.js +3 -1
- package/dist/cjs/components/src/hooks/useAcRenderedInput.js +14 -3
- package/dist/cjs/components/src/hooks/useClickOutside.js +6 -3
- package/dist/cjs/components/src/hooks/useCreateController.js +24 -3
- package/dist/cjs/components/src/hooks/useTracking.js +14 -8
- package/dist/cjs/components/src/index.js +8 -17
- package/dist/cjs/components/src/providers/themeComponents.js +5 -20
- package/dist/cjs/components/src/setupTests.js +6 -10
- package/dist/cjs/components/src/themes/base/components/templates/index.js +0 -10
- package/dist/cjs/components/src/themes/bocachica/components/templates/index.js +0 -10
- package/dist/cjs/components/src/themes/pike/components/templates/index.js +0 -10
- package/dist/cjs/components/src/themes/snapnco/components/templates/index.js +0 -10
- package/dist/cjs/components/src/themes/snappy/components/templates/index.js +0 -10
- package/dist/cjs/components/src/utilities/Colour/Colour.js +0 -41
- package/dist/cjs/components/src/utilities/createImpressionObserver.js +1 -1
- package/dist/cjs/components/src/utilities/index.js +2 -0
- package/dist/cjs/components/src/utilities/lazyRenderMinSize.js +10 -0
- package/dist/cjs/components/src/utilities/selectionKey.js +12 -0
- package/dist/cjs/components/src/utilities/snapify.js +0 -27
- package/dist/cjs/src/Instantiators/RecommendationInstantiator.js +2 -1
- package/dist/cjs/src/Snap.js +41 -70
- package/dist/cjs/src/Templates/SnapTemplates.js +194 -82
- package/dist/cjs/src/Templates/Stores/LibraryStore.js +80 -60
- package/dist/cjs/src/Templates/Stores/TabManagerStore.js +151 -0
- package/dist/cjs/src/Templates/Stores/TemplateEditor/TemplateEditorStore.js +6 -1
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/configUI.js +2 -5
- package/dist/cjs/src/Templates/Stores/TemplateStore.js +49 -12
- package/dist/cjs/src/Templates/Stores/library/components/QuickviewModal.js +5 -0
- package/dist/cjs/src/Templates/Stores/library/components/QuickviewSlideout.js +5 -0
- package/dist/cjs/src/Templates/Stores/library/currencies/currencies.js +1433 -0
- package/dist/cjs/src/Templates/Stores/library/languages/ar.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/de.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/en.js +1 -0
- package/dist/cjs/src/Templates/Stores/library/languages/es.js +102 -526
- package/dist/cjs/src/Templates/Stores/library/languages/fr.js +105 -527
- package/dist/cjs/src/Templates/Stores/library/languages/hi.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/it.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/ja.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/ko.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/nl.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/pt.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/ru.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/tr.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/vi.js +487 -0
- package/dist/cjs/src/Templates/Stores/library/languages/zh.js +487 -0
- package/dist/cjs/src/Templates/index.js +3 -1
- package/dist/cjs/src/create/createAutocompleteController.js +7 -1
- package/dist/cjs/src/create/createRecommendationController.js +1 -0
- package/dist/cjs/src/create/createSearchController.js +1 -0
- package/dist/cjs/src/create/index.js +1 -3
- package/dist/cjs/src/index.js +3 -1
- package/dist/cjs/src/setupEvents.js +0 -44
- package/dist/cjs/src/utils/index.js +1 -3
- package/dist/esm/components/src/components/Atoms/Button/Button.d.ts +1 -3
- package/dist/esm/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
- package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts +1 -6
- package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.js +26 -63
- package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts +0 -13
- package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts.map +1 -1
- package/dist/esm/components/src/components/Atoms/Icon/paths.js +0 -13
- package/dist/esm/components/src/components/Atoms/Image/Image.d.ts +5 -0
- package/dist/esm/components/src/components/Atoms/Image/Image.d.ts.map +1 -1
- package/dist/esm/components/src/components/Atoms/Image/Image.js +10 -2
- package/dist/esm/components/src/components/Atoms/ProductDetail/ProductDetail.d.ts +18 -0
- package/dist/esm/components/src/components/Atoms/ProductDetail/ProductDetail.d.ts.map +1 -0
- package/dist/esm/components/src/components/Atoms/ProductDetail/ProductDetail.js +89 -0
- package/dist/esm/components/src/components/Atoms/ProductDetail/index.d.ts +3 -0
- package/dist/esm/components/src/components/Atoms/ProductDetail/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Atoms/ProductDetail/index.js +3 -0
- package/dist/esm/components/src/components/Atoms/TemplateSelect/TemplateSelect.d.ts +1 -1
- package/dist/esm/components/src/components/Atoms/TemplateSelect/TemplateSelect.d.ts.map +1 -1
- package/dist/esm/components/src/components/Atoms/TemplateSelect/TemplateSelect.js +16 -3
- package/dist/esm/components/src/components/Molecules/CalloutBadge/CalloutBadge.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/CalloutBadge/CalloutBadge.js +4 -1
- package/dist/esm/components/src/components/Molecules/Gallery/Gallery.d.ts +28 -0
- package/dist/esm/components/src/components/Molecules/Gallery/Gallery.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/Gallery/Gallery.js +292 -0
- package/dist/esm/components/src/components/Molecules/Gallery/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/Gallery/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/Gallery/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/Grid/Grid.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Grid/Grid.js +10 -14
- package/dist/esm/components/src/components/Molecules/List/List.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/List/List.js +10 -14
- package/dist/esm/components/src/components/Molecules/Modal/Modal.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Modal/Modal.js +22 -3
- package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts +2 -2
- package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.js +1 -1
- package/dist/esm/components/src/components/Molecules/ProductDetailTable/ProductDetailTable.d.ts +14 -0
- package/dist/esm/components/src/components/Molecules/ProductDetailTable/ProductDetailTable.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ProductDetailTable/ProductDetailTable.js +109 -0
- package/dist/esm/components/src/components/Molecules/ProductDetailTable/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ProductDetailTable/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ProductDetailTable/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/QuantityPicker/QuantityPicker.d.ts +43 -0
- package/dist/esm/components/src/components/Molecules/QuantityPicker/QuantityPicker.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/QuantityPicker/QuantityPicker.js +130 -0
- package/dist/esm/components/src/components/Molecules/QuantityPicker/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/QuantityPicker/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/QuantityPicker/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/RadioList/RadioList.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/RadioList/RadioList.js +10 -14
- package/dist/esm/components/src/components/Molecules/Result/Result.d.ts +6 -7
- package/dist/esm/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Result/Result.js +28 -36
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts +0 -3
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.js +2 -28
- package/dist/esm/components/src/components/Molecules/Select/Select.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Select/Select.js +10 -14
- package/dist/esm/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Slideout/Slideout.js +34 -27
- package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.d.ts +1 -0
- package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.js +37 -8
- package/dist/esm/components/src/components/Molecules/Swatches/Swatches.js +1 -1
- package/dist/esm/components/src/components/Molecules/TabSelection/TabSelection.d.ts +32 -0
- package/dist/esm/components/src/components/Molecules/TabSelection/TabSelection.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/TabSelection/TabSelection.js +102 -0
- package/dist/esm/components/src/components/Molecules/TabSelection/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/TabSelection/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/TabSelection/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/TemplatesEditor/TemplatesEditor.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/TemplatesEditor/TemplatesEditor.js +1 -1
- package/dist/esm/components/src/components/Molecules/VariantSelection/VariantSelection.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/VariantSelection/VariantSelection.js +7 -1
- package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.d.ts +3 -1
- package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.js +25 -10
- package/dist/esm/components/src/components/Organisms/Layout/Layout.d.ts +3 -1
- package/dist/esm/components/src/components/Organisms/Layout/Layout.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/Layout/Layout.js +15 -1
- package/dist/esm/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.d.ts +53 -0
- package/dist/esm/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.js +605 -0
- package/dist/esm/components/src/components/Organisms/QuickviewLayout/index.d.ts +2 -0
- package/dist/esm/components/src/components/Organisms/QuickviewLayout/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/QuickviewLayout/index.js +1 -0
- package/dist/esm/components/src/components/Organisms/Results/Results.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/Results/Results.js +4 -4
- package/dist/esm/components/src/components/Organisms/Toolbar/Toolbar.d.ts +3 -1
- package/dist/esm/components/src/components/Organisms/Toolbar/Toolbar.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/Toolbar/Toolbar.js +2 -1
- package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts +2 -0
- package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +13 -11
- package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts +2 -0
- package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +13 -11
- package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts +2 -0
- package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +12 -10
- package/dist/esm/components/src/components/Templates/QuickviewModal/QuickviewModal.d.ts +12 -0
- package/dist/esm/components/src/components/Templates/QuickviewModal/QuickviewModal.d.ts.map +1 -0
- package/dist/esm/components/src/components/Templates/QuickviewModal/QuickviewModal.js +147 -0
- package/dist/esm/components/src/components/Templates/QuickviewModal/index.d.ts +2 -0
- package/dist/esm/components/src/components/Templates/QuickviewModal/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Templates/QuickviewModal/index.js +1 -0
- package/dist/esm/components/src/components/Templates/QuickviewSlideout/QuickviewSlideout.d.ts +16 -0
- package/dist/esm/components/src/components/Templates/QuickviewSlideout/QuickviewSlideout.d.ts.map +1 -0
- package/dist/esm/components/src/components/Templates/QuickviewSlideout/QuickviewSlideout.js +118 -0
- package/dist/esm/components/src/components/Templates/QuickviewSlideout/index.d.ts +2 -0
- package/dist/esm/components/src/components/Templates/QuickviewSlideout/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Templates/QuickviewSlideout/index.js +1 -0
- package/dist/esm/components/src/components/Templates/Recommendation/Recommendation.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/Recommendation/Recommendation.js +3 -2
- package/dist/esm/components/src/components/Templates/RecommendationBundle/RecommendationBundle.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/RecommendationBundle/RecommendationBundle.js +3 -2
- package/dist/esm/components/src/components/Templates/RecommendationGrid/RecommendationGrid.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/RecommendationGrid/RecommendationGrid.js +3 -2
- package/dist/esm/components/src/components/Templates/Search/Search.d.ts +2 -0
- package/dist/esm/components/src/components/Templates/Search/Search.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/Search/Search.js +10 -3
- package/dist/esm/components/src/hooks/useA11y.d.ts.map +1 -1
- package/dist/esm/components/src/hooks/useA11y.js +3 -1
- package/dist/esm/components/src/hooks/useAcRenderedInput.d.ts +2 -2
- package/dist/esm/components/src/hooks/useAcRenderedInput.d.ts.map +1 -1
- package/dist/esm/components/src/hooks/useAcRenderedInput.js +15 -4
- package/dist/esm/components/src/hooks/useClickOutside.d.ts +1 -1
- package/dist/esm/components/src/hooks/useClickOutside.d.ts.map +1 -1
- package/dist/esm/components/src/hooks/useClickOutside.js +6 -3
- package/dist/esm/components/src/hooks/useCreateController.d.ts.map +1 -1
- package/dist/esm/components/src/hooks/useCreateController.js +24 -3
- package/dist/esm/components/src/hooks/useTracking.d.ts +9 -3
- package/dist/esm/components/src/hooks/useTracking.d.ts.map +1 -1
- package/dist/esm/components/src/hooks/useTracking.js +14 -8
- package/dist/esm/components/src/index.d.ts +7 -14
- package/dist/esm/components/src/index.d.ts.map +1 -1
- package/dist/esm/components/src/index.js +7 -14
- package/dist/esm/components/src/providers/langComponents.d.ts +8 -20
- package/dist/esm/components/src/providers/langComponents.d.ts.map +1 -1
- package/dist/esm/components/src/providers/themeComponents.d.ts +135 -256
- package/dist/esm/components/src/providers/themeComponents.d.ts.map +1 -1
- package/dist/esm/components/src/providers/themeComponents.js +5 -20
- package/dist/esm/components/src/providers/withTracking.d.ts +2 -2
- package/dist/esm/components/src/providers/withTracking.d.ts.map +1 -1
- package/dist/esm/components/src/setupTests.js +6 -10
- package/dist/esm/components/src/themes/base/components/templates/index.d.ts.map +1 -1
- package/dist/esm/components/src/themes/base/components/templates/index.js +0 -10
- package/dist/esm/components/src/themes/bocachica/components/templates/index.d.ts.map +1 -1
- package/dist/esm/components/src/themes/bocachica/components/templates/index.js +0 -10
- package/dist/esm/components/src/themes/pike/components/templates/index.d.ts.map +1 -1
- package/dist/esm/components/src/themes/pike/components/templates/index.js +0 -10
- package/dist/esm/components/src/themes/snapnco/components/templates/index.d.ts.map +1 -1
- package/dist/esm/components/src/themes/snapnco/components/templates/index.js +0 -10
- package/dist/esm/components/src/themes/snappy/components/templates/index.d.ts.map +1 -1
- package/dist/esm/components/src/themes/snappy/components/templates/index.js +0 -10
- package/dist/esm/components/src/utilities/Colour/Colour.d.ts +0 -15
- package/dist/esm/components/src/utilities/Colour/Colour.d.ts.map +1 -1
- package/dist/esm/components/src/utilities/Colour/Colour.js +0 -41
- package/dist/esm/components/src/utilities/createImpressionObserver.js +1 -1
- package/dist/esm/components/src/utilities/index.d.ts +2 -0
- package/dist/esm/components/src/utilities/index.d.ts.map +1 -1
- package/dist/esm/components/src/utilities/index.js +2 -0
- package/dist/esm/components/src/utilities/lazyRenderMinSize.d.ts +5 -0
- package/dist/esm/components/src/utilities/lazyRenderMinSize.d.ts.map +1 -0
- package/dist/esm/components/src/utilities/lazyRenderMinSize.js +7 -0
- package/dist/esm/components/src/utilities/selectionKey.d.ts +3 -0
- package/dist/esm/components/src/utilities/selectionKey.d.ts.map +1 -0
- package/dist/esm/components/src/utilities/selectionKey.js +9 -0
- package/dist/esm/components/src/utilities/snapify.d.ts +2 -3
- package/dist/esm/components/src/utilities/snapify.d.ts.map +1 -1
- package/dist/esm/components/src/utilities/snapify.js +2 -29
- package/dist/esm/src/Instantiators/RecommendationInstantiator.d.ts +4 -2
- package/dist/esm/src/Instantiators/RecommendationInstantiator.d.ts.map +1 -1
- package/dist/esm/src/Instantiators/RecommendationInstantiator.js +2 -1
- package/dist/esm/src/Snap.d.ts +8 -2
- package/dist/esm/src/Snap.d.ts.map +1 -1
- package/dist/esm/src/Snap.js +44 -73
- package/dist/esm/src/Templates/SnapTemplates.d.ts +32 -5
- package/dist/esm/src/Templates/SnapTemplates.d.ts.map +1 -1
- package/dist/esm/src/Templates/SnapTemplates.js +190 -81
- package/dist/esm/src/Templates/Stores/LibraryStore.d.ts +24 -45
- package/dist/esm/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/LibraryStore.js +79 -59
- package/dist/esm/src/Templates/Stores/TabManagerStore.d.ts +29 -0
- package/dist/esm/src/Templates/Stores/TabManagerStore.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/TabManagerStore.js +146 -0
- package/dist/esm/src/Templates/Stores/TemplateEditor/TemplateEditorStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/TemplateEditorStore.js +6 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/configUI.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/configUI.js +2 -5
- package/dist/esm/src/Templates/Stores/TemplateStore.d.ts +39 -25
- package/dist/esm/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateStore.js +49 -12
- package/dist/esm/src/Templates/Stores/library/components/QuickviewModal.d.ts +2 -0
- package/dist/esm/src/Templates/Stores/library/components/QuickviewModal.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/components/QuickviewModal.js +1 -0
- package/dist/esm/src/Templates/Stores/library/components/QuickviewSlideout.d.ts +2 -0
- package/dist/esm/src/Templates/Stores/library/components/QuickviewSlideout.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/components/QuickviewSlideout.js +1 -0
- package/dist/esm/src/Templates/Stores/library/currencies/currencies.d.ts +1270 -0
- package/dist/esm/src/Templates/Stores/library/currencies/currencies.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/currencies/currencies.js +1430 -0
- package/dist/esm/src/Templates/Stores/library/languages/ar.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/ar.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/ar.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/de.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/de.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/de.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/en.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/library/languages/en.js +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/es.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/library/languages/es.js +102 -526
- package/dist/esm/src/Templates/Stores/library/languages/fr.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/library/languages/fr.js +105 -527
- package/dist/esm/src/Templates/Stores/library/languages/hi.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/hi.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/hi.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/it.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/it.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/it.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/ja.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/ja.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/ja.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/ko.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/ko.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/ko.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/nl.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/nl.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/nl.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/pt.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/pt.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/pt.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/ru.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/ru.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/ru.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/tr.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/tr.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/tr.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/vi.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/vi.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/vi.js +484 -0
- package/dist/esm/src/Templates/Stores/library/languages/zh.d.ts +3 -0
- package/dist/esm/src/Templates/Stores/library/languages/zh.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/languages/zh.js +484 -0
- package/dist/esm/src/Templates/index.d.ts +1 -1
- package/dist/esm/src/Templates/index.d.ts.map +1 -1
- package/dist/esm/src/Templates/index.js +1 -1
- package/dist/esm/src/create/createAutocompleteController.js +7 -1
- package/dist/esm/src/create/createRecommendationController.js +1 -0
- package/dist/esm/src/create/createSearchController.js +1 -0
- package/dist/esm/src/create/index.d.ts +0 -1
- package/dist/esm/src/create/index.d.ts.map +1 -1
- package/dist/esm/src/create/index.js +0 -1
- package/dist/esm/src/index.d.ts +1 -1
- package/dist/esm/src/index.d.ts.map +1 -1
- package/dist/esm/src/index.js +1 -1
- package/dist/esm/src/setupEvents.d.ts +0 -13
- package/dist/esm/src/setupEvents.d.ts.map +1 -1
- package/dist/esm/src/setupEvents.js +0 -44
- package/dist/esm/src/types.d.ts +10 -14
- package/dist/esm/src/types.d.ts.map +1 -1
- package/dist/esm/src/utils/index.d.ts +0 -1
- package/dist/esm/src/utils/index.d.ts.map +1 -1
- package/dist/esm/src/utils/index.js +0 -1
- package/eslint/src/index.cjs +5 -0
- package/eslint/src/validate-config.cjs +473 -0
- package/package.json +16 -16
- package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +0 -99
- package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.js +0 -17
- package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +0 -221
- package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/index.js +0 -17
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +0 -209
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.js +0 -17
- package/dist/cjs/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +0 -258
- package/dist/cjs/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +0 -282
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +0 -173
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.js +0 -17
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +0 -577
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.js +0 -17
- package/dist/cjs/components/src/components/Molecules/ChatResult/ChatResult.js +0 -252
- package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +0 -113
- package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +0 -107
- package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/index.js +0 -17
- package/dist/cjs/components/src/components/Organisms/Chat/Chat.js +0 -621
- package/dist/cjs/components/src/components/Organisms/Chat/Chat.lang.js +0 -105
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatAttachments.js +0 -104
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +0 -161
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComposer.js +0 -166
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +0 -369
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatHistory.js +0 -130
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatMessages.js +0 -218
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +0 -123
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSideChat.js +0 -173
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +0 -149
- package/dist/cjs/components/src/components/Organisms/Chat/components/chatAccentTheme.js +0 -60
- package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +0 -66
- package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatGestures.js +0 -96
- package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +0 -113
- package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +0 -135
- package/dist/cjs/components/src/components/Organisms/Chat/index.js +0 -18
- package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.js +0 -94
- package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.lang.js +0 -11
- package/dist/cjs/components/src/components/Organisms/ChatButton/index.js +0 -18
- package/dist/cjs/components/src/components/Templates/Chat/Chat.js +0 -47
- package/dist/cjs/components/src/components/Templates/ChatButton/ChatButton.js +0 -47
- package/dist/cjs/components/src/themes/base/components/templates/chat.js +0 -6
- package/dist/cjs/components/src/themes/base/components/templates/chatButton.js +0 -6
- package/dist/cjs/components/src/themes/bocachica/components/templates/chat.js +0 -6
- package/dist/cjs/components/src/themes/bocachica/components/templates/chatButton.js +0 -6
- package/dist/cjs/components/src/themes/pike/components/templates/chat.js +0 -6
- package/dist/cjs/components/src/themes/pike/components/templates/chatButton.js +0 -6
- package/dist/cjs/components/src/themes/snapnco/components/templates/chat.js +0 -6
- package/dist/cjs/components/src/themes/snapnco/components/templates/chatButton.js +0 -6
- package/dist/cjs/components/src/themes/snappy/components/templates/chat.js +0 -6
- package/dist/cjs/components/src/themes/snappy/components/templates/chatButton.js +0 -6
- package/dist/cjs/components/src/themes/themeComponents/chat.js +0 -14
- package/dist/cjs/components/src/themes/themeComponents/chatButton.js +0 -9
- package/dist/cjs/src/Templates/Stores/library/components/Chat.js +0 -5
- package/dist/cjs/src/Templates/Stores/library/components/ChatButton.js +0 -5
- package/dist/cjs/src/Templates/Stores/library/currencies/aud.js +0 -10
- package/dist/cjs/src/Templates/Stores/library/currencies/eur.js +0 -10
- package/dist/cjs/src/Templates/Stores/library/currencies/usd.js +0 -10
- package/dist/cjs/src/create/createChatController.js +0 -30
- package/dist/cjs/src/utils/applyChatTargetInject.js +0 -25
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts +0 -17
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts.map +0 -1
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +0 -92
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts +0 -2
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.js +0 -1
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts +0 -30
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +0 -215
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts +0 -2
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.js +0 -1
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +0 -19
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +0 -203
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts +0 -2
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.js +0 -1
- package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts +0 -36
- package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +0 -252
- package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts +0 -2
- package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatMessageText/index.js +0 -1
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts +0 -38
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +0 -276
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts +0 -2
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.js +0 -1
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts +0 -19
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +0 -167
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts +0 -2
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.js +0 -1
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts +0 -38
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +0 -571
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts +0 -2
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.js +0 -1
- package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts +0 -35
- package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.js +0 -246
- package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts +0 -2
- package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatResult/index.js +0 -1
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts +0 -24
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +0 -107
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts +0 -2
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.js +0 -1
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts +0 -16
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +0 -101
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts +0 -2
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.js +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts +0 -41
- package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/Chat.js +0 -615
- package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts +0 -76
- package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.js +0 -100
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts +0 -26
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.js +0 -98
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts +0 -13
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +0 -155
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts +0 -19
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.js +0 -160
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts +0 -18
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +0 -363
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts +0 -11
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.js +0 -124
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts +0 -30
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.js +0 -212
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts +0 -13
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +0 -117
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts +0 -19
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.js +0 -167
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts +0 -14
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +0 -143
- package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts +0 -15
- package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.js +0 -56
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts +0 -32
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +0 -62
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts +0 -40
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.js +0 -92
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts +0 -43
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +0 -109
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts +0 -26
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +0 -131
- package/dist/esm/components/src/components/Organisms/Chat/index.d.ts +0 -3
- package/dist/esm/components/src/components/Organisms/Chat/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/index.js +0 -2
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts +0 -18
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.js +0 -88
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts +0 -7
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.js +0 -8
- package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts +0 -3
- package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/ChatButton/index.js +0 -2
- package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts +0 -12
- package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts.map +0 -1
- package/dist/esm/components/src/components/Templates/Chat/Chat.js +0 -41
- package/dist/esm/components/src/components/Templates/Chat/index.d.ts +0 -2
- package/dist/esm/components/src/components/Templates/Chat/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Templates/Chat/index.js +0 -1
- package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts +0 -13
- package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts.map +0 -1
- package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.js +0 -41
- package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts +0 -2
- package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts.map +0 -1
- package/dist/esm/components/src/components/Templates/ChatButton/index.js +0 -1
- package/dist/esm/components/src/themes/base/components/templates/chat.d.ts +0 -4
- package/dist/esm/components/src/themes/base/components/templates/chat.d.ts.map +0 -1
- package/dist/esm/components/src/themes/base/components/templates/chat.js +0 -3
- package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts +0 -4
- package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts.map +0 -1
- package/dist/esm/components/src/themes/base/components/templates/chatButton.js +0 -3
- package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts +0 -4
- package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts.map +0 -1
- package/dist/esm/components/src/themes/bocachica/components/templates/chat.js +0 -3
- package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts +0 -4
- package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts.map +0 -1
- package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.js +0 -3
- package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts +0 -4
- package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts.map +0 -1
- package/dist/esm/components/src/themes/pike/components/templates/chat.js +0 -3
- package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts +0 -4
- package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts.map +0 -1
- package/dist/esm/components/src/themes/pike/components/templates/chatButton.js +0 -3
- package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts +0 -4
- package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts.map +0 -1
- package/dist/esm/components/src/themes/snapnco/components/templates/chat.js +0 -3
- package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts +0 -4
- package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts.map +0 -1
- package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.js +0 -3
- package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts +0 -4
- package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts.map +0 -1
- package/dist/esm/components/src/themes/snappy/components/templates/chat.js +0 -3
- package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts +0 -4
- package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts.map +0 -1
- package/dist/esm/components/src/themes/snappy/components/templates/chatButton.js +0 -3
- package/dist/esm/components/src/themes/themeComponents/chat.d.ts +0 -4
- package/dist/esm/components/src/themes/themeComponents/chat.d.ts.map +0 -1
- package/dist/esm/components/src/themes/themeComponents/chat.js +0 -11
- package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts +0 -4
- package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts.map +0 -1
- package/dist/esm/components/src/themes/themeComponents/chatButton.js +0 -6
- package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts +0 -2
- package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts.map +0 -1
- package/dist/esm/src/Templates/Stores/library/components/Chat.js +0 -1
- package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts +0 -2
- package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts.map +0 -1
- package/dist/esm/src/Templates/Stores/library/components/ChatButton.js +0 -1
- package/dist/esm/src/Templates/Stores/library/currencies/aud.d.ts +0 -8
- package/dist/esm/src/Templates/Stores/library/currencies/aud.d.ts.map +0 -1
- package/dist/esm/src/Templates/Stores/library/currencies/aud.js +0 -7
- package/dist/esm/src/Templates/Stores/library/currencies/eur.d.ts +0 -8
- package/dist/esm/src/Templates/Stores/library/currencies/eur.d.ts.map +0 -1
- package/dist/esm/src/Templates/Stores/library/currencies/eur.js +0 -7
- package/dist/esm/src/Templates/Stores/library/currencies/usd.d.ts +0 -8
- package/dist/esm/src/Templates/Stores/library/currencies/usd.d.ts.map +0 -1
- package/dist/esm/src/Templates/Stores/library/currencies/usd.js +0 -7
- package/dist/esm/src/create/createChatController.d.ts +0 -5
- package/dist/esm/src/create/createChatController.d.ts.map +0 -1
- package/dist/esm/src/create/createChatController.js +0 -28
- package/dist/esm/src/utils/applyChatTargetInject.d.ts +0 -3
- package/dist/esm/src/utils/applyChatTargetInject.d.ts.map +0 -1
- package/dist/esm/src/utils/applyChatTargetInject.js +0 -22
|
@@ -15,37 +15,20 @@ import { pluginScrollToTop } from './library/plugins/common/pluginScrollToTop';
|
|
|
15
15
|
import { pluginLogger } from './library/plugins/common/pluginLogger';
|
|
16
16
|
import { pluginKlaviyoEvents } from './library/plugins/common/pluginKlaviyoEvents';
|
|
17
17
|
import { CustomComponent } from './library/components/CustomComponent';
|
|
18
|
+
import { currencies } from './library/currencies/currencies';
|
|
19
|
+
export const currencyCodes = Object.keys(currencies);
|
|
18
20
|
export class LibraryStore {
|
|
19
21
|
constructor(params) {
|
|
20
22
|
this.themes = {};
|
|
21
23
|
this.components = {
|
|
22
24
|
search: {},
|
|
23
25
|
autocomplete: {},
|
|
26
|
+
quickview: {},
|
|
24
27
|
recommendation: {
|
|
25
28
|
bundle: {},
|
|
26
29
|
default: {},
|
|
27
30
|
email: {},
|
|
28
31
|
},
|
|
29
|
-
chat: {},
|
|
30
|
-
chatButton: {},
|
|
31
|
-
chatLoadingIndicator: {},
|
|
32
|
-
chatAttachmentContext: {},
|
|
33
|
-
chatInspirationResultMessage: {},
|
|
34
|
-
chatMessageText: {},
|
|
35
|
-
chatMessageUser: {},
|
|
36
|
-
chatProductComparisonMessage: {},
|
|
37
|
-
chatProductQueryMessage: {},
|
|
38
|
-
chatResult: {},
|
|
39
|
-
chatResultsDisplay: {},
|
|
40
|
-
chatSuggestedQuestions: {},
|
|
41
|
-
chatComparisonsTray: {},
|
|
42
|
-
chatComposer: {},
|
|
43
|
-
chatFacetsBar: {},
|
|
44
|
-
chatHistory: {},
|
|
45
|
-
chatMessages: {},
|
|
46
|
-
chatSessionFeedback: {},
|
|
47
|
-
chatSideChat: {},
|
|
48
|
-
chatTopicDrift: {},
|
|
49
32
|
badge: {},
|
|
50
33
|
result: {},
|
|
51
34
|
overlayResult: {},
|
|
@@ -67,6 +50,7 @@ export class LibraryStore {
|
|
|
67
50
|
paginationInfo: {},
|
|
68
51
|
slideshow: {},
|
|
69
52
|
price: {},
|
|
53
|
+
productDetail: {},
|
|
70
54
|
skeleton: {},
|
|
71
55
|
modal: {},
|
|
72
56
|
calloutBadge: {},
|
|
@@ -83,10 +67,12 @@ export class LibraryStore {
|
|
|
83
67
|
facetPaletteOptions: {},
|
|
84
68
|
facetSlider: {},
|
|
85
69
|
filter: {},
|
|
70
|
+
gallery: {},
|
|
86
71
|
loadMore: {},
|
|
87
72
|
overlayBadge: {},
|
|
88
73
|
pagination: {},
|
|
89
74
|
perPage: {},
|
|
75
|
+
quantityPicker: {},
|
|
90
76
|
radioList: {},
|
|
91
77
|
rating: {},
|
|
92
78
|
searchInput: {},
|
|
@@ -94,7 +80,9 @@ export class LibraryStore {
|
|
|
94
80
|
slideout: {},
|
|
95
81
|
sortBy: {},
|
|
96
82
|
swatches: {},
|
|
83
|
+
tabSelection: {},
|
|
97
84
|
variantSelection: {},
|
|
85
|
+
productDetailTable: {},
|
|
98
86
|
terms: {},
|
|
99
87
|
branchOverride: {},
|
|
100
88
|
facet: {},
|
|
@@ -175,6 +163,16 @@ export class LibraryStore {
|
|
|
175
163
|
(this.components.autocomplete.AutocompleteModal = (await import('./library/components/AutocompleteModal')).AutocompleteModal));
|
|
176
164
|
},
|
|
177
165
|
},
|
|
166
|
+
quickview: {
|
|
167
|
+
QuickviewModal: async () => {
|
|
168
|
+
return (this.components.quickview.QuickviewModal ||
|
|
169
|
+
(this.components.quickview.QuickviewModal = (await import('./library/components/QuickviewModal')).QuickviewModal));
|
|
170
|
+
},
|
|
171
|
+
QuickviewSlideout: async () => {
|
|
172
|
+
return (this.components.quickview.QuickviewSlideout ||
|
|
173
|
+
(this.components.quickview.QuickviewSlideout = (await import('./library/components/QuickviewSlideout')).QuickviewSlideout));
|
|
174
|
+
},
|
|
175
|
+
},
|
|
178
176
|
search: {
|
|
179
177
|
SearchCollapsible: async () => {
|
|
180
178
|
return (this.components.search.SearchCollapsible ||
|
|
@@ -224,33 +222,6 @@ export class LibraryStore {
|
|
|
224
222
|
},
|
|
225
223
|
},
|
|
226
224
|
},
|
|
227
|
-
chat: {
|
|
228
|
-
Chat: async () => {
|
|
229
|
-
return this.components.chat.Chat || (this.components.chat.Chat = (await import('./library/components/Chat')).Chat);
|
|
230
|
-
},
|
|
231
|
-
ChatButton: async () => {
|
|
232
|
-
return this.components.chat.ChatButton || (this.components.chat.ChatButton = (await import('./library/components/ChatButton')).ChatButton);
|
|
233
|
-
},
|
|
234
|
-
},
|
|
235
|
-
chatButton: {},
|
|
236
|
-
chatLoadingIndicator: {},
|
|
237
|
-
chatAttachmentContext: {},
|
|
238
|
-
chatInspirationResultMessage: {},
|
|
239
|
-
chatMessageText: {},
|
|
240
|
-
chatMessageUser: {},
|
|
241
|
-
chatProductComparisonMessage: {},
|
|
242
|
-
chatProductQueryMessage: {},
|
|
243
|
-
chatResult: {},
|
|
244
|
-
chatResultsDisplay: {},
|
|
245
|
-
chatSuggestedQuestions: {},
|
|
246
|
-
chatComparisonsTray: {},
|
|
247
|
-
chatComposer: {},
|
|
248
|
-
chatFacetsBar: {},
|
|
249
|
-
chatHistory: {},
|
|
250
|
-
chatMessages: {},
|
|
251
|
-
chatSessionFeedback: {},
|
|
252
|
-
chatSideChat: {},
|
|
253
|
-
chatTopicDrift: {},
|
|
254
225
|
badge: {},
|
|
255
226
|
result: {
|
|
256
227
|
Result: async () => {
|
|
@@ -280,6 +251,7 @@ export class LibraryStore {
|
|
|
280
251
|
paginationInfo: {},
|
|
281
252
|
slideshow: {},
|
|
282
253
|
price: {},
|
|
254
|
+
productDetail: {},
|
|
283
255
|
skeleton: {},
|
|
284
256
|
modal: {},
|
|
285
257
|
calloutBadge: {},
|
|
@@ -296,10 +268,12 @@ export class LibraryStore {
|
|
|
296
268
|
facetPaletteOptions: {},
|
|
297
269
|
facetSlider: {},
|
|
298
270
|
filter: {},
|
|
271
|
+
gallery: {},
|
|
299
272
|
loadMore: {},
|
|
300
273
|
overlayBadge: {},
|
|
301
274
|
pagination: {},
|
|
302
275
|
perPage: {},
|
|
276
|
+
quantityPicker: {},
|
|
303
277
|
radioList: {},
|
|
304
278
|
rating: {},
|
|
305
279
|
searchInput: {},
|
|
@@ -307,7 +281,9 @@ export class LibraryStore {
|
|
|
307
281
|
slideout: {},
|
|
308
282
|
sortBy: {},
|
|
309
283
|
swatches: {},
|
|
284
|
+
tabSelection: {},
|
|
310
285
|
variantSelection: {},
|
|
286
|
+
productDetailTable: {},
|
|
311
287
|
terms: {},
|
|
312
288
|
branchOverride: {},
|
|
313
289
|
facet: {},
|
|
@@ -322,27 +298,74 @@ export class LibraryStore {
|
|
|
322
298
|
termsList: {},
|
|
323
299
|
},
|
|
324
300
|
language: {
|
|
301
|
+
// English
|
|
325
302
|
en: async () => {
|
|
326
303
|
return this.locales.languages.en || (this.locales.languages.en = transformTranslationsToTheme((await import('./library/languages/en')).en));
|
|
327
304
|
},
|
|
305
|
+
// French
|
|
328
306
|
fr: async () => {
|
|
329
307
|
return this.locales.languages.fr || (this.locales.languages.fr = transformTranslationsToTheme((await import('./library/languages/fr')).fr));
|
|
330
308
|
},
|
|
309
|
+
// Spanish
|
|
331
310
|
es: async () => {
|
|
332
311
|
return this.locales.languages.es || (this.locales.languages.es = transformTranslationsToTheme((await import('./library/languages/es')).es));
|
|
333
312
|
},
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
313
|
+
// Arabic
|
|
314
|
+
ar: async () => {
|
|
315
|
+
return this.locales.languages.ar || (this.locales.languages.ar = transformTranslationsToTheme((await import('./library/languages/ar')).ar));
|
|
316
|
+
},
|
|
317
|
+
// Chinese
|
|
318
|
+
zh: async () => {
|
|
319
|
+
return this.locales.languages.zh || (this.locales.languages.zh = transformTranslationsToTheme((await import('./library/languages/zh')).zh));
|
|
320
|
+
},
|
|
321
|
+
// German
|
|
322
|
+
de: async () => {
|
|
323
|
+
return this.locales.languages.de || (this.locales.languages.de = transformTranslationsToTheme((await import('./library/languages/de')).de));
|
|
324
|
+
},
|
|
325
|
+
// Russian
|
|
326
|
+
ru: async () => {
|
|
327
|
+
return this.locales.languages.ru || (this.locales.languages.ru = transformTranslationsToTheme((await import('./library/languages/ru')).ru));
|
|
328
|
+
},
|
|
329
|
+
// Japanese
|
|
330
|
+
ja: async () => {
|
|
331
|
+
return this.locales.languages.ja || (this.locales.languages.ja = transformTranslationsToTheme((await import('./library/languages/ja')).ja));
|
|
332
|
+
},
|
|
333
|
+
// Portuguese
|
|
334
|
+
pt: async () => {
|
|
335
|
+
return this.locales.languages.pt || (this.locales.languages.pt = transformTranslationsToTheme((await import('./library/languages/pt')).pt));
|
|
336
|
+
},
|
|
337
|
+
// Korean
|
|
338
|
+
ko: async () => {
|
|
339
|
+
return this.locales.languages.ko || (this.locales.languages.ko = transformTranslationsToTheme((await import('./library/languages/ko')).ko));
|
|
340
|
+
},
|
|
341
|
+
// Italian
|
|
342
|
+
it: async () => {
|
|
343
|
+
return this.locales.languages.it || (this.locales.languages.it = transformTranslationsToTheme((await import('./library/languages/it')).it));
|
|
344
|
+
},
|
|
345
|
+
// Hindi
|
|
346
|
+
hi: async () => {
|
|
347
|
+
return this.locales.languages.hi || (this.locales.languages.hi = transformTranslationsToTheme((await import('./library/languages/hi')).hi));
|
|
348
|
+
},
|
|
349
|
+
// Turkish
|
|
350
|
+
tr: async () => {
|
|
351
|
+
return this.locales.languages.tr || (this.locales.languages.tr = transformTranslationsToTheme((await import('./library/languages/tr')).tr));
|
|
338
352
|
},
|
|
339
|
-
|
|
340
|
-
|
|
353
|
+
// Vietnamese
|
|
354
|
+
vi: async () => {
|
|
355
|
+
return this.locales.languages.vi || (this.locales.languages.vi = transformTranslationsToTheme((await import('./library/languages/vi')).vi));
|
|
341
356
|
},
|
|
342
|
-
|
|
343
|
-
|
|
357
|
+
// Dutch
|
|
358
|
+
nl: async () => {
|
|
359
|
+
return this.locales.languages.nl || (this.locales.languages.nl = transformTranslationsToTheme((await import('./library/languages/nl')).nl));
|
|
344
360
|
},
|
|
345
361
|
},
|
|
362
|
+
// the per-code importers keep the same async shape as language/theme importers, resolving from the statically imported currencies module
|
|
363
|
+
currency: currencyCodes.reduce((currencyImports, code) => {
|
|
364
|
+
currencyImports[code] = async () => {
|
|
365
|
+
return this.locales.currencies[code] || (this.locales.currencies[code] = currencies[code]);
|
|
366
|
+
};
|
|
367
|
+
return currencyImports;
|
|
368
|
+
}, {}),
|
|
346
369
|
};
|
|
347
370
|
const { components, unlocked } = params || {};
|
|
348
371
|
this.allowedComponentTypes = unlocked ? [...ALL_CUSTOM_COMPONENT_TYPES] : [...DEFAULT_CUSTOM_COMPONENT_TYPES];
|
|
@@ -373,10 +396,7 @@ export class LibraryStore {
|
|
|
373
396
|
async addComponentImport(type, name, componentFn) {
|
|
374
397
|
// only allow certain types based on unlocked status
|
|
375
398
|
if (this.allowedComponentTypes.includes(type) && this.components[type]) {
|
|
376
|
-
|
|
377
|
-
// literal-checked; custom overrides register by arbitrary name, hence the cast
|
|
378
|
-
const componentImports = this.import.component[type];
|
|
379
|
-
componentImports[name] = async () => {
|
|
399
|
+
this.import.component[type][name] = async () => {
|
|
380
400
|
return (this.components[type][name] ||
|
|
381
401
|
(this.components[type][name] = await CustomComponent({
|
|
382
402
|
type,
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { AbstractController, TabConfig } from '@athoscommerce/snap-controller';
|
|
2
|
+
export declare const TAB_ID_DEFAULT_PARAM = "tab";
|
|
3
|
+
type RedirectSettings = {
|
|
4
|
+
merchandising?: boolean;
|
|
5
|
+
singleResult?: boolean;
|
|
6
|
+
};
|
|
7
|
+
export type Tab = {
|
|
8
|
+
id: string;
|
|
9
|
+
param: string;
|
|
10
|
+
controller: AbstractController;
|
|
11
|
+
siteId: string;
|
|
12
|
+
prefetch: boolean;
|
|
13
|
+
label?: string;
|
|
14
|
+
redirects: RedirectSettings;
|
|
15
|
+
};
|
|
16
|
+
export declare function getActiveTabConfig<TabType extends TabConfig>(tabs: TabType[]): TabType | undefined;
|
|
17
|
+
export declare class TabManagerStore {
|
|
18
|
+
tabs: Tab[];
|
|
19
|
+
active: Tab | undefined;
|
|
20
|
+
param: string;
|
|
21
|
+
constructor(tabConfigs: TabConfig[], controllers: AbstractController[]);
|
|
22
|
+
setActive: (id: string, updateUrl?: boolean) => void;
|
|
23
|
+
private setRedirects;
|
|
24
|
+
private searchTab;
|
|
25
|
+
getTab: (id: string) => Tab;
|
|
26
|
+
getTabByParam: (param: string) => Tab;
|
|
27
|
+
}
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=TabManagerStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabManagerStore.d.ts","sourceRoot":"","sources":["../../../../../src/Templates/Stores/TabManagerStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAA4C,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAK9H,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAE1C,KAAK,gBAAgB,GAAG;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAIF,MAAM,MAAM,GAAG,GAAG;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,kBAAkB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,SAAS,EAAE,gBAAgB,CAAC;CAC5B,CAAC;AAIF,wBAAgB,kBAAkB,CAAC,OAAO,SAAS,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,GAAG,SAAS,CAUlG;AAED,qBAAa,eAAe;IACpB,IAAI,EAAE,GAAG,EAAE,CAAM;IACjB,MAAM,EAAE,GAAG,GAAG,SAAS,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IAErB,YAAY,UAAU,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAiFrE;IAEM,SAAS,OAAQ,MAAM,+BAqB5B;IAIF,OAAO,CAAC,YAAY,CAQlB;IAEF,OAAO,CAAC,SAAS,CAUf;IAEK,MAAM,OAAQ,MAAM,SAEzB;IAEK,aAAa,UAAW,MAAM,SAEnC;CACF"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { makeObservable, observable, action } from 'mobx';
|
|
2
|
+
import { ControllerTypes } from '@athoscommerce/snap-controller';
|
|
3
|
+
import { url } from '@athoscommerce/snap-toolbox';
|
|
4
|
+
export const TAB_ID_DEFAULT_PARAM = 'tab';
|
|
5
|
+
// resolves the active tab straight from the url - tab controllers begin searching as soon as they
|
|
6
|
+
// are targeted, which happens before any TabManagerStore exists
|
|
7
|
+
export function getActiveTabConfig(tabs) {
|
|
8
|
+
const defaultTab = tabs.filter((tab) => tab.default)[0] || tabs[0];
|
|
9
|
+
const paramValue = url(window.location.href)?.params.query[TAB_ID_DEFAULT_PARAM];
|
|
10
|
+
if (!paramValue) {
|
|
11
|
+
return defaultTab;
|
|
12
|
+
}
|
|
13
|
+
const activeParam = decodeURIComponent(paramValue);
|
|
14
|
+
return tabs.filter((tab) => tab.param == activeParam)[0] || defaultTab;
|
|
15
|
+
}
|
|
16
|
+
export class TabManagerStore {
|
|
17
|
+
constructor(tabConfigs, controllers) {
|
|
18
|
+
this.tabs = [];
|
|
19
|
+
this.setActive = (id, updateUrl = true) => {
|
|
20
|
+
const tabToSelect = this.getTab(id);
|
|
21
|
+
if (!tabToSelect || tabToSelect.id === this.active?.id) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const previousTab = this.active;
|
|
25
|
+
this.setRedirects(previousTab, false);
|
|
26
|
+
this.active = tabToSelect;
|
|
27
|
+
this.setRedirects(tabToSelect, true);
|
|
28
|
+
if (tabToSelect.controller.type == ControllerTypes.search) {
|
|
29
|
+
if (updateUrl) {
|
|
30
|
+
// to remove page chain: `.remove('page')` to urlManager.set(...)
|
|
31
|
+
tabToSelect.controller.urlManager.set(this.param, tabToSelect.param).go();
|
|
32
|
+
}
|
|
33
|
+
this.searchTab(tabToSelect);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
// every tab shares the url and the autocomplete input, so an inactive tab landing on a single
|
|
37
|
+
// result or a merchandising redirect would navigate away from the tab the shopper is viewing
|
|
38
|
+
this.setRedirects = (tab, enabled) => {
|
|
39
|
+
if (!tab) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const config = tab.controller.config;
|
|
43
|
+
config.settings = config.settings || {};
|
|
44
|
+
config.settings.redirects = enabled ? { ...tab.redirects } : { merchandising: false, singleResult: false };
|
|
45
|
+
};
|
|
46
|
+
this.searchTab = (tab) => {
|
|
47
|
+
if (tab.controller.type != ControllerTypes.search) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
const searchController = tab.controller;
|
|
51
|
+
if (!searchController.store.loading && !searchController.store.loaded) {
|
|
52
|
+
searchController.search();
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
this.getTab = (id) => {
|
|
56
|
+
return this.tabs?.filter((tab) => tab.id == id)[0];
|
|
57
|
+
};
|
|
58
|
+
this.getTabByParam = (param) => {
|
|
59
|
+
return this.tabs?.filter((tab) => tab.param == param)[0];
|
|
60
|
+
};
|
|
61
|
+
this.param = TAB_ID_DEFAULT_PARAM;
|
|
62
|
+
const startingTabConfig = tabConfigs.filter((tab) => tab.default)[0] || tabConfigs[0];
|
|
63
|
+
let urlParam;
|
|
64
|
+
tabConfigs.forEach((tabConfig) => {
|
|
65
|
+
const cntrlr = controllers.filter((controller) => controller.id == tabConfig.id)[0];
|
|
66
|
+
if (!cntrlr) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
const newTab = {
|
|
70
|
+
id: tabConfig.id,
|
|
71
|
+
label: tabConfig.label,
|
|
72
|
+
siteId: tabConfig.siteId,
|
|
73
|
+
param: tabConfig.param,
|
|
74
|
+
controller: cntrlr,
|
|
75
|
+
// search-tab only setting - autocomplete has nothing to fetch until the shopper types
|
|
76
|
+
prefetch: 'prefetch' in tabConfig ? tabConfig.prefetch ?? true : true,
|
|
77
|
+
redirects: { ...(cntrlr.config.settings?.redirects || {}) },
|
|
78
|
+
};
|
|
79
|
+
if (cntrlr.type == ControllerTypes.autocomplete) {
|
|
80
|
+
const autocompleteController = cntrlr;
|
|
81
|
+
// hidden form inputs for tab selections
|
|
82
|
+
if (!autocompleteController.config.action) {
|
|
83
|
+
autocompleteController.eventManager.on('beforeSubmit', async (context, next) => {
|
|
84
|
+
if (context.input?.form) {
|
|
85
|
+
addHiddenFormInput(context.input.form, this.param, this.active?.param || newTab.param);
|
|
86
|
+
}
|
|
87
|
+
await next();
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
if (cntrlr.type == ControllerTypes.search) {
|
|
92
|
+
const searchController = cntrlr;
|
|
93
|
+
// read the active tab from the url on initial load
|
|
94
|
+
if (!urlParam) {
|
|
95
|
+
urlParam = getTabParamFromUrlState(searchController.urlManager.state[this.param]);
|
|
96
|
+
}
|
|
97
|
+
// functionality for back/forward browser buttons
|
|
98
|
+
searchController.urlManager.subscribe((prev, next) => {
|
|
99
|
+
const nextParam = getTabParamFromUrlState(next?.[this.param]);
|
|
100
|
+
const nextTab = (nextParam && this.getTabByParam(nextParam)) || this.getTab(startingTabConfig.id);
|
|
101
|
+
if (nextTab) {
|
|
102
|
+
this.setActive(nextTab.id, false);
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
this.tabs.push(newTab);
|
|
107
|
+
});
|
|
108
|
+
this.active = (urlParam && this.getTabByParam(urlParam)) || this.getTab(startingTabConfig.id) || this.tabs[0];
|
|
109
|
+
makeObservable(this, {
|
|
110
|
+
tabs: observable,
|
|
111
|
+
active: observable,
|
|
112
|
+
setActive: action,
|
|
113
|
+
});
|
|
114
|
+
// the active tab always searches - the rest only when they opt into prefetching
|
|
115
|
+
this.tabs.forEach((tab) => {
|
|
116
|
+
if (tab.id != this.active?.id) {
|
|
117
|
+
this.setRedirects(tab, false);
|
|
118
|
+
}
|
|
119
|
+
if (tab.prefetch || tab.id == this.active?.id) {
|
|
120
|
+
this.searchTab(tab);
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
function addHiddenFormInput(form, name, value) {
|
|
126
|
+
// match by property rather than an interpolated attribute selector to avoid selector injection
|
|
127
|
+
const existingElem = Array.from(form.querySelectorAll('input[type="hidden"]')).find((elem) => elem.name === name);
|
|
128
|
+
if (existingElem) {
|
|
129
|
+
// keep the value current - the active tab can change after the input was first appended
|
|
130
|
+
existingElem.value = value;
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
const inputElem = document.createElement('input');
|
|
134
|
+
inputElem.type = 'hidden';
|
|
135
|
+
inputElem.name = name;
|
|
136
|
+
inputElem.value = value;
|
|
137
|
+
form.append(inputElem);
|
|
138
|
+
}
|
|
139
|
+
// custom url params always deserialize as arrays when parsed fresh from the url, but can be a
|
|
140
|
+
// plain string when read back from an in-session localState set() - handle both shapes
|
|
141
|
+
function getTabParamFromUrlState(value) {
|
|
142
|
+
if (Array.isArray(value)) {
|
|
143
|
+
return value[0];
|
|
144
|
+
}
|
|
145
|
+
return typeof value == 'string' ? value : undefined;
|
|
146
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TemplateEditorStore.d.ts","sourceRoot":"","sources":["../../../../../../src/Templates/Stores/TemplateEditor/TemplateEditorStore.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TemplateEditorStore.d.ts","sourceRoot":"","sources":["../../../../../../src/Templates/Stores/TemplateEditor/TemplateEditorStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC5G,OAAO,EAAE,YAAY,EAAe,MAAM,6BAA6B,CAAC;AAKxE,OAAO,EAAE,cAAc,EAAsB,cAAc,EAAgD,MAAM,kBAAkB,CAAC;AACpI,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAE1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,uBAAuB,EAAgB,MAAM,4BAA4B,CAAC;AAC1H,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAY1D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAgB/D,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,eAAe,CAAC;AAEvD,KAAK,iBAAiB,GAAG;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,UAAU,CAAC;CACtB,CAAC;AAEF,KAAK,WAAW,GAAG;IAClB,iBAAiB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC9B,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC,YAAY,CAAC,EAAE,+BAA+B,CAAC;CAC/C,CAAC;AAEF,KAAK,aAAa,GAAG;IACpB,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;IAClC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;CACxC,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACpC,CAAC;AAEF,KAAK,0BAA0B,GAAG;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACpC,CAAC;AAEF,KAAK,aAAa,GAAG;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,KAAK,8BAA8B,GAAG;IACrC,MAAM,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;IACjC,KAAK,CAAC,EACH,OAAO,GACP;QACA,OAAO,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;QAClC,SAAS,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;QACpC,SAAS,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;KACnC,CAAC;IACL,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,qBAAa,mBAAmB;IAC/B,OAAO,EAAE,YAAY,CAAC;IACtB,WAAW,EAAE,iBAAiB,CAG5B;IACF,KAAK,EAAE,WAAW,CAEhB;IACF,SAAS,EAAE;QACV,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACtC,UAAU,EAAE,uBAAuB,CAAC;QACpC,KAAK,EAAE,0BAA0B,CAAC;QAClC,OAAO,EAAE,aAAa,CAAC;KACvB,CAQC;IACF,OAAO,EAAE;QACR,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,GAAG;YAAE,QAAQ,EAAE,aAAa,CAAC;YAAC,QAAQ,EAAE,aAAa,CAAA;SAAE,CAAC;QAC7F,UAAU,EAAE,uBAAuB,CAAC;QACpC,KAAK,EAAE,wBAAwB,CAAC;QAChC,OAAO,EAAE,aAAa,CAAC;KACvB,CAcC;IAEF,IAAI,EAAE,UAAU,EAAE,CAAkC;IAEpD,cAAc,EAAE,cAAc,CAAC;IAE/B,cAAc,EAAE;QACf,SAAS,EAAE;YACV,MAAM,EAAE,gBAAgB,EAAE,CAAC;YAC3B,KAAK,EAAE,gBAAgB,EAAE,CAAC;SAC1B,CAAC;QACF,WAAW,EAAE;YACZ,MAAM,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC7C,YAAY,EAAE,gBAAgB,CAAC,sBAAsB,CAAC,EAAE,CAAC;SACzD,CAAC;QACF,OAAO,EAAE;YACR,MAAM,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,YAAY,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;SAC1C,CAAC;KACF,CAaC;IAEF,YAAY,EAAE,cAAc,EAAE,EAAE;QAAE,cAAc,EAAE,cAAc,CAAA;KAAE,EAkDjE;IAED,UAAU,CAAC,GAAG,EAAE,UAAU,QAGzB;IAED,UAAU,CAAC,IAAI,EAAE,OAAO,QAGvB;IAED,YAAY,CAAC,SAAS,EAAE;QACvB,MAAM,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACvC,KAAK,CAAC,EAAE,0BAA0B,CAAC;QACnC,MAAM,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAAC,QAAQ,CAAC,EAAE,yBAAyB,CAAA;SAAE,CAAC;QACvF,YAAY,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAAC,QAAQ,CAAC,EAAE,+BAA+B,CAAA;SAAE,CAAC;KACnG,QA2DA;IAED,cAAc,SAGb;IAED,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,QAQ7C;IAED,iBAAiB,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,QAuBxD;IAED,QAAQ,CAAC,SAAS,EAAE,MAAM,QAqDzB;IAED,gBAAgB,QAAS;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,UAsBzD;IAEF,qBAAqB,CAAC,cAAc,SAAS,gBAAgB,GAAG,sBAAsB,EAAE,GAAG,EAAE;QAC5F,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,UAAU,EAAE,cAAc,CAAC;KAC3B,QAyBA;IAQD,iBAAiB,QAAS;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,UAsHrE;IAEF,kBAAkB,CAAC,cAAc,SAAS,gBAAgB,GAAG,sBAAsB,EAAE,UAAU,EAAE,cAAc,QA8B9G;IAED,UAAU;;;;;QAyCT;IAED,uBAAuB,CAAC,OAAO,CAAC,EAAE,8BAA8B,GAAG,mBAAmB,CAsIrF;CACD"}
|
|
@@ -200,7 +200,12 @@ export class TemplateEditorStore {
|
|
|
200
200
|
this.templatesStore = templatesStore;
|
|
201
201
|
this.storage = new StorageStore({ type: StorageType.local, key: TEMPLATE_STORE_KEY });
|
|
202
202
|
this.storedState = this.storage.get('editor') || this.storedState;
|
|
203
|
-
|
|
203
|
+
const { language: configLanguage, currency: configCurrency, ...restConfig } = templatesStore.config?.config || {};
|
|
204
|
+
this.initial.config = deepmerge(this.initial.config, {
|
|
205
|
+
...restConfig,
|
|
206
|
+
...(configLanguage ? { language: configLanguage.toLowerCase() } : {}),
|
|
207
|
+
...(configCurrency ? { currency: configCurrency.toLowerCase() } : {}),
|
|
208
|
+
});
|
|
204
209
|
this.initial.controller = {}; // set when registering controllers
|
|
205
210
|
// set initial targets
|
|
206
211
|
if (templatesStore.config.search?.targets)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configUI.d.ts","sourceRoot":"","sources":["../../../../../../../src/Templates/Stores/TemplateEditor/uiAbstractions/configUI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"configUI.d.ts","sourceRoot":"","sources":["../../../../../../../src/Templates/Stores/TemplateEditor/uiAbstractions/configUI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,eAAO,MAAM,QAAQ,UAAW,mBAAmB,KAAG,gBAAgB,EAkHrE,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { currencyCodes } from '../../LibraryStore';
|
|
1
2
|
export const configUI = (store) => {
|
|
2
3
|
return [
|
|
3
4
|
{
|
|
@@ -90,11 +91,7 @@ export const configUI = (store) => {
|
|
|
90
91
|
getDisplayState: () => 'visible',
|
|
91
92
|
getOptions: () => [
|
|
92
93
|
{
|
|
93
|
-
options:
|
|
94
|
-
{ label: 'USD', value: 'usd' },
|
|
95
|
-
{ label: 'EUR', value: 'eur' },
|
|
96
|
-
{ label: 'AUD', value: 'aud' },
|
|
97
|
-
],
|
|
94
|
+
options: currencyCodes.map((code) => ({ label: code.toUpperCase(), value: code })),
|
|
98
95
|
},
|
|
99
96
|
],
|
|
100
97
|
getValue: () => {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { h } from 'preact';
|
|
2
|
-
import { type SearchStoreConfigSettings, type SearchStoreConfig, type AutocompleteStoreConfigSettings, type AutocompleteStoreConfig, type
|
|
2
|
+
import { type SearchStoreConfigSettings, type SearchStoreConfig, type AutocompleteStoreConfigSettings, type AutocompleteStoreConfig, type QuickviewConfig } from '@athoscommerce/snap-store-mobx';
|
|
3
3
|
import { StorageStore } from '@athoscommerce/snap-toolbox';
|
|
4
4
|
import { ThemeStore, ThemeStoreThemeConfig } from './ThemeStore';
|
|
5
5
|
import { TargetStore } from './TargetStore';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import type { PluginFunction } from '@athoscommerce/snap-controller';
|
|
6
|
+
import { TabManagerStore } from './TabManagerStore';
|
|
7
|
+
import { CurrencyCodes, CurrencyCodeInput, LanguageCodes, LanguageCodeInput, LibraryImports, LibraryStore } from './LibraryStore';
|
|
8
|
+
import type { PluginFunction, SearchTabConfig, AutocompleteTabConfig, AbstractController } from '@athoscommerce/snap-controller';
|
|
9
9
|
import type { PluginAddToCartConfig as PluginShopifyAddToCartConfig, PluginBackgroundFiltersConfig as PluginShopifyBackgroundFiltersConfig, PluginMutateResultsConfig as PluginShopifyMutateResultsConfig } from '@athoscommerce/snap-platforms/shopify';
|
|
10
10
|
import type { PluginAddToCartConfig as PluginMagento2AddToCartConfig, PluginBackgroundFiltersConfig as PluginMagento2BackgroundFiltersConfig, PluginBaseConfig as PluginMagento2BaseConfig } from '@athoscommerce/snap-platforms/magento2';
|
|
11
11
|
import type { PluginAddToCartConfig as PluginBigCommerceAddToCartConfig, PluginBackgroundFiltersConfig as PluginBigcommerceBackgroundFiltersConfig } from '@athoscommerce/snap-platforms/bigcommerce';
|
|
@@ -16,7 +16,7 @@ import type { ClientConfig } from '@athoscommerce/snap-client';
|
|
|
16
16
|
import { RecommendationInstantiatorConfigSettings } from '../../Instantiators/RecommendationInstantiator';
|
|
17
17
|
import type { PluginMarketsConfig } from '@athoscommerce/snap-platforms/shopify';
|
|
18
18
|
export type TemplateThemeTypes = 'library' | 'local';
|
|
19
|
-
export type TemplateTypes = 'search' | 'autocomplete' | `recommendation/${RecsTemplateTypes}
|
|
19
|
+
export type TemplateTypes = 'search' | 'autocomplete' | `recommendation/${RecsTemplateTypes}`;
|
|
20
20
|
export type SearchTargetConfig = {
|
|
21
21
|
selector: string;
|
|
22
22
|
component: keyof LibraryImports['component']['search'];
|
|
@@ -26,9 +26,9 @@ export type AutocompleteTargetConfig = {
|
|
|
26
26
|
inputSelector: string;
|
|
27
27
|
component: keyof LibraryImports['component']['autocomplete'];
|
|
28
28
|
};
|
|
29
|
-
export type
|
|
30
|
-
selector
|
|
31
|
-
component: keyof LibraryImports['component']['
|
|
29
|
+
export type QuickviewTargetConfig = {
|
|
30
|
+
selector?: string;
|
|
31
|
+
component: keyof LibraryImports['component']['quickview'];
|
|
32
32
|
};
|
|
33
33
|
export type RecommendationDefaultTargetConfig = {
|
|
34
34
|
component: keyof LibraryImports['component']['recommendation']['default'];
|
|
@@ -41,7 +41,7 @@ export type RecommendationBundleTargetConfig = {
|
|
|
41
41
|
};
|
|
42
42
|
export type { TemplateDefaultComponentTypes, TemplateCustomComponentTypes } from '../../../components/src';
|
|
43
43
|
export type RecsTemplateTypes = 'bundle' | 'default' | 'email';
|
|
44
|
-
type ComponentLibraryType = keyof LibraryImports['component']['autocomplete'] | keyof LibraryImports['component']['search'] | keyof LibraryImports['component']['
|
|
44
|
+
type ComponentLibraryType = keyof LibraryImports['component']['autocomplete'] | keyof LibraryImports['component']['search'] | keyof LibraryImports['component']['recommendation']['default'] | keyof LibraryImports['component']['recommendation']['bundle'] | keyof LibraryImports['component']['recommendation']['email'];
|
|
45
45
|
export type TemplateTarget = {
|
|
46
46
|
type: TemplateTypes;
|
|
47
47
|
selector?: string;
|
|
@@ -115,14 +115,25 @@ export type PluginsConfigsLocked = {
|
|
|
115
115
|
export type PluginsConfigsUnlocked = PluginsConfigsLocked & {
|
|
116
116
|
custom?: CustomPlugins;
|
|
117
117
|
};
|
|
118
|
+
export type TemplatesSearchTabConfigLocked = SearchTabConfig & {
|
|
119
|
+
plugins?: PluginsConfigsLocked;
|
|
120
|
+
};
|
|
121
|
+
export type TemplatesSearchTabConfigUnlocked = SearchTabConfig & {
|
|
122
|
+
plugins?: PluginsConfigsUnlocked;
|
|
123
|
+
};
|
|
124
|
+
export type TemplatesAutocompleteTabConfigLocked = AutocompleteTabConfig & {
|
|
125
|
+
plugins?: PluginsConfigsLocked;
|
|
126
|
+
};
|
|
127
|
+
export type TemplatesAutocompleteTabConfigUnlocked = AutocompleteTabConfig & {
|
|
128
|
+
plugins?: PluginsConfigsUnlocked;
|
|
129
|
+
};
|
|
118
130
|
export type TemplatesStoreConfig = TemplatesStoreConfigLocked | TemplatesStoreConfigUnlocked;
|
|
119
131
|
export type TemplatesStoreConfigLocked = {
|
|
120
132
|
components?: TemplateStoreComponentConfigLocked;
|
|
121
133
|
config?: {
|
|
122
134
|
siteId?: string;
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
language?: LanguageCodes;
|
|
135
|
+
currency?: CurrencyCodeInput;
|
|
136
|
+
language?: LanguageCodeInput;
|
|
126
137
|
platform?: IntegrationPlatforms;
|
|
127
138
|
client?: ClientConfig;
|
|
128
139
|
};
|
|
@@ -132,22 +143,23 @@ export type TemplatesStoreConfigLocked = {
|
|
|
132
143
|
};
|
|
133
144
|
theme: TemplatesStoreThemeConfigLocked;
|
|
134
145
|
search?: {
|
|
146
|
+
tabs?: TemplatesSearchTabConfigLocked[];
|
|
135
147
|
targets: SearchTargetConfig[];
|
|
136
148
|
globals?: SearchStoreConfig['globals'];
|
|
137
149
|
settings?: SearchStoreConfigSettings;
|
|
138
150
|
plugins?: PluginsConfigsLocked;
|
|
139
151
|
};
|
|
140
152
|
autocomplete?: {
|
|
153
|
+
tabs?: TemplatesAutocompleteTabConfigLocked[];
|
|
141
154
|
targets: AutocompleteTargetConfig[];
|
|
142
155
|
action?: string;
|
|
143
156
|
globals?: AutocompleteStoreConfig['globals'];
|
|
144
157
|
settings?: AutocompleteStoreConfigSettings;
|
|
145
158
|
plugins?: PluginsConfigsLocked;
|
|
146
159
|
};
|
|
147
|
-
|
|
148
|
-
targets:
|
|
149
|
-
settings?:
|
|
150
|
-
plugins?: PluginsConfigsLocked;
|
|
160
|
+
quickview?: {
|
|
161
|
+
targets: QuickviewTargetConfig[];
|
|
162
|
+
settings?: QuickviewConfig;
|
|
151
163
|
};
|
|
152
164
|
recommendation?: {
|
|
153
165
|
email?: {
|
|
@@ -163,19 +175,18 @@ export type TemplatesStoreConfigLocked = {
|
|
|
163
175
|
plugins?: PluginsConfigsLocked;
|
|
164
176
|
};
|
|
165
177
|
};
|
|
166
|
-
export type TemplatesStoreConfigUnlocked = Omit<TemplatesStoreConfigLocked, 'unlocked' | 'theme' | 'components' | 'plugins' | 'search' | 'autocomplete' | '
|
|
178
|
+
export type TemplatesStoreConfigUnlocked = Omit<TemplatesStoreConfigLocked, 'unlocked' | 'theme' | 'components' | 'plugins' | 'search' | 'autocomplete' | 'recommendation'> & {
|
|
167
179
|
unlocked: true;
|
|
168
180
|
theme: TemplatesStoreThemeConfigUnlocked;
|
|
169
181
|
components?: TemplateStoreComponentConfigUnlocked;
|
|
170
182
|
plugins?: PluginsConfigsUnlocked;
|
|
171
|
-
search?: Omit<NonNullable<TemplatesStoreConfigLocked['search']>, 'plugins'> & {
|
|
172
|
-
plugins?: PluginsConfigsUnlocked;
|
|
173
|
-
};
|
|
174
|
-
autocomplete?: Omit<NonNullable<TemplatesStoreConfigLocked['autocomplete']>, 'plugins'> & {
|
|
183
|
+
search?: Omit<NonNullable<TemplatesStoreConfigLocked['search']>, 'plugins' | 'tabs'> & {
|
|
175
184
|
plugins?: PluginsConfigsUnlocked;
|
|
185
|
+
tabs?: TemplatesSearchTabConfigUnlocked[];
|
|
176
186
|
};
|
|
177
|
-
|
|
187
|
+
autocomplete?: Omit<NonNullable<TemplatesStoreConfigLocked['autocomplete']>, 'plugins' | 'tabs'> & {
|
|
178
188
|
plugins?: PluginsConfigsUnlocked;
|
|
189
|
+
tabs?: TemplatesAutocompleteTabConfigUnlocked[];
|
|
179
190
|
};
|
|
180
191
|
recommendation?: Omit<NonNullable<TemplatesStoreConfigLocked['recommendation']>, 'plugins'> & {
|
|
181
192
|
plugins?: PluginsConfigsUnlocked;
|
|
@@ -198,7 +209,6 @@ export declare class TemplatesStore {
|
|
|
198
209
|
targets: {
|
|
199
210
|
search: TargetStore[];
|
|
200
211
|
autocomplete: TargetStore[];
|
|
201
|
-
chat: TargetStore[];
|
|
202
212
|
recommendation: {
|
|
203
213
|
[key in RecsTemplateTypes]: TargetStore[];
|
|
204
214
|
};
|
|
@@ -213,14 +223,18 @@ export declare class TemplatesStore {
|
|
|
213
223
|
};
|
|
214
224
|
library: LibraryStore;
|
|
215
225
|
window: WindowProperties;
|
|
226
|
+
private tabManagers;
|
|
216
227
|
constructor(params: TemplatesStoreParams);
|
|
217
228
|
addTarget(target: TemplateTarget): TargetStore | undefined;
|
|
218
229
|
getTarget(type: TemplateTypes, targetIndex: number): TargetStore | undefined;
|
|
230
|
+
getTabManager(type: 'search' | 'autocomplete', controllers: {
|
|
231
|
+
[id: string]: AbstractController;
|
|
232
|
+
}): TabManagerStore | undefined;
|
|
219
233
|
addTheme(config: ThemeStoreThemeConfig): void;
|
|
220
234
|
private setInnerWidth;
|
|
221
235
|
getThemeStore(themeName?: string): ThemeStore | undefined;
|
|
222
|
-
setCurrency(currencyCode:
|
|
223
|
-
setLanguage(languageCode:
|
|
236
|
+
setCurrency(currencyCode: CurrencyCodeInput): Promise<void>;
|
|
237
|
+
setLanguage(languageCode: LanguageCodeInput): Promise<void>;
|
|
224
238
|
preLoad(): Promise<void>;
|
|
225
239
|
}
|
|
226
240
|
export declare function transformTranslationsToTheme(translations: LangComponentOverrides): ThemeMinimal;
|