@athoscommerce/snap-preact 1.1.5 → 1.2.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.
Files changed (559) hide show
  1. package/dist/cjs/components/src/components/Atoms/BadgeImage/BadgeImage.d.ts.map +1 -1
  2. package/dist/cjs/components/src/components/Atoms/BadgeImage/BadgeImage.js +10 -1
  3. package/dist/cjs/components/src/components/Atoms/BadgePill/BadgePill.d.ts.map +1 -1
  4. package/dist/cjs/components/src/components/Atoms/BadgePill/BadgePill.js +10 -1
  5. package/dist/cjs/components/src/components/Atoms/BadgeRectangle/BadgeRectangle.d.ts.map +1 -1
  6. package/dist/cjs/components/src/components/Atoms/BadgeRectangle/BadgeRectangle.js +10 -1
  7. package/dist/cjs/components/src/components/Atoms/BadgeText/BadgeText.d.ts.map +1 -1
  8. package/dist/cjs/components/src/components/Atoms/BadgeText/BadgeText.js +10 -1
  9. package/dist/cjs/components/src/components/Atoms/Banner/Banner.d.ts.map +1 -1
  10. package/dist/cjs/components/src/components/Atoms/Banner/Banner.js +13 -5
  11. package/dist/cjs/components/src/components/Atoms/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  12. package/dist/cjs/components/src/components/Atoms/Breadcrumbs/Breadcrumbs.js +10 -1
  13. package/dist/cjs/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
  14. package/dist/cjs/components/src/components/Atoms/Button/Button.js +10 -3
  15. package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
  16. package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.js +11 -3
  17. package/dist/cjs/components/src/components/Atoms/FormattedNumber/FormattedNumber.d.ts.map +1 -1
  18. package/dist/cjs/components/src/components/Atoms/FormattedNumber/FormattedNumber.js +10 -1
  19. package/dist/cjs/components/src/components/Atoms/Icon/Icon.d.ts.map +1 -1
  20. package/dist/cjs/components/src/components/Atoms/Icon/Icon.js +10 -1
  21. package/dist/cjs/components/src/components/Atoms/Image/Image.d.ts.map +1 -1
  22. package/dist/cjs/components/src/components/Atoms/Image/Image.js +12 -3
  23. package/dist/cjs/components/src/components/Atoms/InlineBanner/InlineBanner.d.ts.map +1 -1
  24. package/dist/cjs/components/src/components/Atoms/InlineBanner/InlineBanner.js +10 -1
  25. package/dist/cjs/components/src/components/Atoms/LoadingBar/LoadingBar.d.ts.map +1 -1
  26. package/dist/cjs/components/src/components/Atoms/LoadingBar/LoadingBar.js +10 -1
  27. package/dist/cjs/components/src/components/Atoms/Overlay/Overlay.d.ts.map +1 -1
  28. package/dist/cjs/components/src/components/Atoms/Overlay/Overlay.js +11 -2
  29. package/dist/cjs/components/src/components/Atoms/PaginationInfo/PaginationInfo.d.ts.map +1 -1
  30. package/dist/cjs/components/src/components/Atoms/PaginationInfo/PaginationInfo.js +12 -5
  31. package/dist/cjs/components/src/components/Atoms/Price/Price.d.ts.map +1 -1
  32. package/dist/cjs/components/src/components/Atoms/Price/Price.js +10 -1
  33. package/dist/cjs/components/src/components/Atoms/SearchHeader/SearchHeader.d.ts.map +1 -1
  34. package/dist/cjs/components/src/components/Atoms/SearchHeader/SearchHeader.js +10 -3
  35. package/dist/cjs/components/src/components/Atoms/Skeleton/Skeleton.d.ts.map +1 -1
  36. package/dist/cjs/components/src/components/Atoms/Skeleton/Skeleton.js +10 -1
  37. package/dist/cjs/components/src/components/Atoms/TemplateSelect/TemplateSelect.d.ts.map +1 -1
  38. package/dist/cjs/components/src/components/Atoms/TemplateSelect/TemplateSelect.js +4 -18
  39. package/dist/cjs/components/src/components/Molecules/CalloutBadge/CalloutBadge.d.ts.map +1 -1
  40. package/dist/cjs/components/src/components/Molecules/CalloutBadge/CalloutBadge.js +10 -4
  41. package/dist/cjs/components/src/components/Molecules/Carousel/Carousel.d.ts.map +1 -1
  42. package/dist/cjs/components/src/components/Molecules/Carousel/Carousel.js +10 -2
  43. package/dist/cjs/components/src/components/Molecules/Checkbox/Checkbox.d.ts.map +1 -1
  44. package/dist/cjs/components/src/components/Molecules/Checkbox/Checkbox.js +10 -3
  45. package/dist/cjs/components/src/components/Molecules/ErrorHandler/ErrorHandler.d.ts.map +1 -1
  46. package/dist/cjs/components/src/components/Molecules/ErrorHandler/ErrorHandler.js +10 -3
  47. package/dist/cjs/components/src/components/Molecules/FacetGridOptions/FacetGridOptions.d.ts.map +1 -1
  48. package/dist/cjs/components/src/components/Molecules/FacetGridOptions/FacetGridOptions.js +9 -1
  49. package/dist/cjs/components/src/components/Molecules/FacetHierarchyOptions/FacetHierarchyOptions.d.ts.map +1 -1
  50. package/dist/cjs/components/src/components/Molecules/FacetHierarchyOptions/FacetHierarchyOptions.js +9 -1
  51. package/dist/cjs/components/src/components/Molecules/FacetListOptions/FacetListOptions.d.ts.map +1 -1
  52. package/dist/cjs/components/src/components/Molecules/FacetListOptions/FacetListOptions.js +9 -1
  53. package/dist/cjs/components/src/components/Molecules/FacetPaletteOptions/FacetPaletteOptions.d.ts.map +1 -1
  54. package/dist/cjs/components/src/components/Molecules/FacetPaletteOptions/FacetPaletteOptions.js +9 -1
  55. package/dist/cjs/components/src/components/Molecules/FacetSlider/FacetSlider.d.ts.map +1 -1
  56. package/dist/cjs/components/src/components/Molecules/FacetSlider/FacetSlider.js +19 -12
  57. package/dist/cjs/components/src/components/Molecules/Filter/Filter.d.ts.map +1 -1
  58. package/dist/cjs/components/src/components/Molecules/Filter/Filter.js +11 -4
  59. package/dist/cjs/components/src/components/Molecules/Grid/Grid.d.ts.map +1 -1
  60. package/dist/cjs/components/src/components/Molecules/Grid/Grid.js +11 -3
  61. package/dist/cjs/components/src/components/Molecules/LayoutSelector/LayoutSelector.d.ts.map +1 -1
  62. package/dist/cjs/components/src/components/Molecules/LayoutSelector/LayoutSelector.js +10 -1
  63. package/dist/cjs/components/src/components/Molecules/List/List.d.ts.map +1 -1
  64. package/dist/cjs/components/src/components/Molecules/List/List.js +11 -4
  65. package/dist/cjs/components/src/components/Molecules/LoadMore/LoadMore.d.ts.map +1 -1
  66. package/dist/cjs/components/src/components/Molecules/LoadMore/LoadMore.js +13 -6
  67. package/dist/cjs/components/src/components/Molecules/Modal/Modal.d.ts.map +1 -1
  68. package/dist/cjs/components/src/components/Molecules/Modal/Modal.js +9 -1
  69. package/dist/cjs/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts.map +1 -1
  70. package/dist/cjs/components/src/components/Molecules/OverlayBadge/OverlayBadge.js +13 -7
  71. package/dist/cjs/components/src/components/Molecules/Pagination/Pagination.d.ts.map +1 -1
  72. package/dist/cjs/components/src/components/Molecules/Pagination/Pagination.js +12 -5
  73. package/dist/cjs/components/src/components/Molecules/PerPage/PerPage.d.ts.map +1 -1
  74. package/dist/cjs/components/src/components/Molecules/PerPage/PerPage.js +13 -5
  75. package/dist/cjs/components/src/components/Molecules/Radio/Radio.d.ts.map +1 -1
  76. package/dist/cjs/components/src/components/Molecules/Radio/Radio.js +10 -3
  77. package/dist/cjs/components/src/components/Molecules/RadioList/RadioList.d.ts.map +1 -1
  78. package/dist/cjs/components/src/components/Molecules/RadioList/RadioList.js +11 -4
  79. package/dist/cjs/components/src/components/Molecules/Rating/Rating.d.ts.map +1 -1
  80. package/dist/cjs/components/src/components/Molecules/Rating/Rating.js +10 -1
  81. package/dist/cjs/components/src/components/Molecules/Result/Result.d.ts +1 -0
  82. package/dist/cjs/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
  83. package/dist/cjs/components/src/components/Molecules/Result/Result.js +12 -6
  84. package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
  85. package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.js +10 -1
  86. package/dist/cjs/components/src/components/Molecules/Select/Select.d.ts.map +1 -1
  87. package/dist/cjs/components/src/components/Molecules/Select/Select.js +12 -5
  88. package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
  89. package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.js +11 -3
  90. package/dist/cjs/components/src/components/Molecules/Slideshow/Slideshow.d.ts +1 -0
  91. package/dist/cjs/components/src/components/Molecules/Slideshow/Slideshow.d.ts.map +1 -1
  92. package/dist/cjs/components/src/components/Molecules/Slideshow/Slideshow.js +83 -38
  93. package/dist/cjs/components/src/components/Molecules/SortBy/SortBy.d.ts.map +1 -1
  94. package/dist/cjs/components/src/components/Molecules/SortBy/SortBy.js +12 -4
  95. package/dist/cjs/components/src/components/Molecules/Swatches/Swatches.d.ts.map +1 -1
  96. package/dist/cjs/components/src/components/Molecules/Swatches/Swatches.js +10 -2
  97. package/dist/cjs/components/src/components/Molecules/TemplatesEditor/TemplatesEditor.js +9 -4
  98. package/dist/cjs/components/src/components/Molecules/Terms/Terms.d.ts.map +1 -1
  99. package/dist/cjs/components/src/components/Molecules/Terms/Terms.js +9 -2
  100. package/dist/cjs/components/src/components/Molecules/VariantSelection/VariantSelection.d.ts.map +1 -1
  101. package/dist/cjs/components/src/components/Molecules/VariantSelection/VariantSelection.js +9 -1
  102. package/dist/cjs/components/src/components/Organisms/Autocomplete/Autocomplete.d.ts +2 -2
  103. package/dist/cjs/components/src/components/Organisms/Autocomplete/Autocomplete.d.ts.map +1 -1
  104. package/dist/cjs/components/src/components/Organisms/Autocomplete/Autocomplete.js +26 -23
  105. package/dist/cjs/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.d.ts +2 -2
  106. package/dist/cjs/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.d.ts.map +1 -1
  107. package/dist/cjs/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.js +1 -1
  108. package/dist/cjs/components/src/components/Organisms/BranchOverride/BranchOverride.d.ts.map +1 -1
  109. package/dist/cjs/components/src/components/Organisms/BranchOverride/BranchOverride.js +12 -3
  110. package/dist/cjs/components/src/components/Organisms/Facet/Facet.d.ts.map +1 -1
  111. package/dist/cjs/components/src/components/Organisms/Facet/Facet.js +19 -12
  112. package/dist/cjs/components/src/components/Organisms/Facets/Facets.d.ts.map +1 -1
  113. package/dist/cjs/components/src/components/Organisms/Facets/Facets.js +10 -2
  114. package/dist/cjs/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.d.ts.map +1 -1
  115. package/dist/cjs/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.js +10 -3
  116. package/dist/cjs/components/src/components/Organisms/FilterSummary/FilterSummary.d.ts.map +1 -1
  117. package/dist/cjs/components/src/components/Organisms/FilterSummary/FilterSummary.js +10 -3
  118. package/dist/cjs/components/src/components/Organisms/MobileSidebar/MobileSidebar.d.ts.map +1 -1
  119. package/dist/cjs/components/src/components/Organisms/MobileSidebar/MobileSidebar.js +9 -1
  120. package/dist/cjs/components/src/components/Organisms/NoResults/NoResults.d.ts.map +1 -1
  121. package/dist/cjs/components/src/components/Organisms/NoResults/NoResults.js +22 -19
  122. package/dist/cjs/components/src/components/Organisms/Results/Results.d.ts +2 -2
  123. package/dist/cjs/components/src/components/Organisms/Results/Results.d.ts.map +1 -1
  124. package/dist/cjs/components/src/components/Organisms/Results/Results.js +18 -16
  125. package/dist/cjs/components/src/components/Organisms/Sidebar/Sidebar.d.ts +1 -1
  126. package/dist/cjs/components/src/components/Organisms/Sidebar/Sidebar.d.ts.map +1 -1
  127. package/dist/cjs/components/src/components/Organisms/Sidebar/Sidebar.js +12 -5
  128. package/dist/cjs/components/src/components/Organisms/TermsList/TermsList.d.ts.map +1 -1
  129. package/dist/cjs/components/src/components/Organisms/TermsList/TermsList.js +11 -2
  130. package/dist/cjs/components/src/components/Organisms/Toolbar/Toolbar.d.ts.map +1 -1
  131. package/dist/cjs/components/src/components/Organisms/Toolbar/Toolbar.js +10 -1
  132. package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts +3 -2
  133. package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
  134. package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts +3 -2
  135. package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
  136. package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts +3 -2
  137. package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
  138. package/dist/cjs/components/src/components/Templates/Recommendation/Recommendation.d.ts +4 -4
  139. package/dist/cjs/components/src/components/Templates/Recommendation/Recommendation.d.ts.map +1 -1
  140. package/dist/cjs/components/src/components/Templates/Recommendation/Recommendation.js +5 -2
  141. package/dist/cjs/components/src/components/Templates/RecommendationBundle/RecommendationBundle.d.ts +3 -8
  142. package/dist/cjs/components/src/components/Templates/RecommendationBundle/RecommendationBundle.d.ts.map +1 -1
  143. package/dist/cjs/components/src/components/Templates/RecommendationBundle/RecommendationBundle.js +12 -5
  144. package/dist/cjs/components/src/components/Templates/RecommendationBundleEasyAdd/RecommendationBundleEasyAdd.d.ts +3 -9
  145. package/dist/cjs/components/src/components/Templates/RecommendationBundleEasyAdd/RecommendationBundleEasyAdd.d.ts.map +1 -1
  146. package/dist/cjs/components/src/components/Templates/RecommendationBundleList/RecommendationBundleList.d.ts +3 -9
  147. package/dist/cjs/components/src/components/Templates/RecommendationBundleList/RecommendationBundleList.d.ts.map +1 -1
  148. package/dist/cjs/components/src/components/Templates/RecommendationBundleList/RecommendationBundleList.js +1 -2
  149. package/dist/cjs/components/src/components/Templates/RecommendationBundleVertical/RecommendationBundleVertical.d.ts +3 -9
  150. package/dist/cjs/components/src/components/Templates/RecommendationBundleVertical/RecommendationBundleVertical.d.ts.map +1 -1
  151. package/dist/cjs/components/src/components/Templates/RecommendationEmail/RecommendationEmail.d.ts +3 -5
  152. package/dist/cjs/components/src/components/Templates/RecommendationEmail/RecommendationEmail.d.ts.map +1 -1
  153. package/dist/cjs/components/src/components/Templates/RecommendationEmail/RecommendationEmail.js +1 -2
  154. package/dist/cjs/components/src/components/Templates/RecommendationGrid/RecommendationGrid.d.ts +3 -3
  155. package/dist/cjs/components/src/components/Templates/RecommendationGrid/RecommendationGrid.d.ts.map +1 -1
  156. package/dist/cjs/components/src/components/Templates/RecommendationGrid/RecommendationGrid.js +6 -2
  157. package/dist/cjs/components/src/components/Templates/Search/Search.d.ts +3 -3
  158. package/dist/cjs/components/src/components/Templates/Search/Search.d.ts.map +1 -1
  159. package/dist/cjs/components/src/components/Templates/SearchCollapsible/SearchCollapsible.d.ts +1 -1
  160. package/dist/cjs/components/src/components/Templates/SearchCollapsible/SearchCollapsible.d.ts.map +1 -1
  161. package/dist/cjs/components/src/components/Templates/SearchHorizontal/SearchHorizontal.d.ts +1 -1
  162. package/dist/cjs/components/src/components/Templates/SearchHorizontal/SearchHorizontal.d.ts.map +1 -1
  163. package/dist/cjs/components/src/hooks/createRecommendationTemplate.d.ts +3 -4
  164. package/dist/cjs/components/src/hooks/createRecommendationTemplate.d.ts.map +1 -1
  165. package/dist/cjs/components/src/hooks/createRecommendationTemplate.js +9 -13
  166. package/dist/cjs/components/src/hooks/useComponent.d.ts.map +1 -1
  167. package/dist/cjs/components/src/hooks/useComponent.js +3 -0
  168. package/dist/cjs/components/src/index.d.ts +2 -0
  169. package/dist/cjs/components/src/index.d.ts.map +1 -1
  170. package/dist/cjs/components/src/index.js +2 -0
  171. package/dist/cjs/components/src/providers/theme.d.ts +14 -0
  172. package/dist/cjs/components/src/providers/theme.d.ts.map +1 -1
  173. package/dist/cjs/components/src/themes/pike/components/atoms/breadcrumbs.d.ts.map +1 -1
  174. package/dist/cjs/components/src/themes/pike/components/atoms/breadcrumbs.js +6 -0
  175. package/dist/cjs/components/src/themes/pike/components/atoms/dropdown.d.ts.map +1 -1
  176. package/dist/cjs/components/src/themes/pike/components/atoms/dropdown.js +4 -13
  177. package/dist/cjs/components/src/themes/pike/components/molecules/carousel.d.ts.map +1 -1
  178. package/dist/cjs/components/src/themes/pike/components/molecules/carousel.js +9 -23
  179. package/dist/cjs/components/src/themes/pike/components/molecules/checkbox.d.ts.map +1 -1
  180. package/dist/cjs/components/src/themes/pike/components/molecules/checkbox.js +1 -0
  181. package/dist/cjs/components/src/themes/pike/components/molecules/errorHandler.d.ts.map +1 -1
  182. package/dist/cjs/components/src/themes/pike/components/molecules/errorHandler.js +1 -0
  183. package/dist/cjs/components/src/themes/pike/components/molecules/facetHierarchyOptions.d.ts.map +1 -1
  184. package/dist/cjs/components/src/themes/pike/components/molecules/facetHierarchyOptions.js +4 -10
  185. package/dist/cjs/components/src/themes/pike/components/molecules/facetListOptions.d.ts.map +1 -1
  186. package/dist/cjs/components/src/themes/pike/components/molecules/facetListOptions.js +5 -13
  187. package/dist/cjs/components/src/themes/pike/components/molecules/facetPaletteOptions.js +10 -23
  188. package/dist/cjs/components/src/themes/pike/components/molecules/filter.d.ts.map +1 -1
  189. package/dist/cjs/components/src/themes/pike/components/molecules/filter.js +3 -10
  190. package/dist/cjs/components/src/themes/pike/components/molecules/grid.js +1 -1
  191. package/dist/cjs/components/src/themes/pike/components/molecules/list.d.ts.map +1 -1
  192. package/dist/cjs/components/src/themes/pike/components/molecules/list.js +6 -15
  193. package/dist/cjs/components/src/themes/pike/components/molecules/loadMore.d.ts.map +1 -1
  194. package/dist/cjs/components/src/themes/pike/components/molecules/loadMore.js +1 -0
  195. package/dist/cjs/components/src/themes/pike/components/molecules/pagination.js +1 -1
  196. package/dist/cjs/components/src/themes/pike/components/molecules/radio.d.ts.map +1 -1
  197. package/dist/cjs/components/src/themes/pike/components/molecules/radio.js +1 -0
  198. package/dist/cjs/components/src/themes/pike/components/molecules/radioList.d.ts.map +1 -1
  199. package/dist/cjs/components/src/themes/pike/components/molecules/radioList.js +66 -30
  200. package/dist/cjs/components/src/themes/pike/components/molecules/result.d.ts.map +1 -1
  201. package/dist/cjs/components/src/themes/pike/components/molecules/result.js +20 -29
  202. package/dist/cjs/components/src/themes/pike/components/molecules/searchInput.d.ts.map +1 -1
  203. package/dist/cjs/components/src/themes/pike/components/molecules/searchInput.js +1 -0
  204. package/dist/cjs/components/src/themes/pike/components/molecules/select.d.ts.map +1 -1
  205. package/dist/cjs/components/src/themes/pike/components/molecules/select.js +4 -13
  206. package/dist/cjs/components/src/themes/pike/components/molecules/swatches.d.ts.map +1 -1
  207. package/dist/cjs/components/src/themes/pike/components/molecules/swatches.js +11 -5
  208. package/dist/cjs/components/src/themes/pike/components/molecules/terms.js +1 -1
  209. package/dist/cjs/components/src/themes/pike/components/organisms/autocomplete.d.ts.map +1 -1
  210. package/dist/cjs/components/src/themes/pike/components/organisms/autocomplete.js +11 -9
  211. package/dist/cjs/components/src/themes/pike/components/organisms/facet.d.ts.map +1 -1
  212. package/dist/cjs/components/src/themes/pike/components/organisms/facet.js +5 -5
  213. package/dist/cjs/components/src/themes/pike/components/organisms/facetsHorizontal.d.ts.map +1 -1
  214. package/dist/cjs/components/src/themes/pike/components/organisms/facetsHorizontal.js +6 -6
  215. package/dist/cjs/components/src/themes/pike/components/organisms/mobileSidebar.d.ts.map +1 -1
  216. package/dist/cjs/components/src/themes/pike/components/organisms/mobileSidebar.js +1 -0
  217. package/dist/cjs/components/src/themes/pike/components/organisms/noResults.d.ts.map +1 -1
  218. package/dist/cjs/components/src/themes/pike/components/organisms/noResults.js +2 -11
  219. package/dist/cjs/components/src/themes/pike/components/organisms/toolbar.js +1 -1
  220. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteFixed.d.ts.map +1 -1
  221. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteFixed.js +7 -2
  222. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteModal.d.ts.map +1 -1
  223. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteModal.js +5 -3
  224. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteShared.d.ts.map +1 -1
  225. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteShared.js +42 -34
  226. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteSlideout.d.ts.map +1 -1
  227. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteSlideout.js +7 -0
  228. package/dist/cjs/components/src/themes/pike/components/templates/recommendation.d.ts.map +1 -1
  229. package/dist/cjs/components/src/themes/pike/components/templates/recommendation.js +7 -8
  230. package/dist/cjs/components/src/themes/pike/components/templates/recommendationBundle.d.ts.map +1 -1
  231. package/dist/cjs/components/src/themes/pike/components/templates/recommendationBundle.js +4 -8
  232. package/dist/cjs/components/src/themes/pike/components/templates/recommendationBundleEasyAdd.d.ts.map +1 -1
  233. package/dist/cjs/components/src/themes/pike/components/templates/recommendationBundleList.d.ts.map +1 -1
  234. package/dist/cjs/components/src/themes/pike/components/templates/recommendationBundleVertical.js +3 -4
  235. package/dist/cjs/components/src/themes/pike/components/templates/recommendationEmail.d.ts.map +1 -1
  236. package/dist/cjs/components/src/themes/pike/components/templates/recommendationEmail.js +19 -8
  237. package/dist/cjs/components/src/themes/pike/components/templates/recommendationGrid.d.ts.map +1 -1
  238. package/dist/cjs/components/src/themes/pike/components/templates/recommendationGrid.js +18 -6
  239. package/dist/cjs/components/src/themes/pike/components/templates/search.d.ts.map +1 -1
  240. package/dist/cjs/components/src/themes/pike/components/templates/search.js +14 -18
  241. package/dist/cjs/components/src/themes/pike/components/templates/searchCollapsible.js +1 -1
  242. package/dist/cjs/components/src/themes/pike/components/templates/searchHorizontal.d.ts.map +1 -1
  243. package/dist/cjs/components/src/themes/pike/components/templates/searchHorizontal.js +14 -17
  244. package/dist/cjs/components/src/themes/pike/custom.d.ts +3 -2
  245. package/dist/cjs/components/src/themes/pike/custom.d.ts.map +1 -1
  246. package/dist/cjs/components/src/themes/pike/custom.js +13 -5
  247. package/dist/cjs/components/src/types.d.ts +1 -7
  248. package/dist/cjs/components/src/types.d.ts.map +1 -1
  249. package/dist/cjs/components/src/utilities/cloneWithProps.d.ts.map +1 -1
  250. package/dist/cjs/components/src/utilities/cloneWithProps.js +24 -1
  251. package/dist/cjs/components/src/utilities/mergeProps.d.ts.map +1 -1
  252. package/dist/cjs/components/src/utilities/mergeProps.js +95 -6
  253. package/dist/cjs/src/Snap.d.ts +1 -2
  254. package/dist/cjs/src/Snap.d.ts.map +1 -1
  255. package/dist/cjs/src/Snap.js +40 -13
  256. package/dist/cjs/src/SnapHybrid.d.ts +12 -0
  257. package/dist/cjs/src/SnapHybrid.d.ts.map +1 -0
  258. package/dist/cjs/src/SnapHybrid.js +65 -0
  259. package/dist/cjs/src/Templates/SnapTemplates.d.ts +19 -7
  260. package/dist/cjs/src/Templates/SnapTemplates.d.ts.map +1 -1
  261. package/dist/cjs/src/Templates/SnapTemplates.js +29 -47
  262. package/dist/cjs/src/Templates/Stores/LibraryStore.d.ts +128 -7
  263. package/dist/cjs/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
  264. package/dist/cjs/src/Templates/Stores/LibraryStore.js +188 -4
  265. package/dist/cjs/src/Templates/Stores/TargetStore.d.ts +0 -2
  266. package/dist/cjs/src/Templates/Stores/TargetStore.d.ts.map +1 -1
  267. package/dist/cjs/src/Templates/Stores/TargetStore.js +0 -7
  268. package/dist/cjs/src/Templates/Stores/TemplateEditor/TemplateEditorStore.d.ts.map +1 -1
  269. package/dist/cjs/src/Templates/Stores/TemplateEditor/TemplateEditorStore.js +12 -3
  270. package/dist/cjs/src/Templates/Stores/TemplateStore.d.ts +95 -8
  271. package/dist/cjs/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
  272. package/dist/cjs/src/Templates/Stores/TemplateStore.js +1 -5
  273. package/dist/cjs/src/Templates/index.d.ts +1 -0
  274. package/dist/cjs/src/Templates/index.d.ts.map +1 -1
  275. package/dist/cjs/src/index.d.ts +1 -0
  276. package/dist/cjs/src/index.d.ts.map +1 -1
  277. package/dist/cjs/src/index.js +3 -1
  278. package/dist/cjs/src/types.d.ts +1 -1
  279. package/dist/cjs/src/types.d.ts.map +1 -1
  280. package/dist/esm/components/src/components/Atoms/BadgeImage/BadgeImage.d.ts.map +1 -1
  281. package/dist/esm/components/src/components/Atoms/BadgeImage/BadgeImage.js +10 -2
  282. package/dist/esm/components/src/components/Atoms/BadgePill/BadgePill.d.ts.map +1 -1
  283. package/dist/esm/components/src/components/Atoms/BadgePill/BadgePill.js +10 -2
  284. package/dist/esm/components/src/components/Atoms/BadgeRectangle/BadgeRectangle.d.ts.map +1 -1
  285. package/dist/esm/components/src/components/Atoms/BadgeRectangle/BadgeRectangle.js +10 -2
  286. package/dist/esm/components/src/components/Atoms/BadgeText/BadgeText.d.ts.map +1 -1
  287. package/dist/esm/components/src/components/Atoms/BadgeText/BadgeText.js +10 -2
  288. package/dist/esm/components/src/components/Atoms/Banner/Banner.d.ts.map +1 -1
  289. package/dist/esm/components/src/components/Atoms/Banner/Banner.js +10 -2
  290. package/dist/esm/components/src/components/Atoms/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  291. package/dist/esm/components/src/components/Atoms/Breadcrumbs/Breadcrumbs.js +10 -2
  292. package/dist/esm/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
  293. package/dist/esm/components/src/components/Atoms/Button/Button.js +11 -4
  294. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
  295. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.js +11 -4
  296. package/dist/esm/components/src/components/Atoms/FormattedNumber/FormattedNumber.d.ts.map +1 -1
  297. package/dist/esm/components/src/components/Atoms/FormattedNumber/FormattedNumber.js +11 -3
  298. package/dist/esm/components/src/components/Atoms/Icon/Icon.d.ts.map +1 -1
  299. package/dist/esm/components/src/components/Atoms/Icon/Icon.js +10 -2
  300. package/dist/esm/components/src/components/Atoms/Image/Image.d.ts.map +1 -1
  301. package/dist/esm/components/src/components/Atoms/Image/Image.js +10 -2
  302. package/dist/esm/components/src/components/Atoms/InlineBanner/InlineBanner.d.ts.map +1 -1
  303. package/dist/esm/components/src/components/Atoms/InlineBanner/InlineBanner.js +10 -2
  304. package/dist/esm/components/src/components/Atoms/LoadingBar/LoadingBar.d.ts.map +1 -1
  305. package/dist/esm/components/src/components/Atoms/LoadingBar/LoadingBar.js +10 -2
  306. package/dist/esm/components/src/components/Atoms/Overlay/Overlay.d.ts.map +1 -1
  307. package/dist/esm/components/src/components/Atoms/Overlay/Overlay.js +10 -2
  308. package/dist/esm/components/src/components/Atoms/PaginationInfo/PaginationInfo.d.ts.map +1 -1
  309. package/dist/esm/components/src/components/Atoms/PaginationInfo/PaginationInfo.js +10 -3
  310. package/dist/esm/components/src/components/Atoms/Price/Price.d.ts.map +1 -1
  311. package/dist/esm/components/src/components/Atoms/Price/Price.js +11 -3
  312. package/dist/esm/components/src/components/Atoms/SearchHeader/SearchHeader.d.ts.map +1 -1
  313. package/dist/esm/components/src/components/Atoms/SearchHeader/SearchHeader.js +10 -3
  314. package/dist/esm/components/src/components/Atoms/Skeleton/Skeleton.d.ts.map +1 -1
  315. package/dist/esm/components/src/components/Atoms/Skeleton/Skeleton.js +10 -2
  316. package/dist/esm/components/src/components/Atoms/TemplateSelect/TemplateSelect.d.ts.map +1 -1
  317. package/dist/esm/components/src/components/Atoms/TemplateSelect/TemplateSelect.js +1 -15
  318. package/dist/esm/components/src/components/Molecules/CalloutBadge/CalloutBadge.d.ts.map +1 -1
  319. package/dist/esm/components/src/components/Molecules/CalloutBadge/CalloutBadge.js +7 -1
  320. package/dist/esm/components/src/components/Molecules/Carousel/Carousel.d.ts.map +1 -1
  321. package/dist/esm/components/src/components/Molecules/Carousel/Carousel.js +10 -2
  322. package/dist/esm/components/src/components/Molecules/Checkbox/Checkbox.d.ts.map +1 -1
  323. package/dist/esm/components/src/components/Molecules/Checkbox/Checkbox.js +10 -3
  324. package/dist/esm/components/src/components/Molecules/ErrorHandler/ErrorHandler.d.ts.map +1 -1
  325. package/dist/esm/components/src/components/Molecules/ErrorHandler/ErrorHandler.js +10 -3
  326. package/dist/esm/components/src/components/Molecules/FacetGridOptions/FacetGridOptions.d.ts.map +1 -1
  327. package/dist/esm/components/src/components/Molecules/FacetGridOptions/FacetGridOptions.js +10 -3
  328. package/dist/esm/components/src/components/Molecules/FacetHierarchyOptions/FacetHierarchyOptions.d.ts.map +1 -1
  329. package/dist/esm/components/src/components/Molecules/FacetHierarchyOptions/FacetHierarchyOptions.js +10 -3
  330. package/dist/esm/components/src/components/Molecules/FacetListOptions/FacetListOptions.d.ts.map +1 -1
  331. package/dist/esm/components/src/components/Molecules/FacetListOptions/FacetListOptions.js +10 -3
  332. package/dist/esm/components/src/components/Molecules/FacetPaletteOptions/FacetPaletteOptions.d.ts.map +1 -1
  333. package/dist/esm/components/src/components/Molecules/FacetPaletteOptions/FacetPaletteOptions.js +10 -3
  334. package/dist/esm/components/src/components/Molecules/FacetSlider/FacetSlider.d.ts.map +1 -1
  335. package/dist/esm/components/src/components/Molecules/FacetSlider/FacetSlider.js +10 -3
  336. package/dist/esm/components/src/components/Molecules/Filter/Filter.d.ts.map +1 -1
  337. package/dist/esm/components/src/components/Molecules/Filter/Filter.js +10 -3
  338. package/dist/esm/components/src/components/Molecules/Grid/Grid.d.ts.map +1 -1
  339. package/dist/esm/components/src/components/Molecules/Grid/Grid.js +10 -3
  340. package/dist/esm/components/src/components/Molecules/LayoutSelector/LayoutSelector.d.ts.map +1 -1
  341. package/dist/esm/components/src/components/Molecules/LayoutSelector/LayoutSelector.js +10 -2
  342. package/dist/esm/components/src/components/Molecules/List/List.d.ts.map +1 -1
  343. package/dist/esm/components/src/components/Molecules/List/List.js +10 -3
  344. package/dist/esm/components/src/components/Molecules/LoadMore/LoadMore.d.ts.map +1 -1
  345. package/dist/esm/components/src/components/Molecules/LoadMore/LoadMore.js +10 -3
  346. package/dist/esm/components/src/components/Molecules/Modal/Modal.d.ts.map +1 -1
  347. package/dist/esm/components/src/components/Molecules/Modal/Modal.js +10 -3
  348. package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts.map +1 -1
  349. package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.js +8 -2
  350. package/dist/esm/components/src/components/Molecules/Pagination/Pagination.d.ts.map +1 -1
  351. package/dist/esm/components/src/components/Molecules/Pagination/Pagination.js +10 -3
  352. package/dist/esm/components/src/components/Molecules/PerPage/PerPage.d.ts.map +1 -1
  353. package/dist/esm/components/src/components/Molecules/PerPage/PerPage.js +10 -2
  354. package/dist/esm/components/src/components/Molecules/Radio/Radio.d.ts.map +1 -1
  355. package/dist/esm/components/src/components/Molecules/Radio/Radio.js +10 -3
  356. package/dist/esm/components/src/components/Molecules/RadioList/RadioList.d.ts.map +1 -1
  357. package/dist/esm/components/src/components/Molecules/RadioList/RadioList.js +10 -3
  358. package/dist/esm/components/src/components/Molecules/Rating/Rating.d.ts.map +1 -1
  359. package/dist/esm/components/src/components/Molecules/Rating/Rating.js +10 -2
  360. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts +1 -0
  361. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
  362. package/dist/esm/components/src/components/Molecules/Result/Result.js +10 -4
  363. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
  364. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.js +10 -2
  365. package/dist/esm/components/src/components/Molecules/Select/Select.d.ts.map +1 -1
  366. package/dist/esm/components/src/components/Molecules/Select/Select.js +10 -3
  367. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
  368. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.js +10 -3
  369. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.d.ts +1 -0
  370. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.d.ts.map +1 -1
  371. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.js +75 -26
  372. package/dist/esm/components/src/components/Molecules/SortBy/SortBy.d.ts.map +1 -1
  373. package/dist/esm/components/src/components/Molecules/SortBy/SortBy.js +10 -2
  374. package/dist/esm/components/src/components/Molecules/Swatches/Swatches.d.ts.map +1 -1
  375. package/dist/esm/components/src/components/Molecules/Swatches/Swatches.js +10 -3
  376. package/dist/esm/components/src/components/Molecules/TemplatesEditor/TemplatesEditor.js +9 -4
  377. package/dist/esm/components/src/components/Molecules/Terms/Terms.d.ts.map +1 -1
  378. package/dist/esm/components/src/components/Molecules/Terms/Terms.js +10 -3
  379. package/dist/esm/components/src/components/Molecules/VariantSelection/VariantSelection.d.ts.map +1 -1
  380. package/dist/esm/components/src/components/Molecules/VariantSelection/VariantSelection.js +10 -3
  381. package/dist/esm/components/src/components/Organisms/Autocomplete/Autocomplete.d.ts +2 -2
  382. package/dist/esm/components/src/components/Organisms/Autocomplete/Autocomplete.d.ts.map +1 -1
  383. package/dist/esm/components/src/components/Organisms/Autocomplete/Autocomplete.js +10 -7
  384. package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.d.ts +2 -2
  385. package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.d.ts.map +1 -1
  386. package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.js +2 -2
  387. package/dist/esm/components/src/components/Organisms/BranchOverride/BranchOverride.d.ts.map +1 -1
  388. package/dist/esm/components/src/components/Organisms/BranchOverride/BranchOverride.js +10 -2
  389. package/dist/esm/components/src/components/Organisms/Facet/Facet.d.ts.map +1 -1
  390. package/dist/esm/components/src/components/Organisms/Facet/Facet.js +10 -3
  391. package/dist/esm/components/src/components/Organisms/Facets/Facets.d.ts.map +1 -1
  392. package/dist/esm/components/src/components/Organisms/Facets/Facets.js +10 -2
  393. package/dist/esm/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.d.ts.map +1 -1
  394. package/dist/esm/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.js +10 -3
  395. package/dist/esm/components/src/components/Organisms/FilterSummary/FilterSummary.d.ts.map +1 -1
  396. package/dist/esm/components/src/components/Organisms/FilterSummary/FilterSummary.js +10 -3
  397. package/dist/esm/components/src/components/Organisms/MobileSidebar/MobileSidebar.d.ts.map +1 -1
  398. package/dist/esm/components/src/components/Organisms/MobileSidebar/MobileSidebar.js +10 -3
  399. package/dist/esm/components/src/components/Organisms/NoResults/NoResults.d.ts.map +1 -1
  400. package/dist/esm/components/src/components/Organisms/NoResults/NoResults.js +9 -6
  401. package/dist/esm/components/src/components/Organisms/Results/Results.d.ts +2 -2
  402. package/dist/esm/components/src/components/Organisms/Results/Results.d.ts.map +1 -1
  403. package/dist/esm/components/src/components/Organisms/Results/Results.js +17 -15
  404. package/dist/esm/components/src/components/Organisms/Sidebar/Sidebar.d.ts +1 -1
  405. package/dist/esm/components/src/components/Organisms/Sidebar/Sidebar.d.ts.map +1 -1
  406. package/dist/esm/components/src/components/Organisms/Sidebar/Sidebar.js +10 -3
  407. package/dist/esm/components/src/components/Organisms/TermsList/TermsList.d.ts.map +1 -1
  408. package/dist/esm/components/src/components/Organisms/TermsList/TermsList.js +10 -2
  409. package/dist/esm/components/src/components/Organisms/Toolbar/Toolbar.d.ts.map +1 -1
  410. package/dist/esm/components/src/components/Organisms/Toolbar/Toolbar.js +10 -2
  411. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts +3 -2
  412. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
  413. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts +3 -2
  414. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
  415. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts +3 -2
  416. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
  417. package/dist/esm/components/src/components/Templates/Recommendation/Recommendation.d.ts +4 -4
  418. package/dist/esm/components/src/components/Templates/Recommendation/Recommendation.d.ts.map +1 -1
  419. package/dist/esm/components/src/components/Templates/Recommendation/Recommendation.js +6 -3
  420. package/dist/esm/components/src/components/Templates/RecommendationBundle/RecommendationBundle.d.ts +3 -8
  421. package/dist/esm/components/src/components/Templates/RecommendationBundle/RecommendationBundle.d.ts.map +1 -1
  422. package/dist/esm/components/src/components/Templates/RecommendationBundle/RecommendationBundle.js +11 -3
  423. package/dist/esm/components/src/components/Templates/RecommendationBundleEasyAdd/RecommendationBundleEasyAdd.d.ts +3 -9
  424. package/dist/esm/components/src/components/Templates/RecommendationBundleEasyAdd/RecommendationBundleEasyAdd.d.ts.map +1 -1
  425. package/dist/esm/components/src/components/Templates/RecommendationBundleList/RecommendationBundleList.d.ts +3 -9
  426. package/dist/esm/components/src/components/Templates/RecommendationBundleList/RecommendationBundleList.d.ts.map +1 -1
  427. package/dist/esm/components/src/components/Templates/RecommendationBundleList/RecommendationBundleList.js +0 -2
  428. package/dist/esm/components/src/components/Templates/RecommendationBundleVertical/RecommendationBundleVertical.d.ts +3 -9
  429. package/dist/esm/components/src/components/Templates/RecommendationBundleVertical/RecommendationBundleVertical.d.ts.map +1 -1
  430. package/dist/esm/components/src/components/Templates/RecommendationEmail/RecommendationEmail.d.ts +3 -5
  431. package/dist/esm/components/src/components/Templates/RecommendationEmail/RecommendationEmail.d.ts.map +1 -1
  432. package/dist/esm/components/src/components/Templates/RecommendationEmail/RecommendationEmail.js +8 -3
  433. package/dist/esm/components/src/components/Templates/RecommendationGrid/RecommendationGrid.d.ts +3 -3
  434. package/dist/esm/components/src/components/Templates/RecommendationGrid/RecommendationGrid.d.ts.map +1 -1
  435. package/dist/esm/components/src/components/Templates/RecommendationGrid/RecommendationGrid.js +7 -3
  436. package/dist/esm/components/src/components/Templates/Search/Search.d.ts +3 -3
  437. package/dist/esm/components/src/components/Templates/Search/Search.d.ts.map +1 -1
  438. package/dist/esm/components/src/components/Templates/SearchCollapsible/SearchCollapsible.d.ts +1 -1
  439. package/dist/esm/components/src/components/Templates/SearchCollapsible/SearchCollapsible.d.ts.map +1 -1
  440. package/dist/esm/components/src/components/Templates/SearchHorizontal/SearchHorizontal.d.ts +1 -1
  441. package/dist/esm/components/src/components/Templates/SearchHorizontal/SearchHorizontal.d.ts.map +1 -1
  442. package/dist/esm/components/src/hooks/createRecommendationTemplate.d.ts +3 -4
  443. package/dist/esm/components/src/hooks/createRecommendationTemplate.d.ts.map +1 -1
  444. package/dist/esm/components/src/hooks/createRecommendationTemplate.js +2 -6
  445. package/dist/esm/components/src/hooks/useComponent.d.ts.map +1 -1
  446. package/dist/esm/components/src/hooks/useComponent.js +3 -0
  447. package/dist/esm/components/src/index.d.ts +2 -0
  448. package/dist/esm/components/src/index.d.ts.map +1 -1
  449. package/dist/esm/components/src/index.js +2 -0
  450. package/dist/esm/components/src/providers/theme.d.ts +14 -0
  451. package/dist/esm/components/src/providers/theme.d.ts.map +1 -1
  452. package/dist/esm/components/src/themes/pike/components/atoms/breadcrumbs.d.ts.map +1 -1
  453. package/dist/esm/components/src/themes/pike/components/atoms/breadcrumbs.js +6 -0
  454. package/dist/esm/components/src/themes/pike/components/atoms/dropdown.d.ts.map +1 -1
  455. package/dist/esm/components/src/themes/pike/components/atoms/dropdown.js +1 -2
  456. package/dist/esm/components/src/themes/pike/components/molecules/carousel.d.ts.map +1 -1
  457. package/dist/esm/components/src/themes/pike/components/molecules/carousel.js +7 -18
  458. package/dist/esm/components/src/themes/pike/components/molecules/checkbox.d.ts.map +1 -1
  459. package/dist/esm/components/src/themes/pike/components/molecules/checkbox.js +1 -0
  460. package/dist/esm/components/src/themes/pike/components/molecules/errorHandler.d.ts.map +1 -1
  461. package/dist/esm/components/src/themes/pike/components/molecules/errorHandler.js +1 -0
  462. package/dist/esm/components/src/themes/pike/components/molecules/facetHierarchyOptions.d.ts.map +1 -1
  463. package/dist/esm/components/src/themes/pike/components/molecules/facetHierarchyOptions.js +3 -4
  464. package/dist/esm/components/src/themes/pike/components/molecules/facetListOptions.d.ts.map +1 -1
  465. package/dist/esm/components/src/themes/pike/components/molecules/facetListOptions.js +3 -4
  466. package/dist/esm/components/src/themes/pike/components/molecules/facetPaletteOptions.js +3 -3
  467. package/dist/esm/components/src/themes/pike/components/molecules/filter.d.ts.map +1 -1
  468. package/dist/esm/components/src/themes/pike/components/molecules/filter.js +2 -3
  469. package/dist/esm/components/src/themes/pike/components/molecules/grid.js +1 -1
  470. package/dist/esm/components/src/themes/pike/components/molecules/list.d.ts.map +1 -1
  471. package/dist/esm/components/src/themes/pike/components/molecules/list.js +3 -4
  472. package/dist/esm/components/src/themes/pike/components/molecules/loadMore.d.ts.map +1 -1
  473. package/dist/esm/components/src/themes/pike/components/molecules/loadMore.js +1 -0
  474. package/dist/esm/components/src/themes/pike/components/molecules/pagination.js +1 -1
  475. package/dist/esm/components/src/themes/pike/components/molecules/radio.d.ts.map +1 -1
  476. package/dist/esm/components/src/themes/pike/components/molecules/radio.js +1 -0
  477. package/dist/esm/components/src/themes/pike/components/molecules/radioList.d.ts.map +1 -1
  478. package/dist/esm/components/src/themes/pike/components/molecules/radioList.js +60 -16
  479. package/dist/esm/components/src/themes/pike/components/molecules/result.d.ts.map +1 -1
  480. package/dist/esm/components/src/themes/pike/components/molecules/result.js +13 -6
  481. package/dist/esm/components/src/themes/pike/components/molecules/searchInput.d.ts.map +1 -1
  482. package/dist/esm/components/src/themes/pike/components/molecules/searchInput.js +1 -0
  483. package/dist/esm/components/src/themes/pike/components/molecules/select.d.ts.map +1 -1
  484. package/dist/esm/components/src/themes/pike/components/molecules/select.js +1 -2
  485. package/dist/esm/components/src/themes/pike/components/molecules/swatches.d.ts.map +1 -1
  486. package/dist/esm/components/src/themes/pike/components/molecules/swatches.js +11 -5
  487. package/dist/esm/components/src/themes/pike/components/molecules/terms.js +1 -1
  488. package/dist/esm/components/src/themes/pike/components/organisms/autocomplete.d.ts.map +1 -1
  489. package/dist/esm/components/src/themes/pike/components/organisms/autocomplete.js +11 -9
  490. package/dist/esm/components/src/themes/pike/components/organisms/facet.d.ts.map +1 -1
  491. package/dist/esm/components/src/themes/pike/components/organisms/facet.js +5 -5
  492. package/dist/esm/components/src/themes/pike/components/organisms/facetsHorizontal.d.ts.map +1 -1
  493. package/dist/esm/components/src/themes/pike/components/organisms/facetsHorizontal.js +6 -6
  494. package/dist/esm/components/src/themes/pike/components/organisms/mobileSidebar.d.ts.map +1 -1
  495. package/dist/esm/components/src/themes/pike/components/organisms/mobileSidebar.js +2 -1
  496. package/dist/esm/components/src/themes/pike/components/organisms/noResults.d.ts.map +1 -1
  497. package/dist/esm/components/src/themes/pike/components/organisms/noResults.js +2 -6
  498. package/dist/esm/components/src/themes/pike/components/organisms/toolbar.js +1 -1
  499. package/dist/esm/components/src/themes/pike/components/templates/autocompleteFixed.d.ts.map +1 -1
  500. package/dist/esm/components/src/themes/pike/components/templates/autocompleteFixed.js +7 -2
  501. package/dist/esm/components/src/themes/pike/components/templates/autocompleteModal.d.ts.map +1 -1
  502. package/dist/esm/components/src/themes/pike/components/templates/autocompleteModal.js +5 -2
  503. package/dist/esm/components/src/themes/pike/components/templates/autocompleteShared.d.ts.map +1 -1
  504. package/dist/esm/components/src/themes/pike/components/templates/autocompleteShared.js +17 -10
  505. package/dist/esm/components/src/themes/pike/components/templates/autocompleteSlideout.d.ts.map +1 -1
  506. package/dist/esm/components/src/themes/pike/components/templates/autocompleteSlideout.js +7 -0
  507. package/dist/esm/components/src/themes/pike/components/templates/recommendation.d.ts.map +1 -1
  508. package/dist/esm/components/src/themes/pike/components/templates/recommendation.js +7 -6
  509. package/dist/esm/components/src/themes/pike/components/templates/recommendationBundle.d.ts.map +1 -1
  510. package/dist/esm/components/src/themes/pike/components/templates/recommendationBundle.js +4 -6
  511. package/dist/esm/components/src/themes/pike/components/templates/recommendationBundleEasyAdd.d.ts.map +1 -1
  512. package/dist/esm/components/src/themes/pike/components/templates/recommendationBundleList.d.ts.map +1 -1
  513. package/dist/esm/components/src/themes/pike/components/templates/recommendationBundleVertical.js +1 -2
  514. package/dist/esm/components/src/themes/pike/components/templates/recommendationEmail.d.ts.map +1 -1
  515. package/dist/esm/components/src/themes/pike/components/templates/recommendationEmail.js +21 -6
  516. package/dist/esm/components/src/themes/pike/components/templates/recommendationGrid.d.ts.map +1 -1
  517. package/dist/esm/components/src/themes/pike/components/templates/recommendationGrid.js +23 -9
  518. package/dist/esm/components/src/themes/pike/components/templates/search.d.ts.map +1 -1
  519. package/dist/esm/components/src/themes/pike/components/templates/search.js +14 -18
  520. package/dist/esm/components/src/themes/pike/components/templates/searchCollapsible.js +1 -1
  521. package/dist/esm/components/src/themes/pike/components/templates/searchHorizontal.d.ts.map +1 -1
  522. package/dist/esm/components/src/themes/pike/components/templates/searchHorizontal.js +13 -16
  523. package/dist/esm/components/src/themes/pike/custom.d.ts +3 -2
  524. package/dist/esm/components/src/themes/pike/custom.d.ts.map +1 -1
  525. package/dist/esm/components/src/themes/pike/custom.js +13 -5
  526. package/dist/esm/components/src/types.d.ts +1 -7
  527. package/dist/esm/components/src/types.d.ts.map +1 -1
  528. package/dist/esm/components/src/utilities/cloneWithProps.d.ts.map +1 -1
  529. package/dist/esm/components/src/utilities/cloneWithProps.js +14 -2
  530. package/dist/esm/components/src/utilities/mergeProps.d.ts.map +1 -1
  531. package/dist/esm/components/src/utilities/mergeProps.js +93 -6
  532. package/dist/esm/src/Snap.d.ts +1 -2
  533. package/dist/esm/src/Snap.d.ts.map +1 -1
  534. package/dist/esm/src/Snap.js +32 -5
  535. package/dist/esm/src/SnapHybrid.d.ts +12 -0
  536. package/dist/esm/src/SnapHybrid.d.ts.map +1 -0
  537. package/dist/esm/src/SnapHybrid.js +27 -0
  538. package/dist/esm/src/Templates/SnapTemplates.d.ts +19 -7
  539. package/dist/esm/src/Templates/SnapTemplates.d.ts.map +1 -1
  540. package/dist/esm/src/Templates/SnapTemplates.js +14 -42
  541. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts +128 -7
  542. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
  543. package/dist/esm/src/Templates/Stores/LibraryStore.js +188 -4
  544. package/dist/esm/src/Templates/Stores/TargetStore.d.ts +0 -2
  545. package/dist/esm/src/Templates/Stores/TargetStore.d.ts.map +1 -1
  546. package/dist/esm/src/Templates/Stores/TargetStore.js +0 -7
  547. package/dist/esm/src/Templates/Stores/TemplateEditor/TemplateEditorStore.d.ts.map +1 -1
  548. package/dist/esm/src/Templates/Stores/TemplateEditor/TemplateEditorStore.js +1 -3
  549. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts +95 -8
  550. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
  551. package/dist/esm/src/Templates/Stores/TemplateStore.js +1 -5
  552. package/dist/esm/src/Templates/index.d.ts +1 -0
  553. package/dist/esm/src/Templates/index.d.ts.map +1 -1
  554. package/dist/esm/src/index.d.ts +1 -0
  555. package/dist/esm/src/index.d.ts.map +1 -1
  556. package/dist/esm/src/index.js +1 -0
  557. package/dist/esm/src/types.d.ts +1 -1
  558. package/dist/esm/src/types.d.ts.map +1 -1
  559. package/package.json +12 -12
@@ -1,3 +1,5 @@
1
+ // Symbol to track prop-value pairs that originated from theme configuration
2
+ const THEME_PROPS_MAP_SYMBOL = Symbol.for('__themePropsMap__');
1
3
  export function mergeProps(componentType, globalTheme, defaultProps, props) {
2
4
  /*
3
5
 
@@ -55,14 +57,72 @@ export function mergeProps(componentType, globalTheme, defaultProps, props) {
55
57
  // add globalTheme props for components with selector matches if they exist
56
58
  const filteredGlobalApplicableSelectors = filterSelectors(globalTheme?.components || {}, treePath);
57
59
  const globalApplicableSelectors = filteredGlobalApplicableSelectors.sort(sortSelectors);
58
- globalApplicableSelectors.forEach((selector) => {
60
+ // Split selectors into base theme (with *) and user overrides (without *)
61
+ const baseThemeSelectors = globalApplicableSelectors.filter((s) => s.includes('*'));
62
+ const userOverrideSelectors = globalApplicableSelectors.filter((s) => !s.includes('*'));
63
+ // 1. Apply base theme props first, tracking which props are set by SPECIFIC selectors
64
+ // Specific selectors are those with multiple path segments (like 'facet icon.collapse')
65
+ // Props set by specific selectors should NOT be overridden by parent's passed values
66
+ const propsSetBySpecificSelectors = new Set();
67
+ baseThemeSelectors.forEach((selector) => {
59
68
  const componentProps = globalTheme.components?.[selector];
60
69
  if (componentProps) {
70
+ // Check if this is a "specific" selector (has parent component in path)
71
+ // Remove the * prefix and responsive suffixes for checking
72
+ const cleanSelector = selector
73
+ .replace(/^\*/, '')
74
+ .replace(/\([MDT]\)$/, '')
75
+ .trim();
76
+ const isSpecificSelector = cleanSelector.split(' ').length > 1;
77
+ if (isSpecificSelector) {
78
+ // Track which props are set by specific selectors
79
+ Object.keys(componentProps).forEach((key) => propsSetBySpecificSelectors.add(key));
80
+ }
61
81
  mergedProps = mergeThemeProps(componentProps, mergedProps);
62
82
  }
63
83
  });
64
- // og theme prop in default components
65
- // add theme props for components with selector matches if they exist
84
+ // 2. Respread props whose VALUES originated from a parent's theme.
85
+ // This ensures theme-derived props from parent beat child's base theme,
86
+ // BUT skip props that were set by SPECIFIC selectors (like 'facet icon.collapse')
87
+ // User overrides (applied next) will still have the final say.
88
+ const parentThemePropsMap = props.theme?.[THEME_PROPS_MAP_SYMBOL];
89
+ if (parentThemePropsMap instanceof Map && parentThemePropsMap.size > 0) {
90
+ const propsToRespread = {};
91
+ const parentThemeValuesArray = Array.from(parentThemePropsMap.values());
92
+ for (const key of Object.keys(props)) {
93
+ // Skip meta props
94
+ if (key === 'treePath' || key === 'theme' || key === 'name')
95
+ continue;
96
+ // Skip props that were set by a specific selector in child's theme
97
+ if (propsSetBySpecificSelectors.has(key))
98
+ continue;
99
+ const propValue = props[key];
100
+ // Only respread if the VALUE came from a parent's theme (check all parent theme values)
101
+ if (propValue !== undefined && parentThemeValuesArray.indexOf(propValue) !== -1) {
102
+ propsToRespread[key] = propValue;
103
+ }
104
+ }
105
+ if (Object.keys(propsToRespread).length > 0) {
106
+ mergedProps = {
107
+ ...mergedProps,
108
+ ...propsToRespread,
109
+ };
110
+ }
111
+ }
112
+ // 3. Apply user overrides.
113
+ // Pass preserveExistingMapKeys=true so that props already tracked in the theme map
114
+ // (e.g. from baseThemeSelectors) keep their theme-derived value in the map.
115
+ // New props introduced only by user overrides are still added to the map.
116
+ userOverrideSelectors.forEach((selector) => {
117
+ const componentProps = globalTheme.components?.[selector];
118
+ if (componentProps) {
119
+ mergedProps = mergeThemeProps(componentProps, mergedProps, true);
120
+ }
121
+ });
122
+ // 4. Apply props.theme component overrides last.
123
+ // These come from parent-injected theme data (e.g. layout option overrides set by useLayoutOptions)
124
+ // and must win over global user overrides because they represent a more specific context.
125
+ // e.g. `searchCollapsible results: { columns: 6 }` beats a global `results: { columns: 5 }` override.
66
126
  const themeApplicableSelectors = filterSelectors(theme?.components || {}, treePath).sort(sortSelectors);
67
127
  themeApplicableSelectors.forEach((selector) => {
68
128
  const componentProps = theme?.components?.[selector];
@@ -85,8 +145,21 @@ export function mergeProps(componentType, globalTheme, defaultProps, props) {
85
145
  if (globalTheme.variables && mergedProps.theme) {
86
146
  mergedProps.theme.variables = globalTheme.variables;
87
147
  }
88
- // if custom component, re-spread props again
89
- if (treePath && (treePath.indexOf('customComponent') > -1 || treePath.startsWith('storybook'))) {
148
+ // Store current theme prop-value pairs on props.theme so they travel to children
149
+ const currentThemePropsMap = mergedProps[THEME_PROPS_MAP_SYMBOL] || new Map();
150
+ if (currentThemePropsMap.size > 0 && mergedProps.theme) {
151
+ // Merge with any existing parent theme values
152
+ const combinedThemePropsMap = new Map(currentThemePropsMap);
153
+ if (parentThemePropsMap instanceof Map) {
154
+ parentThemePropsMap.forEach((val, key) => {
155
+ if (!combinedThemePropsMap.has(key)) {
156
+ combinedThemePropsMap.set(key, val);
157
+ }
158
+ });
159
+ }
160
+ mergedProps.theme[THEME_PROPS_MAP_SYMBOL] = combinedThemePropsMap;
161
+ }
162
+ if (treePath && (treePath.indexOf('customComponent') > -1 || (treePath.startsWith('storybook') && treePath.split(' ').length == 2))) {
90
163
  mergedProps = {
91
164
  ...mergedProps,
92
165
  ...props,
@@ -96,13 +169,27 @@ export function mergeProps(componentType, globalTheme, defaultProps, props) {
96
169
  }
97
170
  return mergedProps;
98
171
  }
99
- function mergeThemeProps(componentThemeProps, mergedProps) {
172
+ function mergeThemeProps(componentThemeProps, mergedProps, preserveExistingMapKeys = false) {
100
173
  // add theme props if they exist
101
174
  if (componentThemeProps) {
175
+ // Track prop-value pairs that came from theme (for detecting theme-derived props in children).
176
+ // When preserveExistingMapKeys is true (used for user overrides), existing map entries are not
177
+ // overwritten — only new keys are added. This preserves original theme-derived values in the
178
+ // map so child components can correctly identify which props came from the theme.
179
+ const existingThemePropsMap = mergedProps[THEME_PROPS_MAP_SYMBOL] || new Map();
180
+ for (const [key, value] of Object.entries(componentThemeProps)) {
181
+ // Only track primitive values and non-null objects (skip functions, undefined, etc.)
182
+ if (value !== undefined && value !== null && typeof value !== 'function') {
183
+ if (!preserveExistingMapKeys || !existingThemePropsMap.has(key)) {
184
+ existingThemePropsMap.set(key, value);
185
+ }
186
+ }
187
+ }
102
188
  mergedProps = {
103
189
  ...mergedProps,
104
190
  ...componentThemeProps,
105
191
  };
192
+ mergedProps[THEME_PROPS_MAP_SYMBOL] = existingThemePropsMap;
106
193
  }
107
194
  return mergedProps;
108
195
  }
@@ -60,7 +60,7 @@ export type SnapConfig = {
60
60
  recommendation?: SnapConfigControllerDefinition<RecommendationControllerConfig>[];
61
61
  };
62
62
  };
63
- type SnapServices = {
63
+ export type SnapServices = {
64
64
  client?: Client;
65
65
  tracker?: Tracker;
66
66
  logger?: Logger;
@@ -91,5 +91,4 @@ export declare class Snap {
91
91
  };
92
92
  constructor(config: SnapConfig, services?: SnapServices);
93
93
  }
94
- export {};
95
94
  //# sourceMappingURL=Snap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Snap.d.ts","sourceRoot":"","sources":["../../../src/Snap.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Snap.d.ts","sourceRoot":"","sources":["../../../src/Snap.tsx"],"names":[],"mappings":"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"}
@@ -209,7 +209,20 @@ export class Snap {
209
209
  let globalContext = {};
210
210
  try {
211
211
  // get global context
212
- globalContext = getContext(['shopper', 'config', 'custom', 'merchandising', 'siteId', 'currency', 'page']);
212
+ globalContext = getContext([
213
+ 'shopper',
214
+ 'config',
215
+ 'custom',
216
+ 'merchandising',
217
+ 'siteId',
218
+ 'currency',
219
+ 'page',
220
+ 'backgroundFilters',
221
+ 'collection',
222
+ 'tags',
223
+ 'category',
224
+ 'brand',
225
+ ]);
213
226
  }
214
227
  catch (err) {
215
228
  console.error('Snap failed to find global context');
@@ -280,16 +293,28 @@ export class Snap {
280
293
  this.mode = AppMode.development;
281
294
  }
282
295
  }
296
+ const initiatorPrefix = window?.athos?.managed ? `managed/` : '';
283
297
  // client mode uses client config over snap config
284
298
  if (this.config.client) {
285
299
  this.config.client.config = this.config.client.config || {};
286
- this.config.client.config.initiator = `snap/preact/${version}`;
300
+ if (!this.config.client.config.initiator) {
301
+ this.config.client.config.initiator = `athos/${initiatorPrefix}snap/preact/${version}`;
302
+ }
287
303
  this.config.client.config.mode = this.config.client.config.mode || this.mode;
288
304
  }
289
305
  // feature check block
290
306
  configureSnapFeatures(this.config);
291
307
  this.client = services?.client || new Client(this.config.client.globals, this.config.client.config);
292
- this.logger = services?.logger || new Logger({ prefix: 'Snap Preact ', mode: this.mode });
308
+ this.logger =
309
+ services?.logger ||
310
+ new Logger({
311
+ prefix: `${this.config.tracker?.config?.framework == 'snap/templates'
312
+ ? 'Snap Preact Templates '
313
+ : this.config.tracker?.config?.framework == 'snap/hybrid'
314
+ ? 'Snap Preact Hybrid '
315
+ : 'Snap Preact '}`,
316
+ mode: this.mode,
317
+ });
293
318
  // create tracker
294
319
  let trackerGlobals = this.config.tracker?.globals || this.config.client.globals;
295
320
  if (this.context.currency?.code) {
@@ -302,8 +327,10 @@ export class Snap {
302
327
  cart: this.context.shopper.cart,
303
328
  });
304
329
  }
305
- const initiatorPrefix = window?.athos?.managed ? `managed/` : '';
306
- const trackerConfig = deepmerge(this.config.tracker?.config || {}, { framework: `${initiatorPrefix}snap/preact`, mode: this.mode });
330
+ const trackerConfig = deepmerge(this.config.tracker?.config || {}, {
331
+ framework: `${initiatorPrefix}${this.config.tracker?.config?.framework || 'snap'}/preact`,
332
+ mode: this.mode,
333
+ });
307
334
  this.tracker = services?.tracker || new Tracker(trackerGlobals, trackerConfig);
308
335
  // log version
309
336
  this.logger.imageText({
@@ -0,0 +1,12 @@
1
+ import { Snap, SnapConfig, SnapServices } from './Snap';
2
+ import { SnapTemplatesConfigLocked, SnapTemplatesConfigUnlocked } from './Templates/SnapTemplates';
3
+ type HybridIntegrationConfig = {
4
+ templatesConfig: SnapTemplatesConfigLocked | SnapTemplatesConfigUnlocked;
5
+ snapConfig: SnapConfig;
6
+ services?: SnapServices;
7
+ };
8
+ export declare class SnapHybrid extends Snap {
9
+ constructor(config: HybridIntegrationConfig);
10
+ }
11
+ export {};
12
+ //# sourceMappingURL=SnapHybrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SnapHybrid.d.ts","sourceRoot":"","sources":["../../../src/SnapHybrid.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,2BAA2B,EAAoB,MAAM,2BAA2B,CAAC;AAKrH,KAAK,uBAAuB,GAAG;IAC9B,eAAe,EAAE,yBAAyB,GAAG,2BAA2B,CAAC;IACzE,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACxB,CAAC;AAEF,qBAAa,UAAW,SAAQ,IAAI;gBACvB,MAAM,EAAE,uBAAuB;CAqB3C"}
@@ -0,0 +1,27 @@
1
+ import { Snap } from './Snap';
2
+ import { createSnapConfig } from './Templates/SnapTemplates';
3
+ import { TemplatesStore } from './Templates/Stores/TemplateStore';
4
+ import deepmerge from 'deepmerge';
5
+ import { isPlainObject } from 'is-plain-object';
6
+ import { version } from '@athoscommerce/snap-toolbox';
7
+ export class SnapHybrid extends Snap {
8
+ constructor(config) {
9
+ const templatesStore = new TemplatesStore({ config: config.templatesConfig });
10
+ const convertedTemplatesConfig = createSnapConfig(config.templatesConfig, templatesStore);
11
+ const mergedConfig = deepmerge(convertedTemplatesConfig, config.snapConfig, {
12
+ isMergeableObject: (value) => isPlainObject(value) || Array.isArray(value),
13
+ arrayMerge: (target, source) => [...target, ...source],
14
+ });
15
+ const initiatorPrefix = window?.athos?.managed ? `managed/` : '';
16
+ mergedConfig.client.config = {
17
+ ...mergedConfig.client.config,
18
+ initiator: `athos/${initiatorPrefix}snap/preact/hybrid/${version}`,
19
+ };
20
+ mergedConfig.tracker.config = {
21
+ ...mergedConfig.tracker.config,
22
+ initiator: `athos/${initiatorPrefix}snap/preact/hybrid/${version}`,
23
+ framework: 'snap/hybrid',
24
+ };
25
+ super(mergedConfig, { ...config.services, templatesStore });
26
+ }
27
+ }
@@ -2,36 +2,35 @@ import { Snap } from '../Snap';
2
2
  import { TemplatesStore } from './Stores/TemplateStore';
3
3
  import { type SearchStoreConfigSettings, type AutocompleteStoreConfigSettings } from '@athoscommerce/snap-store-mobx';
4
4
  import type { UrlTranslatorConfig } from '@athoscommerce/snap-url-manager';
5
+ import type { PluginGrouping } from '@athoscommerce/snap-controller';
5
6
  import type { RecommendationInstantiatorConfigSettings, RecommendationComponentObject } from '../Instantiators/RecommendationInstantiator';
6
7
  import type { SnapFeatures } from '../types';
7
8
  import type { SnapConfig, ExtendedTarget } from '../Snap';
8
- import type { PluginsConfigs, TemplateStoreConfigConfig } from './Stores/TemplateStore';
9
+ import type { PluginsConfigs, PluginsConfigsUnlocked, TemplateStoreConfigConfig, TemplateStoreConfigConfigUnlocked } from './Stores/TemplateStore';
9
10
  import { LibraryImports } from './Stores/LibraryStore';
10
11
  export declare const TEMPLATE_EDIT_COOKIE = "athosEditor";
12
+ export declare const TEMPLATE_EDITOR_PARAM = "athos-editor";
11
13
  export type SearchTargetConfig = {
12
14
  selector: string;
13
15
  component: keyof LibraryImports['component']['search'];
14
- resultComponent?: keyof LibraryImports['component']['result'] | (string & NonNullable<unknown>);
15
16
  };
16
17
  export type AutocompleteTargetConfig = {
17
18
  selector: string;
18
19
  inputSelector?: string;
19
20
  component: keyof LibraryImports['component']['autocomplete'];
20
- resultComponent?: keyof LibraryImports['component']['result'] | (string & NonNullable<unknown>);
21
21
  };
22
22
  export type RecommendationDefaultTargetConfig = {
23
23
  component: keyof LibraryImports['component']['recommendation']['default'];
24
- resultComponent?: keyof LibraryImports['component']['result'] | (string & NonNullable<unknown>);
25
24
  };
26
25
  export type RecommendationEmailTargetConfig = {
27
26
  component: keyof LibraryImports['component']['recommendation']['email'];
28
- resultComponent?: keyof LibraryImports['component']['result'] | (string & NonNullable<unknown>);
29
27
  };
30
28
  export type RecommendationBundleTargetConfig = {
31
29
  component: keyof LibraryImports['component']['recommendation']['bundle'];
32
- resultComponent?: keyof LibraryImports['component']['result'] | (string & NonNullable<unknown>);
33
30
  };
34
- export type SnapTemplatesConfig = TemplateStoreConfigConfig & {
31
+ export type SnapTemplatesConfig = SnapTemplatesConfigUnlocked | SnapTemplatesConfigLocked;
32
+ export type SnapTemplatesConfigLocked = TemplateStoreConfigConfig & {
33
+ unlocked: false;
35
34
  url?: UrlTranslatorConfig;
36
35
  features?: SnapFeatures;
37
36
  search?: {
@@ -58,6 +57,18 @@ export type SnapTemplatesConfig = TemplateStoreConfigConfig & {
58
57
  plugins?: PluginsConfigs;
59
58
  };
60
59
  };
60
+ export type SnapTemplatesConfigUnlocked = Omit<SnapTemplatesConfigLocked, 'unlocked' | 'plugins' | 'search' | 'autocomplete' | 'recommendation'> & TemplateStoreConfigConfigUnlocked & {
61
+ unlocked: true;
62
+ search?: Omit<NonNullable<SnapTemplatesConfigLocked['search']>, 'plugins'> & {
63
+ plugins?: PluginsConfigsUnlocked;
64
+ };
65
+ autocomplete?: Omit<NonNullable<SnapTemplatesConfigLocked['autocomplete']>, 'plugins'> & {
66
+ plugins?: PluginsConfigsUnlocked;
67
+ };
68
+ recommendation?: Omit<NonNullable<SnapTemplatesConfigLocked['recommendation']>, 'plugins'> & {
69
+ plugins?: PluginsConfigsUnlocked;
70
+ };
71
+ };
61
72
  export declare const DEFAULT_FEATURES: SnapFeatures;
62
73
  export declare const DEFAULT_AUTOCOMPLETE_CONTROLLER_SETTINGS: AutocompleteStoreConfigSettings;
63
74
  export declare class SnapTemplates extends Snap {
@@ -73,4 +84,5 @@ export declare function createRecommendationComponentMapping(templateConfig: Sna
73
84
  [name: string]: RecommendationComponentObject;
74
85
  };
75
86
  export declare function createSnapConfig(templateConfig: SnapTemplatesConfig, templatesStore: TemplatesStore): SnapConfig;
87
+ export declare function createPlugins(templateConfig: SnapTemplatesConfig, templatesStore: TemplatesStore, controllerType?: 'autocomplete' | 'search' | 'recommendation'): PluginGrouping[];
76
88
  //# sourceMappingURL=SnapTemplates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SnapTemplates.d.ts","sourceRoot":"","sources":["../../../../src/Templates/SnapTemplates.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SnapTemplates.d.ts","sourceRoot":"","sources":["../../../../src/Templates/SnapTemplates.tsx"],"names":[],"mappings":"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"}
@@ -3,10 +3,10 @@ import { render } from 'preact';
3
3
  import deepmerge from 'deepmerge';
4
4
  import { Snap } from '../Snap';
5
5
  import { TemplateSelect } from '../../components/src/components/Atoms/TemplateSelect';
6
- import { DomTargeter, url, cookies, getContext, version } from '@athoscommerce/snap-toolbox';
6
+ import { DomTargeter, url, cookies, version } from '@athoscommerce/snap-toolbox';
7
7
  import { TemplatesStore } from './Stores/TemplateStore';
8
8
  export const TEMPLATE_EDIT_COOKIE = 'athosEditor';
9
- const TEMPLATE_EDITOR_PARAM = 'athos-editor';
9
+ export const TEMPLATE_EDITOR_PARAM = 'athos-editor';
10
10
  export const DEFAULT_FEATURES = {};
11
11
  export const DEFAULT_AUTOCOMPLETE_CONTROLLER_SETTINGS = {
12
12
  trending: {
@@ -19,22 +19,6 @@ export class SnapTemplates extends Snap {
19
19
  const editMode = Boolean((urlParams?.params?.query && TEMPLATE_EDITOR_PARAM in urlParams.params.query) || cookies.get(TEMPLATE_EDIT_COOKIE));
20
20
  const templatesStore = new TemplatesStore({ config, settings: { editMode } });
21
21
  const snapConfig = createSnapConfig(config, templatesStore);
22
- // get more context (all the things needed for the platform of choice as well as generic backgroundFilters)
23
- let contextParams = ['backgroundFilters'];
24
- switch (templatesStore.platform) {
25
- case 'shopify':
26
- contextParams = contextParams.concat(['collection', 'tags']);
27
- break;
28
- case 'bigCommerce':
29
- contextParams = contextParams.concat(['category', 'brand']);
30
- break;
31
- case 'magento2':
32
- contextParams = contextParams.concat(['category']);
33
- break;
34
- default:
35
- break;
36
- }
37
- snapConfig.context = getContext(contextParams);
38
22
  super(snapConfig, { templatesStore });
39
23
  this.templates = templatesStore;
40
24
  if (editMode) {
@@ -97,10 +81,6 @@ export function mapBreakpoints(breakpointsKeys, breakpointSettings) {
97
81
  export const createSearchTargeters = (templateConfig, templatesStore) => {
98
82
  const targets = templateConfig.search?.targets || [];
99
83
  return targets.map((target) => {
100
- // use theme provided resultComponent if specified
101
- if (!target.resultComponent && templateConfig.theme.resultComponent) {
102
- target.resultComponent = templateConfig.theme.resultComponent;
103
- }
104
84
  const targetId = templatesStore.addTarget('search', target);
105
85
  const targeter = {
106
86
  selector: target.selector,
@@ -108,9 +88,6 @@ export const createSearchTargeters = (templateConfig, templatesStore) => {
108
88
  component: async () => {
109
89
  const componentImportPromises = [];
110
90
  componentImportPromises.push(templatesStore.library.import.component.search[target.component]());
111
- if (target.resultComponent && templatesStore.library.import.component.result[target.resultComponent]) {
112
- componentImportPromises.push(templatesStore.library.import.component.result[target.resultComponent]());
113
- }
114
91
  await Promise.all(componentImportPromises);
115
92
  return TemplateSelect;
116
93
  },
@@ -122,19 +99,12 @@ export const createSearchTargeters = (templateConfig, templatesStore) => {
122
99
  export function createAutocompleteTargeters(templateConfig, templatesStore) {
123
100
  const targets = templateConfig.autocomplete?.targets || [];
124
101
  return targets.map((target) => {
125
- // use theme provided resultComponent if specified
126
- if (!target.resultComponent && templateConfig.theme.resultComponent) {
127
- target.resultComponent = templateConfig.theme.resultComponent;
128
- }
129
102
  const targetId = templatesStore.addTarget('autocomplete', target);
130
103
  const targeter = {
131
104
  selector: target.selector,
132
105
  component: async () => {
133
106
  const componentImportPromises = [];
134
107
  componentImportPromises.push(templatesStore.library.import.component.autocomplete[target.component]());
135
- if (target.resultComponent && templatesStore.library.import.component.result[target.resultComponent]) {
136
- componentImportPromises.push(templatesStore.library.import.component.result[target.resultComponent]());
137
- }
138
108
  await Promise.all(componentImportPromises);
139
109
  return TemplateSelect;
140
110
  },
@@ -155,10 +125,6 @@ export function createRecommendationComponentMapping(templateConfig, templatesSt
155
125
  Object.keys(templateConfig.recommendation[recsType] || {}).forEach((targetName) => {
156
126
  const type = `recommendation/${recsType}`;
157
127
  const target = templateConfig.recommendation[recsType][targetName];
158
- // use theme provided resultComponent if specified
159
- if (!target.resultComponent && templateConfig.theme.resultComponent) {
160
- target.resultComponent = templateConfig.theme.resultComponent;
161
- }
162
128
  const mappedConfig = {
163
129
  component: async () => {
164
130
  const componentImportPromises = [];
@@ -179,9 +145,6 @@ export function createRecommendationComponentMapping(templateConfig, templatesSt
179
145
  break;
180
146
  }
181
147
  }
182
- if (target.resultComponent && templatesStore.library.import.component.result[target.resultComponent]) {
183
- componentImportPromises.push(templatesStore.library.import.component.result[target.resultComponent]());
184
- }
185
148
  await Promise.all(componentImportPromises);
186
149
  return TemplateSelect;
187
150
  },
@@ -199,6 +162,7 @@ export function createRecommendationComponentMapping(templateConfig, templatesSt
199
162
  }, {});
200
163
  }
201
164
  export function createSnapConfig(templateConfig, templatesStore) {
165
+ const initiatorPrefix = window?.athos?.managed ? `managed/` : '';
202
166
  const snapConfig = {
203
167
  features: templateConfig.features || DEFAULT_FEATURES,
204
168
  client: {
@@ -207,11 +171,12 @@ export function createSnapConfig(templateConfig, templatesStore) {
207
171
  },
208
172
  config: {
209
173
  ...(templateConfig.config?.client || {}),
210
- initiator: `snap/templates/${version}`,
174
+ initiator: `athos/${initiatorPrefix}snap/preact/templates/${version}`,
211
175
  },
212
176
  },
213
177
  tracker: {
214
178
  config: {
179
+ initiator: `athos/${initiatorPrefix}snap/preact/templates/${version}`,
215
180
  framework: 'snap/templates',
216
181
  },
217
182
  },
@@ -318,8 +283,7 @@ export function createSnapConfig(templateConfig, templatesStore) {
318
283
  }
319
284
  return snapConfig;
320
285
  }
321
- // TODO: DRY up and support dynamic imports
322
- function createPlugins(templateConfig, templatesStore, controllerType) {
286
+ export function createPlugins(templateConfig, templatesStore, controllerType) {
323
287
  const plugins = [];
324
288
  let controllerConfig;
325
289
  if (controllerType) {
@@ -384,5 +348,13 @@ function createPlugins(templateConfig, templatesStore, controllerType) {
384
348
  default:
385
349
  break;
386
350
  }
351
+ // Handle custom plugins (only available when unlocked: true)
352
+ const customPlugins = deepmerge(templateConfig.plugins?.custom || {}, controllerConfig?.plugins?.custom || {});
353
+ Object.keys(customPlugins).forEach((pluginName) => {
354
+ const customPlugin = customPlugins[pluginName];
355
+ if (customPlugin?.function) {
356
+ plugins.push([customPlugin.function, ...(customPlugin.args || [])]);
357
+ }
358
+ });
387
359
  return plugins;
388
360
  }