@athoscommerce/snap-preact 1.2.3-beta.3 → 1.2.3-beta.5
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/README.md +16 -0
- 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/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +1 -1
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +3 -3
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts +2 -0
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +29 -27
- package/dist/cjs/components/src/components/Molecules/Filter/Filter.d.ts +1 -1
- package/dist/cjs/components/src/components/Molecules/Filter/Filter.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/Result/Result.js +11 -6
- package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.d.ts +4 -1
- package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.js +3 -3
- 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/Chat/Chat.d.ts +8 -0
- package/dist/cjs/components/src/components/Organisms/Chat/Chat.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Organisms/Chat/Chat.js +715 -427
- package/dist/cjs/components/src/components/Organisms/Chat/ChatResult.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Organisms/Chat/ChatResult.js +13 -3
- package/dist/cjs/components/src/components/Organisms/Chat/MessageText.d.ts +3 -1
- package/dist/cjs/components/src/components/Organisms/Chat/MessageText.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Organisms/Chat/MessageText.js +22 -19
- package/dist/cjs/components/src/components/Organisms/Chat/MessageUser.d.ts +3 -1
- package/dist/cjs/components/src/components/Organisms/Chat/MessageUser.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Organisms/Chat/MessageUser.js +40 -23
- package/dist/cjs/components/src/components/Organisms/Chat/ResultsDisplay.d.ts +1 -1
- package/dist/cjs/components/src/components/Organisms/Chat/ResultsDisplay.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Organisms/Chat/ResultsDisplay.js +8 -7
- package/dist/cjs/components/src/components/Organisms/Facet/Facet.js +2 -1
- package/dist/cjs/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.js +2 -1
- package/dist/cjs/components/src/components/Organisms/FilterSummary/FilterSummary.d.ts +2 -2
- package/dist/cjs/components/src/components/Organisms/FilterSummary/FilterSummary.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Organisms/ProductQuickView/ProductQuickView.d.ts +11 -0
- package/dist/cjs/components/src/components/Organisms/ProductQuickView/ProductQuickView.d.ts.map +1 -0
- package/dist/cjs/components/src/components/Organisms/ProductQuickView/ProductQuickView.js +461 -0
- package/dist/cjs/components/src/components/Organisms/ProductQuickView/index.d.ts +2 -0
- package/dist/cjs/components/src/components/Organisms/ProductQuickView/index.d.ts.map +1 -0
- package/dist/cjs/components/src/components/Organisms/ProductQuickView/index.js +17 -0
- package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
- package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +0 -2
- package/dist/cjs/components/src/hooks/useAcRenderedInput.d.ts.map +1 -1
- package/dist/cjs/components/src/hooks/useAcRenderedInput.js +65 -15
- 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 +1 -0
- package/dist/cjs/components/src/index.d.ts.map +1 -1
- package/dist/cjs/components/src/index.js +1 -0
- package/dist/cjs/components/src/providers/theme.d.ts +1 -1
- package/dist/cjs/components/src/providers/theme.d.ts.map +1 -1
- package/dist/cjs/components/src/themes/base/base.js +3 -3
- package/dist/cjs/components/src/utilities/Colour/Colour.d.ts +11 -0
- package/dist/cjs/components/src/utilities/Colour/Colour.d.ts.map +1 -1
- package/dist/cjs/components/src/utilities/Colour/Colour.js +32 -0
- package/dist/cjs/src/Instantiators/RecommendationInstantiator.d.ts +1 -0
- package/dist/cjs/src/Instantiators/RecommendationInstantiator.d.ts.map +1 -1
- package/dist/cjs/src/Instantiators/RecommendationInstantiator.js +161 -123
- package/dist/cjs/src/Snap.d.ts +1 -1
- package/dist/cjs/src/Snap.d.ts.map +1 -1
- package/dist/cjs/src/Snap.js +18 -6
- package/dist/cjs/src/SnapHybrid.d.ts.map +1 -1
- package/dist/cjs/src/Templates/SnapTemplates.d.ts +13 -72
- package/dist/cjs/src/Templates/SnapTemplates.d.ts.map +1 -1
- package/dist/cjs/src/Templates/SnapTemplates.js +123 -72
- 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 +58 -8
- package/dist/cjs/src/Templates/Stores/TemplateEditor/TemplateEditorStore.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/TemplateEditor/TemplateEditorStore.js +467 -96
- 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 +93 -30
- package/dist/cjs/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
- package/dist/cjs/src/Templates/Stores/TemplateStore.js +33 -41
- 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/index.d.ts +1 -1
- package/dist/cjs/src/Templates/index.d.ts.map +1 -1
- package/dist/cjs/src/create/createChatController.js +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 +13 -0
- package/dist/cjs/src/setupEvents.d.ts.map +1 -1
- package/dist/cjs/src/setupEvents.js +56 -8
- package/dist/cjs/src/types.d.ts +3 -1
- 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/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/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +1 -1
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +3 -3
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts +2 -0
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +29 -28
- package/dist/esm/components/src/components/Molecules/Filter/Filter.d.ts +1 -1
- package/dist/esm/components/src/components/Molecules/Filter/Filter.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/Result/Result.js +9 -4
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts +4 -1
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.js +3 -3
- 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/Chat/Chat.d.ts +8 -0
- package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/Chat/Chat.js +636 -359
- package/dist/esm/components/src/components/Organisms/Chat/ChatResult.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/Chat/ChatResult.js +13 -3
- package/dist/esm/components/src/components/Organisms/Chat/MessageText.d.ts +3 -1
- package/dist/esm/components/src/components/Organisms/Chat/MessageText.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/Chat/MessageText.js +21 -19
- package/dist/esm/components/src/components/Organisms/Chat/MessageUser.d.ts +3 -1
- package/dist/esm/components/src/components/Organisms/Chat/MessageUser.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/Chat/MessageUser.js +37 -23
- package/dist/esm/components/src/components/Organisms/Chat/ResultsDisplay.d.ts +1 -1
- package/dist/esm/components/src/components/Organisms/Chat/ResultsDisplay.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/Chat/ResultsDisplay.js +8 -7
- package/dist/esm/components/src/components/Organisms/Facet/Facet.js +1 -1
- package/dist/esm/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.js +1 -1
- package/dist/esm/components/src/components/Organisms/FilterSummary/FilterSummary.d.ts +2 -2
- package/dist/esm/components/src/components/Organisms/FilterSummary/FilterSummary.d.ts.map +1 -1
- package/dist/esm/components/src/components/Organisms/ProductQuickView/ProductQuickView.d.ts +11 -0
- package/dist/esm/components/src/components/Organisms/ProductQuickView/ProductQuickView.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/ProductQuickView/ProductQuickView.js +436 -0
- package/dist/esm/components/src/components/Organisms/ProductQuickView/index.d.ts +2 -0
- package/dist/esm/components/src/components/Organisms/ProductQuickView/index.d.ts.map +1 -0
- package/dist/esm/components/src/components/Organisms/ProductQuickView/index.js +1 -0
- package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
- package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +0 -2
- package/dist/esm/components/src/hooks/useAcRenderedInput.d.ts.map +1 -1
- package/dist/esm/components/src/hooks/useAcRenderedInput.js +61 -11
- 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 +1 -0
- package/dist/esm/components/src/index.d.ts.map +1 -1
- package/dist/esm/components/src/index.js +1 -0
- package/dist/esm/components/src/providers/theme.d.ts +1 -1
- package/dist/esm/components/src/providers/theme.d.ts.map +1 -1
- package/dist/esm/components/src/themes/base/base.js +3 -3
- package/dist/esm/components/src/utilities/Colour/Colour.d.ts +11 -0
- package/dist/esm/components/src/utilities/Colour/Colour.d.ts.map +1 -1
- package/dist/esm/components/src/utilities/Colour/Colour.js +30 -0
- package/dist/esm/src/Instantiators/RecommendationInstantiator.d.ts +1 -0
- package/dist/esm/src/Instantiators/RecommendationInstantiator.d.ts.map +1 -1
- package/dist/esm/src/Instantiators/RecommendationInstantiator.js +130 -84
- package/dist/esm/src/Snap.d.ts +1 -1
- package/dist/esm/src/Snap.d.ts.map +1 -1
- package/dist/esm/src/Snap.js +21 -6
- package/dist/esm/src/SnapHybrid.d.ts.map +1 -1
- package/dist/esm/src/Templates/SnapTemplates.d.ts +13 -72
- package/dist/esm/src/Templates/SnapTemplates.d.ts.map +1 -1
- package/dist/esm/src/Templates/SnapTemplates.js +137 -78
- 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 +58 -8
- package/dist/esm/src/Templates/Stores/TemplateEditor/TemplateEditorStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateEditor/TemplateEditorStore.js +447 -89
- 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 +93 -30
- package/dist/esm/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
- package/dist/esm/src/Templates/Stores/TemplateStore.js +29 -38
- 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/index.d.ts +1 -1
- package/dist/esm/src/Templates/index.d.ts.map +1 -1
- package/dist/esm/src/create/createChatController.js +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 +13 -0
- package/dist/esm/src/setupEvents.d.ts.map +1 -1
- package/dist/esm/src/setupEvents.js +25 -8
- package/dist/esm/src/types.d.ts +3 -1
- 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 +20 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatResult.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/Chat/ChatResult.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAMzD,OAAO,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatResult.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/Chat/ChatResult.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAMzD,OAAO,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAmH7D,eAAO,MAAM,UAAU,8EA+GtB,CAAC;AAMF,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACtD,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,cAAc,CAAC;IAC3B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;CAC/C"}
|
|
@@ -18,8 +18,17 @@ const defaultStyles = () => {
|
|
|
18
18
|
overflow: 'hidden',
|
|
19
19
|
'.ss__chat__result__image': {
|
|
20
20
|
width: '100%',
|
|
21
|
+
aspectRatio: '1 / 1',
|
|
21
22
|
position: 'relative',
|
|
22
23
|
overflow: 'hidden',
|
|
24
|
+
// fixed-aspect frame: scale the image to fill it and crop overflow so
|
|
25
|
+
// results with different intrinsic image aspect ratios still line up
|
|
26
|
+
// at the same height when displayed side-by-side.
|
|
27
|
+
img: {
|
|
28
|
+
width: '100%',
|
|
29
|
+
height: '100%',
|
|
30
|
+
objectFit: 'cover',
|
|
31
|
+
},
|
|
23
32
|
'.ss__chat__result__image__buttons': {
|
|
24
33
|
position: 'absolute',
|
|
25
34
|
bottom: 0,
|
|
@@ -61,6 +70,7 @@ const defaultStyles = () => {
|
|
|
61
70
|
backgroundColor: '#000',
|
|
62
71
|
borderRadius: '50%',
|
|
63
72
|
justifyContent: 'center',
|
|
73
|
+
boxSizing: 'border-box',
|
|
64
74
|
'&.ss__chat__result__image__icons__icon--cart': {
|
|
65
75
|
backgroundColor: '#feeeae',
|
|
66
76
|
svg: {
|
|
@@ -135,16 +145,16 @@ export const ChatResult = withTracking(observer((properties) => {
|
|
|
135
145
|
};
|
|
136
146
|
const styling = mergeStyles(properties, defaultStyles);
|
|
137
147
|
return (_jsxs("div", { className: "ss__chat__result", ref: trackingRef, ...styling, children: [_jsxs("div", { className: "ss__chat__result__image", children: [_jsx(OverlayBadge, { controller: controller, result: result, renderEmpty: true, children: _jsx(Image, { className: 'ss__chat__result__detail-slot__image', alt: result.display.mappings.core?.name || '', src: result.display.mappings.core?.imageUrl || '', ...subProps.image }) }), _jsxs("div", { className: "ss__chat__result__image__buttons", children: [controller.store.features.similarProducts.enabled && (_jsx(Button, { className: 'ss__chat__result__image__buttons__similar', content: 'Similar', onClick: () => {
|
|
138
|
-
controller.
|
|
148
|
+
controller.productSimilar(result);
|
|
139
149
|
} })), _jsx(Button, { className: 'ss__chat__result__image__buttons__compare', content: isInComparison ? undefined : 'Compare', icon: isInComparison ? { icon: 'check-thin', title: 'Added to comparison' } : undefined, onClick: () => {
|
|
140
150
|
controller.compareProduct(result);
|
|
141
151
|
} })] }), _jsxs("div", { className: "ss__chat__result__image__icons", children: [_jsx(Button, { className: 'ss__chat__result__image__icons__icon--inquire', icon: { icon: 'chat', title: 'Discuss Product' }, onClick: () => {
|
|
142
|
-
controller.
|
|
152
|
+
controller.productQuery(result);
|
|
143
153
|
} }), _jsx(Button, { className: 'ss__chat__result__image__icons__icon--cart', icon: { icon: 'cart', title: isConfigurable ? 'Configure' : 'Add to Cart' }, onClick: () => {
|
|
144
154
|
// configurable products need a variant selection — open the product
|
|
145
155
|
// information panel so the user can pick options before adding to cart
|
|
146
156
|
if (isConfigurable) {
|
|
147
|
-
controller.
|
|
157
|
+
controller.productQuickView(result);
|
|
148
158
|
return;
|
|
149
159
|
}
|
|
150
160
|
controller.track.product.addToCart(result);
|
|
@@ -6,8 +6,10 @@ export interface MessageTextProps {
|
|
|
6
6
|
chatItem: any;
|
|
7
7
|
controller: ChatController;
|
|
8
8
|
scrollToBottom: () => void;
|
|
9
|
-
|
|
9
|
+
onProductQuickView?: () => void;
|
|
10
10
|
showDetailsButton?: boolean;
|
|
11
11
|
sideChatOpen?: boolean;
|
|
12
|
+
primaryColor?: string;
|
|
13
|
+
primaryColorText?: string;
|
|
12
14
|
}
|
|
13
15
|
//# sourceMappingURL=MessageText.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageText.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/Chat/MessageText.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageText.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/Chat/MessageText.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AA4HhE,eAAO,MAAM,WAAW,WAAoB,gBAAgB;;CA6D1D,CAAC;AAqCH,MAAM,WAAW,gBAAgB;IAChC,QAAQ,EAAE,GAAG,CAAC;IACd,UAAU,EAAE,cAAc,CAAC;IAC3B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B"}
|
|
@@ -6,7 +6,9 @@ import { marked } from 'marked';
|
|
|
6
6
|
import { css } from '../../..';
|
|
7
7
|
import { mergeStyles } from '../../../utilities';
|
|
8
8
|
import { Button } from '../../Atoms/Button';
|
|
9
|
-
const defaultStyles = () => {
|
|
9
|
+
const defaultStyles = ({ primaryColor, primaryColorText }) => {
|
|
10
|
+
const colorPrimary = primaryColor || '#253B80';
|
|
11
|
+
const colorPrimaryText = primaryColorText || '#fff';
|
|
10
12
|
return css({
|
|
11
13
|
display: 'flex',
|
|
12
14
|
flexDirection: 'column',
|
|
@@ -32,30 +34,30 @@ const defaultStyles = () => {
|
|
|
32
34
|
height: '2em',
|
|
33
35
|
padding: 0,
|
|
34
36
|
borderRadius: '50%',
|
|
35
|
-
border:
|
|
37
|
+
border: `1px solid ${colorPrimary}`,
|
|
36
38
|
background: '#fff',
|
|
37
39
|
display: 'flex',
|
|
38
40
|
alignItems: 'center',
|
|
39
41
|
justifyContent: 'center',
|
|
40
42
|
cursor: 'pointer',
|
|
41
43
|
svg: {
|
|
42
|
-
fill:
|
|
43
|
-
stroke:
|
|
44
|
+
fill: colorPrimary,
|
|
45
|
+
stroke: colorPrimary,
|
|
44
46
|
},
|
|
45
47
|
'&.ss__chat__message-text__view-side-chat--active': {
|
|
46
|
-
background:
|
|
48
|
+
background: colorPrimary,
|
|
47
49
|
svg: {
|
|
48
|
-
fill:
|
|
49
|
-
stroke:
|
|
50
|
+
fill: colorPrimaryText,
|
|
51
|
+
stroke: colorPrimaryText,
|
|
50
52
|
},
|
|
51
53
|
},
|
|
52
54
|
},
|
|
53
55
|
},
|
|
54
56
|
'.ss__chat__message-text__show-details': {
|
|
55
57
|
alignSelf: 'flex-start',
|
|
56
|
-
border:
|
|
58
|
+
border: `1px solid ${colorPrimary}`,
|
|
57
59
|
background: '#fff',
|
|
58
|
-
color:
|
|
60
|
+
color: colorPrimary,
|
|
59
61
|
borderRadius: '999px',
|
|
60
62
|
padding: '6px 16px',
|
|
61
63
|
fontSize: '14px',
|
|
@@ -66,16 +68,16 @@ const defaultStyles = () => {
|
|
|
66
68
|
gap: '6px',
|
|
67
69
|
marginTop: '4px',
|
|
68
70
|
'&:not(.ss__button--disabled):hover': {
|
|
69
|
-
background:
|
|
70
|
-
color:
|
|
71
|
+
background: colorPrimary,
|
|
72
|
+
color: colorPrimaryText,
|
|
71
73
|
svg: {
|
|
72
|
-
fill:
|
|
73
|
-
stroke:
|
|
74
|
+
fill: colorPrimaryText,
|
|
75
|
+
stroke: colorPrimaryText,
|
|
74
76
|
},
|
|
75
77
|
},
|
|
76
78
|
svg: {
|
|
77
|
-
fill:
|
|
78
|
-
stroke:
|
|
79
|
+
fill: colorPrimary,
|
|
80
|
+
stroke: colorPrimary,
|
|
79
81
|
},
|
|
80
82
|
},
|
|
81
83
|
'.ss__chat__message-text__results': {
|
|
@@ -99,8 +101,8 @@ const defaultStyles = () => {
|
|
|
99
101
|
},
|
|
100
102
|
'.ss__carousel__next-wrapper, .ss__carousel__prev-wrapper': {
|
|
101
103
|
svg: {
|
|
102
|
-
fill:
|
|
103
|
-
stroke:
|
|
104
|
+
fill: colorPrimary,
|
|
105
|
+
stroke: colorPrimary,
|
|
104
106
|
},
|
|
105
107
|
},
|
|
106
108
|
},
|
|
@@ -121,7 +123,7 @@ const defaultStyles = () => {
|
|
|
121
123
|
});
|
|
122
124
|
};
|
|
123
125
|
export const MessageText = observer((props) => {
|
|
124
|
-
const { controller, chatItem, scrollToBottom,
|
|
126
|
+
const { controller, chatItem, scrollToBottom, onProductQuickView, showDetailsButton } = props;
|
|
125
127
|
const styling = mergeStyles(props, defaultStyles);
|
|
126
128
|
const text = chatItem.overallSummary || chatItem.text || chatItem.comparisonData?.summary || chatItem.errorMessage || chatItem.messageForDrift || '';
|
|
127
129
|
const currentChat = controller.store.currentChat;
|
|
@@ -148,5 +150,5 @@ export const MessageText = observer((props) => {
|
|
|
148
150
|
}
|
|
149
151
|
} })) : null] })), shouldShowDetailsButton && (_jsx(Button, { className: "ss__chat__message-text__show-details", icon: { icon: 'angle-right', title: 'Show Details' }, onClick: () => {
|
|
150
152
|
currentChat?.setActiveMessage(chatItem.id);
|
|
151
|
-
}, children: "Show Details" })), chatItem && _jsx(ResultsDisplay, { controller: controller, chatItem: chatItem, scrollToBottom: scrollToBottom,
|
|
153
|
+
}, children: "Show Details" })), chatItem && (_jsx(ResultsDisplay, { controller: controller, chatItem: chatItem, scrollToBottom: scrollToBottom, onProductQuickView: onProductQuickView }))] }));
|
|
152
154
|
});
|
|
@@ -5,7 +5,9 @@ export declare const MessageUser: ((props: MessageUserProps) => import("@emotion
|
|
|
5
5
|
interface MessageUserProps {
|
|
6
6
|
chatItem: any;
|
|
7
7
|
controller: ChatController;
|
|
8
|
-
|
|
8
|
+
onProductQuickView?: (product: any) => void;
|
|
9
|
+
primaryColor?: string;
|
|
10
|
+
primaryColorText?: string;
|
|
9
11
|
}
|
|
10
12
|
export {};
|
|
11
13
|
//# sourceMappingURL=MessageUser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageUser.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/Chat/MessageUser.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageUser.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/Chat/MessageUser.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AA0IhE,eAAO,MAAM,WAAW,WAAoB,gBAAgB;;CA2G1D,CAAC;AAEH,UAAU,gBAAgB;IACzB,QAAQ,EAAE,GAAG,CAAC;IACd,UAAU,EAAE,cAAc,CAAC;IAC3B,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B"}
|
|
@@ -2,12 +2,12 @@ import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
|
2
2
|
import { observer } from 'mobx-react-lite';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { Image } from '../../Atoms/Image';
|
|
5
|
-
import { marked } from 'marked';
|
|
6
5
|
import { Icon } from '../../Atoms/Icon';
|
|
7
6
|
import { css } from '../../..';
|
|
8
7
|
import { mergeStyles } from '../../../utilities';
|
|
9
|
-
const defaultStyles = () => {
|
|
10
|
-
const colorPrimary = '#253B80';
|
|
8
|
+
const defaultStyles = ({ primaryColor, primaryColorText }) => {
|
|
9
|
+
const colorPrimary = primaryColor || '#253B80';
|
|
10
|
+
const colorPrimaryText = primaryColorText || '#fff';
|
|
11
11
|
return css({
|
|
12
12
|
display: 'flex',
|
|
13
13
|
flexDirection: 'column',
|
|
@@ -37,17 +37,19 @@ const defaultStyles = () => {
|
|
|
37
37
|
borderRadius: '12px',
|
|
38
38
|
borderBottomRightRadius: '3px',
|
|
39
39
|
backgroundColor: colorPrimary,
|
|
40
|
-
color:
|
|
40
|
+
color: colorPrimaryText,
|
|
41
41
|
},
|
|
42
42
|
'.ss__chat__message-user__attachments': {
|
|
43
43
|
listStyleType: 'none',
|
|
44
44
|
padding: 0,
|
|
45
45
|
margin: 0,
|
|
46
46
|
display: 'flex',
|
|
47
|
-
|
|
47
|
+
flexDirection: 'row',
|
|
48
|
+
flexWrap: 'nowrap',
|
|
48
49
|
justifyContent: 'flex-end',
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
alignItems: 'center',
|
|
51
|
+
gap: '4px',
|
|
52
|
+
alignSelf: 'end',
|
|
51
53
|
'.ss__chat__message-user__attachment__product, .ss__chat__message-user__attachment__image, .ss__chat__message-user__attachment__facet': {
|
|
52
54
|
width: '40px',
|
|
53
55
|
height: '40px',
|
|
@@ -138,7 +140,7 @@ function findProductInChat(chat, productId) {
|
|
|
138
140
|
return null;
|
|
139
141
|
}
|
|
140
142
|
export const MessageUser = observer((props) => {
|
|
141
|
-
const { controller, chatItem,
|
|
143
|
+
const { controller, chatItem, onProductQuickView } = props;
|
|
142
144
|
const { store } = controller;
|
|
143
145
|
const styling = mergeStyles(props, defaultStyles);
|
|
144
146
|
const requestTypeLabel = getRequestTypeLabel(chatItem);
|
|
@@ -149,22 +151,36 @@ export const MessageUser = observer((props) => {
|
|
|
149
151
|
const existingQuery = chat?.find((m) => m.messageType === 'productQuery' && m.sourceProduct?.id === attachment.productId);
|
|
150
152
|
if (existingQuery) {
|
|
151
153
|
store.currentChat?.setActiveMessage(existingQuery.id);
|
|
152
|
-
|
|
154
|
+
onProductQuickView?.(existingQuery.sourceProduct);
|
|
153
155
|
return;
|
|
154
156
|
}
|
|
155
157
|
const product = findProductInChat(chat, attachment.productId);
|
|
156
158
|
if (product) {
|
|
157
|
-
controller.
|
|
158
|
-
|
|
159
|
+
controller.productQuickView(product);
|
|
160
|
+
onProductQuickView?.(product);
|
|
159
161
|
}
|
|
160
162
|
};
|
|
161
163
|
return (_jsx("div", { className: "ss__chat__message-user", ...styling, children: _jsxs("div", { className: "ss__chat__message-user__row", children: [_jsx("ul", { className: "ss__chat__message-user__attachments", children: (() => {
|
|
162
|
-
|
|
164
|
+
const resolved = (chatItem.attachments || []).map((id) => store.currentChat?.attachments.get(id)).filter(Boolean);
|
|
165
|
+
// Facets are no longer chat attachments — they live on the request that was
|
|
166
|
+
// stored on the message, derived from urlManager filter state at send-time.
|
|
167
|
+
const filterOptions = [];
|
|
168
|
+
const searchFilters = chatItem.request?.searchFilters;
|
|
169
|
+
searchFilters?.forEach((filter) => {
|
|
170
|
+
filter.options?.forEach((option) => {
|
|
171
|
+
if ('low' in option || 'high' in option) {
|
|
172
|
+
const low = option.low ?? '*';
|
|
173
|
+
const high = option.high ?? '*';
|
|
174
|
+
filterOptions.push({ facetKey: filter.key, label: `${low}-${high}` });
|
|
175
|
+
}
|
|
176
|
+
else {
|
|
177
|
+
filterOptions.push({ facetKey: filter.key, label: option.key });
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
});
|
|
181
|
+
if (resolved.length === 0 && filterOptions.length === 0)
|
|
163
182
|
return null;
|
|
164
|
-
const
|
|
165
|
-
const totalFacets = resolved.filter((a) => a.type === 'facet').length;
|
|
166
|
-
const hiddenFacetCount = Math.max(0, totalFacets - 2);
|
|
167
|
-
let facetIndex = 0;
|
|
183
|
+
const hiddenFacetCount = Math.max(0, filterOptions.length - 1);
|
|
168
184
|
const items = resolved
|
|
169
185
|
.map((attachment) => {
|
|
170
186
|
switch (attachment.type) {
|
|
@@ -176,20 +192,18 @@ export const MessageUser = observer((props) => {
|
|
|
176
192
|
'ss__chat__message-user__attachment__product--clickable': canOpen,
|
|
177
193
|
}), onClick: canOpen ? () => handleProductAttachmentClick(attachment) : undefined, title: canOpen ? `View details for ${attachment.name}` : undefined, children: _jsx(Image, { style: { height: '200px', width: '200px' }, src: attachment.thumbnailUrl || '', alt: attachment.name }) }, attachment.id));
|
|
178
194
|
}
|
|
179
|
-
case 'facet': {
|
|
180
|
-
facetIndex += 1;
|
|
181
|
-
if (facetIndex > 2)
|
|
182
|
-
return null;
|
|
183
|
-
return (_jsx("li", { className: "ss__chat__message-user__attachment__facet", children: _jsx(Icon, { title: `Filter: ${attachment.facetLabel} = ${attachment.label}`, icon: "filter-funnel", size: 27 }) }, attachment.id));
|
|
184
|
-
}
|
|
185
195
|
default:
|
|
186
196
|
return null;
|
|
187
197
|
}
|
|
188
198
|
})
|
|
189
199
|
.filter(Boolean);
|
|
200
|
+
if (filterOptions.length > 0) {
|
|
201
|
+
const first = filterOptions[0];
|
|
202
|
+
items.push(_jsx("li", { className: "ss__chat__message-user__attachment__facet", title: `Filter: ${first.facetKey} = ${first.label}`, children: _jsx(Icon, { icon: "filter-funnel", size: 27 }) }, "facet-first"));
|
|
203
|
+
}
|
|
190
204
|
if (hiddenFacetCount > 0) {
|
|
191
205
|
items.push(_jsxs("li", { className: "ss__chat__message-user__attachment__facet ss__chat__message-user__attachment__facet--overflow", title: `${hiddenFacetCount} more filter${hiddenFacetCount === 1 ? '' : 's'}`, children: ["+", hiddenFacetCount] }, "facet-overflow"));
|
|
192
206
|
}
|
|
193
207
|
return items;
|
|
194
|
-
})() }), _jsxs("div", { className: "ss__chat__message-user__text-wrapper", children: [requestTypeLabel ? _jsx("div", { className: "ss__chat__message-user__request-type", children: requestTypeLabel }) : null, chatItem.text ?
|
|
208
|
+
})() }), _jsxs("div", { className: "ss__chat__message-user__text-wrapper", children: [requestTypeLabel ? _jsx("div", { className: "ss__chat__message-user__request-type", children: requestTypeLabel }) : null, chatItem.text ? _jsx("div", { className: "ss__chat__message-user__text", children: chatItem.text }) : null] })] }) }));
|
|
195
209
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResultsDisplay.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/Chat/ResultsDisplay.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAgChE,eAAO,MAAM,cAAc,WAAoB,mBAAmB;;
|
|
1
|
+
{"version":3,"file":"ResultsDisplay.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/Chat/ResultsDisplay.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAgChE,eAAO,MAAM,cAAc,WAAoB,mBAAmB;;CA+EhE,CAAC;AAEH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,EAAE,GAAG,CAAC;IACd,UAAU,EAAE,cAAc,CAAC;IAC3B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CAChC"}
|
|
@@ -31,7 +31,7 @@ const carouselStyleScript = () => {
|
|
|
31
31
|
});
|
|
32
32
|
};
|
|
33
33
|
export const ResultsDisplay = observer((props) => {
|
|
34
|
-
const { chatItem, controller, scrollToBottom,
|
|
34
|
+
const { chatItem, controller, scrollToBottom, onProductQuickView } = props;
|
|
35
35
|
const currentChat = controller.store.currentChat;
|
|
36
36
|
const activeMessage = currentChat?.activeMessage;
|
|
37
37
|
const isSideChatOpen = !!activeMessage &&
|
|
@@ -42,7 +42,8 @@ export const ResultsDisplay = observer((props) => {
|
|
|
42
42
|
// at >= 1200px there's room to keep 2.9 slides alongside the secondary chat
|
|
43
43
|
const isConstrained = !isNarrow && isSideChatOpen && typeof window !== 'undefined' && window.innerWidth >= 768 && window.innerWidth <= 1200;
|
|
44
44
|
const slidesPerView = isNarrow || isConstrained ? 1.9 : 2.9;
|
|
45
|
-
const
|
|
45
|
+
const visibleSlides = Math.ceil(slidesPerView);
|
|
46
|
+
const buildCarouselProps = () => ({
|
|
46
47
|
breakpoints: undefined,
|
|
47
48
|
slidesPerView,
|
|
48
49
|
slidesPerGroup: isNarrow || isConstrained ? 2 : 3,
|
|
@@ -51,23 +52,23 @@ export const ResultsDisplay = observer((props) => {
|
|
|
51
52
|
centerInsufficientSlides: false,
|
|
52
53
|
freeMode: true,
|
|
53
54
|
styleScript: carouselStyleScript,
|
|
54
|
-
};
|
|
55
|
+
});
|
|
55
56
|
const handleResultClick = (e, result) => {
|
|
56
57
|
// buttons should be able to be clicked without triggering the product click
|
|
57
58
|
if (e.composedPath().some((el) => el instanceof HTMLElement && el.matches('button, .ss__button, a')))
|
|
58
59
|
return;
|
|
59
60
|
controller.track.product.click(e, result);
|
|
60
|
-
controller.
|
|
61
|
-
|
|
61
|
+
controller.productQuickView(result);
|
|
62
|
+
onProductQuickView?.();
|
|
62
63
|
};
|
|
63
64
|
if (chatItem.messageType === 'productRecommendation' && chatItem.recommendationResult?.length) {
|
|
64
65
|
return (_jsx(_Fragment, { children: chatItem.recommendationResult.map((recommendation, index) => {
|
|
65
|
-
return recommendation.results?.length > 0 ? (_jsx("div", { className: "ss__chat__message-text__results", style: { width: '100%' }, children: _jsx(Carousel, { ...
|
|
66
|
+
return recommendation.results?.length > 0 ? (_jsx("div", { className: "ss__chat__message-text__results", style: { width: '100%' }, children: _jsx(Carousel, { ...buildCarouselProps(), hideButtons: recommendation.results.length <= visibleSlides, children: recommendation.results.map((result) => {
|
|
66
67
|
return (_jsx("div", { className: "ss__chat__message-text__results__result", style: { height: '100%', width: '100%', display: 'flex', cursor: 'pointer' }, onClick: (e) => handleResultClick(e, result), children: _jsx(ChatResult, { result: result, controller: controller, scrollToBottom: scrollToBottom }) }, result.id));
|
|
67
68
|
}) }) }, index)) : null;
|
|
68
69
|
}) }));
|
|
69
70
|
}
|
|
70
|
-
return chatItem.results?.length > 0 ? (_jsx("div", { className: "ss__chat__message-text__results", style: { width: '100%' }, children: _jsx(Carousel, { ...
|
|
71
|
+
return chatItem.results?.length > 0 ? (_jsx("div", { className: "ss__chat__message-text__results", style: { width: '100%' }, children: _jsx(Carousel, { ...buildCarouselProps(), hideButtons: chatItem.results.length <= visibleSlides, children: chatItem.results.map((result) => {
|
|
71
72
|
return (_jsx("div", { className: "ss__chat__message-text__results__result", style: { height: '100%', width: '100%', display: 'flex', cursor: 'pointer' }, onClick: (e) => handleResultClick(e, result), children: _jsx(ChatResult, { result: result, controller: controller, scrollToBottom: scrollToBottom }) }, result.id));
|
|
72
73
|
}) }) })) : null;
|
|
73
74
|
});
|
|
@@ -419,7 +419,7 @@ export const Facet = observer((properties) => {
|
|
|
419
419
|
? ''
|
|
420
420
|
: 'ss__facet--showing-all'), children: justContent ? (_jsx(FacetContent, { ...facetContentProps, mergedLang: mergedLang })) : (_jsx(Dropdown, { ...subProps.dropdown, open: disableCollapse || !facet?.collapsed, onClick: () => !disableCollapse && facet.toggleCollapse && facet?.toggleCollapse(), disableA11y: true, button: _jsxs("div", { className: "ss__facet__header", ref: (e) => useA11y(e, disableCollapse ? -1 : 0), role: "heading", "aria-level": 3, ...mergedLang.dropdownButton.attributes, children: [_jsxs("span", { className: "ss__facet__header__inner", children: [_jsx("span", { ...mergedLang.dropdownButton.value, children: facet?.label }), showSelectedCount && selectedCount && facet.type !== 'range' ? (_jsx("span", { className: "ss__facet__header__selected-count", children: hideSelectedCountParenthesis ? selectedCount : `(${selectedCount})` })) : null, (mergedLang.clearAllText.value || clearAllIcon) && selectedCount ? (_jsx(Button, { ...subProps.button, internalClassName: "ss__facet__header__clear-all", name: 'reset-facet', onClick: (e) => {
|
|
421
421
|
e.stopPropagation();
|
|
422
|
-
facet?.clear.url
|
|
422
|
+
facet?.clear.url?.link.onClick();
|
|
423
423
|
}, icon: clearAllIcon ? clearAllIcon : undefined, children: mergedLang.clearAllText.value && showClearAllText ? _jsx("label", { ...mergedLang.clearAllText.all }) : null })) : (_jsx(_Fragment, {}))] }), !disableCollapse && (_jsx(Icon, { ...subProps.icon, ...(facet?.collapsed
|
|
424
424
|
? { ...(typeof iconExpand == 'string' ? { icon: iconExpand } : iconExpand) }
|
|
425
425
|
: { ...(typeof iconCollapse == 'string' ? { icon: iconCollapse } : iconCollapse) }), name: facet?.collapsed ? 'expand' : 'collapse' }))] }), children: _jsx(FacetContent, { ...facetContentProps, mergedLang: mergedLang }) })) }) })) : null;
|
|
@@ -237,7 +237,7 @@ export const FacetsHorizontal = observer((properties) => {
|
|
|
237
237
|
}
|
|
238
238
|
}, button: _jsxs("div", { className: "ss__dropdown__button__heading", ...mergedLang.dropdownButton.attributes, children: [_jsxs("div", { className: "ss__facet__header__inner", children: [_jsx("span", { ...mergedLang.dropdownButton.value, children: facet?.label }), showSelectedCount && selectedCount && facet.type !== 'range' ? (_jsx("span", { className: "ss__facet__header__selected-count", children: hideSelectedCountParenthesis ? selectedCount : `(${selectedCount})` })) : null, (mergedLang.clearAllText.value || clearAllIcon) && selectedCount ? (_jsx(Button, { ...subProps.button, internalClassName: "ss__facet__header__clear-all", name: 'reset-facet', onClick: (e) => {
|
|
239
239
|
e.stopPropagation();
|
|
240
|
-
facet?.clear.url
|
|
240
|
+
facet?.clear.url?.link.onClick();
|
|
241
241
|
}, icon: clearAllIcon ? clearAllIcon : undefined, children: mergedLang.clearAllText.value && showClearAllText ? _jsx("label", { ...mergedLang.clearAllText.all }) : null })) : (_jsx(_Fragment, {}))] }), _jsx(Icon, { ...subProps.icon, ...(selectedFacet?.field === facet.field
|
|
242
242
|
? { ...(typeof iconExpand == 'string' ? { icon: iconExpand } : iconExpand) }
|
|
243
243
|
: { ...(typeof iconCollapse == 'string' ? { icon: iconCollapse } : iconCollapse) }) })] }), disableOverlay: false, children: _jsx(Facet, { ...subProps.facet, facet: facet }) }));
|
|
@@ -15,8 +15,8 @@ export type FilterSummaryTemplatesLegalProps = {
|
|
|
15
15
|
type?: 'inline' | 'list';
|
|
16
16
|
title?: string;
|
|
17
17
|
hideTitle?: boolean;
|
|
18
|
-
filterIcon?: IconType | Partial<IconProps
|
|
19
|
-
clearAllIcon?: IconType | Partial<IconProps
|
|
18
|
+
filterIcon?: IconType | Partial<IconProps> | false;
|
|
19
|
+
clearAllIcon?: IconType | Partial<IconProps> | false;
|
|
20
20
|
separator?: string;
|
|
21
21
|
hideFacetLabel?: boolean;
|
|
22
22
|
clearAllLabel?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterSummary.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/FilterSummary/FilterSummary.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC/F,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAyB,MAAM,gBAAgB,CAAC;AA2D7D,eAAO,MAAM,aAAa,gBAAyB,kBAAkB;;CAyHnE,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG;IAChC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,gBAAgB,GAAG,sBAAsB,CAAC;IACvD,IAAI,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAClC,GAAG,gCAAgC,GACnC,cAAc,CAAC,kBAAkB,CAAC,CAAC;AAEpC,MAAM,MAAM,gCAAgC,GAAG;IAC9C,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"FilterSummary.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/FilterSummary/FilterSummary.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC/F,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAyB,MAAM,gBAAgB,CAAC;AA2D7D,eAAO,MAAM,aAAa,gBAAyB,kBAAkB;;CAyHnE,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG;IAChC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,gBAAgB,GAAG,sBAAsB,CAAC;IACvD,IAAI,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAClC,GAAG,gCAAgC,GACnC,cAAc,CAAC,kBAAkB,CAAC,CAAC;AAEpC,MAAM,MAAM,gCAAgC,GAAG;IAC9C,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;IACnD,YAAY,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,EAAE,UAAU,CAAC,EAAE,YAAY,EAAE,UAAU,KAAK,IAAI,CAAC;IACjG,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;CAC/E,CAAC;AAEF,MAAM,WAAW,iBAAiB;IACjC,KAAK,EAAE,IAAI,CAAC;QACX,OAAO,EAAE,UAAU,EAAE,CAAC;KACtB,CAAC,CAAC;IACH,aAAa,EAAE,IAAI,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;CACH"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { h } from 'preact';
|
|
2
|
+
import type { SearchController, AutocompleteController, RecommendationController, ChatController } from '@athoscommerce/snap-controller';
|
|
3
|
+
import { ComponentProps } from '../../../types';
|
|
4
|
+
export declare const ProductQuickView: ((properties: ProductQuickViewProps) => h.JSX.Element | null) & {
|
|
5
|
+
displayName: string;
|
|
6
|
+
};
|
|
7
|
+
export type ProductQuickViewProps = ComponentProps & {
|
|
8
|
+
controller: SearchController | AutocompleteController | RecommendationController | ChatController;
|
|
9
|
+
displayFields?: string[];
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=ProductQuickView.d.ts.map
|
package/dist/esm/components/src/components/Organisms/ProductQuickView/ProductQuickView.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProductQuickView.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/ProductQuickView/ProductQuickView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAM3B,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAQzI,OAAO,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAgY7D,eAAO,MAAM,gBAAgB,gBAAyB,qBAAqB,KAAG,CAAC,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI;;CAkDhG,CAAC;AA2MH,MAAM,MAAM,qBAAqB,GAAG,cAAc,GAAG;IACpD,UAAU,EAAE,gBAAgB,GAAG,sBAAsB,GAAG,wBAAwB,GAAG,cAAc,CAAC;IAClG,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,CAAC"}
|