@useinsider/guido 3.15.0-beta.f7e8414 → 3.15.0-beta.fcabbea

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 (349) hide show
  1. package/dist/@types/config/schemas.js +108 -92
  2. package/dist/components/Guido.vue.js +1 -1
  3. package/dist/components/Guido.vue2.js +78 -75
  4. package/dist/components/organisms/header/EditorActions.vue.js +1 -1
  5. package/dist/components/organisms/header/EditorActions.vue2.js +38 -47
  6. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +28 -30
  7. package/dist/composables/useActionsApi.js +30 -22
  8. package/dist/composables/useEmailTemplateApplier.js +25 -23
  9. package/dist/composables/useHttp.js +57 -90
  10. package/dist/composables/useRecommendation.js +20 -19
  11. package/dist/composables/useTimerClone.js +21 -19
  12. package/dist/extensions/Blocks/Items/block.js +44 -42
  13. package/dist/extensions/Blocks/Items/template.js +86 -86
  14. package/dist/extensions/Blocks/Recommendation/controls/main/algorithm.js +37 -26
  15. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +21 -21
  16. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +13 -12
  17. package/dist/extensions/Blocks/Recommendation/utils/productIds.js +6 -0
  18. package/dist/guido.css +1 -1
  19. package/dist/library.js +11 -7
  20. package/dist/node_modules/valibot/dist/index.js +230 -216
  21. package/dist/public/trackingIds.js +8 -0
  22. package/dist/{@types → src/@types}/config/schemas.d.ts +20 -0
  23. package/dist/{composables → src/composables}/useActionsApi.d.ts +1 -1
  24. package/dist/{composables → src/composables}/useConfig.d.ts +4 -0
  25. package/dist/{composables → src/composables}/useHttp.d.ts +0 -6
  26. package/dist/src/extensions/Blocks/Recommendation/utils/productIds.d.ts +6 -0
  27. package/dist/{library.d.ts → src/library.d.ts} +1 -0
  28. package/dist/src/public/trackingIds.d.ts +9 -0
  29. package/dist/{stores → src/stores}/config.d.ts +36 -0
  30. package/dist/{stores → src/stores}/editor.d.ts +25 -0
  31. package/dist/src/utils/linkTrackingIds.d.ts +30 -0
  32. package/dist/stores/editor.js +4 -1
  33. package/dist/stores/onboarding.js +18 -25
  34. package/dist/utils/linkTrackingIds.js +56 -0
  35. package/dist/utils/pairProductVariables.js +105 -99
  36. package/dist/utils/templatePreparation.js +72 -61
  37. package/package.json +5 -1
  38. /package/dist/{@types → src/@types}/config/defaults.d.ts +0 -0
  39. /package/dist/{@types → src/@types}/config/index.d.ts +0 -0
  40. /package/dist/{@types → src/@types}/config/types.d.ts +0 -0
  41. /package/dist/{@types → src/@types}/config/validator.d.ts +0 -0
  42. /package/dist/{@types → src/@types}/events.d.ts +0 -0
  43. /package/dist/{@types → src/@types}/extensions/block.d.ts +0 -0
  44. /package/dist/{@types → src/@types}/generic.d.ts +0 -0
  45. /package/dist/{@types → src/@types}/save-as-template.d.ts +0 -0
  46. /package/dist/{App.vue.d.ts → src/App.vue.d.ts} +0 -0
  47. /package/dist/{components → src/components}/Guido.vue.d.ts +0 -0
  48. /package/dist/{components → src/components}/organisms/AutoSaveController.vue.d.ts +0 -0
  49. /package/dist/{components → src/components}/organisms/LoadingWrapper.vue.d.ts +0 -0
  50. /package/dist/{components → src/components}/organisms/base/Toaster.vue.d.ts +0 -0
  51. /package/dist/{components → src/components}/organisms/email-preview/PreviewContainer.vue.d.ts +0 -0
  52. /package/dist/{components → src/components}/organisms/email-preview/amp/AmpErrorModal.vue.d.ts +0 -0
  53. /package/dist/{components → src/components}/organisms/email-preview/amp/AmpToggle.vue.d.ts +0 -0
  54. /package/dist/{components → src/components}/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue.d.ts +0 -0
  55. /package/dist/{components → src/components}/organisms/email-preview/desktop-preview/DesktopPreview.vue.d.ts +0 -0
  56. /package/dist/{components → src/components}/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue.d.ts +0 -0
  57. /package/dist/{components → src/components}/organisms/email-preview/desktop-preview/EmailSizeIndicator.vue.d.ts +0 -0
  58. /package/dist/{components → src/components}/organisms/email-preview/mobile-preview/ContentView.vue.d.ts +0 -0
  59. /package/dist/{components → src/components}/organisms/email-preview/mobile-preview/InboxView.vue.d.ts +0 -0
  60. /package/dist/{components → src/components}/organisms/email-preview/mobile-preview/MobilePreview.vue.d.ts +0 -0
  61. /package/dist/{components → src/components}/organisms/extensions/recommendation/FilterItem.vue.d.ts +0 -0
  62. /package/dist/{components → src/components}/organisms/extensions/recommendation/FilterSelectionDrawer.vue.d.ts +0 -0
  63. /package/dist/{components → src/components}/organisms/extensions/recommendation/Filters.vue.d.ts +0 -0
  64. /package/dist/{components → src/components}/organisms/extensions/recommendation/LogicAdapter.vue.d.ts +0 -0
  65. /package/dist/{components → src/components}/organisms/header/AutoSaveToggle.vue.d.ts +0 -0
  66. /package/dist/{components → src/components}/organisms/header/EditorActions.vue.d.ts +0 -0
  67. /package/dist/{components → src/components}/organisms/header/EditorToolbar.vue.d.ts +0 -0
  68. /package/dist/{components → src/components}/organisms/header/HeaderWrapper.vue.d.ts +0 -0
  69. /package/dist/{components → src/components}/organisms/header/LeftSlot.vue.d.ts +0 -0
  70. /package/dist/{components → src/components}/organisms/header/MiddleSlot.vue.d.ts +0 -0
  71. /package/dist/{components → src/components}/organisms/header/MigrationConfirmModal.vue.d.ts +0 -0
  72. /package/dist/{components → src/components}/organisms/header/RightSlot.vue.d.ts +0 -0
  73. /package/dist/{components → src/components}/organisms/header/ViewOptions.vue.d.ts +0 -0
  74. /package/dist/{components → src/components}/organisms/header/version-history/RestoreButton.vue.d.ts +0 -0
  75. /package/dist/{components → src/components}/organisms/header/version-history/VersionHistory.vue.d.ts +0 -0
  76. /package/dist/{components → src/components}/organisms/header/version-history/VersionHistoryItem.vue.d.ts +0 -0
  77. /package/dist/{components → src/components}/organisms/header/version-history/ViewOptions.vue.d.ts +0 -0
  78. /package/dist/{components → src/components}/organisms/onboarding/AMPOnboarding.vue.d.ts +0 -0
  79. /package/dist/{components → src/components}/organisms/onboarding/GenericOnboarding.vue.d.ts +0 -0
  80. /package/dist/{components → src/components}/organisms/onboarding/ItemsOnboarding.vue.d.ts +0 -0
  81. /package/dist/{components → src/components}/organisms/onboarding/NewVersionPopup.vue.d.ts +0 -0
  82. /package/dist/{components → src/components}/organisms/onboarding/OnboardingWrapper.vue.d.ts +0 -0
  83. /package/dist/{components → src/components}/organisms/onboarding/TextBlockOnboarding.vue.d.ts +0 -0
  84. /package/dist/{components → src/components}/organisms/onboarding/VersionHistoryOnboarding.vue.d.ts +0 -0
  85. /package/dist/{components → src/components}/organisms/save-as-template/SaveAsTemplateDrawer.vue.d.ts +0 -0
  86. /package/dist/{components → src/components}/organisms/unsubscribe/UnsubscribeBreadcrumb.vue.d.ts +0 -0
  87. /package/dist/{components → src/components}/organisms/unsubscribe/UnsubscribePageSelection.vue.d.ts +0 -0
  88. /package/dist/{components → src/components}/organisms/unsubscribe/UnsubscribeTypeSelection.vue.d.ts +0 -0
  89. /package/dist/{components → src/components}/organisms/unsubscribe/UnsubscribeWrapper.vue.d.ts +0 -0
  90. /package/dist/{components → src/components}/wrappers/WpDrawer.vue.d.ts +0 -0
  91. /package/dist/{components → src/components}/wrappers/WpModal.vue.d.ts +0 -0
  92. /package/dist/{composables → src/composables}/useAllowlist.d.ts +0 -0
  93. /package/dist/{composables → src/composables}/useAutoSave.d.ts +0 -0
  94. /package/dist/{composables → src/composables}/useBlocksConfig.d.ts +0 -0
  95. /package/dist/{composables → src/composables}/useCodeEditorApi.d.ts +0 -0
  96. /package/dist/{composables → src/composables}/useCortexBlueprintBridge.d.ts +0 -0
  97. /package/dist/{composables → src/composables}/useCustomInterfaceAppearance.d.ts +0 -0
  98. /package/dist/{composables → src/composables}/useDebounce.d.ts +0 -0
  99. /package/dist/{composables → src/composables}/useEmailTemplateApplier.d.ts +0 -0
  100. /package/dist/{composables → src/composables}/useExport.d.ts +0 -0
  101. /package/dist/{composables → src/composables}/useFullStoryBridge.d.ts +0 -0
  102. /package/dist/{composables → src/composables}/useGuidoActions.d.ts +0 -0
  103. /package/dist/{composables → src/composables}/useGuidoStateBridge.d.ts +0 -0
  104. /package/dist/{composables → src/composables}/useHtmlCompiler.d.ts +0 -0
  105. /package/dist/{composables → src/composables}/useHtmlValidator.d.ts +0 -0
  106. /package/dist/{composables → src/composables}/useModuleDynamicContentRepair.d.ts +0 -0
  107. /package/dist/{composables → src/composables}/usePartner.d.ts +0 -0
  108. /package/dist/{composables → src/composables}/usePreviewInteractionGuard.d.ts +0 -0
  109. /package/dist/{composables → src/composables}/usePreviewMode.d.ts +0 -0
  110. /package/dist/{composables → src/composables}/useProvideInject.d.ts +0 -0
  111. /package/dist/{composables → src/composables}/useRecommendation.d.ts +0 -0
  112. /package/dist/{composables → src/composables}/useRecommendationPreview.d.ts +0 -0
  113. /package/dist/{composables → src/composables}/useResponsivePreview.d.ts +0 -0
  114. /package/dist/{composables → src/composables}/useRibbonOffset.d.ts +0 -0
  115. /package/dist/{composables → src/composables}/useSave.d.ts +0 -0
  116. /package/dist/{composables → src/composables}/useStripo.d.ts +0 -0
  117. /package/dist/{composables → src/composables}/useStripoEventHandler.d.ts +0 -0
  118. /package/dist/{composables → src/composables}/useStripoNotifications.d.ts +0 -0
  119. /package/dist/{composables → src/composables}/useSyncModuleExtractor.d.ts +0 -0
  120. /package/dist/{composables → src/composables}/useTimerClone.d.ts +0 -0
  121. /package/dist/{composables → src/composables}/useToaster.d.ts +0 -0
  122. /package/dist/{composables → src/composables}/useTranslations.d.ts +0 -0
  123. /package/dist/{composables → src/composables}/useUserRole.d.ts +0 -0
  124. /package/dist/{composables → src/composables}/useValidation.d.ts +0 -0
  125. /package/dist/{composables → src/composables}/useVersionHistoryApi.d.ts +0 -0
  126. /package/dist/{composables → src/composables}/validators/saveAsTemplate.d.ts +0 -0
  127. /package/dist/{composables → src/composables}/validators/useCouponBlockValidator.d.ts +0 -0
  128. /package/dist/{composables → src/composables}/validators/useLiquidValidator.d.ts +0 -0
  129. /package/dist/{composables → src/composables}/validators/useUnsubscribeBlockValidator.d.ts +0 -0
  130. /package/dist/{config → src/config}/compiler/htmlCompilerRules.d.ts +0 -0
  131. /package/dist/{config → src/config}/compiler/itemsCompilerRules.d.ts +0 -0
  132. /package/dist/{config → src/config}/compiler/liquidCompilerRules.d.ts +0 -0
  133. /package/dist/{config → src/config}/compiler/outlookCompilerRules.d.ts +0 -0
  134. /package/dist/{config → src/config}/compiler/recommendationCompilerRules.d.ts +0 -0
  135. /package/dist/{config → src/config}/compiler/socialCompilerRules.d.ts +0 -0
  136. /package/dist/{config → src/config}/compiler/unsubscribeCompilerRules.d.ts +0 -0
  137. /package/dist/{config → src/config}/compiler/utils/itemsCompilerUtils.d.ts +0 -0
  138. /package/dist/{config → src/config}/compiler/utils/recommendationCompilerUtils.d.ts +0 -0
  139. /package/dist/{config → src/config}/compiler/utils/recommendationIgnoreUtils.d.ts +0 -0
  140. /package/dist/{config → src/config}/i18n/en/index.d.ts +0 -0
  141. /package/dist/{config → src/config}/i18n/index.d.ts +0 -0
  142. /package/dist/{config → src/config}/migrator/checkboxMigrator.d.ts +0 -0
  143. /package/dist/{config → src/config}/migrator/couponBlockMigrator.d.ts +0 -0
  144. /package/dist/{config → src/config}/migrator/index.d.ts +0 -0
  145. /package/dist/{config → src/config}/migrator/itemsBlockMigrator.d.ts +0 -0
  146. /package/dist/{config → src/config}/migrator/productNameLinkMigrator.d.ts +0 -0
  147. /package/dist/{config → src/config}/migrator/radioButtonMigrator.d.ts +0 -0
  148. /package/dist/{config → src/config}/migrator/recommendation/compositionMapper.d.ts +0 -0
  149. /package/dist/{config → src/config}/migrator/recommendation/extractors.d.ts +0 -0
  150. /package/dist/{config → src/config}/migrator/recommendation/htmlBuilder.d.ts +0 -0
  151. /package/dist/{config → src/config}/migrator/recommendation/parseLegacyConfig.d.ts +0 -0
  152. /package/dist/{config → src/config}/migrator/recommendation/settingsMapper.d.ts +0 -0
  153. /package/dist/{config → src/config}/migrator/recommendation/themeMapper.d.ts +0 -0
  154. /package/dist/{config → src/config}/migrator/recommendation/types.d.ts +0 -0
  155. /package/dist/{config → src/config}/migrator/recommendationMigrator.d.ts +0 -0
  156. /package/dist/{config → src/config}/migrator/socialIconMigrator.d.ts +0 -0
  157. /package/dist/{config → src/config}/migrator/textBlockMigration.d.ts +0 -0
  158. /package/dist/{config → src/config}/migrator/unsubscribeMigrator.d.ts +0 -0
  159. /package/dist/{enums → src/enums}/academy.d.ts +0 -0
  160. /package/dist/{enums → src/enums}/block.d.ts +0 -0
  161. /package/dist/{enums → src/enums}/date.d.ts +0 -0
  162. /package/dist/{enums → src/enums}/defaults.d.ts +0 -0
  163. /package/dist/{enums → src/enums}/extensions/recommendationBlock.d.ts +0 -0
  164. /package/dist/{enums → src/enums}/html-validator.d.ts +0 -0
  165. /package/dist/{enums → src/enums}/onboarding.d.ts +0 -0
  166. /package/dist/{enums → src/enums}/preview.d.ts +0 -0
  167. /package/dist/{enums → src/enums}/recommendation.d.ts +0 -0
  168. /package/dist/{enums → src/enums}/roles.d.ts +0 -0
  169. /package/dist/{enums → src/enums}/toaster.d.ts +0 -0
  170. /package/dist/{enums → src/enums}/unsubscribe.d.ts +0 -0
  171. /package/dist/{extensions → src/extensions}/Blocks/Checkbox/block.d.ts +0 -0
  172. /package/dist/{extensions → src/extensions}/Blocks/Checkbox/control.d.ts +0 -0
  173. /package/dist/{extensions → src/extensions}/Blocks/Checkbox/extension.d.ts +0 -0
  174. /package/dist/{extensions → src/extensions}/Blocks/Checkbox/iconsRegistry.d.ts +0 -0
  175. /package/dist/{extensions → src/extensions}/Blocks/Checkbox/settingsPanel.d.ts +0 -0
  176. /package/dist/{extensions → src/extensions}/Blocks/Checkbox/template.d.ts +0 -0
  177. /package/dist/{extensions → src/extensions}/Blocks/CouponBlock/block.d.ts +0 -0
  178. /package/dist/{extensions → src/extensions}/Blocks/CouponBlock/constants.d.ts +0 -0
  179. /package/dist/{extensions → src/extensions}/Blocks/CouponBlock/controls/index.d.ts +0 -0
  180. /package/dist/{extensions → src/extensions}/Blocks/CouponBlock/extension.d.ts +0 -0
  181. /package/dist/{extensions → src/extensions}/Blocks/CouponBlock/iconsRegistry.d.ts +0 -0
  182. /package/dist/{extensions → src/extensions}/Blocks/CouponBlock/settingsPanel.d.ts +0 -0
  183. /package/dist/{extensions → src/extensions}/Blocks/CouponBlock/template.d.ts +0 -0
  184. /package/dist/{extensions → src/extensions}/Blocks/Items/block.d.ts +0 -0
  185. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/button/link.d.ts +0 -0
  186. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/cardComposition.d.ts +0 -0
  187. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/image/link.d.ts +0 -0
  188. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/index.d.ts +0 -0
  189. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/name/trimming.d.ts +0 -0
  190. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/price/currencyLocation.d.ts +0 -0
  191. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/price/currencySymbol.d.ts +0 -0
  192. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/price/formattedPrice.d.ts +0 -0
  193. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/price/hideDiscount.d.ts +0 -0
  194. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/price/priceOrientation.d.ts +0 -0
  195. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/price/singlePrice.d.ts +0 -0
  196. /package/dist/{extensions → src/extensions}/Blocks/Items/controls/settingsControl.d.ts +0 -0
  197. /package/dist/{extensions → src/extensions}/Blocks/Items/enums/controlEnums.d.ts +0 -0
  198. /package/dist/{extensions → src/extensions}/Blocks/Items/enums/productEnums.d.ts +0 -0
  199. /package/dist/{extensions → src/extensions}/Blocks/Items/enums/settingsEnums.d.ts +0 -0
  200. /package/dist/{extensions → src/extensions}/Blocks/Items/extension.d.ts +0 -0
  201. /package/dist/{extensions → src/extensions}/Blocks/Items/iconsRegistry.d.ts +0 -0
  202. /package/dist/{extensions → src/extensions}/Blocks/Items/settingsPanel.d.ts +0 -0
  203. /package/dist/{extensions → src/extensions}/Blocks/Items/template.d.ts +0 -0
  204. /package/dist/{extensions → src/extensions}/Blocks/Items/utils/nameNode.d.ts +0 -0
  205. /package/dist/{extensions → src/extensions}/Blocks/Items/utils/nodeConfigUtils.d.ts +0 -0
  206. /package/dist/{extensions → src/extensions}/Blocks/RadioButton/block.d.ts +0 -0
  207. /package/dist/{extensions → src/extensions}/Blocks/RadioButton/control.d.ts +0 -0
  208. /package/dist/{extensions → src/extensions}/Blocks/RadioButton/extension.d.ts +0 -0
  209. /package/dist/{extensions → src/extensions}/Blocks/RadioButton/iconsRegistry.d.ts +0 -0
  210. /package/dist/{extensions → src/extensions}/Blocks/RadioButton/settingsPanel.d.ts +0 -0
  211. /package/dist/{extensions → src/extensions}/Blocks/RadioButton/template.d.ts +0 -0
  212. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/block.d.ts +0 -0
  213. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/constants/blockIds.d.ts +0 -0
  214. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/constants/controlIds.d.ts +0 -0
  215. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/constants/defaultConfig.d.ts +0 -0
  216. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/constants/index.d.ts +0 -0
  217. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/constants/layout.d.ts +0 -0
  218. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/constants/selectors.d.ts +0 -0
  219. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/blockBackground/index.d.ts +0 -0
  220. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/button/index.d.ts +0 -0
  221. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/cardBackground/index.d.ts +0 -0
  222. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/cardComposition/index.d.ts +0 -0
  223. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/customAttribute/index.d.ts +0 -0
  224. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/customAttribute/textTrim.d.ts +0 -0
  225. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/image/index.d.ts +0 -0
  226. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/index.d.ts +0 -0
  227. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/algorithm.d.ts +0 -0
  228. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/currency.d.ts +0 -0
  229. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/filters.d.ts +0 -0
  230. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/index.d.ts +0 -0
  231. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/layoutOrientation.d.ts +0 -0
  232. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/locale.d.ts +0 -0
  233. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/pricePlacement.d.ts +0 -0
  234. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/productCount.d.ts +0 -0
  235. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/productLayout.d.ts +0 -0
  236. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/shuffle.d.ts +0 -0
  237. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/main/utils.d.ts +0 -0
  238. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/mobileLayout/cssRules.d.ts +0 -0
  239. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/name/index.d.ts +0 -0
  240. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/name/textTrim.d.ts +0 -0
  241. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/oldPrice/index.d.ts +0 -0
  242. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/omnibusDiscount/index.d.ts +0 -0
  243. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/omnibusDiscount/textAfter.d.ts +0 -0
  244. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/omnibusDiscount/textBefore.d.ts +0 -0
  245. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/omnibusPrice/index.d.ts +0 -0
  246. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/omnibusPrice/textAfter.d.ts +0 -0
  247. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/omnibusPrice/textBefore.d.ts +0 -0
  248. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/price/index.d.ts +0 -0
  249. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/shared/textTrimCssRules.d.ts +0 -0
  250. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/spacing/index.d.ts +0 -0
  251. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/controls/syncInfoMessage.d.ts +0 -0
  252. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/extension.d.ts +0 -0
  253. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/iconsRegistry.d.ts +0 -0
  254. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/services/configService.d.ts +0 -0
  255. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/services/index.d.ts +0 -0
  256. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/settingsPanel.d.ts +0 -0
  257. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/store/recommendation.d.ts +0 -0
  258. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/templates/grid/elementRenderer.d.ts +0 -0
  259. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/templates/grid/migration.d.ts +0 -0
  260. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/templates/grid/template.d.ts +0 -0
  261. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/templates/index.d.ts +0 -0
  262. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/templates/list/elementRenderer.d.ts +0 -0
  263. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/templates/list/migration.d.ts +0 -0
  264. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/templates/list/template.d.ts +0 -0
  265. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/templates/utils.d.ts +0 -0
  266. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/types/index.d.ts +0 -0
  267. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/types/nodeConfig.d.ts +0 -0
  268. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/useRecommendationBlockWarning.d.ts +0 -0
  269. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/utils/captureStyleTemplates.d.ts +0 -0
  270. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/utils/compositionKeys.d.ts +0 -0
  271. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/utils/filterUtil.d.ts +0 -0
  272. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/utils/legacyStrategyMap.d.ts +0 -0
  273. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/utils/partnerCustomizations.d.ts +0 -0
  274. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/utils/priceFormatter.d.ts +0 -0
  275. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/utils/recommendationBlockCount.d.ts +0 -0
  276. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/utils/tagName.d.ts +0 -0
  277. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/validation/filterSchema.d.ts +0 -0
  278. /package/dist/{extensions → src/extensions}/Blocks/Recommendation/validation/requiredFields.d.ts +0 -0
  279. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/block.d.ts +0 -0
  280. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/control.d.ts +0 -0
  281. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/elements/preview.d.ts +0 -0
  282. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/extension.d.ts +0 -0
  283. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/iconsRegistry.d.ts +0 -0
  284. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/settingsPanel.d.ts +0 -0
  285. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/tagRegistry.d.ts +0 -0
  286. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/template.d.ts +0 -0
  287. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/utils/constants.d.ts +0 -0
  288. /package/dist/{extensions → src/extensions}/Blocks/Unsubscribe/utils/utils.d.ts +0 -0
  289. /package/dist/{extensions → src/extensions}/Blocks/_Boilerplate/block.d.ts +0 -0
  290. /package/dist/{extensions → src/extensions}/Blocks/_Boilerplate/control.d.ts +0 -0
  291. /package/dist/{extensions → src/extensions}/Blocks/_Boilerplate/extension.d.ts +0 -0
  292. /package/dist/{extensions → src/extensions}/Blocks/_Boilerplate/iconsRegistry.d.ts +0 -0
  293. /package/dist/{extensions → src/extensions}/Blocks/_Boilerplate/settingsPanel.d.ts +0 -0
  294. /package/dist/{extensions → src/extensions}/Blocks/_Boilerplate/template.d.ts +0 -0
  295. /package/dist/{extensions → src/extensions}/Blocks/common-control.d.ts +0 -0
  296. /package/dist/{extensions → src/extensions}/Blocks/controlFactories.d.ts +0 -0
  297. /package/dist/{extensions → src/extensions}/DynamicContent/dynamic-content-modal.d.ts +0 -0
  298. /package/dist/{extensions → src/extensions}/DynamicContent/dynamic-content.d.ts +0 -0
  299. /package/dist/{extensions → src/extensions}/DynamicContent/extension.d.ts +0 -0
  300. /package/dist/{extensions → src/extensions}/ModulesTabIcons/extension.d.ts +0 -0
  301. /package/dist/{main.d.ts → src/main.d.ts} +0 -0
  302. /package/dist/{mock → src/mock}/api/auth.d.ts +0 -0
  303. /package/dist/{mock → src/mock}/api/custom-fonts.d.ts +0 -0
  304. /package/dist/{mock → src/mock}/api/default-template.d.ts +0 -0
  305. /package/dist/{mock → src/mock}/api/recommendation.d.ts +0 -0
  306. /package/dist/{mock → src/mock}/api/settings.d.ts +0 -0
  307. /package/dist/{mock → src/mock}/api/template-library.d.ts +0 -0
  308. /package/dist/{mock → src/mock}/api/unsubscribe.d.ts +0 -0
  309. /package/dist/{mock → src/mock}/api/user-modal-state.d.ts +0 -0
  310. /package/dist/{mock → src/mock}/api/validator.d.ts +0 -0
  311. /package/dist/{mock → src/mock}/browser.d.ts +0 -0
  312. /package/dist/{mock → src/mock}/handlers.d.ts +0 -0
  313. /package/dist/{services → src/services}/allowlistApi.d.ts +0 -0
  314. /package/dist/{services → src/services}/blankTemplate.d.ts +0 -0
  315. /package/dist/{services → src/services}/onboardingApi.d.ts +0 -0
  316. /package/dist/{services → src/services}/recommendationApi.d.ts +0 -0
  317. /package/dist/{services → src/services}/stripoApi.d.ts +0 -0
  318. /package/dist/{services → src/services}/templateLibraryApi.d.ts +0 -0
  319. /package/dist/{services → src/services}/unsubscribeApi.d.ts +0 -0
  320. /package/dist/{stores → src/stores}/autosave.d.ts +0 -0
  321. /package/dist/{stores → src/stores}/dynamic-content.d.ts +0 -0
  322. /package/dist/{stores → src/stores}/guido-email-editor.d.ts +0 -0
  323. /package/dist/{stores → src/stores}/onboarding.d.ts +0 -0
  324. /package/dist/{stores → src/stores}/preview.d.ts +0 -0
  325. /package/dist/{stores → src/stores}/recommendation.d.ts +0 -0
  326. /package/dist/{stores → src/stores}/save-as-template.d.ts +0 -0
  327. /package/dist/{stores → src/stores}/template.d.ts +0 -0
  328. /package/dist/{stores → src/stores}/toaster.d.ts +0 -0
  329. /package/dist/{stores → src/stores}/unsubscribe.d.ts +0 -0
  330. /package/dist/{stores → src/stores}/version-history.d.ts +0 -0
  331. /package/dist/{utils → src/utils}/ampErrorFilter.d.ts +0 -0
  332. /package/dist/{utils → src/utils}/arrayUtil.d.ts +0 -0
  333. /package/dist/{utils → src/utils}/base64.d.ts +0 -0
  334. /package/dist/{utils → src/utils}/dateUtil.d.ts +0 -0
  335. /package/dist/{utils → src/utils}/dynamicContentConverter.d.ts +0 -0
  336. /package/dist/{utils → src/utils}/environmentUtil.d.ts +0 -0
  337. /package/dist/{utils → src/utils}/genericUtil.d.ts +0 -0
  338. /package/dist/{utils → src/utils}/htmlCompiler.d.ts +0 -0
  339. /package/dist/{utils → src/utils}/htmlEscape.d.ts +0 -0
  340. /package/dist/{utils → src/utils}/migrationBannerHtml.d.ts +0 -0
  341. /package/dist/{utils → src/utils}/pairProductVariables.d.ts +0 -0
  342. /package/dist/{utils → src/utils}/preserveTextStyles.d.ts +0 -0
  343. /package/dist/{utils → src/utils}/registerUsedDynamicContent.d.ts +0 -0
  344. /package/dist/{utils → src/utils}/stripFontTags.d.ts +0 -0
  345. /package/dist/{utils → src/utils}/templatePreparation.d.ts +0 -0
  346. /package/dist/{utils → src/utils}/timeUtil.d.ts +0 -0
  347. /package/dist/{utils → src/utils}/tooltipUtils.d.ts +0 -0
  348. /package/dist/{utils → src/utils}/unwrapProductNameLink.d.ts +0 -0
  349. /package/dist/{utils → src/utils}/urlSchemes.d.ts +0 -0
@@ -1,17 +1,17 @@
1
1
  import { escapeHtml as m } from "../../../utils/htmlEscape.js";
2
2
  import { BlockType as R, BlockAttr as S } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
3
3
  import { ItemsBlockId as O } from "./enums/controlEnums.js";
4
- import { productPairs as h, templateFirstLine as Y } from "./enums/productEnums.js";
5
- import { ItemInCartOptions as q, SETTINGS_ENUMS as N, DefaultConfigValues as k } from "./enums/settingsEnums.js";
6
- import j from "./layouts/horizontal.html.js";
7
- import f from "./layouts/vertical.html.js";
8
- import { deriveItemNumber as J, escapeReplacement as G } from "./utils/nodeConfigUtils.js";
9
- let [X] = h.PAIRS_FOR_EXTENSION.imageSrc.CART_ITEMS.DEFAULT, [F] = h.PAIRS_FOR_EXTENSION.name.CART_ITEMS.DEFAULT, [x] = h.PAIRS_FOR_EXTENSION.price.CART_ITEMS.DEFAULT_PRICE_FORMATTED, [L] = h.PAIRS_FOR_EXTENSION.originalPrice.CART_ITEMS.DEFAULT_PRICE_FORMATTED, [V] = h.PAIRS_FOR_EXTENSION.quantity.CART_ITEMS.DEFAULT;
10
- const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCase().startsWith(e.toLowerCase())).join("; ").replace(/;\s*$/, ""), U = (s) => D(s, "text-align"), y = (s, e) => {
11
- const l = new RegExp(`${e}\\s*:\\s*([^;]+)`, "i"), a = s.match(l);
4
+ import { productPairs as h, templateFirstLine as q } from "./enums/productEnums.js";
5
+ import { ItemInCartOptions as j, SETTINGS_ENUMS as N, DefaultConfigValues as M } from "./enums/settingsEnums.js";
6
+ import C from "./layouts/horizontal.html.js";
7
+ import J from "./layouts/vertical.html.js";
8
+ import { deriveItemNumber as Z, escapeReplacement as g } from "./utils/nodeConfigUtils.js";
9
+ let [v] = h.PAIRS_FOR_EXTENSION.imageSrc.CART_ITEMS.DEFAULT, [F] = h.PAIRS_FOR_EXTENSION.name.CART_ITEMS.DEFAULT, [x] = h.PAIRS_FOR_EXTENSION.price.CART_ITEMS.DEFAULT_PRICE_FORMATTED, [L] = h.PAIRS_FOR_EXTENSION.originalPrice.CART_ITEMS.DEFAULT_PRICE_FORMATTED, [X] = h.PAIRS_FOR_EXTENSION.quantity.CART_ITEMS.DEFAULT;
10
+ const U = (s, e) => s.split(";").map((r) => r.trim()).filter((r) => !r.toLowerCase().startsWith(e.toLowerCase())).join("; ").replace(/;\s*$/, ""), k = (s) => U(s, "text-align"), y = (s, e) => {
11
+ const r = new RegExp(`${e}\\s*:\\s*([^;]+)`, "i"), a = s.match(r);
12
12
  return a ? a[1].trim() : null;
13
- }, w = (s) => `<tr>${s}</tr>`, Z = (s, e, l, a) => {
14
- const i = l || k.productImageHeight, d = (a == null ? void 0 : a.imageVisible) === !1 ? "display: none; " : "";
13
+ }, w = (s) => `<tr>${s}</tr>`, f = (s, e, r, a) => {
14
+ const i = r || M.productImageHeight, d = (a == null ? void 0 : a.imageVisible) === !1 ? "display: none; " : "";
15
15
  return w(`
16
16
  <td class="esd-block-image document-node-component default-block-component selectable ng-star-inserted"
17
17
  align="center"
@@ -26,7 +26,7 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
26
26
  href="#!">
27
27
  <img class="adapt-img document-node-component ng-star-inserted"
28
28
  style="object-fit: contain;"
29
- src="${X}"
29
+ src="${v}"
30
30
  alt="${F}"
31
31
  width="${i}"
32
32
  height="${i}">
@@ -35,18 +35,18 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
35
35
  `);
36
36
  }, tt = (s, e) => `
37
37
  <${R.BLOCK_IMAGE}
38
- ${S.BLOCK_IMAGE.src}="${X}"
38
+ ${S.BLOCK_IMAGE.src}="${v}"
39
39
  ${S.BLOCK_IMAGE.alt}="${F}"
40
40
  ${S.BLOCK_IMAGE.href}="#!"
41
- ${S.BLOCK_IMAGE.width}="${k.productImageWidth}"
42
- ${S.BLOCK_IMAGE.height}="${k.productImageWidth}"
41
+ ${S.BLOCK_IMAGE.width}="${M.productImageWidth}"
42
+ ${S.BLOCK_IMAGE.height}="${M.productImageWidth}"
43
43
  esd-extension-block-id="${O.IMAGE}"
44
44
  data-slot-1
45
45
  product-attr="imageSrc"
46
46
  data-type="${s}"
47
47
  data-number="${e}"
48
48
  />
49
- `, et = (s, e, l, a) => {
49
+ `, et = (s, e, r, a) => {
50
50
  const i = `
51
51
  word-wrap: break-word;
52
52
  white-space: nowrap;
@@ -56,15 +56,15 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
56
56
  max-width: 100%;
57
57
  `;
58
58
  if (e) {
59
- const d = y(l || "", "text-align") || "center", n = U(l || i), c = y(n, "font-weight"), r = y(n, "font-style"), p = c === "bold" || c === "700", t = r === "italic", o = D(
60
- D(
61
- D(n, "font-weight"),
59
+ const d = y(r || "", "text-align") || "center", n = k(r || i), c = y(n, "font-weight"), l = y(n, "font-style"), o = c === "bold" || c === "700", t = l === "italic", p = U(
60
+ U(
61
+ U(n, "font-weight"),
62
62
  "font-style"
63
63
  ),
64
64
  "text-decoration"
65
- ), T = (a == null ? void 0 : a.nameVisible) === !1 ? "display: none;" : "display: table-cell;", _ = o ? ` style="${m(o)}"` : "";
66
- let $ = F;
67
- return p && ($ = `<strong>${$}</strong>`), t && ($ = `<em>${$}</em>`), w(`
65
+ ), T = (a == null ? void 0 : a.nameVisible) === !1 ? "display: none;" : "display: table-cell;", _ = p ? ` style="${m(p)}"` : "";
66
+ let E = F;
67
+ return o && (E = `<strong>${E}</strong>`), t && (E = `<em>${E}</em>`), w(`
68
68
  <td class="esd-block-text es-p10"
69
69
  align="${d}"
70
70
  width="100%"
@@ -76,7 +76,7 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
76
76
  path="1"
77
77
  product-attr="name"
78
78
  data-slot-2${_}>
79
- ${$}
79
+ ${E}
80
80
  </p>
81
81
  </td>
82
82
  `);
@@ -97,15 +97,15 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
97
97
  </p>
98
98
  </${R.BLOCK_TEXT}>
99
99
  `;
100
- }, at = (s, e, l, a, i, d, n, c, r, p) => {
100
+ }, at = (s, e, r, a, i, d, n, c, l, o) => {
101
101
  let t = x;
102
102
  if (a && a.trim()) {
103
- const E = `${a.trim()}`;
104
- t = (i || "0") === "1" ? `${x}&nbsp;${E}` : `${E}&nbsp;${x}`;
103
+ const $ = `${a.trim()}`;
104
+ t = (i || "0") === "1" ? `${x}&nbsp;${$}` : `${$}&nbsp;${x}`;
105
105
  }
106
- const o = i === "1" ? "after" : "before", T = `data-formated="${l ? "true" : "false"}"`, _ = `data-curency="${o}"`, $ = a ? `data-currency_symbol="${a}"` : "", u = `data-single_price="${c ? "true" : "false"}"`, I = r === N.ORIENTATION.VERTICAL ? " es-p10b es-p10t" : "";
106
+ const p = i === "1" ? "after" : "before", T = `data-formated="${r ? "true" : "false"}"`, _ = `data-curency="${p}"`, E = a ? `data-currency_symbol="${a}"` : "", u = `data-single_price="${c ? "true" : "false"}"`, I = l === N.ORIENTATION.VERTICAL ? " es-p10b es-p10t" : "";
107
107
  if (d) {
108
- const b = U(n || "color: #060606; white-space: nowrap; font-size: 20px;"), A = p ? "" : ' style="display: none;"';
108
+ const b = k(n || "color: #060606; white-space: nowrap; font-size: 20px;"), A = o ? "" : ' style="display: none;"';
109
109
  return w(`
110
110
  <td class="esd-block-text items-block-price${I}"
111
111
  align="center"
@@ -119,7 +119,7 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
119
119
  data-number="${e}"
120
120
  ${T}
121
121
  ${_}
122
- ${$}
122
+ ${E}
123
123
  ${u}
124
124
  style="${m(b)}">
125
125
  ${t}
@@ -149,20 +149,20 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
149
149
  </p>
150
150
  </${R.BLOCK_TEXT}>
151
151
  `;
152
- }, st = (s, e, l, a, i, d, n = !0, c, r, p) => {
152
+ }, st = (s, e, r, a, i, d, n = !0, c, l, o) => {
153
153
  let t = L;
154
154
  if (a && a.trim()) {
155
- const E = `${a.trim()}`;
156
- t = (i || "0") === "1" ? `${L}&nbsp;${E}` : `${E}&nbsp;${L}`;
155
+ const $ = `${a.trim()}`;
156
+ t = (i || "0") === "1" ? `${L}&nbsp;${$}` : `${$}&nbsp;${L}`;
157
157
  }
158
- const o = i === "1" ? "after" : "before", T = `data-formated="${l ? "true" : "false"}"`, _ = `data-curency="${o}"`, $ = n ? "" : ' style="display: none;"', u = `data-single_price="${r ? "true" : "false"}"`, I = p === N.ORIENTATION.VERTICAL ? " es-p10b es-p10t" : "";
158
+ const p = i === "1" ? "after" : "before", T = `data-formated="${r ? "true" : "false"}"`, _ = `data-curency="${p}"`, E = n ? "" : ' style="display: none;"', u = `data-single_price="${l ? "true" : "false"}"`, I = o === N.ORIENTATION.VERTICAL ? " es-p10b es-p10t" : "";
159
159
  if (d) {
160
- const b = U(c || "color: #cc0000; white-space: nowrap; font-size: 19px;");
160
+ const b = k(c || "color: #cc0000; white-space: nowrap; font-size: 19px;");
161
161
  return w(`
162
162
  <td class="esd-block-text items-block-price${I}"
163
163
  esd-extension-block-id="${O.ORIGINAL_PRICE}"
164
164
  width="100%"
165
- align="center"${$}>
165
+ align="center"${E}>
166
166
  <p
167
167
  product-attr="originalPrice"
168
168
  contenteditable="false"
@@ -203,10 +203,10 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
203
203
  </p>
204
204
  </${R.BLOCK_TEXT}>
205
205
  `;
206
- }, lt = (s = !0, e, l) => {
206
+ }, lt = (s = !0, e, r) => {
207
207
  const a = s ? "" : 'style="display: none;"';
208
208
  if (e) {
209
- const i = "font-size: 14px;", d = y(l || "", "text-align") || "center", n = U(l || i);
209
+ const i = "font-size: 14px;", d = y(r || "", "text-align") || "center", n = k(r || i);
210
210
  return w(`
211
211
  <td class="esd-block-text es-p10 document-node-component default-block-component selectable"
212
212
  width="100%" align="${d}"
@@ -218,7 +218,7 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
218
218
  width="100%"
219
219
  path="1"
220
220
  style="${m(n)}">
221
- ${V}
221
+ ${X}
222
222
  </p>
223
223
  </td>
224
224
  `);
@@ -236,26 +236,26 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
236
236
  data-slot-3
237
237
  contenteditable="false"
238
238
  width="100%">
239
- ${V}
239
+ ${X}
240
240
  </p>
241
241
  </${R.BLOCK_TEXT}>
242
242
  `;
243
- }, rt = (s, e, l = "Buy", a, i, d = !0, n = !0) => {
243
+ }, rt = (s, e, r = "Buy", a, i, d = !0, n = !0) => {
244
244
  if (a) {
245
- const c = y(i || "", "background") || y(i || "", "background-color"), r = c ? `border-width: 0px; background: ${c};` : "border-width: 0px;", p = d ? "es-fw" : "es-il", t = (i || "").replace("border-width: 0;", "");
245
+ const c = y(i || "", "background") || y(i || "", "background-color"), l = c ? `border-width: 0px; background: ${c};` : "border-width: 0px;", o = d ? "es-fw" : "es-il", t = (i || "").replace("border-width: 0;", "");
246
246
  return w(`
247
247
  <td class="esd-block-button ins-button default-block-component selectable"
248
- align="center" width="100%" name="buy-button" caption="${l}"
248
+ align="center" width="100%" name="buy-button" caption="${r}"
249
249
  esd-extension-block-id="${O.BUTTON}"
250
250
  product-attr="button" data-slot-6="" data-type="${s}" data-number="${e}"
251
251
  ${n ? "" : ' style="display: none;"'}>
252
- <span class="es-button-border ${p}" style="${m(r)}">
252
+ <span class="es-button-border ${o}" style="${m(l)}">
253
253
  <a
254
254
  class="es-button"
255
255
  href="#!"
256
256
  target="_blank"
257
257
  style="${m(t)} padding: 5px 12px;">
258
- ${l}
258
+ ${r}
259
259
  </a>
260
260
  </span>
261
261
  </td>
@@ -266,27 +266,27 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
266
266
  width="100%"
267
267
  class="ins-button"
268
268
  name="buy-button"
269
- caption="${l}"
269
+ caption="${r}"
270
270
  align="center"
271
271
  esd-extension-block-id="${O.BUTTON}"
272
272
  product-attr="button"
273
273
  data-slot-6
274
274
  data-type="${s}"
275
275
  data-number="${e}"
276
- >${l}
276
+ >${r}
277
277
  </${R.BLOCK_BUTTON}>
278
278
  `;
279
- }, ct = (s, e, l, a = !0, i = !0) => {
280
- const d = e === N.ORIENTATION.VERTICAL, n = l === "horizontal";
279
+ }, ct = (s, e, r, a = !0, i = !0) => {
280
+ const d = e === N.ORIENTATION.VERTICAL, n = r === "horizontal";
281
281
  if (d) {
282
- const c = !n, r = c || !i ? "100%" : "50%", p = c || !a ? "100%" : "50%";
282
+ const c = !n, l = c || !i ? "100%" : "50%", o = c || !a ? "100%" : "50%";
283
283
  let t = s.replace(
284
284
  /<td\s+[^>]*class="([^"]*product-price-class[^"]*)"[^>]*>/gi,
285
- (o) => o.replace(/width="[^"]*"/gi, `width="${r}"`).replace(/width:\s*[^;]+;/gi, `width: ${r};`)
285
+ (p) => p.replace(/width="[^"]*"/gi, `width="${l}"`).replace(/width:\s*[^;]+;/gi, `width: ${l};`)
286
286
  );
287
287
  return t = t.replace(
288
288
  /<td\s+[^>]*class="([^"]*product-original-price-class[^"]*)"[^>]*>/gi,
289
- (o) => o.replace(/width="[^"]*"/gi, `width="${p}"`).replace(/width:\s*[^;]+;/gi, `width: ${p};`)
289
+ (p) => p.replace(/width="[^"]*"/gi, `width="${o}"`).replace(/width:\s*[^;]+;/gi, `width: ${o};`)
290
290
  ), t;
291
291
  }
292
292
  return n ? s : s.replace(
@@ -298,74 +298,74 @@ const D = (s, e) => s.split(";").map((l) => l.trim()).filter((l) => !l.toLowerCa
298
298
  );
299
299
  }, it = (s) => s ? `<td align="center"
300
300
  esd-extension-block-id="items-block"
301
- class="ins-product-td items-block items-block-v2 esd-items-block esd-extension-block esd-container-frame">` : Y, K = (s, e, l, a, i, d, n, c, r, p, t, o, T, _ = "horizontal", $, u, P, I) => {
302
- const A = `${`data-type="${e}" data-number="${l}"`} data-orientation="${a}"`, M = r == null ? void 0 : r["data-product_image_control_image-height"], B = d ? Z(e, l, M, t) : tt(e, l), W = (t == null ? void 0 : t.buttonLabel) || "Buy", z = (t == null ? void 0 : t.buttonFullWidth) !== void 0 ? t.buttonFullWidth : !0, Q = e === N.ITEMS_TYPE.BROWSED_ITEMS ? !1 : t == null ? void 0 : t.quantityControlEnabled, H = (t == null ? void 0 : t.buttonVisible) !== void 0 ? t.buttonVisible : (r == null ? void 0 : r["data-product_button_control_enabled"]) !== "false", g = (t == null ? void 0 : t.priceVisible) !== void 0 ? t.priceVisible : (r == null ? void 0 : r["data-product_price_control_enabled"]) !== "false", v = (t == null ? void 0 : t.originalPriceVisible) !== void 0 ? t.originalPriceVisible : (r == null ? void 0 : r["data-product_original_price_control_enabled"]) !== "false", C = s.replace("{-{-TEMPLATE_FIRST_LINE-}-}", it(d)).replace("{-{-PRODUCT_IMAGE-}-}", B).replace("{-{-PRODUCT_NAME-}-}", et(e, d, o, t)).replaceAll(
301
+ class="ins-product-td items-block items-block-v2 esd-items-block esd-extension-block esd-container-frame">` : q, B = (s, e, r, a, i, d, n, c, l, o, t, p, T, _ = "horizontal", E, u, P, I) => {
302
+ const $ = o !== void 0 ? ` data-nodup="${o}"` : "", A = `${`data-type="${e}" data-number="${r}"`} data-orientation="${a}"${$}`, D = l == null ? void 0 : l["data-product_image_control_image-height"], V = d ? f(e, r, D, t) : tt(e, r), W = (t == null ? void 0 : t.buttonLabel) || "Buy", z = (t == null ? void 0 : t.buttonFullWidth) !== void 0 ? t.buttonFullWidth : !0, H = e === N.ITEMS_TYPE.BROWSED_ITEMS ? !1 : t == null ? void 0 : t.quantityControlEnabled, Q = (t == null ? void 0 : t.buttonVisible) !== void 0 ? t.buttonVisible : (l == null ? void 0 : l["data-product_button_control_enabled"]) !== "false", G = (t == null ? void 0 : t.priceVisible) !== void 0 ? t.priceVisible : (l == null ? void 0 : l["data-product_price_control_enabled"]) !== "false", K = (t == null ? void 0 : t.originalPriceVisible) !== void 0 ? t.originalPriceVisible : (l == null ? void 0 : l["data-product_original_price_control_enabled"]) !== "false", Y = s.replace("{-{-TEMPLATE_FIRST_LINE-}-}", it(d)).replace("{-{-PRODUCT_IMAGE-}-}", V).replace("{-{-PRODUCT_NAME-}-}", et(e, d, p, t)).replaceAll(
303
303
  "{-{-PRODUCT_PRICE-}-}",
304
- G(at(
304
+ g(at(
305
305
  e,
306
- l,
306
+ r,
307
307
  i,
308
308
  n,
309
309
  c,
310
310
  d,
311
- $,
311
+ E,
312
312
  I,
313
313
  a,
314
- g
314
+ G
315
315
  ))
316
316
  ).replaceAll(
317
317
  "{-{-PRODUCT_ORIGINAL_PRICE-}-}",
318
- G(st(
318
+ g(st(
319
319
  e,
320
- l,
320
+ r,
321
321
  i,
322
322
  n,
323
323
  c,
324
324
  d,
325
- v,
325
+ K,
326
326
  u,
327
327
  I,
328
328
  a
329
329
  ))
330
- ).replace("{-{-PRODUCT_QUANTITY-}-}", lt(Q, d, P)).replace(
330
+ ).replace("{-{-PRODUCT_QUANTITY-}-}", lt(H, d, P)).replace(
331
331
  "{-{-PRODUCT_BUTTON-}-}",
332
- rt(e, l, W, d, T, z, H)
332
+ rt(e, r, W, d, T, z, Q)
333
333
  ).replace(
334
334
  /<td([^>]*class="[^"]*ins-product-td[^"]*"[^>]*)>/,
335
335
  `<td$1 ${A}>`
336
336
  );
337
337
  return ct(
338
- C,
338
+ Y,
339
339
  a,
340
340
  _,
341
- g,
342
- v
341
+ G,
342
+ K
343
343
  );
344
344
  };
345
345
  function It({
346
346
  orientation: s,
347
347
  itemsType: e = N.ITEMS_TYPE.CART_ITEMS,
348
- itemId: l,
348
+ itemId: r,
349
349
  currencySymbol: a,
350
350
  currencyLocation: i,
351
351
  migrate: d = !1,
352
352
  formattedPrice: n = !0,
353
353
  configBlockAttributes: c,
354
- nodeConfig: r,
355
- nameStyles: p,
354
+ nodeConfig: l,
355
+ nameStyles: o,
356
356
  buttonStyles: t,
357
- priceStyles: o,
357
+ priceStyles: p,
358
358
  originalPriceStyles: T,
359
359
  quantityStyles: _,
360
- priceOrientation: $
360
+ priceOrientation: E
361
361
  }) {
362
- const u = q[e].findIndex((M) => M.value === l), P = J(l, e), I = (r == null ? void 0 : r.priceSinglePrice) ?? (c == null ? void 0 : c["data-product_price_control_single_price"]) === "1" ?? !1;
363
- X = h.PAIRS_FOR_EXTENSION.imageSrc[e].DEFAULT[u >= 0 ? u : 0], F = h.PAIRS_FOR_EXTENSION.name[e].DEFAULT[u >= 0 ? u : 0];
364
- const E = h.PAIRS_FOR_EXTENSION.price[e], b = h.PAIRS_FOR_EXTENSION.originalPrice[e];
365
- I ? (x = n ? E.DEFAULT_SINGLE_PRICE_FORMATTED : E.DEFAULT_SINGLE_PRICE, L = n ? b.DEFAULT_SINGLE_PRICE_FORMATTED : b.DEFAULT_SINGLE_PRICE) : (x = n ? E.DEFAULT_PRICE_FORMATTED : E.DEFAULT_PRICE, L = n ? b.DEFAULT_PRICE_FORMATTED : b.DEFAULT_PRICE), V = h.PAIRS_FOR_EXTENSION.quantity[e].DEFAULT;
366
- const A = $ || (r == null ? void 0 : r.priceOrientation) || "horizontal";
367
- return s === N.ORIENTATION.VERTICAL ? K(
368
- f,
362
+ const u = j[e].findIndex((V) => V.value === r), P = Z(r, e), I = (l == null ? void 0 : l.priceSinglePrice) ?? (c == null ? void 0 : c["data-product_price_control_single_price"]) === "1" ?? !1;
363
+ v = h.PAIRS_FOR_EXTENSION.imageSrc[e].DEFAULT[u >= 0 ? u : 0], F = h.PAIRS_FOR_EXTENSION.name[e].DEFAULT[u >= 0 ? u : 0];
364
+ const $ = h.PAIRS_FOR_EXTENSION.price[e], b = h.PAIRS_FOR_EXTENSION.originalPrice[e];
365
+ I ? (x = n ? $.DEFAULT_SINGLE_PRICE_FORMATTED : $.DEFAULT_SINGLE_PRICE, L = n ? b.DEFAULT_SINGLE_PRICE_FORMATTED : b.DEFAULT_SINGLE_PRICE) : (x = n ? $.DEFAULT_PRICE_FORMATTED : $.DEFAULT_PRICE, L = n ? b.DEFAULT_PRICE_FORMATTED : b.DEFAULT_PRICE), X = h.PAIRS_FOR_EXTENSION.quantity[e].DEFAULT;
366
+ const A = E || (l == null ? void 0 : l.priceOrientation) || "horizontal", D = (l == null ? void 0 : l.priceHideDiscount) ?? M.productPriceHideDiscountControlValue === "1";
367
+ return s === N.ORIENTATION.VERTICAL ? B(
368
+ J,
369
369
  e,
370
370
  P,
371
371
  s,
@@ -374,18 +374,18 @@ function It({
374
374
  a,
375
375
  i,
376
376
  c,
377
- void 0,
377
+ String(D),
378
378
  // nodup
379
- r,
380
- p,
379
+ l,
380
+ o,
381
381
  t,
382
382
  A,
383
- o,
383
+ p,
384
384
  T,
385
385
  _,
386
386
  I
387
- ) : K(
388
- j,
387
+ ) : B(
388
+ C,
389
389
  e,
390
390
  P,
391
391
  s,
@@ -394,13 +394,13 @@ function It({
394
394
  a,
395
395
  i,
396
396
  c,
397
- void 0,
397
+ String(D),
398
398
  // nodup
399
- r,
400
- p,
399
+ l,
400
+ o,
401
401
  t,
402
402
  A,
403
- o,
403
+ p,
404
404
  T,
405
405
  _,
406
406
  I
@@ -1,23 +1,23 @@
1
- var c = Object.defineProperty;
2
- var l = (s, o, t) => o in s ? c(s, o, { enumerable: !0, configurable: !0, writable: !0, value: t }) : s[o] = t;
3
- var a = (s, o, t) => l(s, typeof o != "symbol" ? o + "" : o, t);
4
- import { UEAttr as h } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
5
- import { CommonControl as d } from "../../../common-control.js";
1
+ var d = Object.defineProperty;
2
+ var h = (r, s, t) => s in r ? d(r, s, { enumerable: !0, configurable: !0, writable: !0, value: t }) : r[s] = t;
3
+ var c = (r, s, t) => h(r, typeof s != "symbol" ? s + "" : s, t);
4
+ import { UEAttr as l } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
5
+ import { CommonControl as g } from "../../../common-control.js";
6
6
  import { RecommendationConfigService as n } from "../../services/configService.js";
7
7
  import { useRecommendationExtensionStore as m } from "../../store/recommendation.js";
8
- import { mapLegacyStrategy as g } from "../../utils/legacyStrategyMap.js";
9
- const u = "recommendation-algorithm-control", i = {
8
+ import { mapLegacyStrategy as u } from "../../utils/legacyStrategyMap.js";
9
+ const p = "recommendation-algorithm-control", i = {
10
10
  ALGORITHM: "strategy",
11
11
  PRODUCT_IDS: "productIds"
12
12
  };
13
- class R extends d {
13
+ class R extends g {
14
14
  constructor() {
15
15
  super(...arguments);
16
16
  // Store is used ONLY for API-fetched data (algorithms list), not for config
17
- a(this, "store", m());
17
+ c(this, "store", m());
18
18
  }
19
19
  getId() {
20
- return u;
20
+ return p;
21
21
  }
22
22
  getTemplate() {
23
23
  return `
@@ -46,11 +46,10 @@ class R extends d {
46
46
  super.onTemplateNodeUpdated(t), this._initializeSelectItems(), this._setFormValues();
47
47
  }
48
48
  _setFormValues() {
49
- const t = n.getConfig(this.currentNode), e = g(t.strategy) ?? t.strategy;
50
- this._setProductIdsVisibility(e), this.api.updateValues({
51
- [i.ALGORITHM]: e,
52
- [i.PRODUCT_IDS]: t.productIds.join(",")
53
- });
49
+ const t = n.getConfig(this.currentNode), e = u(t.strategy) ?? t.strategy;
50
+ this._setProductIdsVisibility(e);
51
+ const o = { [i.ALGORITHM]: e }, a = t.productIds.join(",");
52
+ this.api.getValues()[i.PRODUCT_IDS] !== a && (o[i.PRODUCT_IDS] = a), this.api.updateValues(o);
54
53
  }
55
54
  _initializeSelectItems() {
56
55
  var e;
@@ -59,35 +58,47 @@ class R extends d {
59
58
  try {
60
59
  this.api.setUIEAttribute(
61
60
  i.ALGORITHM,
62
- h.SELECTPICKER.items,
61
+ l.SELECTPICKER.items,
63
62
  t
64
63
  );
65
- } catch (r) {
66
- console.warn("[AlgorithmControl] Failed to set algorithm options:", r);
64
+ } catch (o) {
65
+ console.warn("[AlgorithmControl] Failed to set algorithm options:", o);
67
66
  }
68
67
  }
69
68
  _setProductIdsVisibility(t) {
70
- const r = (t ?? n.getConfig(this.currentNode).strategy) === "manualMerchandising";
71
- this.api.setVisibility(i.PRODUCT_IDS, r), this.api.setVisibility(`${i.PRODUCT_IDS}_label`, r);
69
+ const o = (t ?? n.getConfig(this.currentNode).strategy) === "manualMerchandising";
70
+ this.api.setVisibility(i.PRODUCT_IDS, o), this.api.setVisibility(`${i.PRODUCT_IDS}_label`, o);
72
71
  }
73
72
  _onAlgorithmChange(t) {
74
- !this.currentNode || n.getConfig(this.currentNode).strategy === t || (n.updateConfig(
73
+ if (!this.currentNode)
74
+ return;
75
+ const e = n.getConfig(this.currentNode);
76
+ if (e.strategy === t) {
77
+ this.store.recommendationConfigs.strategy !== t && this.store.patchCurrentBlockConfig({ strategy: e.strategy, filters: e.filters });
78
+ return;
79
+ }
80
+ n.updateConfig(
75
81
  this.api,
76
82
  this.currentNode,
77
83
  { strategy: t },
78
84
  `Changed algorithm to ${t}`
79
- ), this.store.patchCurrentBlockConfig({ strategy: t }), this._setProductIdsVisibility(t));
85
+ ), this.store.patchCurrentBlockConfig({ strategy: t }), this._setProductIdsVisibility(t);
80
86
  }
81
87
  _onProductIdsChange(t) {
82
88
  if (!this.currentNode)
83
89
  return;
84
- const e = t.split(",").map((r) => r.trim()).filter(Boolean);
90
+ const e = n.getConfig(this.currentNode);
91
+ if (e.productIds.join(",") === t) {
92
+ this.store.recommendationConfigs.productIds.join(",") !== t && this.store.patchCurrentBlockConfig({ productIds: e.productIds, filters: e.filters });
93
+ return;
94
+ }
95
+ const o = t === "" ? [] : t.split(",");
85
96
  n.updateConfig(
86
97
  this.api,
87
98
  this.currentNode,
88
- { productIds: e },
99
+ { productIds: o },
89
100
  "Updated product IDs"
90
- ), this.store.patchCurrentBlockConfig({ productIds: e });
101
+ ), this.store.patchCurrentBlockConfig({ productIds: o });
91
102
  }
92
103
  _listenToFormUpdates() {
93
104
  this.api.onValueChanged(i.ALGORITHM, (t) => {
@@ -98,6 +109,6 @@ class R extends d {
98
109
  }
99
110
  }
100
111
  export {
101
- u as ALGORITHM_CONTROL_ID,
112
+ p as ALGORITHM_CONTROL_ID,
102
113
  R as AlgorithmControl
103
114
  };
@@ -3,7 +3,7 @@ var p = (d, l, t) => l in d ? f(d, l, { enumerable: !0, configurable: !0, writab
3
3
  var s = (d, l, t) => p(d, typeof l != "symbol" ? l + "" : l, t);
4
4
  import { CommonControl as g } from "../../../common-control.js";
5
5
  import { DEFAULT_NODE_CONFIG as c } from "../../constants/defaultConfig.js";
6
- import { RecommendationConfigService as m } from "../../services/configService.js";
6
+ import { RecommendationConfigService as h } from "../../services/configService.js";
7
7
  import { useRecommendationExtensionStore as y } from "../../store/recommendation.js";
8
8
  import { AlgorithmControl as N } from "./algorithm.js";
9
9
  import { ALGORITHM_CONTROL_ID as tt } from "./algorithm.js";
@@ -17,15 +17,15 @@ import { LocaleControl as b } from "./locale.js";
17
17
  import { LOCALE_CONTROL_ID as lt } from "./locale.js";
18
18
  import { PricePlacementControl as T } from "./pricePlacement.js";
19
19
  import { PRICE_PLACEMENT_CONTROL_ID as ut } from "./pricePlacement.js";
20
- import { ProductCountControl as P } from "./productCount.js";
21
- import { PRODUCT_COUNT_CONTROL_ID as mt } from "./productCount.js";
22
- import { ProductLayoutControl as O } from "./productLayout.js";
20
+ import { ProductCountControl as O } from "./productCount.js";
21
+ import { PRODUCT_COUNT_CONTROL_ID as ht } from "./productCount.js";
22
+ import { ProductLayoutControl as P } from "./productLayout.js";
23
23
  import { PRODUCT_LAYOUT_CONTROL_ID as Ct } from "./productLayout.js";
24
- import { ShuffleControl as L } from "./shuffle.js";
24
+ import { ShuffleControl as S } from "./shuffle.js";
25
25
  import { SHUFFLE_CONTROL_ID as pt } from "./shuffle.js";
26
- import { setCurrencyAttributes as S, getBlockElement as k, isPartnerManagedBlock as D, updateProductContentInPlace as E, regenerateProductRowsWithStyles as A } from "./utils.js";
26
+ import { setCurrencyAttributes as L, getBlockElement as k, isPartnerManagedBlock as D, updateProductContentInPlace as E, regenerateProductRowsWithStyles as A } from "./utils.js";
27
27
  import { adjustProductsToSize as yt, formatProductPrice as Nt, getCardComposition as Rt, getCurrentLayout as It, regenerateMobileProductRows as _t, updatePricesInPlace as bt, updateSingleProductContent as Tt } from "./utils.js";
28
- import { useDebounceFn as h } from "../../../../../node_modules/@vueuse/shared/index.js";
28
+ import { useDebounceFn as m } from "../../../../../node_modules/@vueuse/shared/index.js";
29
29
  const v = "recommendation-id", w = "ui-elements-recommendation-block";
30
30
  class Q extends g {
31
31
  constructor() {
@@ -47,7 +47,7 @@ class Q extends g {
47
47
  /**
48
48
  * Debounced product fetch to prevent rapid API calls during config changes
49
49
  */
50
- s(this, "_debouncedFetchProducts", h(() => {
50
+ s(this, "_debouncedFetchProducts", m(() => {
51
51
  this.store.fetchRecommendationProducts();
52
52
  }, 500));
53
53
  /**
@@ -61,7 +61,7 @@ class Q extends g {
61
61
  * count. The store pads products to the configured size, so in-place only
62
62
  * fails when the size actually changed.
63
63
  */
64
- s(this, "_debouncedRegenerateWithProducts", h(() => {
64
+ s(this, "_debouncedRegenerateWithProducts", m(() => {
65
65
  const t = this.store.recommendationProducts;
66
66
  if (!this.currentNode || !this.api || D(this.currentNode))
67
67
  return;
@@ -81,7 +81,7 @@ class Q extends g {
81
81
  return w;
82
82
  }
83
83
  getTemplate() {
84
- return this.algorithmControl = new N(), this.localeControl = new b(), this.currencyControl = new R(), this.productCountControl = new P(), this.productLayoutControl = new O(), this.filtersControl = new I(), this.shuffleControl = new L(), this.pricePlacementControl = new T(), this.layoutOrientationControl = new _(), [
84
+ return this.algorithmControl = new N(), this.localeControl = new b(), this.currencyControl = new R(), this.productCountControl = new O(), this.productLayoutControl = new P(), this.filtersControl = new I(), this.shuffleControl = new S(), this.pricePlacementControl = new T(), this.layoutOrientationControl = new _(), [
85
85
  this.algorithmControl,
86
86
  this.localeControl,
87
87
  this.currencyControl,
@@ -186,7 +186,7 @@ class Q extends g {
186
186
  */
187
187
  _syncNodeConfigToStore() {
188
188
  var r;
189
- const t = m.getConfig(this.currentNode), e = this.store.currentRecommendationId, o = e !== null && ((r = this.store.blockStates[e]) == null ? void 0 : r.isInitialized);
189
+ const t = h.getConfig(this.currentNode), e = this.store.currentRecommendationId, o = e !== null && ((r = this.store.blockStates[e]) == null ? void 0 : r.isInitialized);
190
190
  this.store.patchCurrentBlockConfig({
191
191
  strategy: t.strategy,
192
192
  language: t.language,
@@ -249,7 +249,7 @@ class Q extends g {
249
249
  _applySmartDefaults() {
250
250
  if (!this.currentNode || !this.api)
251
251
  return;
252
- const t = m.getConfig(this.currentNode), e = {};
252
+ const t = h.getConfig(this.currentNode), e = {};
253
253
  let o = null, r = null, n = null;
254
254
  if (t.currency.code === c.currency.code) {
255
255
  const { currencyList: i } = this.store;
@@ -273,12 +273,12 @@ class Q extends g {
273
273
  (u) => u.value === c.language
274
274
  ) || (n = i[0].value, e.language = n));
275
275
  }
276
- !o && !r && !n || (m.updateConfig(
276
+ !o && !r && !n || (h.updateConfig(
277
277
  this.api,
278
278
  this.currentNode,
279
279
  e,
280
280
  "Applied smart defaults"
281
- ), o && e.currency && S({
281
+ ), o && e.currency && L({
282
282
  currentNode: this.currentNode,
283
283
  documentModifier: this.api.getDocumentModifier(),
284
284
  currency: e.currency
@@ -346,8 +346,8 @@ class Q extends g {
346
346
  _persistFiltersToNodeConfig() {
347
347
  if (!this.currentNode || !this.api)
348
348
  return;
349
- const { filters: t } = this.store.recommendationConfigs;
350
- m.updateConfig(
349
+ const { filters: t } = this.store.recommendationConfigs, e = h.getConfig(this.currentNode).filters;
350
+ JSON.stringify(e) !== JSON.stringify(t) && h.updateConfig(
351
351
  this.api,
352
352
  this.currentNode,
353
353
  { filters: t },
@@ -368,14 +368,14 @@ export {
368
368
  _ as LayoutOrientationControl,
369
369
  b as LocaleControl,
370
370
  ut as PRICE_PLACEMENT_CONTROL_ID,
371
- mt as PRODUCT_COUNT_CONTROL_ID,
371
+ ht as PRODUCT_COUNT_CONTROL_ID,
372
372
  Ct as PRODUCT_LAYOUT_CONTROL_ID,
373
373
  T as PricePlacementControl,
374
- P as ProductCountControl,
375
- O as ProductLayoutControl,
374
+ O as ProductCountControl,
375
+ P as ProductLayoutControl,
376
376
  Q as RecommendationBlockControl,
377
377
  pt as SHUFFLE_CONTROL_ID,
378
- L as ShuffleControl,
378
+ S as ShuffleControl,
379
379
  yt as adjustProductsToSize,
380
380
  Nt as formatProductPrice,
381
381
  k as getBlockElement,
@@ -384,7 +384,7 @@ export {
384
384
  D as isPartnerManagedBlock,
385
385
  _t as regenerateMobileProductRows,
386
386
  A as regenerateProductRowsWithStyles,
387
- S as setCurrencyAttributes,
387
+ L as setCurrencyAttributes,
388
388
  bt as updatePricesInPlace,
389
389
  E as updateProductContentInPlace,
390
390
  Tt as updateSingleProductContent