@useinsider/guido 2.0.0-beta.faa7c5d → 2.0.0-beta.fb0f99d

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 (223) hide show
  1. package/dist/components/organisms/email-preview/amp/AmpToggle.vue.js +2 -2
  2. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue.js +2 -2
  3. package/dist/components/organisms/email-preview/mobile-preview/ContentView.vue.js +5 -5
  4. package/dist/components/organisms/header/LeftSlot.vue.js +12 -12
  5. package/dist/components/organisms/header/LeftSlot.vue2.js +6 -6
  6. package/dist/config/migrator/index.js +8 -9
  7. package/dist/config/migrator/recommendationMigrator.js +2 -2
  8. package/dist/extensions/Blocks/Items/block.js +40 -39
  9. package/dist/extensions/Blocks/Items/controls/button/link.js +29 -22
  10. package/dist/extensions/Blocks/Items/controls/cardComposition.js +59 -70
  11. package/dist/extensions/Blocks/Items/controls/image/link.js +30 -23
  12. package/dist/extensions/Blocks/Items/controls/name/trimming.js +25 -25
  13. package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +17 -19
  14. package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +29 -31
  15. package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +36 -36
  16. package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +19 -21
  17. package/dist/extensions/Blocks/Items/controls/price/priceOrientation.js +27 -29
  18. package/dist/extensions/Blocks/Items/controls/settingsControl.js +143 -152
  19. package/dist/extensions/Blocks/Items/enums/controlEnums.js +2 -2
  20. package/dist/extensions/Blocks/Items/enums/productEnums.js +45 -43
  21. package/dist/extensions/Blocks/Items/enums/settingsEnums.js +3 -4
  22. package/dist/extensions/Blocks/Items/extension.js +6 -7
  23. package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +49 -58
  24. package/dist/extensions/Blocks/Items/layouts/vertical.html.js +59 -48
  25. package/dist/extensions/Blocks/Items/settingsPanel.js +26 -27
  26. package/dist/extensions/Blocks/Items/store/items-block.js +7 -11
  27. package/dist/extensions/Blocks/Items/template.js +129 -366
  28. package/dist/extensions/Blocks/Items/utils/configBlockUtils.js +17 -0
  29. package/dist/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.js +28 -0
  30. package/dist/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.js +76 -0
  31. package/dist/extensions/Blocks/Items/utils/updateAttributes.js +46 -0
  32. package/dist/extensions/Blocks/Recommendation/block.js +1 -1
  33. package/dist/extensions/Blocks/Recommendation/constants/blockIds.js +4 -0
  34. package/dist/extensions/Blocks/Recommendation/constants/controlIds.js +4 -0
  35. package/dist/extensions/Blocks/Recommendation/constants/layout.js +12 -0
  36. package/dist/extensions/Blocks/Recommendation/constants/selectors.js +11 -0
  37. package/dist/extensions/Blocks/Recommendation/controls/button/index.js +64 -0
  38. package/dist/extensions/Blocks/Recommendation/controls/cardBackground/index.js +80 -0
  39. package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +232 -0
  40. package/dist/extensions/Blocks/Recommendation/controls/image/index.js +19 -0
  41. package/dist/extensions/Blocks/Recommendation/controls/layout/index.js +104 -0
  42. package/dist/extensions/Blocks/Recommendation/controls/main/algorithm.js +86 -0
  43. package/dist/extensions/Blocks/Recommendation/controls/main/currency.js +134 -0
  44. package/dist/extensions/Blocks/Recommendation/controls/main/filters.js +54 -0
  45. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +134 -0
  46. package/dist/extensions/Blocks/Recommendation/controls/main/locale.js +64 -0
  47. package/dist/extensions/Blocks/Recommendation/controls/main/productLayout.js +124 -0
  48. package/dist/extensions/Blocks/Recommendation/controls/main/shuffle.js +60 -0
  49. package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +114 -0
  50. package/dist/extensions/Blocks/Recommendation/controls/name/index.js +46 -0
  51. package/dist/extensions/Blocks/Recommendation/controls/name/textTrim.js +76 -0
  52. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/index.js +44 -0
  53. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.js +48 -0
  54. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.js +73 -0
  55. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.js +73 -0
  56. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/index.js +48 -0
  57. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.js +73 -0
  58. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.js +73 -0
  59. package/dist/extensions/Blocks/Recommendation/controls/price/index.js +44 -0
  60. package/dist/extensions/Blocks/Recommendation/controls/spacing/index.js +204 -0
  61. package/dist/extensions/Blocks/Recommendation/extension.js +40 -43
  62. package/dist/extensions/Blocks/Recommendation/recommendation.css.js +5 -0
  63. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +128 -72
  64. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +29 -26
  65. package/dist/extensions/Blocks/Recommendation/templates/horizontal/elementRenderer.js +157 -0
  66. package/dist/extensions/Blocks/Recommendation/templates/horizontal/template.js +72 -0
  67. package/dist/extensions/Blocks/Recommendation/templates/index.js +12 -0
  68. package/dist/extensions/Blocks/Recommendation/templates/utils.js +173 -0
  69. package/dist/extensions/Blocks/Recommendation/templates/vertical/elementRenderer.js +186 -0
  70. package/dist/extensions/Blocks/Recommendation/templates/vertical/migration.js +251 -0
  71. package/dist/extensions/Blocks/Recommendation/templates/vertical/template.js +62 -0
  72. package/dist/extensions/Blocks/Recommendation/utils/filterUtil.js +9 -9
  73. package/dist/extensions/Blocks/Recommendation/utils/preserveTextStyles.js +36 -0
  74. package/dist/extensions/Blocks/Recommendation/utils/tagName.js +46 -0
  75. package/dist/extensions/Blocks/common-control.js +28 -28
  76. package/dist/extensions/Blocks/controlFactories.js +130 -106
  77. package/dist/guido.css +1 -1
  78. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +116 -125
  79. package/dist/src/extensions/Blocks/Items/controls/button/link.d.ts +2 -0
  80. package/dist/src/extensions/Blocks/Items/controls/cardComposition.d.ts +0 -9
  81. package/dist/src/extensions/Blocks/Items/controls/image/link.d.ts +2 -0
  82. package/dist/src/extensions/Blocks/Items/controls/price/priceOrientation.d.ts +1 -1
  83. package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +4 -0
  84. package/dist/src/extensions/Blocks/Items/enums/controlEnums.d.ts +0 -1
  85. package/dist/src/extensions/Blocks/Items/enums/productEnums.d.ts +26 -24
  86. package/dist/src/extensions/Blocks/Items/enums/settingsEnums.d.ts +0 -1
  87. package/dist/src/extensions/Blocks/Items/store/items-block.d.ts +0 -2
  88. package/dist/src/extensions/Blocks/Items/template.d.ts +1 -22
  89. package/dist/src/extensions/Blocks/Items/utils/configBlockUtils.d.ts +23 -0
  90. package/dist/src/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.d.ts +32 -0
  91. package/dist/src/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.d.ts +50 -0
  92. package/dist/src/extensions/Blocks/Items/utils/updateAttributes.d.ts +8 -0
  93. package/dist/src/extensions/Blocks/Recommendation/constants/blockIds.d.ts +13 -0
  94. package/dist/src/extensions/Blocks/Recommendation/{constants.d.ts → constants/controlIds.d.ts} +19 -11
  95. package/dist/src/extensions/Blocks/Recommendation/constants/index.d.ts +12 -0
  96. package/dist/src/extensions/Blocks/Recommendation/constants/layout.d.ts +27 -0
  97. package/dist/src/extensions/Blocks/Recommendation/constants/selectors.d.ts +19 -0
  98. package/dist/src/extensions/Blocks/Recommendation/controls/button/index.d.ts +143 -0
  99. package/dist/src/extensions/Blocks/Recommendation/controls/cardBackground/index.d.ts +31 -0
  100. package/dist/src/extensions/Blocks/Recommendation/controls/cardComposition/index.d.ts +95 -0
  101. package/dist/src/extensions/Blocks/Recommendation/controls/image/index.d.ts +35 -0
  102. package/dist/src/extensions/Blocks/Recommendation/controls/index.d.ts +24 -0
  103. package/dist/src/extensions/Blocks/Recommendation/controls/layout/index.d.ts +34 -0
  104. package/dist/src/extensions/Blocks/Recommendation/controls/main/algorithm.d.ts +17 -0
  105. package/dist/src/extensions/Blocks/Recommendation/controls/main/currency.d.ts +16 -0
  106. package/dist/src/extensions/Blocks/Recommendation/controls/main/filters.d.ts +22 -0
  107. package/dist/src/extensions/Blocks/Recommendation/controls/main/index.d.ts +43 -0
  108. package/dist/src/extensions/Blocks/Recommendation/controls/main/locale.d.ts +15 -0
  109. package/dist/src/extensions/Blocks/Recommendation/controls/main/productLayout.d.ts +40 -0
  110. package/dist/src/extensions/Blocks/Recommendation/controls/main/shuffle.d.ts +15 -0
  111. package/dist/src/extensions/Blocks/Recommendation/controls/main/utils.d.ts +81 -0
  112. package/dist/src/extensions/Blocks/Recommendation/controls/name/index.d.ts +97 -0
  113. package/dist/src/extensions/Blocks/Recommendation/controls/name/textTrim.d.ts +16 -0
  114. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/index.d.ts +95 -0
  115. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.d.ts +100 -0
  116. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.d.ts +15 -0
  117. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.d.ts +15 -0
  118. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/index.d.ts +100 -0
  119. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.d.ts +15 -0
  120. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.d.ts +15 -0
  121. package/dist/src/extensions/Blocks/Recommendation/controls/price/index.d.ts +95 -0
  122. package/dist/src/extensions/Blocks/Recommendation/controls/spacing/index.d.ts +72 -0
  123. package/dist/src/extensions/Blocks/Recommendation/extension.d.ts +9 -0
  124. package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +17 -16
  125. package/dist/src/extensions/Blocks/Recommendation/templates/horizontal/elementRenderer.d.ts +8 -0
  126. package/dist/src/extensions/Blocks/Recommendation/templates/horizontal/migration.d.ts +25 -0
  127. package/dist/src/extensions/Blocks/Recommendation/templates/horizontal/template.d.ts +18 -0
  128. package/dist/src/extensions/Blocks/Recommendation/templates/index.d.ts +39 -0
  129. package/dist/src/extensions/Blocks/Recommendation/templates/utils.d.ts +45 -0
  130. package/dist/src/extensions/Blocks/Recommendation/templates/vertical/elementRenderer.d.ts +7 -0
  131. package/dist/src/extensions/Blocks/Recommendation/templates/{migrationTemplate.d.ts → vertical/migration.d.ts} +11 -4
  132. package/dist/src/extensions/Blocks/Recommendation/templates/vertical/template.d.ts +33 -0
  133. package/dist/src/extensions/Blocks/Recommendation/utils/preserveTextStyles.d.ts +19 -0
  134. package/dist/src/extensions/Blocks/Recommendation/utils/tagName.d.ts +77 -0
  135. package/dist/src/extensions/Blocks/common-control.d.ts +11 -10
  136. package/dist/static/styles/components/wide-panel.css.js +0 -4
  137. package/dist/static/styles/customEditorStyle.css.js +38 -2
  138. package/dist/utils/pairProductVariables.js +58 -61
  139. package/package.json +1 -1
  140. package/dist/config/migrator/itemsBlockMigrator.js +0 -342
  141. package/dist/extensions/Blocks/Items/controls/price/singlePrice.js +0 -93
  142. package/dist/extensions/Blocks/Items/utils/nodeConfigUtils.js +0 -184
  143. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +0 -103
  144. package/dist/extensions/Blocks/Recommendation/constants.js +0 -5
  145. package/dist/extensions/Blocks/Recommendation/control.js +0 -306
  146. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
  147. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
  148. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
  149. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
  150. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
  151. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
  152. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
  153. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
  154. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
  155. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
  156. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
  157. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
  158. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
  159. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
  160. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
  161. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
  162. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
  163. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
  164. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
  165. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
  166. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
  167. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
  168. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
  169. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
  170. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
  171. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
  172. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
  173. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
  174. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
  175. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
  176. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
  177. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
  178. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
  179. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
  180. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +0 -160
  181. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +0 -152
  182. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +0 -180
  183. package/dist/src/config/migrator/itemsBlockMigrator.d.ts +0 -6
  184. package/dist/src/extensions/Blocks/Items/controls/price/singlePrice.d.ts +0 -18
  185. package/dist/src/extensions/Blocks/Items/utils/nodeConfigUtils.d.ts +0 -73
  186. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +0 -28
  187. package/dist/src/extensions/Blocks/Recommendation/control.d.ts +0 -35
  188. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +0 -5
  189. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +0 -5
  190. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +0 -5
  191. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +0 -5
  192. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +0 -5
  193. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +0 -5
  194. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +0 -5
  195. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +0 -5
  196. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +0 -5
  197. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +0 -5
  198. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +0 -5
  199. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +0 -5
  200. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +0 -5
  201. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +0 -5
  202. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
  203. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +0 -5
  204. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +0 -5
  205. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +0 -5
  206. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +0 -5
  207. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +0 -5
  208. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +0 -5
  209. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
  210. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +0 -5
  211. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +0 -5
  212. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +0 -5
  213. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +0 -5
  214. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +0 -5
  215. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +0 -5
  216. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
  217. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +0 -5
  218. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +0 -5
  219. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +0 -5
  220. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +0 -5
  221. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +0 -5
  222. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +0 -16
  223. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +0 -44
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Old Price Element Controls
3
+ *
4
+ * Controls for styling the original/old price element in recommendation cards.
5
+ */
6
+ /**
7
+ * Grouped Old Price Controls
8
+ * Use this object for cleaner imports in extension.ts
9
+ */
10
+ export declare const OldPriceControls: {
11
+ readonly align: {
12
+ new (): {
13
+ getId(): string;
14
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
15
+ getParentControlId(): string;
16
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
17
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
18
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
19
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
20
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
21
+ };
22
+ };
23
+ readonly color: {
24
+ new (): {
25
+ getId(): string;
26
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
27
+ getParentControlId(): string;
28
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
29
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
30
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
31
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
32
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
33
+ };
34
+ };
35
+ readonly size: {
36
+ new (): {
37
+ getId(): string;
38
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
39
+ getParentControlId(): string;
40
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
41
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
42
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
43
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
44
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
45
+ };
46
+ };
47
+ readonly style: {
48
+ new (): {
49
+ getId(): string;
50
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
51
+ getParentControlId(): string;
52
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
53
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
54
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
55
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
56
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
57
+ };
58
+ };
59
+ readonly fontFamily: {
60
+ new (): {
61
+ getId(): string;
62
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
63
+ getParentControlId(): string;
64
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
65
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
66
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
67
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
68
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
69
+ };
70
+ };
71
+ readonly background: {
72
+ new (): {
73
+ getId(): string;
74
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
75
+ getParentControlId(): string;
76
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
77
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
78
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
79
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
80
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
81
+ };
82
+ };
83
+ readonly paddings: {
84
+ new (): {
85
+ getId(): string;
86
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
87
+ getParentControlId(): string;
88
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
89
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
90
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
91
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
92
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
93
+ };
94
+ };
95
+ };
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Omnibus Discount Element Controls
3
+ *
4
+ * Controls for styling the omnibus discount element in recommendation cards.
5
+ * Includes text before/after controls for compliance text.
6
+ */
7
+ import { OmnibusDiscountTextAfterControl } from './textAfter';
8
+ import { OmnibusDiscountTextBeforeControl } from './textBefore';
9
+ /**
10
+ * Grouped Omnibus Discount Controls
11
+ * Use this object for cleaner imports in extension.ts
12
+ */
13
+ export declare const OmnibusDiscountControls: {
14
+ readonly align: {
15
+ new (): {
16
+ getId(): string;
17
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
18
+ getParentControlId(): string;
19
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
20
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
21
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
22
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
23
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
24
+ };
25
+ };
26
+ readonly color: {
27
+ new (): {
28
+ getId(): string;
29
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
30
+ getParentControlId(): string;
31
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
32
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
33
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
34
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
35
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
36
+ };
37
+ };
38
+ readonly size: {
39
+ new (): {
40
+ getId(): string;
41
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
42
+ getParentControlId(): string;
43
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
44
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
45
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
46
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
47
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
48
+ };
49
+ };
50
+ readonly style: {
51
+ new (): {
52
+ getId(): string;
53
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
54
+ getParentControlId(): string;
55
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
56
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
57
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
58
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
59
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
60
+ };
61
+ };
62
+ readonly fontFamily: {
63
+ new (): {
64
+ getId(): string;
65
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
66
+ getParentControlId(): string;
67
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
68
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
69
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
70
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
71
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
72
+ };
73
+ };
74
+ readonly background: {
75
+ new (): {
76
+ getId(): string;
77
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
78
+ getParentControlId(): string;
79
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
80
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
81
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
82
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
83
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
84
+ };
85
+ };
86
+ readonly paddings: {
87
+ new (): {
88
+ getId(): string;
89
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
90
+ getParentControlId(): string;
91
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
92
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
93
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
94
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
95
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
96
+ };
97
+ };
98
+ readonly textBefore: typeof OmnibusDiscountTextBeforeControl;
99
+ readonly textAfter: typeof OmnibusDiscountTextAfterControl;
100
+ };
@@ -0,0 +1,15 @@
1
+ import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
+ import { CommonControl } from '../../../common-control';
3
+ /**
4
+ * Control for setting text after Omnibus Discount value
5
+ */
6
+ export declare class OmnibusDiscountTextAfterControl extends CommonControl {
7
+ getId(): string;
8
+ getTemplate(): string;
9
+ onRender(): void;
10
+ onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
11
+ _setFormValues(): void;
12
+ _getCurrentText(): string;
13
+ _onTextChange(newText: string): void;
14
+ _listenToFormUpdates(): void;
15
+ }
@@ -0,0 +1,15 @@
1
+ import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
+ import { CommonControl } from '../../../common-control';
3
+ /**
4
+ * Control for setting text before Omnibus Discount value
5
+ */
6
+ export declare class OmnibusDiscountTextBeforeControl extends CommonControl {
7
+ getId(): string;
8
+ getTemplate(): string;
9
+ onRender(): void;
10
+ onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
11
+ _setFormValues(): void;
12
+ _getCurrentText(): string;
13
+ _onTextChange(newText: string): void;
14
+ _listenToFormUpdates(): void;
15
+ }
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Omnibus Price Element Controls
3
+ *
4
+ * Controls for styling the omnibus price element in recommendation cards.
5
+ * Includes text before/after controls for compliance text.
6
+ */
7
+ import { OmnibusPriceTextAfterControl } from './textAfter';
8
+ import { OmnibusPriceTextBeforeControl } from './textBefore';
9
+ /**
10
+ * Grouped Omnibus Price Controls
11
+ * Use this object for cleaner imports in extension.ts
12
+ */
13
+ export declare const OmnibusPriceControls: {
14
+ readonly align: {
15
+ new (): {
16
+ getId(): string;
17
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
18
+ getParentControlId(): string;
19
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
20
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
21
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
22
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
23
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
24
+ };
25
+ };
26
+ readonly color: {
27
+ new (): {
28
+ getId(): string;
29
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
30
+ getParentControlId(): string;
31
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
32
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
33
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
34
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
35
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
36
+ };
37
+ };
38
+ readonly size: {
39
+ new (): {
40
+ getId(): string;
41
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
42
+ getParentControlId(): string;
43
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
44
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
45
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
46
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
47
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
48
+ };
49
+ };
50
+ readonly style: {
51
+ new (): {
52
+ getId(): string;
53
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
54
+ getParentControlId(): string;
55
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
56
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
57
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
58
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
59
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
60
+ };
61
+ };
62
+ readonly fontFamily: {
63
+ new (): {
64
+ getId(): string;
65
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
66
+ getParentControlId(): string;
67
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
68
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
69
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
70
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
71
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
72
+ };
73
+ };
74
+ readonly background: {
75
+ new (): {
76
+ getId(): string;
77
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
78
+ getParentControlId(): string;
79
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
80
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
81
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
82
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
83
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
84
+ };
85
+ };
86
+ readonly paddings: {
87
+ new (): {
88
+ getId(): string;
89
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
90
+ getParentControlId(): string;
91
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
92
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
93
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
94
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
95
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
96
+ };
97
+ };
98
+ readonly textBefore: typeof OmnibusPriceTextBeforeControl;
99
+ readonly textAfter: typeof OmnibusPriceTextAfterControl;
100
+ };
@@ -0,0 +1,15 @@
1
+ import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
+ import { CommonControl } from '../../../common-control';
3
+ /**
4
+ * Control for setting text after Omnibus Price value
5
+ */
6
+ export declare class OmnibusPriceTextAfterControl extends CommonControl {
7
+ getId(): string;
8
+ getTemplate(): string;
9
+ onRender(): void;
10
+ onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
11
+ _setFormValues(): void;
12
+ _getCurrentText(): string;
13
+ _onTextChange(newText: string): void;
14
+ _listenToFormUpdates(): void;
15
+ }
@@ -0,0 +1,15 @@
1
+ import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
+ import { CommonControl } from '../../../common-control';
3
+ /**
4
+ * Control for setting text before Omnibus Price value
5
+ */
6
+ export declare class OmnibusPriceTextBeforeControl extends CommonControl {
7
+ getId(): string;
8
+ getTemplate(): string;
9
+ onRender(): void;
10
+ onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
11
+ _setFormValues(): void;
12
+ _getCurrentText(): string;
13
+ _onTextChange(newText: string): void;
14
+ _listenToFormUpdates(): void;
15
+ }
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Price Element Controls
3
+ *
4
+ * Controls for styling the product price element in recommendation cards.
5
+ */
6
+ /**
7
+ * Grouped Price Controls
8
+ * Use this object for cleaner imports in extension.ts
9
+ */
10
+ export declare const PriceControls: {
11
+ readonly align: {
12
+ new (): {
13
+ getId(): string;
14
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
15
+ getParentControlId(): string;
16
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
17
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
18
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
19
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
20
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
21
+ };
22
+ };
23
+ readonly color: {
24
+ new (): {
25
+ getId(): string;
26
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
27
+ getParentControlId(): string;
28
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
29
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
30
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
31
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
32
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
33
+ };
34
+ };
35
+ readonly size: {
36
+ new (): {
37
+ getId(): string;
38
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
39
+ getParentControlId(): string;
40
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
41
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
42
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
43
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
44
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
45
+ };
46
+ };
47
+ readonly style: {
48
+ new (): {
49
+ getId(): string;
50
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
51
+ getParentControlId(): string;
52
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
53
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
54
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
55
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
56
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
57
+ };
58
+ };
59
+ readonly fontFamily: {
60
+ new (): {
61
+ getId(): string;
62
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
63
+ getParentControlId(): string;
64
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
65
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
66
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
67
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
68
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
69
+ };
70
+ };
71
+ readonly background: {
72
+ new (): {
73
+ getId(): string;
74
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
75
+ getParentControlId(): string;
76
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
77
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
78
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
79
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
80
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
81
+ };
82
+ };
83
+ readonly paddings: {
84
+ new (): {
85
+ getId(): string;
86
+ getTargetNodes(root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode[];
87
+ getParentControlId(): string;
88
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
89
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
90
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
91
+ getAdditionalModifications(_root: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
92
+ isVisible(_node: import("@stripoinc/ui-editor-extensions").ImmutableHtmlNode): boolean;
93
+ };
94
+ };
95
+ };
@@ -0,0 +1,72 @@
1
+ import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
+ import { CommonControl } from '../../../common-control';
3
+ export declare const SPACING_CONTROL_ID = "recommendation-spacing-control";
4
+ /**
5
+ * Control for managing spacing between product cards
6
+ * - Column spacing: horizontal gap between cards in the same row
7
+ * - Row spacing: vertical gap between different rows
8
+ */
9
+ export declare class SpacingControl extends CommonControl {
10
+ private store;
11
+ private unsubscribeOrientation;
12
+ getId(): string;
13
+ getTemplate(): string;
14
+ onRender(): void;
15
+ onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
16
+ /**
17
+ * Updates column spacing visibility based on layout orientation
18
+ * Column spacing is hidden for horizontal layout (products are stacked vertically)
19
+ * Reads from store first for reliability, falls back to DOM
20
+ */
21
+ _updateColumnSpacingVisibility(): void;
22
+ /**
23
+ * Reads spacing values from data attributes or returns defaults
24
+ */
25
+ _setFormValues(): void;
26
+ /**
27
+ * Gets stored column spacing from the first attribute row cell's padding.
28
+ * For vertical layout: cells inside .recommendation-attribute-row have padding applied.
29
+ * For horizontal layout: the parent of .product-card-wrapper has the padding.
30
+ * The padding is applied as "0 {halfSpacing}px", so we extract and multiply by 2.
31
+ */
32
+ _getStoredColumnSpacing(): number;
33
+ /**
34
+ * Gets stored row spacing from the first spacer element's height style
35
+ */
36
+ _getStoredRowSpacing(): number;
37
+ /**
38
+ * Handles column spacing changes.
39
+ * For vertical layout: applies horizontal padding to all cells inside attribute rows.
40
+ * For horizontal layout: applies padding to parent of product card wrappers.
41
+ */
42
+ _onColumnSpacingChange(spacing: number): void;
43
+ /**
44
+ * Handles row spacing changes
45
+ * Applies height to all spacer elements between product rows
46
+ */
47
+ _onRowSpacingChange(spacing: number): void;
48
+ /**
49
+ * Stores column spacing value in block data attribute
50
+ */
51
+ _storeColumnSpacing(spacing: number): void;
52
+ /**
53
+ * Stores row spacing value in block data attribute
54
+ */
55
+ _storeRowSpacing(spacing: number): void;
56
+ _listenToFormUpdates(): void;
57
+ /**
58
+ * Debounced version of _onColumnSpacingChange
59
+ * Prevents excessive DOM updates when user rapidly adjusts the counter
60
+ */
61
+ _debouncedOnColumnSpacingChange: import("@vueuse/shared").PromisifyFn<(spacing: number) => void>;
62
+ /**
63
+ * Debounced version of _onRowSpacingChange
64
+ * Prevents excessive DOM updates when user rapidly adjusts the counter
65
+ */
66
+ _debouncedOnRowSpacingChange: import("@vueuse/shared").PromisifyFn<(spacing: number) => void>;
67
+ /**
68
+ * Subscribe to store orientation changes
69
+ * Updates column spacing visibility when layout changes via the layout control
70
+ */
71
+ _subscribeToOrientationChanges(): void;
72
+ }
@@ -1,2 +1,11 @@
1
+ /**
2
+ * Recommendation Block Extension
3
+ *
4
+ * This extension provides a product recommendation block for email templates.
5
+ * Controls are organized by element type in the ./controls directory.
6
+ */
7
+ /**
8
+ * Build and export the Recommendation extension
9
+ */
1
10
  declare const _default: import("@stripoinc/ui-editor-extensions").Extension;
2
11
  export default _default;
@@ -1,5 +1,6 @@
1
1
  import type { Orientation, Languages, Currency, NumericSeparator, FiltersResponse, Filter, RecommendationProduct } from '@@/Types/recommendation';
2
2
  interface StoreState {
3
+ /** Maps campaign URLs for recommendation blocks. Used by templateLibraryApi when saving templates. */
3
4
  recommendationCampaignUrls: Record<string, string>;
4
5
  recommendationConfigs: {
5
6
  cardsInRow: number;
@@ -18,8 +19,8 @@ interface StoreState {
18
19
  orientation: Orientation;
19
20
  productIds: string[];
20
21
  recommendedProducts: [];
21
- sendProductRequestFlag: false;
22
- shuffleProducts: false;
22
+ sendProductRequestFlag: boolean;
23
+ shuffleProducts: boolean;
23
24
  strategy: string;
24
25
  textTrimming: boolean;
25
26
  unresponsive: boolean;
@@ -65,8 +66,8 @@ export declare const useRecommendationExtensionStore: import("pinia").StoreDefin
65
66
  orientation: Orientation;
66
67
  productIds: string[];
67
68
  recommendedProducts: [];
68
- sendProductRequestFlag: false;
69
- shuffleProducts: false;
69
+ sendProductRequestFlag: boolean;
70
+ shuffleProducts: boolean;
70
71
  strategy: string;
71
72
  textTrimming: boolean;
72
73
  unresponsive: boolean;
@@ -134,8 +135,8 @@ export declare const useRecommendationExtensionStore: import("pinia").StoreDefin
134
135
  orientation: Orientation;
135
136
  productIds: string[];
136
137
  recommendedProducts: [];
137
- sendProductRequestFlag: false;
138
- shuffleProducts: false;
138
+ sendProductRequestFlag: boolean;
139
+ shuffleProducts: boolean;
139
140
  strategy: string;
140
141
  textTrimming: boolean;
141
142
  unresponsive: boolean;
@@ -203,8 +204,8 @@ export declare const useRecommendationExtensionStore: import("pinia").StoreDefin
203
204
  orientation: Orientation;
204
205
  productIds: string[];
205
206
  recommendedProducts: [];
206
- sendProductRequestFlag: false;
207
- shuffleProducts: false;
207
+ sendProductRequestFlag: boolean;
208
+ shuffleProducts: boolean;
208
209
  strategy: string;
209
210
  textTrimming: boolean;
210
211
  unresponsive: boolean;
@@ -275,8 +276,8 @@ export declare const useRecommendationExtensionStore: import("pinia").StoreDefin
275
276
  orientation: Orientation;
276
277
  productIds: string[];
277
278
  recommendedProducts: [];
278
- sendProductRequestFlag: false;
279
- shuffleProducts: false;
279
+ sendProductRequestFlag: boolean;
280
+ shuffleProducts: boolean;
280
281
  strategy: string;
281
282
  textTrimming: boolean;
282
283
  unresponsive: boolean;
@@ -347,8 +348,8 @@ export declare const useRecommendationExtensionStore: import("pinia").StoreDefin
347
348
  orientation: Orientation;
348
349
  productIds: string[];
349
350
  recommendedProducts: [];
350
- sendProductRequestFlag: false;
351
- shuffleProducts: false;
351
+ sendProductRequestFlag: boolean;
352
+ shuffleProducts: boolean;
352
353
  strategy: string;
353
354
  textTrimming: boolean;
354
355
  unresponsive: boolean;
@@ -419,8 +420,8 @@ export declare const useRecommendationExtensionStore: import("pinia").StoreDefin
419
420
  orientation: Orientation;
420
421
  productIds: string[];
421
422
  recommendedProducts: [];
422
- sendProductRequestFlag: false;
423
- shuffleProducts: false;
423
+ sendProductRequestFlag: boolean;
424
+ shuffleProducts: boolean;
424
425
  strategy: string;
425
426
  textTrimming: boolean;
426
427
  unresponsive: boolean;
@@ -492,8 +493,8 @@ export declare const useRecommendationExtensionStore: import("pinia").StoreDefin
492
493
  orientation: Orientation;
493
494
  productIds: string[];
494
495
  recommendedProducts: [];
495
- sendProductRequestFlag: false;
496
- shuffleProducts: false;
496
+ sendProductRequestFlag: boolean;
497
+ shuffleProducts: boolean;
497
498
  strategy: string;
498
499
  textTrimming: boolean;
499
500
  unresponsive: boolean;