@athoscommerce/snap-preact 1.2.3-beta.1 → 1.3.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/Button/Button.d.ts +1 -1
- package/dist/cjs/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.d.ts +0 -1
- package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.js +13 -30
- package/dist/cjs/components/src/components/Atoms/Icon/paths.d.ts +0 -21
- package/dist/cjs/components/src/components/Atoms/Icon/paths.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Atoms/Icon/paths.js +0 -21
- package/dist/cjs/components/src/components/Atoms/TemplateSelect/TemplateSelect.d.ts +3 -3
- package/dist/cjs/components/src/components/Atoms/TemplateSelect/TemplateSelect.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Atoms/TemplateSelect/TemplateSelect.js +7 -8
- package/dist/cjs/components/src/components/Molecules/CalloutBadge/CalloutBadge.js +2 -2
- package/dist/cjs/components/src/components/Molecules/OverlayBadge/OverlayBadge.js +2 -2
- package/dist/cjs/components/src/components/Molecules/Result/Result.d.ts +3 -3
- package/dist/cjs/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/Result/Result.js +4 -4
- package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.d.ts +0 -2
- package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.js +2 -19
- package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.js +12 -30
- package/dist/cjs/components/src/components/Molecules/TemplatesEditor/Components/AbstractedControls.js +5 -5
- package/dist/cjs/components/src/components/Molecules/TemplatesEditor/Components/Control.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/TemplatesEditor/Components/Control.js +31 -31
- package/dist/cjs/components/src/components/Molecules/TemplatesEditor/TemplatesEditor.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/TemplatesEditor/TemplatesEditor.js +22 -36
- package/dist/cjs/components/src/components/Organisms/Results/Results.js +1 -1
- package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +6 -12
- package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +4 -10
- package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +5 -11
- package/dist/cjs/components/src/hooks/useAcRenderedInput.js +1 -1
- package/dist/cjs/components/src/hooks/useMediaQuery.d.ts.map +1 -1
- package/dist/cjs/components/src/hooks/useMediaQuery.js +3 -1
- package/dist/cjs/components/src/index.d.ts +0 -1
- package/dist/cjs/components/src/index.d.ts.map +1 -1
- package/dist/cjs/components/src/index.js +0 -1
- package/dist/cjs/components/src/providers/withTracking.d.ts +2 -2
- package/dist/cjs/components/src/providers/withTracking.d.ts.map +1 -1
- package/dist/cjs/components/src/themes/base/base.js +3 -3
- package/dist/cjs/src/Snap.d.ts +1 -2
- package/dist/cjs/src/Snap.d.ts.map +1 -1
- package/dist/cjs/src/Snap.js +24 -124
- package/dist/cjs/src/SnapHybrid.d.ts.map +1 -1
- package/dist/cjs/src/Templates/SnapTemplates.d.ts +13 -73
- package/dist/cjs/src/Templates/SnapTemplates.d.ts.map +1 -1
- package/dist/cjs/src/Templates/SnapTemplates.js +100 -117
- package/dist/cjs/src/Templates/Stores/LibraryStore.d.ts +0 -4
- package/dist/cjs/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/LibraryStore.js +0 -19
- package/dist/cjs/src/Templates/Stores/TargetStore.d.ts +7 -6
- package/dist/cjs/src/Templates/Stores/TargetStore.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/TargetStore.js +14 -8
- package/dist/cjs/src/Templates/Stores/TemplateEditor/TemplateEditorStore.d.ts +56 -7
- package/dist/cjs/src/Templates/Stores/TemplateEditor/TemplateEditorStore.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/TemplateEditor/TemplateEditorStore.js +465 -94
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/autocompleteControllerUI.d.ts +1 -0
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/autocompleteControllerUI.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/autocompleteControllerUI.js +123 -70
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/configUI.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/configUI.js +9 -3
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/searchControllerUI.d.ts +1 -0
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/searchControllerUI.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/searchControllerUI.js +86 -1
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/themeUI.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/TemplateEditor/uiAbstractions/themeUI.js +33 -14
- package/dist/cjs/src/Templates/Stores/TemplateStore.d.ts +80 -33
- package/dist/cjs/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/TemplateStore.js +28 -37
- package/dist/cjs/src/Templates/Stores/ThemeStore.d.ts +2 -8
- package/dist/cjs/src/Templates/Stores/ThemeStore.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/ThemeStore.js +3 -28
- package/dist/cjs/src/Templates/Stores/library/languages/es.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/library/languages/es.js +0 -5
- package/dist/cjs/src/Templates/Stores/library/languages/fr.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/library/languages/fr.js +0 -5
- package/dist/cjs/src/Templates/index.d.ts +1 -1
- package/dist/cjs/src/Templates/index.d.ts.map +1 -1
- package/dist/cjs/src/index.d.ts +1 -0
- package/dist/cjs/src/index.d.ts.map +1 -1
- package/dist/cjs/src/setupEvents.d.ts.map +1 -1
- package/dist/cjs/src/setupEvents.js +0 -39
- package/dist/cjs/src/types.d.ts +6 -16
- package/dist/cjs/src/types.d.ts.map +1 -1
- package/dist/cjs/src/utils/combineMerge.d.ts +2 -0
- package/dist/cjs/src/utils/combineMerge.d.ts.map +1 -0
- package/dist/cjs/src/utils/combineMerge.js +22 -0
- package/dist/cjs/src/utils/index.d.ts +1 -0
- package/dist/cjs/src/utils/index.d.ts.map +1 -1
- package/dist/cjs/src/utils/index.js +3 -1
- package/dist/esm/components/src/components/Atoms/Button/Button.d.ts +1 -1
- 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 +0 -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 +9 -33
- package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts +0 -21
- 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 -21
- package/dist/esm/components/src/components/Atoms/TemplateSelect/TemplateSelect.d.ts +3 -3
- package/dist/esm/components/src/components/Atoms/TemplateSelect/TemplateSelect.d.ts.map +1 -1
- package/dist/esm/components/src/components/Atoms/TemplateSelect/TemplateSelect.js +7 -8
- package/dist/esm/components/src/components/Molecules/CalloutBadge/CalloutBadge.js +1 -1
- package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.js +1 -1
- package/dist/esm/components/src/components/Molecules/Result/Result.d.ts +3 -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 +2 -2
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts +0 -2
- 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 -35
- package/dist/esm/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Slideout/Slideout.js +12 -30
- package/dist/esm/components/src/components/Molecules/TemplatesEditor/Components/AbstractedControls.js +5 -5
- package/dist/esm/components/src/components/Molecules/TemplatesEditor/Components/Control.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/TemplatesEditor/Components/Control.js +29 -29
- package/dist/esm/components/src/components/Molecules/TemplatesEditor/TemplatesEditor.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/TemplatesEditor/TemplatesEditor.js +22 -35
- 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 +4 -11
- package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +4 -11
- package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +4 -11
- package/dist/esm/components/src/hooks/useAcRenderedInput.js +1 -1
- package/dist/esm/components/src/hooks/useMediaQuery.d.ts.map +1 -1
- package/dist/esm/components/src/hooks/useMediaQuery.js +3 -1
- package/dist/esm/components/src/index.d.ts +0 -1
- package/dist/esm/components/src/index.d.ts.map +1 -1
- package/dist/esm/components/src/index.js +0 -1
- 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/themes/base/base.js +3 -3
- package/dist/esm/src/Snap.d.ts +1 -2
- package/dist/esm/src/Snap.d.ts.map +1 -1
- package/dist/esm/src/Snap.js +0 -59
- package/dist/esm/src/SnapHybrid.d.ts.map +1 -1
- package/dist/esm/src/Templates/SnapTemplates.d.ts +13 -73
- package/dist/esm/src/Templates/SnapTemplates.d.ts.map +1 -1
- package/dist/esm/src/Templates/SnapTemplates.js +108 -112
- package/dist/esm/src/Templates/Stores/LibraryStore.d.ts +0 -4
- package/dist/esm/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/LibraryStore.js +0 -6
- package/dist/esm/src/Templates/Stores/TargetStore.d.ts +7 -6
- package/dist/esm/src/Templates/Stores/TargetStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TargetStore.js +14 -8
- package/dist/esm/src/Templates/Stores/TemplateEditor/TemplateEditorStore.d.ts +56 -7
- package/dist/esm/src/Templates/Stores/TemplateEditor/TemplateEditorStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/TemplateEditorStore.js +446 -88
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/autocompleteControllerUI.d.ts +1 -0
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/autocompleteControllerUI.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/autocompleteControllerUI.js +118 -66
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/configUI.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/configUI.js +9 -3
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/searchControllerUI.d.ts +1 -0
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/searchControllerUI.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/searchControllerUI.js +82 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/themeUI.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/uiAbstractions/themeUI.js +27 -8
- package/dist/esm/src/Templates/Stores/TemplateStore.d.ts +80 -33
- package/dist/esm/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateStore.js +27 -37
- package/dist/esm/src/Templates/Stores/ThemeStore.d.ts +2 -8
- package/dist/esm/src/Templates/Stores/ThemeStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/ThemeStore.js +3 -26
- package/dist/esm/src/Templates/Stores/library/languages/es.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/library/languages/es.js +0 -5
- package/dist/esm/src/Templates/Stores/library/languages/fr.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/library/languages/fr.js +0 -5
- 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/index.d.ts +1 -0
- package/dist/esm/src/index.d.ts.map +1 -1
- package/dist/esm/src/setupEvents.d.ts.map +1 -1
- package/dist/esm/src/setupEvents.js +0 -23
- package/dist/esm/src/types.d.ts +6 -16
- package/dist/esm/src/types.d.ts.map +1 -1
- package/dist/esm/src/utils/combineMerge.d.ts +2 -0
- package/dist/esm/src/utils/combineMerge.d.ts.map +1 -0
- package/dist/esm/src/utils/combineMerge.js +16 -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/package.json +12 -13
- package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts +0 -7
- package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +0 -85
- package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts +0 -2
- package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.js +0 -17
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +0 -18
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +0 -115
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts +0 -2
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.js +0 -17
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts +0 -17
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +0 -106
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts +0 -2
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.js +0 -17
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts +0 -23
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +0 -445
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts +0 -2
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.js +0 -17
- package/dist/cjs/components/src/components/Organisms/Chat/Chat.d.ts +0 -14
- package/dist/cjs/components/src/components/Organisms/Chat/Chat.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Organisms/Chat/Chat.js +0 -1619
- package/dist/cjs/components/src/components/Organisms/Chat/ChatAttachmentContext.d.ts +0 -19
- package/dist/cjs/components/src/components/Organisms/Chat/ChatAttachmentContext.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Organisms/Chat/ChatAttachmentContext.js +0 -22
- package/dist/cjs/components/src/components/Organisms/Chat/ChatResult.d.ts +0 -12
- package/dist/cjs/components/src/components/Organisms/Chat/ChatResult.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Organisms/Chat/ChatResult.js +0 -158
- package/dist/cjs/components/src/components/Organisms/Chat/MessageText.d.ts +0 -13
- package/dist/cjs/components/src/components/Organisms/Chat/MessageText.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Organisms/Chat/MessageText.js +0 -170
- package/dist/cjs/components/src/components/Organisms/Chat/MessageUser.d.ts +0 -11
- package/dist/cjs/components/src/components/Organisms/Chat/MessageUser.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Organisms/Chat/MessageUser.js +0 -192
- package/dist/cjs/components/src/components/Organisms/Chat/ResultsDisplay.d.ts +0 -11
- package/dist/cjs/components/src/components/Organisms/Chat/ResultsDisplay.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Organisms/Chat/ResultsDisplay.js +0 -86
- package/dist/cjs/components/src/components/Organisms/Chat/SuggestedQuestions.d.ts +0 -12
- package/dist/cjs/components/src/components/Organisms/Chat/SuggestedQuestions.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Organisms/Chat/SuggestedQuestions.js +0 -73
- package/dist/cjs/components/src/components/Organisms/Chat/index.d.ts +0 -2
- package/dist/cjs/components/src/components/Organisms/Chat/index.d.ts.map +0 -1
- package/dist/cjs/components/src/components/Organisms/Chat/index.js +0 -17
- package/dist/cjs/src/Templates/Stores/library/components/Chat.d.ts +0 -2
- package/dist/cjs/src/Templates/Stores/library/components/Chat.d.ts.map +0 -1
- package/dist/cjs/src/Templates/Stores/library/components/Chat.js +0 -5
- package/dist/cjs/src/create/createChatController.d.ts +0 -5
- package/dist/cjs/src/create/createChatController.d.ts.map +0 -1
- package/dist/cjs/src/create/createChatController.js +0 -43
- package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts +0 -7
- 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 -67
- 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/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +0 -18
- 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 -109
- 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/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts +0 -17
- 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 -85
- 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 -23
- 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 -421
- 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/Organisms/Chat/Chat.d.ts +0 -14
- 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 -1560
- package/dist/esm/components/src/components/Organisms/Chat/ChatAttachmentContext.d.ts +0 -19
- package/dist/esm/components/src/components/Organisms/Chat/ChatAttachmentContext.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/ChatAttachmentContext.js +0 -16
- package/dist/esm/components/src/components/Organisms/Chat/ChatResult.d.ts +0 -12
- package/dist/esm/components/src/components/Organisms/Chat/ChatResult.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/ChatResult.js +0 -143
- package/dist/esm/components/src/components/Organisms/Chat/MessageText.d.ts +0 -13
- package/dist/esm/components/src/components/Organisms/Chat/MessageText.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/MessageText.js +0 -152
- package/dist/esm/components/src/components/Organisms/Chat/MessageUser.d.ts +0 -11
- package/dist/esm/components/src/components/Organisms/Chat/MessageUser.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/MessageUser.js +0 -164
- package/dist/esm/components/src/components/Organisms/Chat/ResultsDisplay.d.ts +0 -11
- package/dist/esm/components/src/components/Organisms/Chat/ResultsDisplay.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/ResultsDisplay.js +0 -70
- package/dist/esm/components/src/components/Organisms/Chat/SuggestedQuestions.d.ts +0 -12
- package/dist/esm/components/src/components/Organisms/Chat/SuggestedQuestions.d.ts.map +0 -1
- package/dist/esm/components/src/components/Organisms/Chat/SuggestedQuestions.js +0 -58
- package/dist/esm/components/src/components/Organisms/Chat/index.d.ts +0 -2
- 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 -1
- 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/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 -29
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
14
|
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
15
|
if (ar || !(i in from)) {
|
|
@@ -19,6 +30,7 @@ var color_1 = __importDefault(require("color"));
|
|
|
19
30
|
var deepmerge_1 = __importDefault(require("deepmerge"));
|
|
20
31
|
var TemplateStore_1 = require("../TemplateStore");
|
|
21
32
|
var uiAbstractions_1 = require("./uiAbstractions");
|
|
33
|
+
var utils_1 = require("../../../utils");
|
|
22
34
|
var THEME_VARIABLE_DEFAULTS = {
|
|
23
35
|
breakpoints: {
|
|
24
36
|
mobile: 600,
|
|
@@ -36,21 +48,32 @@ var TemplateEditorStore = /** @class */ (function () {
|
|
|
36
48
|
function TemplateEditorStore(_a) {
|
|
37
49
|
var templatesStore = _a.templatesStore;
|
|
38
50
|
var _this = this;
|
|
39
|
-
var _b;
|
|
40
|
-
this.
|
|
51
|
+
var _b, _c, _d, _e, _f, _g, _h, _j;
|
|
52
|
+
this.storedState = {
|
|
41
53
|
hidden: false,
|
|
42
54
|
activeTab: 'configuration',
|
|
43
55
|
};
|
|
56
|
+
this.state = {
|
|
57
|
+
activeDomSelector: '',
|
|
58
|
+
};
|
|
44
59
|
this.overrides = {
|
|
45
60
|
config: {},
|
|
46
61
|
controller: {},
|
|
47
62
|
theme: {},
|
|
63
|
+
targets: {
|
|
64
|
+
search: [],
|
|
65
|
+
autocomplete: [],
|
|
66
|
+
},
|
|
48
67
|
};
|
|
49
68
|
this.initial = {
|
|
50
69
|
config: {
|
|
51
70
|
language: 'en',
|
|
52
71
|
currency: 'usd',
|
|
53
72
|
},
|
|
73
|
+
targets: {
|
|
74
|
+
search: [],
|
|
75
|
+
autocomplete: [],
|
|
76
|
+
},
|
|
54
77
|
controller: {},
|
|
55
78
|
theme: {
|
|
56
79
|
extends: 'base',
|
|
@@ -67,6 +90,10 @@ var TemplateEditorStore = /** @class */ (function () {
|
|
|
67
90
|
search: (0, uiAbstractions_1.searchControllerUI)(this),
|
|
68
91
|
autocomplete: (0, uiAbstractions_1.autocompleteControllerUI)(this),
|
|
69
92
|
},
|
|
93
|
+
targets: {
|
|
94
|
+
search: (0, uiAbstractions_1.searchTargetUI)(this),
|
|
95
|
+
autocomplete: (0, uiAbstractions_1.autocompleteTargetUI)(this),
|
|
96
|
+
},
|
|
70
97
|
};
|
|
71
98
|
this.setThemeOverride = function (obj) {
|
|
72
99
|
var path = obj.path, value = obj.value;
|
|
@@ -75,40 +102,157 @@ var TemplateEditorStore = /** @class */ (function () {
|
|
|
75
102
|
return acc && acc[key];
|
|
76
103
|
}, _this.initial.theme);
|
|
77
104
|
var themeConfigOverrides = generateObject(path, value == initialValue ? undefined : value);
|
|
78
|
-
_this.overrides.theme = removeEmptyObjects((0, deepmerge_1.default)(_this.overrides.theme || {}, themeConfigOverrides));
|
|
105
|
+
_this.overrides.theme = removeEmptyObjects((0, deepmerge_1.default)(_this.overrides.theme || {}, themeConfigOverrides || {}));
|
|
79
106
|
_this.storage.set('overrides.theme', _this.overrides.theme);
|
|
80
107
|
var mergedOverrides = (0, deepmerge_1.default)(_this.initial.theme || {}, _this.overrides.theme || {});
|
|
108
|
+
var transformedMergedOverrides = transformThemeComponentOverrides(mergedOverrides);
|
|
81
109
|
// update all themes with the new overrides
|
|
82
110
|
Object.keys(_this.templatesStore.themes.library).forEach(function (themeName) {
|
|
83
111
|
var themeStore = _this.templatesStore.themes.library[themeName];
|
|
84
|
-
themeStore.setEditorOverrides(
|
|
112
|
+
themeStore.setEditorOverrides(transformedMergedOverrides);
|
|
85
113
|
});
|
|
86
114
|
};
|
|
115
|
+
// ['variables', 'colors', 'primary']
|
|
116
|
+
// store.setThemeOverride({ path: ['variables', 'breakpoints', 'mobile'], value });
|
|
117
|
+
// ['search', '[0]', 'selector']
|
|
118
|
+
// store.setTargetOverride({ path: ['search', '[0]'], value });
|
|
119
|
+
// store.setTargetOverride({ path: ['search', '[0]', 'selector'], value });
|
|
120
|
+
// store.setTargetOverride({ path: ['search', '[0]'], value }); --- value = {...}
|
|
121
|
+
this.setTargetOverride = function (obj) {
|
|
122
|
+
var path = obj.path;
|
|
123
|
+
var value = obj.value;
|
|
124
|
+
/*
|
|
125
|
+
this.initial.targets = {
|
|
126
|
+
search: [
|
|
127
|
+
{...},
|
|
128
|
+
{...},
|
|
129
|
+
]
|
|
130
|
+
}
|
|
131
|
+
*/
|
|
132
|
+
var targetFeature = path[0];
|
|
133
|
+
// const lastPath = path[path.length - 1];
|
|
134
|
+
var targetIndex = -1;
|
|
135
|
+
// grab the initial config value using the path provided
|
|
136
|
+
var initialValue = path.reduce(function (acc, key) {
|
|
137
|
+
// handle array index access
|
|
138
|
+
// e.g., [0], [1], etc.
|
|
139
|
+
// if the key is in the format of [index], convert it to a number and access the array
|
|
140
|
+
// otherwise, access the object property as usual
|
|
141
|
+
try {
|
|
142
|
+
var keyIndex = Number(key.replace(/^\[(\d+)\]$/, '$1'));
|
|
143
|
+
if (Number.isNaN(keyIndex)) {
|
|
144
|
+
// not an index position
|
|
145
|
+
return acc && acc[key];
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
// we have a string key - use it to set the accumulator
|
|
149
|
+
targetIndex = keyIndex;
|
|
150
|
+
return acc && acc[keyIndex];
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
// handle error
|
|
155
|
+
console.error('Error accessing path in initial targets:', error);
|
|
156
|
+
return undefined;
|
|
157
|
+
}
|
|
158
|
+
}, _this.initial.targets);
|
|
159
|
+
var targetOverrides = generateObject(path, value == initialValue ? undefined : value);
|
|
160
|
+
var merged = (0, deepmerge_1.default)((0, mobx_1.toJS)(_this.overrides.targets) || {}, (0, mobx_1.toJS)(targetOverrides) || {}, { arrayMerge: utils_1.combineMerge });
|
|
161
|
+
_this.overrides.targets = removeEmptyObjects(merged);
|
|
162
|
+
_this.storage.set('overrides.targets', _this.overrides.targets);
|
|
163
|
+
// const plainInitial = convertObservableToPlain(this.initial.targets);
|
|
164
|
+
// const plainOverrides = convertObservableToPlain(this.overrides.targets);
|
|
165
|
+
var mergedOverrides = (0, deepmerge_1.default)((0, mobx_1.toJS)(_this.initial.targets) || {}, (0, mobx_1.toJS)(_this.overrides.targets) || {}, {
|
|
166
|
+
arrayMerge: utils_1.combineMerge,
|
|
167
|
+
});
|
|
168
|
+
var finalPath = path[path.length - 1];
|
|
169
|
+
if (finalPath == 'selector' && targetIndex > -1) {
|
|
170
|
+
// if reset button was clicked value will be undefined
|
|
171
|
+
if (typeof value == 'undefined') {
|
|
172
|
+
value = initialValue;
|
|
173
|
+
}
|
|
174
|
+
// needs to have a value and some actual elem to find
|
|
175
|
+
if (typeof value == 'string' && value.length > 1 && document.querySelector(value)) {
|
|
176
|
+
var activeTargeterKey = Object.keys(window.athos.controller[targetFeature].targeters)[targetIndex];
|
|
177
|
+
if (activeTargeterKey) {
|
|
178
|
+
var oldSelector = window.athos.controller[targetFeature].targeters[activeTargeterKey].targets[0].selector;
|
|
179
|
+
var elem = document.querySelector(oldSelector || '');
|
|
180
|
+
if (targetFeature == 'search' && elem) {
|
|
181
|
+
//create clone of elem with all attributes
|
|
182
|
+
var clonedElement = elem.cloneNode(true);
|
|
183
|
+
clonedElement.innerHTML = '';
|
|
184
|
+
//inject clone right after elem
|
|
185
|
+
elem.insertAdjacentElement('afterend', clonedElement);
|
|
186
|
+
//delete elem so targeter can retarget an element thats already been targeted
|
|
187
|
+
elem.remove();
|
|
188
|
+
}
|
|
189
|
+
window.athos.controller[targetFeature].targeters[activeTargeterKey].targets[0].selector = value;
|
|
190
|
+
/*
|
|
191
|
+
selector
|
|
192
|
+
inputSelector
|
|
193
|
+
|
|
194
|
+
targetSelector -> selector
|
|
195
|
+
inputSelector (optional) -> inputSelector
|
|
196
|
+
DomTargeter
|
|
197
|
+
* selector = selector
|
|
198
|
+
* props.input = inputSelector (optional)
|
|
199
|
+
*/
|
|
200
|
+
window.athos.controller[targetFeature].retarget();
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
else if (finalPath == 'inputSelector' && targetIndex > -1) {
|
|
205
|
+
var activeTargeterKey = Object.keys(window.athos.controller[targetFeature].targeters)[targetIndex];
|
|
206
|
+
window.athos.controller[targetFeature].targeters[activeTargeterKey].targets[0].props.input = value;
|
|
207
|
+
window.athos.controller[targetFeature].retarget();
|
|
208
|
+
}
|
|
209
|
+
// if the component changed we need to tell the targetStore about it via:
|
|
210
|
+
var targetFeatureSet = _this.templatesStore.targets[targetFeature];
|
|
211
|
+
if (targetFeatureSet && targetIndex != -1) {
|
|
212
|
+
var target_1 = targetFeatureSet[targetIndex];
|
|
213
|
+
// if (target && lastPath) {
|
|
214
|
+
// const finalValue = mergedOverrides[targetFeature][targetIndex]?.selector;
|
|
215
|
+
// finalValue && target.setValue(lastPath, finalValue);
|
|
216
|
+
// }
|
|
217
|
+
// update values in target
|
|
218
|
+
var mergedTarget_1 = mergedOverrides[targetFeature][targetIndex];
|
|
219
|
+
Object.keys(mergedTarget_1).forEach(function (key) {
|
|
220
|
+
var value = mergedTarget_1[key];
|
|
221
|
+
target_1.setValue(key, value);
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
// target.setComponent
|
|
225
|
+
};
|
|
87
226
|
this.templatesStore = templatesStore;
|
|
88
227
|
this.storage = new snap_store_mobx_1.StorageStore({ type: snap_store_mobx_1.StorageType.local, key: TemplateStore_1.TEMPLATE_STORE_KEY });
|
|
89
|
-
this.
|
|
90
|
-
this.overrides = this.storage.get('overrides') || this.overrides;
|
|
91
|
-
// prevent empty objects in overrides
|
|
92
|
-
this.overrides.config = this.overrides.config || {};
|
|
93
|
-
this.overrides.controller = this.overrides.controller || {};
|
|
94
|
-
this.overrides.theme = this.overrides.theme || {};
|
|
228
|
+
this.storedState = this.storage.get('editor') || this.storedState;
|
|
95
229
|
this.initial.config = (0, deepmerge_1.default)(this.initial.config, templatesStore.config.config);
|
|
96
230
|
this.initial.controller = {}; // set when registering controllers
|
|
231
|
+
// set initial targets
|
|
232
|
+
if ((_b = templatesStore.config.search) === null || _b === void 0 ? void 0 : _b.targets)
|
|
233
|
+
this.initial.targets.search = (_c = templatesStore.config.search) === null || _c === void 0 ? void 0 : _c.targets;
|
|
234
|
+
if ((_d = templatesStore.config.autocomplete) === null || _d === void 0 ? void 0 : _d.targets)
|
|
235
|
+
this.initial.targets.autocomplete = (_e = templatesStore.config.autocomplete) === null || _e === void 0 ? void 0 : _e.targets;
|
|
97
236
|
var themeConfig = JSON.parse(JSON.stringify(templatesStore.config.theme || {}));
|
|
98
237
|
delete themeConfig.style;
|
|
99
|
-
delete themeConfig.overrides;
|
|
100
238
|
this.initial.theme = (0, deepmerge_1.default)(this.initial.theme, themeConfig);
|
|
101
|
-
//
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
239
|
+
// apply stored overrides (normalizes, persists, and triggers theme changes)
|
|
240
|
+
var storedOverrides = this.storage.get('overrides') || {};
|
|
241
|
+
this.setOverrides({
|
|
242
|
+
config: storedOverrides.config,
|
|
243
|
+
theme: storedOverrides.theme,
|
|
244
|
+
search: {
|
|
245
|
+
targets: (_f = storedOverrides.targets) === null || _f === void 0 ? void 0 : _f.search,
|
|
246
|
+
settings: (_g = storedOverrides.controller) === null || _g === void 0 ? void 0 : _g.search,
|
|
247
|
+
},
|
|
248
|
+
autocomplete: {
|
|
249
|
+
targets: (_h = storedOverrides.targets) === null || _h === void 0 ? void 0 : _h.autocomplete,
|
|
250
|
+
settings: (_j = storedOverrides.controller) === null || _j === void 0 ? void 0 : _j.autocomplete,
|
|
251
|
+
},
|
|
105
252
|
});
|
|
106
|
-
// switch to the theme set in the initial config if no override is set
|
|
107
|
-
this.setTheme((_b = this.overrides.theme.extends) !== null && _b !== void 0 ? _b : this.initial.theme.extends);
|
|
108
|
-
// initialize themes with overrides
|
|
109
|
-
this.setThemeOverride({ path: [], value: undefined });
|
|
110
253
|
this.storage.set('initial', this.initial);
|
|
111
254
|
(0, mobx_1.makeObservable)(this, {
|
|
255
|
+
storedState: mobx_1.observable,
|
|
112
256
|
state: mobx_1.observable,
|
|
113
257
|
overrides: mobx_1.observable,
|
|
114
258
|
initial: mobx_1.observable,
|
|
@@ -120,12 +264,80 @@ var TemplateEditorStore = /** @class */ (function () {
|
|
|
120
264
|
// });
|
|
121
265
|
}
|
|
122
266
|
TemplateEditorStore.prototype.switchTabs = function (tab) {
|
|
123
|
-
this.
|
|
124
|
-
this.storage.set('editor', this.
|
|
267
|
+
this.storedState.activeTab = tab;
|
|
268
|
+
this.storage.set('editor', this.storedState);
|
|
125
269
|
};
|
|
126
270
|
TemplateEditorStore.prototype.toggleHide = function (hide) {
|
|
127
|
-
this.
|
|
128
|
-
this.storage.set('editor', this.
|
|
271
|
+
this.storedState.hidden = hide;
|
|
272
|
+
this.storage.set('editor', this.storedState);
|
|
273
|
+
};
|
|
274
|
+
TemplateEditorStore.prototype.setOverrides = function (overrides) {
|
|
275
|
+
var _this = this;
|
|
276
|
+
var _a, _b, _c, _d, _e;
|
|
277
|
+
// normalize and set overrides, preventing empty objects
|
|
278
|
+
this.overrides.config = overrides.config || {};
|
|
279
|
+
this.overrides.controller = {
|
|
280
|
+
search: (_a = overrides.search) === null || _a === void 0 ? void 0 : _a.settings,
|
|
281
|
+
autocomplete: (_b = overrides.autocomplete) === null || _b === void 0 ? void 0 : _b.settings,
|
|
282
|
+
};
|
|
283
|
+
this.overrides.theme = overrides.theme || {};
|
|
284
|
+
this.overrides.targets = {
|
|
285
|
+
search: ((_c = overrides.search) === null || _c === void 0 ? void 0 : _c.targets) || [],
|
|
286
|
+
autocomplete: ((_d = overrides.autocomplete) === null || _d === void 0 ? void 0 : _d.targets) || [],
|
|
287
|
+
};
|
|
288
|
+
// persist each section to storage
|
|
289
|
+
this.storage.set('overrides.config', this.overrides.config);
|
|
290
|
+
this.storage.set('overrides.controller', this.overrides.controller);
|
|
291
|
+
this.storage.set('overrides.targets', this.overrides.targets);
|
|
292
|
+
// apply language/currency overrides to the templates store
|
|
293
|
+
var language = (this.overrides.config.language || this.initial.config.language);
|
|
294
|
+
var currency = (this.overrides.config.currency || this.initial.config.currency);
|
|
295
|
+
this.templatesStore.setLanguage(language);
|
|
296
|
+
this.templatesStore.setCurrency(currency);
|
|
297
|
+
// re-apply controller configs with merged overrides
|
|
298
|
+
// (skip if initial.controller hasn't been populated yet — registerController handles that case)
|
|
299
|
+
['search', 'autocomplete'].forEach(function (type) {
|
|
300
|
+
var _a, _b;
|
|
301
|
+
var controller = (_b = (_a = window.athos) === null || _a === void 0 ? void 0 : _a.controller) === null || _b === void 0 ? void 0 : _b[type];
|
|
302
|
+
if (controller && _this.initial.controller[type]) {
|
|
303
|
+
// reset settings to initial values first, then merge overrides on top
|
|
304
|
+
// (controller.config.settings already has old overrides baked in, so we can't use it as a base)
|
|
305
|
+
var cleanConfig = __assign(__assign({}, controller.config), { settings: JSON.parse(JSON.stringify(_this.initial.controller[type])) });
|
|
306
|
+
var mergedConfig = (0, deepmerge_1.default)(cleanConfig, {
|
|
307
|
+
settings: _this.overrides.controller[type] || {},
|
|
308
|
+
});
|
|
309
|
+
controller.setConfig(mergedConfig);
|
|
310
|
+
}
|
|
311
|
+
});
|
|
312
|
+
// re-apply target overrides (component, selector, etc.)
|
|
313
|
+
['search', 'autocomplete'].forEach(function (feature) {
|
|
314
|
+
var targetFeatureSet = _this.templatesStore.targets[feature];
|
|
315
|
+
var mergedTargets = (0, deepmerge_1.default)((0, mobx_1.toJS)(_this.initial.targets[feature]) || [], (0, mobx_1.toJS)(_this.overrides.targets[feature]) || [], { arrayMerge: utils_1.combineMerge });
|
|
316
|
+
targetFeatureSet.forEach(function (target, index) {
|
|
317
|
+
var mergedTarget = mergedTargets[index];
|
|
318
|
+
if (mergedTarget) {
|
|
319
|
+
Object.keys(mergedTarget).forEach(function (key) {
|
|
320
|
+
target.setValue(key, mergedTarget[key]);
|
|
321
|
+
});
|
|
322
|
+
}
|
|
323
|
+
});
|
|
324
|
+
});
|
|
325
|
+
// apply theme changes (also persists overrides.theme)
|
|
326
|
+
this.setTheme((_e = this.overrides.theme.extends) !== null && _e !== void 0 ? _e : this.initial.theme.extends);
|
|
327
|
+
};
|
|
328
|
+
TemplateEditorStore.prototype.resetOverrides = function () {
|
|
329
|
+
this.storage.set('overrides', undefined);
|
|
330
|
+
this.setOverrides({});
|
|
331
|
+
};
|
|
332
|
+
TemplateEditorStore.prototype.setActiveDomSelector = function (selectorId) {
|
|
333
|
+
if (selectorId === null || selectorId === void 0 ? void 0 : selectorId.length) {
|
|
334
|
+
this.state.activeDomSelector = selectorId;
|
|
335
|
+
this.toggleHide(true);
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
this.state.activeDomSelector = '';
|
|
339
|
+
this.toggleHide(false);
|
|
340
|
+
}
|
|
129
341
|
};
|
|
130
342
|
TemplateEditorStore.prototype.setConfigOverride = function (obj) {
|
|
131
343
|
var _this = this;
|
|
@@ -138,7 +350,6 @@ var TemplateEditorStore = /** @class */ (function () {
|
|
|
138
350
|
var updatedOverrides = removeEmptyObjects((0, deepmerge_1.default)(this.overrides.config || {}, configOverrides));
|
|
139
351
|
this.overrides.config = updatedOverrides;
|
|
140
352
|
this.storage.set('overrides.config', updatedOverrides);
|
|
141
|
-
// TODO: handle setting language and currency separately
|
|
142
353
|
if (path[0] === 'language') {
|
|
143
354
|
this.templatesStore.setLanguage((value || initialValue)).then(function () {
|
|
144
355
|
_this.storage.set('overrides.config', updatedOverrides);
|
|
@@ -158,24 +369,42 @@ var TemplateEditorStore = /** @class */ (function () {
|
|
|
158
369
|
}
|
|
159
370
|
this.overrides.theme = (0, deepmerge_1.default)(this.overrides.theme, updatedConfig);
|
|
160
371
|
this.storage.set('overrides.theme', this.overrides.theme);
|
|
372
|
+
// update initial variables from the newly selected theme's raw definition
|
|
373
|
+
var themeDefinition = this.templatesStore.library.themes[themeName];
|
|
374
|
+
if (themeDefinition) {
|
|
375
|
+
var themeConfig = JSON.parse(JSON.stringify(this.templatesStore.config.theme || {}));
|
|
376
|
+
delete themeConfig.style;
|
|
377
|
+
this.initial.theme.variables = (0, deepmerge_1.default)(themeDefinition.variables || {}, themeConfig.variables || {});
|
|
378
|
+
// normalize colors to hexadecimal format
|
|
379
|
+
Object.keys(this.initial.theme.variables.colors).forEach(function (key) {
|
|
380
|
+
var color = _this.initial.theme.variables.colors[key];
|
|
381
|
+
_this.initial.theme.variables.colors[key] = (0, color_1.default)(color).hex();
|
|
382
|
+
});
|
|
383
|
+
this.storage.set('initial', this.initial);
|
|
384
|
+
}
|
|
385
|
+
// update all library themes with recomputed editor overrides based on the new theme's variables
|
|
386
|
+
var mergedOverrides = (0, deepmerge_1.default)(this.initial.theme || {}, this.overrides.theme || {});
|
|
387
|
+
var transformedMergedOverrides = transformThemeComponentOverrides(mergedOverrides);
|
|
388
|
+
Object.keys(this.templatesStore.themes.library).forEach(function (libThemeName) {
|
|
389
|
+
var themeStore = _this.templatesStore.themes.library[libThemeName];
|
|
390
|
+
themeStore.setEditorOverrides(transformedMergedOverrides);
|
|
391
|
+
});
|
|
161
392
|
// loop through all targets in templateStore and call setTheme on them all
|
|
162
393
|
Object.keys(this.templatesStore.targets).forEach(function (feature) {
|
|
163
394
|
// loop through all the features (search, autocomplete, recommendations)
|
|
164
395
|
if (feature == 'recommendation') {
|
|
165
|
-
var
|
|
166
|
-
Object.keys(
|
|
167
|
-
var
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
targetStore.setTheme(themeName, 'library');
|
|
396
|
+
var recommendationTargetObject_1 = _this.templatesStore.targets.recommendation;
|
|
397
|
+
Object.keys(recommendationTargetObject_1).forEach(function (recType) {
|
|
398
|
+
var featureTargets = recommendationTargetObject_1[recType];
|
|
399
|
+
featureTargets.forEach(function (target) {
|
|
400
|
+
target.setTheme(themeName, 'library');
|
|
171
401
|
});
|
|
172
402
|
});
|
|
173
403
|
}
|
|
174
404
|
else {
|
|
175
|
-
var
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
targetStore.setTheme(themeName, 'library');
|
|
405
|
+
var featureTargets = _this.templatesStore.targets[feature];
|
|
406
|
+
featureTargets.forEach(function (target) {
|
|
407
|
+
target.setTheme(themeName, 'library');
|
|
179
408
|
});
|
|
180
409
|
}
|
|
181
410
|
});
|
|
@@ -223,81 +452,165 @@ var TemplateEditorStore = /** @class */ (function () {
|
|
|
223
452
|
};
|
|
224
453
|
TemplateEditorStore.prototype.getTargets = function () {
|
|
225
454
|
var storeTargets = this.templatesStore.targets;
|
|
226
|
-
var searchTargets =
|
|
455
|
+
var searchTargets = storeTargets.search.map(function (target) { return ({
|
|
227
456
|
type: 'search',
|
|
228
457
|
target: target,
|
|
229
|
-
template:
|
|
230
|
-
selector:
|
|
458
|
+
template: target.component,
|
|
459
|
+
selector: target.selector,
|
|
231
460
|
}); });
|
|
232
|
-
var autocompleteTargets =
|
|
461
|
+
var autocompleteTargets = storeTargets.autocomplete.map(function (target) { return ({
|
|
233
462
|
type: 'autocomplete',
|
|
234
463
|
target: target,
|
|
235
|
-
template:
|
|
236
|
-
selector:
|
|
464
|
+
template: target.component,
|
|
465
|
+
selector: target.selector,
|
|
237
466
|
}); });
|
|
238
|
-
var recommendationBundleTargets =
|
|
467
|
+
var recommendationBundleTargets = storeTargets.recommendation.bundle.map(function (target) { return ({
|
|
239
468
|
type: 'recommendation/bundle',
|
|
240
469
|
target: target,
|
|
241
|
-
template:
|
|
242
|
-
selector:
|
|
470
|
+
template: target.component,
|
|
471
|
+
selector: target.selector,
|
|
243
472
|
}); });
|
|
244
|
-
var recommendationDefaultTargets =
|
|
473
|
+
var recommendationDefaultTargets = storeTargets.recommendation.default.map(function (target) { return ({
|
|
245
474
|
type: 'recommendation/default',
|
|
246
475
|
target: target,
|
|
247
|
-
template:
|
|
248
|
-
selector:
|
|
476
|
+
template: target.component,
|
|
477
|
+
selector: target.selector,
|
|
249
478
|
}); });
|
|
250
|
-
var recommendationEmailTargets =
|
|
479
|
+
var recommendationEmailTargets = storeTargets.recommendation.email.map(function (target) { return ({
|
|
251
480
|
type: 'recommendation/email',
|
|
252
481
|
target: target,
|
|
253
|
-
template:
|
|
254
|
-
selector:
|
|
482
|
+
template: target.component,
|
|
483
|
+
selector: target.selector,
|
|
255
484
|
}); });
|
|
256
485
|
var targets = __spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], searchTargets, true), autocompleteTargets, true), recommendationBundleTargets, true), recommendationDefaultTargets, true), recommendationEmailTargets, true);
|
|
257
486
|
return targets;
|
|
258
487
|
};
|
|
259
|
-
TemplateEditorStore.prototype.generateTemplatesConfig = function () {
|
|
488
|
+
TemplateEditorStore.prototype.generateTemplatesConfig = function (options) {
|
|
489
|
+
var resolveSource = function (opt) {
|
|
490
|
+
var _a, _b;
|
|
491
|
+
if (opt === undefined || opt === true)
|
|
492
|
+
return { initial: true, overrides: true };
|
|
493
|
+
if (opt === false)
|
|
494
|
+
return { initial: false, overrides: false };
|
|
495
|
+
return { initial: (_a = opt.initial) !== null && _a !== void 0 ? _a : true, overrides: (_b = opt.overrides) !== null && _b !== void 0 ? _b : true };
|
|
496
|
+
};
|
|
497
|
+
var configOpt = resolveSource(options === null || options === void 0 ? void 0 : options.config);
|
|
498
|
+
var themeExtendsOpt;
|
|
499
|
+
var themeVariablesOpt;
|
|
500
|
+
var themeOverridesOpt;
|
|
501
|
+
if ((options === null || options === void 0 ? void 0 : options.theme) === undefined || (options === null || options === void 0 ? void 0 : options.theme) === true) {
|
|
502
|
+
themeExtendsOpt = { initial: true, overrides: true };
|
|
503
|
+
themeVariablesOpt = { initial: true, overrides: true };
|
|
504
|
+
themeOverridesOpt = { initial: true, overrides: true };
|
|
505
|
+
}
|
|
506
|
+
else if ((options === null || options === void 0 ? void 0 : options.theme) === false) {
|
|
507
|
+
themeExtendsOpt = { initial: false, overrides: false };
|
|
508
|
+
themeVariablesOpt = { initial: false, overrides: false };
|
|
509
|
+
themeOverridesOpt = { initial: false, overrides: false };
|
|
510
|
+
}
|
|
511
|
+
else {
|
|
512
|
+
themeExtendsOpt = resolveSource(options.theme.extends);
|
|
513
|
+
themeVariablesOpt = resolveSource(options.theme.variables);
|
|
514
|
+
themeOverridesOpt = resolveSource(options.theme.overrides);
|
|
515
|
+
}
|
|
516
|
+
var includeTheme = themeExtendsOpt.initial ||
|
|
517
|
+
themeExtendsOpt.overrides ||
|
|
518
|
+
themeVariablesOpt.initial ||
|
|
519
|
+
themeVariablesOpt.overrides ||
|
|
520
|
+
themeOverridesOpt.initial ||
|
|
521
|
+
themeOverridesOpt.overrides;
|
|
260
522
|
var originalConfig = JSON.parse(JSON.stringify(this.templatesStore.config));
|
|
261
523
|
delete originalConfig.search;
|
|
262
524
|
delete originalConfig.autocomplete;
|
|
263
525
|
delete originalConfig.recommendation;
|
|
264
526
|
delete originalConfig.components;
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
527
|
+
// selectively strip initial config
|
|
528
|
+
if (!configOpt.initial) {
|
|
529
|
+
delete originalConfig.config;
|
|
530
|
+
}
|
|
531
|
+
// selectively strip initial theme fields
|
|
532
|
+
if (!includeTheme) {
|
|
533
|
+
delete originalConfig.theme;
|
|
534
|
+
}
|
|
535
|
+
else if (originalConfig.theme) {
|
|
536
|
+
if (!themeExtendsOpt.initial)
|
|
537
|
+
delete originalConfig.theme.extends;
|
|
538
|
+
if (!themeVariablesOpt.initial)
|
|
539
|
+
delete originalConfig.theme.variables;
|
|
540
|
+
if (!themeOverridesOpt.initial)
|
|
541
|
+
delete originalConfig.theme.overrides;
|
|
542
|
+
}
|
|
543
|
+
var overrideConfig = {};
|
|
544
|
+
if (configOpt.overrides) {
|
|
545
|
+
overrideConfig.config = (this.storage.get('overrides.config') || {});
|
|
546
|
+
}
|
|
547
|
+
if (includeTheme) {
|
|
548
|
+
var themeOverrideData = (this.storage.get('overrides.theme') || {});
|
|
549
|
+
var filteredTheme = {};
|
|
550
|
+
if (themeExtendsOpt.overrides && themeOverrideData.extends !== undefined)
|
|
551
|
+
filteredTheme.extends = themeOverrideData.extends;
|
|
552
|
+
if (themeVariablesOpt.overrides && themeOverrideData.variables !== undefined)
|
|
553
|
+
filteredTheme.variables = themeOverrideData.variables;
|
|
554
|
+
if (themeOverridesOpt.overrides && themeOverrideData.overrides !== undefined)
|
|
555
|
+
filteredTheme.overrides = themeOverrideData.overrides;
|
|
556
|
+
if (Object.keys(filteredTheme).length) {
|
|
557
|
+
overrideConfig.theme = filteredTheme;
|
|
558
|
+
}
|
|
559
|
+
}
|
|
268
560
|
var targets = this.getTargets();
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
var autocompleteTargets = targets
|
|
278
|
-
.filter(function (target) { return target.type === 'autocomplete'; })
|
|
279
|
-
.map(function (target) {
|
|
280
|
-
return ({
|
|
281
|
-
selector: target.selector,
|
|
282
|
-
component: target.template.component,
|
|
561
|
+
if ((options === null || options === void 0 ? void 0 : options.search) !== false) {
|
|
562
|
+
var searchTargets = targets
|
|
563
|
+
.filter(function (target) { return target.type === 'search'; })
|
|
564
|
+
.map(function (target) {
|
|
565
|
+
return ({
|
|
566
|
+
selector: target.selector,
|
|
567
|
+
component: target.target.component,
|
|
568
|
+
});
|
|
283
569
|
});
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
};
|
|
570
|
+
if (searchTargets.length) {
|
|
571
|
+
overrideConfig.search = {
|
|
572
|
+
targets: searchTargets,
|
|
573
|
+
settings: this.overrides.controller.search || {},
|
|
574
|
+
};
|
|
575
|
+
}
|
|
291
576
|
}
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
577
|
+
if ((options === null || options === void 0 ? void 0 : options.autocomplete) !== false) {
|
|
578
|
+
var autocompleteTargets = targets
|
|
579
|
+
.filter(function (target) { return target.type === 'autocomplete'; })
|
|
580
|
+
.map(function (target) {
|
|
581
|
+
return ({
|
|
582
|
+
selector: target.selector,
|
|
583
|
+
component: target.target.component,
|
|
584
|
+
});
|
|
585
|
+
});
|
|
586
|
+
if (autocompleteTargets.length) {
|
|
587
|
+
overrideConfig.autocomplete = {
|
|
588
|
+
targets: autocompleteTargets,
|
|
589
|
+
settings: this.overrides.controller.autocomplete || {},
|
|
590
|
+
};
|
|
591
|
+
}
|
|
298
592
|
}
|
|
299
593
|
var config = (0, deepmerge_1.default)(originalConfig, overrideConfig);
|
|
300
|
-
|
|
594
|
+
var cleaned = removeEmptyObjects(config);
|
|
595
|
+
if (!(options === null || options === void 0 ? void 0 : options.unlocked)) {
|
|
596
|
+
delete cleaned.unlocked;
|
|
597
|
+
}
|
|
598
|
+
// reorder keys: unlocked, config, theme, search, autocomplete, then everything else
|
|
599
|
+
var orderedKeys = ['unlocked', 'config', 'theme', 'search', 'autocomplete'];
|
|
600
|
+
var ordered = {};
|
|
601
|
+
for (var _i = 0, orderedKeys_1 = orderedKeys; _i < orderedKeys_1.length; _i++) {
|
|
602
|
+
var key = orderedKeys_1[_i];
|
|
603
|
+
if (key in cleaned) {
|
|
604
|
+
ordered[key] = cleaned[key];
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
for (var _a = 0, _b = Object.keys(cleaned); _a < _b.length; _a++) {
|
|
608
|
+
var key = _b[_a];
|
|
609
|
+
if (!(key in ordered)) {
|
|
610
|
+
ordered[key] = cleaned[key];
|
|
611
|
+
}
|
|
612
|
+
}
|
|
613
|
+
return ordered;
|
|
301
614
|
};
|
|
302
615
|
return TemplateEditorStore;
|
|
303
616
|
}());
|
|
@@ -308,6 +621,23 @@ function removeEmptyObjects(object) {
|
|
|
308
621
|
if (obj === null || typeof obj !== 'object') {
|
|
309
622
|
return obj;
|
|
310
623
|
}
|
|
624
|
+
// Handle arrays differently from objects
|
|
625
|
+
if (Array.isArray(obj)) {
|
|
626
|
+
return obj
|
|
627
|
+
.map(function (item) { return cleanObj(item); })
|
|
628
|
+
.filter(function (item) {
|
|
629
|
+
// Keep non-null/undefined items
|
|
630
|
+
if (item === null || item === undefined)
|
|
631
|
+
return false;
|
|
632
|
+
// Keep non-empty objects/arrays
|
|
633
|
+
if (typeof item === 'object') {
|
|
634
|
+
return Array.isArray(item) ? item.length > 0 : Object.keys(item).length > 0;
|
|
635
|
+
}
|
|
636
|
+
// Keep primitive values
|
|
637
|
+
return true;
|
|
638
|
+
});
|
|
639
|
+
}
|
|
640
|
+
// Handle regular objects
|
|
311
641
|
var result = {};
|
|
312
642
|
Object.entries(obj).forEach(function (_a) {
|
|
313
643
|
var key = _a[0], value = _a[1];
|
|
@@ -315,10 +645,10 @@ function removeEmptyObjects(object) {
|
|
|
315
645
|
if (value === undefined)
|
|
316
646
|
return;
|
|
317
647
|
if (value !== null && typeof value === 'object') {
|
|
318
|
-
// Recursively clean nested objects
|
|
648
|
+
// Recursively clean nested objects/arrays
|
|
319
649
|
var cleanedValue = cleanObj(value);
|
|
320
|
-
// Only add non-empty objects
|
|
321
|
-
if (Object.keys(cleanedValue).length > 0) {
|
|
650
|
+
// Only add non-empty objects/arrays
|
|
651
|
+
if (Array.isArray(cleanedValue) ? cleanedValue.length > 0 : Object.keys(cleanedValue).length > 0) {
|
|
322
652
|
result[key] = cleanedValue;
|
|
323
653
|
}
|
|
324
654
|
}
|
|
@@ -333,18 +663,59 @@ function removeEmptyObjects(object) {
|
|
|
333
663
|
return cleanObj(object);
|
|
334
664
|
}
|
|
335
665
|
function generateObject(path, value) {
|
|
666
|
+
// modify this function to handle array index access
|
|
667
|
+
// e.g., [0], [1], etc.
|
|
668
|
+
// if the key is in the format of [index], convert it to a number and create an array
|
|
669
|
+
// otherwise, create an object property as usual
|
|
670
|
+
// Example:
|
|
671
|
+
// path = ['search', '[0]', 'selector'], value = '#new-selector'
|
|
672
|
+
// returns { search: [ { selector: '#new-selector' } ] }
|
|
673
|
+
// Example:
|
|
674
|
+
// path = ['search', '[0]'], value = { selector: '#new-selector', component: 'Search' }
|
|
675
|
+
// returns { search: [ { selector: '#new-selector', component: 'Search' } ] }
|
|
676
|
+
// Example:
|
|
677
|
+
// path = ['search', 'stuff', 'thing'], value = 'whatever'
|
|
678
|
+
// returns { search: { stuff: { thing: 'whatever' } } }
|
|
679
|
+
// Example:
|
|
680
|
+
// path = ['[0]'], value = { selector: '#new-selector', component: 'Search' }
|
|
681
|
+
// returns [ { selector: '#new-selector', component: 'Search' } ]
|
|
682
|
+
// if (typeof value == 'undefined') return {} as T;
|
|
336
683
|
return path
|
|
337
684
|
.slice()
|
|
338
685
|
.reverse()
|
|
339
|
-
.reduce(function (res, key
|
|
340
|
-
var _a
|
|
341
|
-
if
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
686
|
+
.reduce(function (res, key) {
|
|
687
|
+
var _a;
|
|
688
|
+
// Check if key is array index notation like [0], [1], etc.
|
|
689
|
+
var arrayIndexMatch = key.match(/^\[(\d+)\]$/);
|
|
690
|
+
if (arrayIndexMatch) {
|
|
691
|
+
// Extract the index number
|
|
692
|
+
var index = parseInt(arrayIndexMatch[1], 10);
|
|
693
|
+
// Create an array with the element at the specified index
|
|
694
|
+
var arr = [];
|
|
695
|
+
arr[index] = res;
|
|
696
|
+
return arr;
|
|
345
697
|
}
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
698
|
+
// Regular object property
|
|
699
|
+
return _a = {},
|
|
700
|
+
_a[key] = res,
|
|
701
|
+
_a;
|
|
702
|
+
}, value);
|
|
703
|
+
}
|
|
704
|
+
function transformThemeComponentOverrides(theme) {
|
|
705
|
+
var overrides = theme.overrides, variables = theme.variables;
|
|
706
|
+
var result = {};
|
|
707
|
+
if (variables) {
|
|
708
|
+
result.variables = variables;
|
|
709
|
+
}
|
|
710
|
+
if (overrides === null || overrides === void 0 ? void 0 : overrides.default) {
|
|
711
|
+
result.components = overrides.default;
|
|
712
|
+
}
|
|
713
|
+
if ((overrides === null || overrides === void 0 ? void 0 : overrides.mobile) || (overrides === null || overrides === void 0 ? void 0 : overrides.tablet) || (overrides === null || overrides === void 0 ? void 0 : overrides.desktop)) {
|
|
714
|
+
result.responsive = {
|
|
715
|
+
mobile: overrides === null || overrides === void 0 ? void 0 : overrides.mobile,
|
|
716
|
+
tablet: overrides === null || overrides === void 0 ? void 0 : overrides.tablet,
|
|
717
|
+
desktop: overrides === null || overrides === void 0 ? void 0 : overrides.desktop,
|
|
718
|
+
};
|
|
719
|
+
}
|
|
720
|
+
return result;
|
|
350
721
|
}
|