@athoscommerce/snap-preact 1.11.0 → 1.12.1-beta.152
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/ChatLoadingIndicator/ChatLoadingIndicator.js +99 -0
- package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.js +17 -0
- package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.js +70 -17
- package/dist/cjs/components/src/components/Atoms/Icon/paths.js +13 -0
- 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 +13 -4
- package/dist/cjs/components/src/components/Molecules/CalloutBadge/CalloutBadge.js +4 -1
- package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +221 -0
- package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +209 -0
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +258 -0
- package/dist/cjs/components/src/components/Molecules/ChatMessageText/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +282 -0
- package/dist/cjs/components/src/components/Molecules/ChatMessageUser/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +173 -0
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +577 -0
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/ChatResult/ChatResult.js +252 -0
- package/dist/cjs/components/src/components/Molecules/ChatResult/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +113 -0
- package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +107 -0
- package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/Gallery/Gallery.js +298 -0
- package/dist/cjs/components/src/components/Molecules/Gallery/index.js +17 -0
- 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/ProductDetailTable/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/QuantityPicker/QuantityPicker.js +136 -0
- package/dist/cjs/components/src/components/Molecules/QuantityPicker/index.js +17 -0
- package/dist/cjs/components/src/components/Molecules/Result/Result.js +92 -6
- package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.js +28 -2
- package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.js +29 -30
- package/dist/cjs/components/src/components/Molecules/Slideshow/Slideshow.js +42 -5
- package/dist/cjs/components/src/components/Molecules/Swatches/Swatches.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 +8 -8
- package/dist/cjs/components/src/components/Organisms/Chat/Chat.js +621 -0
- package/dist/cjs/components/src/components/Organisms/Chat/Chat.lang.js +105 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatAttachments.js +104 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +161 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComposer.js +166 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +369 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatHistory.js +130 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatMessages.js +218 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +123 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSideChat.js +173 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +149 -0
- package/dist/cjs/components/src/components/Organisms/Chat/components/chatAccentTheme.js +60 -0
- package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +66 -0
- package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatGestures.js +96 -0
- package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +113 -0
- package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +135 -0
- package/dist/cjs/components/src/components/Organisms/Chat/index.js +18 -0
- package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.js +94 -0
- package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.lang.js +11 -0
- package/dist/cjs/components/src/components/Organisms/ChatButton/index.js +18 -0
- package/dist/cjs/components/src/components/Organisms/Facet/Facet.js +1 -5
- package/dist/cjs/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.js +612 -0
- package/dist/cjs/components/src/components/Organisms/QuickviewLayout/index.js +17 -0
- package/dist/cjs/components/src/components/Organisms/Results/Results.js +1 -1
- package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +8 -3
- package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +8 -3
- package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +7 -2
- package/dist/cjs/components/src/components/Templates/Chat/Chat.js +47 -0
- package/dist/cjs/components/src/components/Templates/Chat/index.js +17 -0
- package/dist/cjs/components/src/components/Templates/ChatButton/ChatButton.js +47 -0
- package/dist/cjs/components/src/components/Templates/ChatButton/index.js +17 -0
- package/dist/cjs/components/src/components/Templates/QuickviewModal/QuickviewModal.js +153 -0
- package/dist/cjs/components/src/components/Templates/QuickviewModal/index.js +17 -0
- 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/hooks/useA11y.js +3 -1
- package/dist/cjs/components/src/hooks/useAcRenderedInput.js +1 -1
- package/dist/cjs/components/src/hooks/useClickOutside.js +6 -3
- package/dist/cjs/components/src/hooks/useTracking.js +14 -8
- package/dist/cjs/components/src/index.js +23 -1
- package/dist/cjs/components/src/providers/themeComponents.js +24 -0
- package/dist/cjs/components/src/setupTests.js +10 -0
- package/dist/cjs/components/src/themes/base/components/templates/chat.js +6 -0
- package/dist/cjs/components/src/themes/base/components/templates/chatButton.js +6 -0
- package/dist/cjs/components/src/themes/base/components/templates/index.js +10 -0
- package/dist/cjs/components/src/themes/bocachica/components/templates/chat.js +6 -0
- package/dist/cjs/components/src/themes/bocachica/components/templates/chatButton.js +6 -0
- package/dist/cjs/components/src/themes/bocachica/components/templates/index.js +10 -0
- package/dist/cjs/components/src/themes/pike/components/templates/chat.js +6 -0
- package/dist/cjs/components/src/themes/pike/components/templates/chatButton.js +6 -0
- package/dist/cjs/components/src/themes/pike/components/templates/index.js +10 -0
- package/dist/cjs/components/src/themes/snapnco/components/templates/chat.js +6 -0
- package/dist/cjs/components/src/themes/snapnco/components/templates/chatButton.js +6 -0
- package/dist/cjs/components/src/themes/snapnco/components/templates/index.js +10 -0
- package/dist/cjs/components/src/themes/snappy/components/templates/chat.js +6 -0
- package/dist/cjs/components/src/themes/snappy/components/templates/chatButton.js +6 -0
- package/dist/cjs/components/src/themes/snappy/components/templates/index.js +10 -0
- package/dist/cjs/components/src/themes/themeComponents/chat.js +14 -0
- package/dist/cjs/components/src/themes/themeComponents/chatButton.js +9 -0
- package/dist/cjs/components/src/utilities/Colour/Colour.js +41 -0
- package/dist/cjs/components/src/utilities/createImpressionObserver.js +1 -1
- package/dist/cjs/components/src/utilities/index.js +1 -0
- package/dist/cjs/components/src/utilities/lazyRenderMinSize.js +10 -0
- package/dist/cjs/components/src/utilities/snapify.js +27 -0
- package/dist/cjs/src/Instantiators/RecommendationInstantiator.js +2 -1
- package/dist/cjs/src/Snap.js +111 -0
- package/dist/cjs/src/Templates/SnapTemplates.js +106 -5
- package/dist/cjs/src/Templates/Stores/LibraryStore.js +128 -10
- 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 +29 -13
- package/dist/cjs/src/Templates/Stores/library/components/Chat.js +5 -0
- package/dist/cjs/src/Templates/Stores/library/components/ChatButton.js +5 -0
- 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 +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/de.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/en.js +1 -0
- package/dist/cjs/src/Templates/Stores/library/languages/es.js +563 -41
- package/dist/cjs/src/Templates/Stores/library/languages/fr.js +564 -40
- package/dist/cjs/src/Templates/Stores/library/languages/hi.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/it.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/ja.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/ko.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/nl.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/pt.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/ru.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/tr.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/vi.js +961 -0
- package/dist/cjs/src/Templates/Stores/library/languages/zh.js +961 -0
- package/dist/cjs/src/Templates/index.js +3 -1
- package/dist/cjs/src/create/createAutocompleteController.js +1 -0
- package/dist/cjs/src/create/createChatController.js +30 -0
- 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 +3 -1
- package/dist/cjs/src/index.js +3 -1
- package/dist/cjs/src/setupEvents.js +44 -0
- package/dist/cjs/src/utils/applyChatTargetInject.js +25 -0
- package/dist/cjs/src/utils/index.js +3 -1
- package/dist/esm/components/src/components/Atoms/Button/Button.d.ts +3 -1
- package/dist/esm/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts +17 -0
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts.map +1 -0
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +92 -0
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts +2 -0
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.js +1 -0
- package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts +6 -1
- package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.js +71 -18
- package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts +13 -0
- package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts.map +1 -1
- package/dist/esm/components/src/components/Atoms/Icon/paths.js +13 -0
- 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 +13 -4
- 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/ChatAttachmentContext/ChatAttachmentContext.d.ts +30 -0
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +215 -0
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +19 -0
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +203 -0
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts +36 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +252 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageText/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts +38 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +276 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts +19 -0
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +167 -0
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts +38 -0
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +571 -0
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts +35 -0
- package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.js +246 -0
- package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatResult/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts +24 -0
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +107 -0
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.js +1 -0
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts +16 -0
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +101 -0
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.js +1 -0
- 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/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/Result/Result.d.ts +10 -3
- package/dist/esm/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Result/Result.js +92 -6
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts +3 -0
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.js +28 -2
- package/dist/esm/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Slideout/Slideout.js +30 -31
- 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 +42 -5
- package/dist/esm/components/src/components/Molecules/Swatches/Swatches.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.js +8 -8
- package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts +41 -0
- package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/Chat.js +615 -0
- package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts +76 -0
- package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.js +100 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts +26 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.js +98 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts +13 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +155 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts +19 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.js +160 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts +18 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +363 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts +11 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.js +124 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts +30 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.js +212 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts +13 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +117 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts +19 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.js +167 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts +14 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +143 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts +15 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.js +56 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts +32 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +62 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts +40 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.js +92 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts +43 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +109 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts +26 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +131 -0
- package/dist/esm/components/src/components/Organisms/Chat/index.d.ts +3 -0
- package/dist/esm/components/src/components/Organisms/Chat/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/Chat/index.js +2 -0
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts +18 -0
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.js +88 -0
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts +7 -0
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.js +8 -0
- package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts +3 -0
- package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/ChatButton/index.js +2 -0
- package/dist/esm/components/src/components/Organisms/Facet/Facet.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/Facet/Facet.js +1 -5
- 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.js +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +8 -3
- package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +8 -3
- package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +7 -2
- package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts +12 -0
- package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts.map +1 -0
- package/dist/esm/components/src/components/Templates/Chat/Chat.js +41 -0
- package/dist/esm/components/src/components/Templates/Chat/index.d.ts +2 -0
- package/dist/esm/components/src/components/Templates/Chat/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Templates/Chat/index.js +1 -0
- package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts +13 -0
- package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts.map +1 -0
- package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.js +41 -0
- package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts +2 -0
- package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Templates/ChatButton/index.js +1 -0
- 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/hooks/useA11y.d.ts.map +1 -1
- package/dist/esm/components/src/hooks/useA11y.js +3 -1
- package/dist/esm/components/src/hooks/useAcRenderedInput.js +1 -1
- 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/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 +20 -0
- package/dist/esm/components/src/index.d.ts.map +1 -1
- package/dist/esm/components/src/index.js +20 -0
- package/dist/esm/components/src/providers/langComponents.d.ts +26 -0
- package/dist/esm/components/src/providers/langComponents.d.ts.map +1 -1
- package/dist/esm/components/src/providers/themeComponents.d.ts +306 -57
- package/dist/esm/components/src/providers/themeComponents.d.ts.map +1 -1
- package/dist/esm/components/src/providers/themeComponents.js +24 -0
- 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 +10 -0
- package/dist/esm/components/src/themes/base/components/templates/chat.d.ts +4 -0
- package/dist/esm/components/src/themes/base/components/templates/chat.d.ts.map +1 -0
- package/dist/esm/components/src/themes/base/components/templates/chat.js +3 -0
- package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts +4 -0
- package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts.map +1 -0
- package/dist/esm/components/src/themes/base/components/templates/chatButton.js +3 -0
- 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 +10 -0
- package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts +4 -0
- package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts.map +1 -0
- package/dist/esm/components/src/themes/bocachica/components/templates/chat.js +3 -0
- package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts +4 -0
- package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts.map +1 -0
- package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.js +3 -0
- 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 +10 -0
- package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts +4 -0
- package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts.map +1 -0
- package/dist/esm/components/src/themes/pike/components/templates/chat.js +3 -0
- package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts +4 -0
- package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts.map +1 -0
- package/dist/esm/components/src/themes/pike/components/templates/chatButton.js +3 -0
- 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 +10 -0
- package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts +4 -0
- package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts.map +1 -0
- package/dist/esm/components/src/themes/snapnco/components/templates/chat.js +3 -0
- package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts +4 -0
- package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts.map +1 -0
- package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.js +3 -0
- 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 +10 -0
- package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts +4 -0
- package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts.map +1 -0
- package/dist/esm/components/src/themes/snappy/components/templates/chat.js +3 -0
- package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts +4 -0
- package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts.map +1 -0
- package/dist/esm/components/src/themes/snappy/components/templates/chatButton.js +3 -0
- 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 +10 -0
- package/dist/esm/components/src/themes/themeComponents/chat.d.ts +4 -0
- package/dist/esm/components/src/themes/themeComponents/chat.d.ts.map +1 -0
- package/dist/esm/components/src/themes/themeComponents/chat.js +11 -0
- package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts +4 -0
- package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts.map +1 -0
- package/dist/esm/components/src/themes/themeComponents/chatButton.js +6 -0
- package/dist/esm/components/src/utilities/Colour/Colour.d.ts +15 -0
- package/dist/esm/components/src/utilities/Colour/Colour.d.ts.map +1 -1
- package/dist/esm/components/src/utilities/Colour/Colour.js +41 -0
- package/dist/esm/components/src/utilities/createImpressionObserver.js +1 -1
- package/dist/esm/components/src/utilities/index.d.ts +1 -0
- package/dist/esm/components/src/utilities/index.d.ts.map +1 -1
- package/dist/esm/components/src/utilities/index.js +1 -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/snapify.d.ts +3 -2
- package/dist/esm/components/src/utilities/snapify.d.ts.map +1 -1
- package/dist/esm/components/src/utilities/snapify.js +29 -2
- 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 +9 -1
- package/dist/esm/src/Snap.d.ts.map +1 -1
- package/dist/esm/src/Snap.js +114 -3
- package/dist/esm/src/Templates/SnapTemplates.d.ts +27 -1
- package/dist/esm/src/Templates/SnapTemplates.d.ts.map +1 -1
- package/dist/esm/src/Templates/SnapTemplates.js +102 -5
- package/dist/esm/src/Templates/Stores/LibraryStore.d.ts +65 -2
- package/dist/esm/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/LibraryStore.js +127 -9
- 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 +32 -10
- package/dist/esm/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateStore.js +29 -13
- package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts +2 -0
- package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/components/Chat.js +1 -0
- package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts +2 -0
- package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts.map +1 -0
- package/dist/esm/src/Templates/Stores/library/components/ChatButton.js +1 -0
- 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 +958 -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 +958 -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 +563 -41
- package/dist/esm/src/Templates/Stores/library/languages/fr.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/library/languages/fr.js +564 -40
- 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 +958 -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 +958 -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 +958 -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 +958 -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 +958 -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 +958 -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 +958 -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 +958 -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 +958 -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 +958 -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 +1 -0
- package/dist/esm/src/create/createChatController.d.ts +5 -0
- package/dist/esm/src/create/createChatController.d.ts.map +1 -0
- package/dist/esm/src/create/createChatController.js +28 -0
- 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 +1 -0
- package/dist/esm/src/create/index.d.ts.map +1 -1
- package/dist/esm/src/create/index.js +1 -0
- 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 +13 -0
- package/dist/esm/src/setupEvents.d.ts.map +1 -1
- package/dist/esm/src/setupEvents.js +44 -0
- package/dist/esm/src/types.d.ts +14 -3
- package/dist/esm/src/types.d.ts.map +1 -1
- package/dist/esm/src/utils/applyChatTargetInject.d.ts +3 -0
- package/dist/esm/src/utils/applyChatTargetInject.d.ts.map +1 -0
- package/dist/esm/src/utils/applyChatTargetInject.js +22 -0
- package/dist/esm/src/utils/index.d.ts +1 -0
- package/dist/esm/src/utils/index.d.ts.map +1 -1
- package/dist/esm/src/utils/index.js +1 -0
- package/eslint/src/index.cjs +5 -0
- package/eslint/src/validate-config.cjs +473 -0
- package/package.json +18 -14
- 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/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
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ChatProps, ChatTemplatesLegalProps } from '../../../../components/Templates/Chat';
|
|
2
|
+
import { ThemeComponent } from '../../../../providers';
|
|
3
|
+
export declare const chat: ThemeComponent<'chat', ChatProps, ChatTemplatesLegalProps>;
|
|
4
|
+
//# sourceMappingURL=chat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../../../../../../components/src/themes/snappy/components/templates/chat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAEhG,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,eAAO,MAAM,IAAI,EAAE,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,uBAAuB,CAA2B,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ChatButtonProps, ChatButtonTemplatesLegalProps } from '../../../../components/Templates/ChatButton';
|
|
2
|
+
import { ThemeComponent } from '../../../../providers';
|
|
3
|
+
export declare const chatButton: ThemeComponent<'chatButton', ChatButtonProps, ChatButtonTemplatesLegalProps>;
|
|
4
|
+
//# sourceMappingURL=chatButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chatButton.d.ts","sourceRoot":"","sources":["../../../../../../../../components/src/themes/snappy/components/templates/chatButton.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAC;AAElH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,eAAO,MAAM,UAAU,EAAE,cAAc,CAAC,YAAY,EAAE,eAAe,EAAE,6BAA6B,CAAiC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../components/src/themes/snappy/components/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../components/src/themes/snappy/components/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAmBhE,eAAO,MAAM,SAAS,EAqEN,uBAAuB,CAAC"}
|
|
@@ -12,8 +12,12 @@ import { searchCollapsible } from './searchCollapsible';
|
|
|
12
12
|
import { autocompleteSlideout } from './autocompleteSlideout';
|
|
13
13
|
import { autocompleteModal } from './autocompleteModal';
|
|
14
14
|
import { autocompleteFixed } from './autocompleteFixed';
|
|
15
|
+
import { chat } from './chat';
|
|
16
|
+
import { chatButton } from './chatButton';
|
|
15
17
|
export const templates = {
|
|
16
18
|
default: {
|
|
19
|
+
...chat.default,
|
|
20
|
+
...chatButton.default,
|
|
17
21
|
...autocompleteSlideout.default,
|
|
18
22
|
...autocompleteModal.default,
|
|
19
23
|
...autocompleteFixed.default,
|
|
@@ -29,6 +33,8 @@ export const templates = {
|
|
|
29
33
|
...searchHorizontal.default,
|
|
30
34
|
},
|
|
31
35
|
mobile: {
|
|
36
|
+
...chat.mobile,
|
|
37
|
+
...chatButton.mobile,
|
|
32
38
|
...autocompleteSlideout.mobile,
|
|
33
39
|
...autocompleteModal.mobile,
|
|
34
40
|
...autocompleteFixed.mobile,
|
|
@@ -44,6 +50,8 @@ export const templates = {
|
|
|
44
50
|
...searchHorizontal.mobile,
|
|
45
51
|
},
|
|
46
52
|
tablet: {
|
|
53
|
+
...chat.tablet,
|
|
54
|
+
...chatButton.tablet,
|
|
47
55
|
...autocompleteSlideout.tablet,
|
|
48
56
|
...autocompleteModal.tablet,
|
|
49
57
|
...autocompleteFixed.tablet,
|
|
@@ -59,6 +67,8 @@ export const templates = {
|
|
|
59
67
|
...searchHorizontal.tablet,
|
|
60
68
|
},
|
|
61
69
|
desktop: {
|
|
70
|
+
...chat.desktop,
|
|
71
|
+
...chatButton.desktop,
|
|
62
72
|
...autocompleteSlideout.desktop,
|
|
63
73
|
...autocompleteModal.desktop,
|
|
64
74
|
...autocompleteFixed.desktop,
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ChatProps, ChatTemplatesLegalProps } from '../../components/Templates/Chat';
|
|
2
|
+
import { ThemeComponent } from '../../providers';
|
|
3
|
+
export declare const chatThemeComponentProps: ThemeComponent<'chat', ChatProps, ChatTemplatesLegalProps>;
|
|
4
|
+
//# sourceMappingURL=chat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../../../../components/src/themes/themeComponents/chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,eAAO,MAAM,uBAAuB,EAAE,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,uBAAuB,CAU9F,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ChatButtonProps, ChatButtonTemplatesLegalProps } from '../../components/Templates/ChatButton';
|
|
2
|
+
import { ThemeComponent } from '../../providers';
|
|
3
|
+
export declare const chatButtonThemeComponentProps: ThemeComponent<'chatButton', ChatButtonProps, ChatButtonTemplatesLegalProps>;
|
|
4
|
+
//# sourceMappingURL=chatButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chatButton.d.ts","sourceRoot":"","sources":["../../../../../../components/src/themes/themeComponents/chatButton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AACvG,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,eAAO,MAAM,6BAA6B,EAAE,cAAc,CAAC,YAAY,EAAE,eAAe,EAAE,6BAA6B,CAKtH,CAAC"}
|
|
@@ -12,11 +12,26 @@ export declare class Colour {
|
|
|
12
12
|
opacity(offset: number): Colour;
|
|
13
13
|
transparency(offset: number): Colour;
|
|
14
14
|
opaque(offset: number): Colour;
|
|
15
|
+
/** Returns a hex string mixed linearly toward black. `amount` is a 0-1 proportion of
|
|
16
|
+
* black in the result — note this differs from `darken(offset)`, which takes a 0-100
|
|
17
|
+
* offset and returns a chainable `Colour`. 0.9 yields a near-black with a slight tint. */
|
|
18
|
+
mixBlack(amount?: number): string;
|
|
19
|
+
/** Returns a hex string mixed linearly toward white. `amount` is a 0-1 proportion of
|
|
20
|
+
* white in the result — note this differs from `lighten(offset)`, which takes a 0-100
|
|
21
|
+
* offset and returns a chainable `Colour`. 0.9 yields a near-white with a slight tint. */
|
|
22
|
+
mixWhite(amount?: number): string;
|
|
23
|
+
/** Returns the color only if it is a concrete value that can be manipulated and paired with
|
|
24
|
+
* other colors. Contextual CSS keywords (currentColor and the CSS-wide keywords) resolve
|
|
25
|
+
* against surrounding styles, so they would defeat `|| fallback` chains — those return undefined. */
|
|
26
|
+
static concrete(color: string | undefined): string | undefined;
|
|
15
27
|
static isRgb(color: string): boolean;
|
|
16
28
|
static isHex(color: string): boolean;
|
|
17
29
|
static hexToRgb(hex: string): string;
|
|
18
30
|
static rgbToHex(rgb: string): string;
|
|
19
31
|
static opacity(color: string | undefined, offset: number): string | undefined;
|
|
32
|
+
/** Linear RGB mix between two hex colors. `amount` (0-1) is the proportion of `towardHex`
|
|
33
|
+
* in the result. Returns the source `hex` unchanged when either input is invalid. */
|
|
34
|
+
static mixToward(hex: string | undefined, towardHex: string, amount: number): string | undefined;
|
|
20
35
|
static brightness(color: string | undefined, offset: number): string | undefined;
|
|
21
36
|
}
|
|
22
37
|
//# sourceMappingURL=Colour.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Colour.d.ts","sourceRoot":"","sources":["../../../../../../components/src/utilities/Colour/Colour.ts"],"names":[],"mappings":"AAqBA,qBAAa,MAAM;IAClB,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,QAAQ,CAAqB;IAErC,IAAW,GAAG,IAAI,MAAM,GAAG,SAAS,CAOnC;IAED,IAAW,GAAG,IAAI,MAAM,GAAG,SAAS,CAOnC;IAED,IAAW,QAAQ,IAAI,MAAM,GAAG,SAAS,CAoBxC;IAED,YAAY,KAAK,EAAE,MAAM,GAAG,SAAS,EAqBpC;IAED,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE5B;IAED,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG9B;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG7B;IAED,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE9B;IAED,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGnC;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG7B;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAKnC;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAcnC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAkBnC;IAED,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA6B5E;IAED,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAmC/E;CACD"}
|
|
1
|
+
{"version":3,"file":"Colour.d.ts","sourceRoot":"","sources":["../../../../../../components/src/utilities/Colour/Colour.ts"],"names":[],"mappings":"AAqBA,qBAAa,MAAM;IAClB,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,QAAQ,CAAqB;IAErC,IAAW,GAAG,IAAI,MAAM,GAAG,SAAS,CAOnC;IAED,IAAW,GAAG,IAAI,MAAM,GAAG,SAAS,CAOnC;IAED,IAAW,QAAQ,IAAI,MAAM,GAAG,SAAS,CAoBxC;IAED,YAAY,KAAK,EAAE,MAAM,GAAG,SAAS,EAqBpC;IAED,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE5B;IAED,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG9B;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG7B;IAED,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE9B;IAED,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGnC;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG7B;IAED;;8FAE0F;IAC1F,QAAQ,CAAC,MAAM,GAAE,MAAY,GAAG,MAAM,CAErC;IAED;;8FAE0F;IAC1F,QAAQ,CAAC,MAAM,GAAE,MAAY,GAAG,MAAM,CAErC;IAED;;yGAEqG;IACrG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAK7D;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAKnC;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAcnC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAkBnC;IAED,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA6B5E;IAED;yFACqF;IACrF,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAoB/F;IAED,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAmC/E;CACD"}
|
|
@@ -99,6 +99,27 @@ export class Colour {
|
|
|
99
99
|
return this;
|
|
100
100
|
return new Colour(Colour.opacity(this.hex, -offset));
|
|
101
101
|
}
|
|
102
|
+
/** Returns a hex string mixed linearly toward black. `amount` is a 0-1 proportion of
|
|
103
|
+
* black in the result — note this differs from `darken(offset)`, which takes a 0-100
|
|
104
|
+
* offset and returns a chainable `Colour`. 0.9 yields a near-black with a slight tint. */
|
|
105
|
+
mixBlack(amount = 0.3) {
|
|
106
|
+
return Colour.mixToward(this.hex, '#000000', amount) ?? this.hex ?? '';
|
|
107
|
+
}
|
|
108
|
+
/** Returns a hex string mixed linearly toward white. `amount` is a 0-1 proportion of
|
|
109
|
+
* white in the result — note this differs from `lighten(offset)`, which takes a 0-100
|
|
110
|
+
* offset and returns a chainable `Colour`. 0.9 yields a near-white with a slight tint. */
|
|
111
|
+
mixWhite(amount = 0.3) {
|
|
112
|
+
return Colour.mixToward(this.hex, '#ffffff', amount) ?? this.hex ?? '';
|
|
113
|
+
}
|
|
114
|
+
/** Returns the color only if it is a concrete value that can be manipulated and paired with
|
|
115
|
+
* other colors. Contextual CSS keywords (currentColor and the CSS-wide keywords) resolve
|
|
116
|
+
* against surrounding styles, so they would defeat `|| fallback` chains — those return undefined. */
|
|
117
|
+
static concrete(color) {
|
|
118
|
+
if (!color || ['currentcolor', 'inherit', 'initial', 'unset', 'revert'].includes(color.toLowerCase())) {
|
|
119
|
+
return undefined;
|
|
120
|
+
}
|
|
121
|
+
return color;
|
|
122
|
+
}
|
|
102
123
|
static isRgb(color) {
|
|
103
124
|
return Boolean(color.match(/^rgba?\([0-9]{1,3}[\s,\,]+[0-9]{1,3}[\s,\,]+[0-9]{1,3}[\s,\,]*\)$/i) ||
|
|
104
125
|
color.match(/^rgba?\([0-9]{1,3}[\s,\,]+[0-9]{1,3}[\s,\,]+[0-9]{1,3}[\s,\,]+0?\.?[0-9]+%?[\s,\,]*\)$/i));
|
|
@@ -167,6 +188,26 @@ export class Colour {
|
|
|
167
188
|
}
|
|
168
189
|
return hexValue;
|
|
169
190
|
}
|
|
191
|
+
/** Linear RGB mix between two hex colors. `amount` (0-1) is the proportion of `towardHex`
|
|
192
|
+
* in the result. Returns the source `hex` unchanged when either input is invalid. */
|
|
193
|
+
static mixToward(hex, towardHex, amount) {
|
|
194
|
+
if (!hex)
|
|
195
|
+
return undefined;
|
|
196
|
+
if (!Colour.isHex(hex) || !Colour.isHex(towardHex))
|
|
197
|
+
return hex;
|
|
198
|
+
const clamped = Math.max(0, Math.min(1, amount));
|
|
199
|
+
const sourceR = parseInt(hex.slice(1, 3), 16);
|
|
200
|
+
const sourceG = parseInt(hex.slice(3, 5), 16);
|
|
201
|
+
const sourceB = parseInt(hex.slice(5, 7), 16);
|
|
202
|
+
const targetR = parseInt(towardHex.slice(1, 3), 16);
|
|
203
|
+
const targetG = parseInt(towardHex.slice(3, 5), 16);
|
|
204
|
+
const targetB = parseInt(towardHex.slice(5, 7), 16);
|
|
205
|
+
const mix = (s, t) => Math.round(s * (1 - clamped) + t * clamped);
|
|
206
|
+
const r = mix(sourceR, targetR).toString(16).padStart(2, '0');
|
|
207
|
+
const g = mix(sourceG, targetG).toString(16).padStart(2, '0');
|
|
208
|
+
const b = mix(sourceB, targetB).toString(16).padStart(2, '0');
|
|
209
|
+
return `#${r}${g}${b}`;
|
|
210
|
+
}
|
|
170
211
|
static brightness(color, offset) {
|
|
171
212
|
let isRgb = false;
|
|
172
213
|
if (color && Colour.isRgb(color)) {
|
|
@@ -5,10 +5,10 @@ const IMPRESSION_MIN_VISIBLE_TIME = 1000;
|
|
|
5
5
|
export function createImpressionObserver(options) {
|
|
6
6
|
const ref = useRef(null);
|
|
7
7
|
const { inViewport, updateRef } = useIntersectionAdvanced(ref, {
|
|
8
|
-
...options,
|
|
9
8
|
fireOnce: true,
|
|
10
9
|
threshold: IMPRESSION_VISIBILITY_THRESHOLD,
|
|
11
10
|
minVisibleTime: IMPRESSION_MIN_VISIBLE_TIME,
|
|
11
|
+
...options,
|
|
12
12
|
});
|
|
13
13
|
return {
|
|
14
14
|
ref,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../components/src/utilities/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../components/src/utilities/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazyRenderMinSize.d.ts","sourceRoot":"","sources":["../../../../../components/src/utilities/lazyRenderMinSize.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,iBAAiB;IAC7B,QAAQ;IACR,SAAS;CACT,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// A 0x0 root wrapper can prevent IntersectionObserver from ever reporting `isIntersecting`
|
|
2
|
+
// in some browsers, so lazyRender needs a non-zero min size on the root element at all times,
|
|
3
|
+
// even when disableStyles is set and the rest of defaultStyles is skipped.
|
|
4
|
+
export const lazyRenderMinSize = {
|
|
5
|
+
minWidth: '1px',
|
|
6
|
+
minHeight: '1px',
|
|
7
|
+
};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { SearchController, AutocompleteController, RecommendationController } from '@athoscommerce/snap-controller';
|
|
2
|
-
import type { SearchControllerConfig, AutocompleteControllerConfig, RecommendationControllerConfig } from '@athoscommerce/snap-controller';
|
|
1
|
+
import { SearchController, AutocompleteController, RecommendationController, ChatController } from '@athoscommerce/snap-controller';
|
|
2
|
+
import type { SearchControllerConfig, AutocompleteControllerConfig, RecommendationControllerConfig, ChatControllerConfig } from '@athoscommerce/snap-controller';
|
|
3
3
|
export declare class Snapify {
|
|
4
4
|
static recommendation(config: RecommendationControllerConfig): RecommendationController;
|
|
5
5
|
static autocomplete(config: AutocompleteControllerConfig): AutocompleteController;
|
|
6
|
+
static chat(config: ChatControllerConfig): ChatController;
|
|
6
7
|
static search(config: SearchControllerConfig): SearchController;
|
|
7
8
|
}
|
|
8
9
|
//# sourceMappingURL=snapify.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapify.d.ts","sourceRoot":"","sources":["../../../../../components/src/utilities/snapify.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"snapify.d.ts","sourceRoot":"","sources":["../../../../../components/src/utilities/snapify.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAUpI,OAAO,KAAK,EACX,sBAAsB,EACtB,4BAA4B,EAC5B,8BAA8B,EAC9B,oBAAoB,EACpB,MAAM,gCAAgC,CAAC;AAqBxC,qBAAa,OAAO;IACnB,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,8BAA8B,GAAG,wBAAwB,CAiBtF;IACD,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,4BAA4B,GAAG,sBAAsB,CAiBhF;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,cAAc,CAiBxD;IAED,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAG,gBAAgB,CAiB9D;CACD"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { configure as configureMobx } from 'mobx';
|
|
2
|
-
import { SearchController, AutocompleteController, RecommendationController } from '@athoscommerce/snap-controller';
|
|
2
|
+
import { SearchController, AutocompleteController, RecommendationController, ChatController } from '@athoscommerce/snap-controller';
|
|
3
3
|
import { Client } from '@athoscommerce/snap-client';
|
|
4
|
-
import { SearchStore, AutocompleteStore, RecommendationStore } from '@athoscommerce/snap-store-mobx';
|
|
4
|
+
import { SearchStore, AutocompleteStore, RecommendationStore, ChatStore } from '@athoscommerce/snap-store-mobx';
|
|
5
5
|
import { UrlManager, UrlTranslator, reactLinker } from '@athoscommerce/snap-url-manager';
|
|
6
6
|
import { EventManager } from '@athoscommerce/snap-event-manager';
|
|
7
7
|
import { Profiler } from '@athoscommerce/snap-profiler';
|
|
@@ -42,6 +42,20 @@ export class Snapify {
|
|
|
42
42
|
cntrlr.init();
|
|
43
43
|
return cntrlr;
|
|
44
44
|
}
|
|
45
|
+
static chat(config) {
|
|
46
|
+
const id = config.id;
|
|
47
|
+
if (controllers[id]) {
|
|
48
|
+
return controllers[id];
|
|
49
|
+
}
|
|
50
|
+
const cntrlr = (controllers[id] = createChatController({ client, controller: config }));
|
|
51
|
+
cntrlr.on('afterStore', async ({ controller }, next) => {
|
|
52
|
+
controller.log.debug('controller', controller);
|
|
53
|
+
controller.log.debug('store', controller.store.toJSON());
|
|
54
|
+
await next();
|
|
55
|
+
});
|
|
56
|
+
cntrlr.init();
|
|
57
|
+
return cntrlr;
|
|
58
|
+
}
|
|
45
59
|
static search(config) {
|
|
46
60
|
const id = config.id;
|
|
47
61
|
if (controllers[id]) {
|
|
@@ -83,6 +97,19 @@ function createRecommendationController(config) {
|
|
|
83
97
|
});
|
|
84
98
|
return cntrlr;
|
|
85
99
|
}
|
|
100
|
+
function createChatController(config) {
|
|
101
|
+
const urlManager = new UrlManager(new UrlTranslator(), reactLinker).detach(true);
|
|
102
|
+
const cntrlr = new ChatController(config.controller, {
|
|
103
|
+
client: new Client(config.client.globals, config.client.config),
|
|
104
|
+
store: new ChatStore({ ...config.controller, siteId: config.client.globals.siteId }, { urlManager }),
|
|
105
|
+
urlManager,
|
|
106
|
+
eventManager: new EventManager(),
|
|
107
|
+
profiler: new Profiler(),
|
|
108
|
+
logger: new Logger(),
|
|
109
|
+
tracker: new Tracker(config.client.globals),
|
|
110
|
+
});
|
|
111
|
+
return cntrlr;
|
|
112
|
+
}
|
|
86
113
|
function createAutocompleteController(config) {
|
|
87
114
|
const urlManager = new UrlManager(new UrlTranslator(), reactLinker).detach();
|
|
88
115
|
const cntrlr = new AutocompleteController(config.controller, {
|
|
@@ -4,8 +4,8 @@ import { Logger } from '@athoscommerce/snap-logger';
|
|
|
4
4
|
import { Tracker } from '@athoscommerce/snap-tracker';
|
|
5
5
|
import type { ClientConfig, ClientGlobals } from '@athoscommerce/snap-client';
|
|
6
6
|
import type { UrlTranslatorConfig } from '@athoscommerce/snap-url-manager';
|
|
7
|
-
import
|
|
8
|
-
import type
|
|
7
|
+
import { AbstractController, RecommendationController, Attachments, ContextVariables, type QuickviewManager } from '@athoscommerce/snap-controller';
|
|
8
|
+
import { type BeaconSettings, type VariantConfig } from '@athoscommerce/snap-store-mobx';
|
|
9
9
|
import type { Middleware } from '@athoscommerce/snap-event-manager';
|
|
10
10
|
import type { Target } from '@athoscommerce/snap-toolbox';
|
|
11
11
|
import type { Snap } from '../Snap';
|
|
@@ -44,12 +44,14 @@ export type RecommendationInstantiatorServices = {
|
|
|
44
44
|
logger?: Logger;
|
|
45
45
|
tracker?: Tracker;
|
|
46
46
|
snap?: Snap;
|
|
47
|
+
quickviewManager?: QuickviewManager;
|
|
47
48
|
};
|
|
48
49
|
export declare class RecommendationInstantiator {
|
|
49
50
|
private mode;
|
|
50
51
|
client: Client;
|
|
51
52
|
tracker: Tracker;
|
|
52
53
|
logger: Logger;
|
|
54
|
+
quickviewManager?: QuickviewManager;
|
|
53
55
|
controller: {
|
|
54
56
|
[key: string]: RecommendationController;
|
|
55
57
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecommendationInstantiator.d.ts","sourceRoot":"","sources":["../../../../src/Instantiators/RecommendationInstantiator.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAc,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAA2D,MAAM,4BAA4B,CAAC;AACvI,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,
|
|
1
|
+
{"version":3,"file":"RecommendationInstantiator.d.ts","sourceRoot":"","sources":["../../../../src/Instantiators/RecommendationInstantiator.tsx"],"names":[],"mappings":"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"}
|
|
@@ -40,6 +40,7 @@ export class RecommendationInstantiator {
|
|
|
40
40
|
this.client = services?.client || new Client(this.config.client.globals, this.config.client.config);
|
|
41
41
|
this.tracker = services?.tracker || new Tracker(this.config.client.globals);
|
|
42
42
|
this.logger = services?.logger || new Logger({ prefix: 'RecommendationInstantiator ', mode: this.mode });
|
|
43
|
+
this.quickviewManager = services?.quickviewManager;
|
|
43
44
|
const profileCount = {};
|
|
44
45
|
// script block targeter for "grouped" and "legacy" blocks
|
|
45
46
|
this.targeter = new DomTargeter([
|
|
@@ -247,7 +248,7 @@ async function readyTheController(instance, services, targetElem, context, profi
|
|
|
247
248
|
controller: controllerConfig,
|
|
248
249
|
context,
|
|
249
250
|
mode: instance.config.mode,
|
|
250
|
-
}, { client: instance.client, tracker: instance.tracker });
|
|
251
|
+
}, { client: instance.client, tracker: instance.tracker, quickviewManager: instance.quickviewManager });
|
|
251
252
|
// mark element with controller id so cleanupStaleControllers knows it's active
|
|
252
253
|
if (targetElem) {
|
|
253
254
|
targetElem.setAttribute('ss-controller-id', controller.id);
|
package/dist/esm/src/Snap.d.ts
CHANGED
|
@@ -5,10 +5,11 @@ import { AppMode } from '@athoscommerce/snap-toolbox';
|
|
|
5
5
|
import { ControllerTypes } from '@athoscommerce/snap-controller';
|
|
6
6
|
import { EventManager } from '@athoscommerce/snap-event-manager';
|
|
7
7
|
import type { ClientConfig, ClientGlobals } from '@athoscommerce/snap-client';
|
|
8
|
-
import type { Controllers, AbstractController, SearchControllerConfig, AutocompleteControllerConfig, FinderControllerConfig, RecommendationControllerConfig, ControllerConfigs, ContextVariables } from '@athoscommerce/snap-controller';
|
|
8
|
+
import type { Controllers, AbstractController, SearchControllerConfig, ChatControllerConfig, AutocompleteControllerConfig, FinderControllerConfig, RecommendationControllerConfig, ControllerConfigs, ContextVariables } from '@athoscommerce/snap-controller';
|
|
9
9
|
import type { TrackerConfig, TrackerGlobals } from '@athoscommerce/snap-tracker';
|
|
10
10
|
import type { Target, OnTarget } from '@athoscommerce/snap-toolbox';
|
|
11
11
|
import type { UrlTranslatorConfig } from '@athoscommerce/snap-url-manager';
|
|
12
|
+
import type { QuickviewManagerConfig, QuickviewManagerServices } from '@athoscommerce/snap-controller';
|
|
12
13
|
import type { RecommendationInstantiator, RecommendationInstantiatorConfig } from './Instantiators/RecommendationInstantiator';
|
|
13
14
|
import type { SnapControllerServices, InitialUrlConfig, SnapFeatures } from './types';
|
|
14
15
|
import type { TemplatesStore } from './Templates/Stores/TemplateStore';
|
|
@@ -55,10 +56,16 @@ export type SnapConfig = {
|
|
|
55
56
|
};
|
|
56
57
|
controllers?: {
|
|
57
58
|
search?: SnapConfigControllerDefinition<SearchControllerConfig>[];
|
|
59
|
+
chat?: SnapConfigControllerDefinition<ChatControllerConfig>[];
|
|
58
60
|
autocomplete?: SnapConfigControllerDefinition<AutocompleteControllerConfig>[];
|
|
59
61
|
finder?: SnapConfigControllerDefinition<FinderControllerConfig>[];
|
|
60
62
|
recommendation?: SnapConfigControllerDefinition<RecommendationControllerConfig>[];
|
|
61
63
|
};
|
|
64
|
+
quickview?: {
|
|
65
|
+
config?: QuickviewManagerConfig;
|
|
66
|
+
targeters?: ExtendedTarget[];
|
|
67
|
+
services?: Partial<QuickviewManagerServices>;
|
|
68
|
+
};
|
|
62
69
|
};
|
|
63
70
|
export type SnapServices = {
|
|
64
71
|
client?: Client;
|
|
@@ -80,6 +87,7 @@ export declare class Snap {
|
|
|
80
87
|
};
|
|
81
88
|
eventManager: EventManager;
|
|
82
89
|
templates?: TemplatesStore;
|
|
90
|
+
private quickviewManager?;
|
|
83
91
|
getInstantiator: (id: string) => Promise<RecommendationInstantiator>;
|
|
84
92
|
getController: (id: string) => Promise<Controllers>;
|
|
85
93
|
getControllers: (...controllerIds: string[]) => Promise<Controllers[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Snap.d.ts","sourceRoot":"","sources":["../../../src/Snap.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,OAAO,EAAgE,MAAM,6BAA6B,CAAC;AACpH,OAAO,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"Snap.d.ts","sourceRoot":"","sources":["../../../src/Snap.tsx"],"names":[],"mappings":"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"}
|
package/dist/esm/src/Snap.js
CHANGED
|
@@ -2,15 +2,15 @@ import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
|
2
2
|
import { render } from 'preact';
|
|
3
3
|
import deepmerge from 'deepmerge';
|
|
4
4
|
import { isPlainObject } from 'is-plain-object';
|
|
5
|
-
import { configure as configureMobx } from 'mobx';
|
|
5
|
+
import { configure as configureMobx, when } from 'mobx';
|
|
6
6
|
import { Client } from '@athoscommerce/snap-client';
|
|
7
7
|
import { Logger } from '@athoscommerce/snap-logger';
|
|
8
8
|
import { Tracker } from '@athoscommerce/snap-tracker';
|
|
9
9
|
import { AppMode, version, getContext, DomTargeter, url, cookies, featureFlags } from '@athoscommerce/snap-toolbox';
|
|
10
|
-
import { ControllerTypes } from '@athoscommerce/snap-controller';
|
|
10
|
+
import { ControllerTypes, QuickviewManager } from '@athoscommerce/snap-controller';
|
|
11
11
|
import { getInitialUrlState } from './getInitialUrlState/getInitialUrlState';
|
|
12
12
|
import { default as createSearchController } from './create/createSearchController';
|
|
13
|
-
import { configureSnapFeatures } from './utils';
|
|
13
|
+
import { applyChatTargetInject, configureSnapFeatures } from './utils';
|
|
14
14
|
import { setupEvents } from './setupEvents';
|
|
15
15
|
// configure MobX
|
|
16
16
|
configureMobx({ useProxies: 'never', isolateGlobalState: true, enforceActions: 'never' });
|
|
@@ -95,6 +95,9 @@ export class Snap {
|
|
|
95
95
|
case ControllerTypes.recommendation:
|
|
96
96
|
importPromise = import('./create/createRecommendationController');
|
|
97
97
|
break;
|
|
98
|
+
case ControllerTypes.chat:
|
|
99
|
+
importPromise = import('./create/createChatController');
|
|
100
|
+
break;
|
|
98
101
|
case ControllerTypes.search:
|
|
99
102
|
default:
|
|
100
103
|
importPromise = import('./create/createSearchController');
|
|
@@ -117,6 +120,7 @@ export class Snap {
|
|
|
117
120
|
profiler: services?.profiler,
|
|
118
121
|
logger: services?.logger,
|
|
119
122
|
tracker: services?.tracker || this.tracker,
|
|
123
|
+
quickviewManager: services?.quickviewManager || this.quickviewManager,
|
|
120
124
|
});
|
|
121
125
|
}
|
|
122
126
|
if (callback) {
|
|
@@ -448,6 +452,44 @@ export class Snap {
|
|
|
448
452
|
id: this.context.shopper.id,
|
|
449
453
|
});
|
|
450
454
|
}
|
|
455
|
+
// Create the quickview manager. Synchronous and ahead of controller creation below, so it can
|
|
456
|
+
// be passed to every controller as the 'quickview' service. The quickview *components* are
|
|
457
|
+
// still loaded on demand by the targeters.
|
|
458
|
+
if (this.config.quickview) {
|
|
459
|
+
try {
|
|
460
|
+
const { config: quickviewConfig, services: quickviewServices, targeters } = this.config.quickview;
|
|
461
|
+
this.quickviewManager = new QuickviewManager({
|
|
462
|
+
store: quickviewServices?.store,
|
|
463
|
+
}, quickviewConfig);
|
|
464
|
+
targeters?.forEach((target, index) => {
|
|
465
|
+
if (!target.selector) {
|
|
466
|
+
throw new Error(`Quickview target at index ${index} missing selector value (string).`);
|
|
467
|
+
}
|
|
468
|
+
if (!target.component) {
|
|
469
|
+
throw new Error(`Quickview target at index ${index} missing component value (Component).`);
|
|
470
|
+
}
|
|
471
|
+
new DomTargeter([{ ...target }], async (target, elem, originalElem) => {
|
|
472
|
+
const onTarget = target.onTarget;
|
|
473
|
+
onTarget && (await onTarget(target, elem, originalElem));
|
|
474
|
+
try {
|
|
475
|
+
// defer the component chunk until the first open
|
|
476
|
+
await when(() => Boolean(this.quickviewManager?.store.isOpen));
|
|
477
|
+
const Component = await target.component();
|
|
478
|
+
setTimeout(() => {
|
|
479
|
+
render(_jsx(Component, { quickviewManager: this.quickviewManager, snap: this, ...target.props }), elem);
|
|
480
|
+
});
|
|
481
|
+
}
|
|
482
|
+
catch (err) {
|
|
483
|
+
this.logger.error(err);
|
|
484
|
+
this.logger.error(COMPONENT_ERROR, target);
|
|
485
|
+
}
|
|
486
|
+
});
|
|
487
|
+
});
|
|
488
|
+
}
|
|
489
|
+
catch (err) {
|
|
490
|
+
this.logger.error(`Failed to create the Quickview Manager.`, err);
|
|
491
|
+
}
|
|
492
|
+
}
|
|
451
493
|
// create controllers
|
|
452
494
|
Object.keys(this.config?.controllers || {}).forEach((type) => {
|
|
453
495
|
switch (type) {
|
|
@@ -471,6 +513,7 @@ export class Snap {
|
|
|
471
513
|
profiler: controller.services?.profiler,
|
|
472
514
|
logger: controller.services?.logger,
|
|
473
515
|
tracker: controller.services?.tracker || this.tracker,
|
|
516
|
+
quickviewManager: controller.services?.quickviewManager || this.quickviewManager,
|
|
474
517
|
});
|
|
475
518
|
window.athos.controller = window.athos.controller || {};
|
|
476
519
|
window.athos.controller[cntrlr.config.id] = this.controllers[cntrlr.config.id] = cntrlr;
|
|
@@ -538,6 +581,73 @@ export class Snap {
|
|
|
538
581
|
});
|
|
539
582
|
break;
|
|
540
583
|
}
|
|
584
|
+
case 'chat': {
|
|
585
|
+
this.config.controllers[type].forEach((controller, index) => {
|
|
586
|
+
if (typeof this._controllerPromises[controller.config.id] != 'undefined') {
|
|
587
|
+
this.logger.error(`Controller with id '${controller.config.id}' is already defined`);
|
|
588
|
+
return;
|
|
589
|
+
}
|
|
590
|
+
this._controllerPromises[controller.config.id] = new Promise(async (resolve) => {
|
|
591
|
+
try {
|
|
592
|
+
// `_initialized` is only set after the awaited init fires, so two chat
|
|
593
|
+
// targeters would otherwise both re-run the init middleware
|
|
594
|
+
let initialized = false;
|
|
595
|
+
const targetFunction = async (target, elem, originalElem) => {
|
|
596
|
+
const onTarget = target.onTarget;
|
|
597
|
+
onTarget && (await onTarget(target, elem, originalElem));
|
|
598
|
+
try {
|
|
599
|
+
const importPromises = [];
|
|
600
|
+
// dynamically import the component
|
|
601
|
+
importPromises.push(target.component());
|
|
602
|
+
const importResolutions = await Promise.all(importPromises);
|
|
603
|
+
const Component = importResolutions[0];
|
|
604
|
+
setTimeout(() => {
|
|
605
|
+
render(_jsx(Component, { controller: this.controllers[controller.config.id], snap: this, ...target.props }), elem);
|
|
606
|
+
});
|
|
607
|
+
}
|
|
608
|
+
catch (err) {
|
|
609
|
+
this.logger.error(err);
|
|
610
|
+
this.logger.error(COMPONENT_ERROR, target);
|
|
611
|
+
}
|
|
612
|
+
};
|
|
613
|
+
if (!controller?.targeters || controller?.targeters.length === 0) {
|
|
614
|
+
const cntrlr = await this._createController(ControllerTypes.chat, controller.config, controller.services, controller.url, controller.context, (cntrlr) => {
|
|
615
|
+
if (cntrlr)
|
|
616
|
+
resolve(cntrlr);
|
|
617
|
+
});
|
|
618
|
+
if (!cntrlr.initialized)
|
|
619
|
+
cntrlr.init();
|
|
620
|
+
}
|
|
621
|
+
controller?.targeters?.forEach((target, target_index) => {
|
|
622
|
+
if (!target.selector) {
|
|
623
|
+
throw new Error(`Targets at index ${target_index} missing selector value (string).`);
|
|
624
|
+
}
|
|
625
|
+
if (!target.component) {
|
|
626
|
+
throw new Error(`Targets at index ${target_index} missing component value (Component).`);
|
|
627
|
+
}
|
|
628
|
+
target = applyChatTargetInject(target);
|
|
629
|
+
const targeter = new DomTargeter([{ ...target }], async (target, elem, originalElem) => {
|
|
630
|
+
const cntrlr = await this._createController(ControllerTypes.chat, controller.config, controller.services, controller.url, controller.context, (cntrlr) => {
|
|
631
|
+
if (cntrlr)
|
|
632
|
+
resolve(cntrlr);
|
|
633
|
+
});
|
|
634
|
+
if (!initialized) {
|
|
635
|
+
initialized = true;
|
|
636
|
+
if (!cntrlr.initialized)
|
|
637
|
+
cntrlr.init();
|
|
638
|
+
}
|
|
639
|
+
targetFunction({ controller: cntrlr, ...target }, elem, originalElem);
|
|
640
|
+
cntrlr.addTargeter(targeter);
|
|
641
|
+
});
|
|
642
|
+
});
|
|
643
|
+
}
|
|
644
|
+
catch (err) {
|
|
645
|
+
this.logger.error(`Failed to instantiate ${type} controller at index ${index}.`, err);
|
|
646
|
+
}
|
|
647
|
+
});
|
|
648
|
+
});
|
|
649
|
+
break;
|
|
650
|
+
}
|
|
541
651
|
case 'autocomplete': {
|
|
542
652
|
this.config.controllers[type].forEach((controller, index) => {
|
|
543
653
|
if (typeof this._controllerPromises[controller.config.id] != 'undefined') {
|
|
@@ -752,6 +862,7 @@ export class Snap {
|
|
|
752
862
|
tracker: this.tracker,
|
|
753
863
|
logger: this.logger,
|
|
754
864
|
snap: this,
|
|
865
|
+
quickviewManager: this.quickviewManager,
|
|
755
866
|
}, this.context);
|
|
756
867
|
});
|
|
757
868
|
}
|