@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
@@ -1,180 +0,0 @@
1
- const R = {
2
- TITLE: "You May Also Like!"
3
- }, O = `
4
- <tr>
5
- <td class="spacer" style="height: 20px;"></td>
6
- </tr>
7
- `, w = `
8
- <tr>
9
- <td>
10
- <table width="100%" height="100%" cellpadding="0" cellspacing="0" border="0">
11
- {-{-PRODUCTS-}-}
12
- </table>
13
- </td>
14
- </tr>
15
- `, i = `
16
- <td width="{-{-COLUMN_WIDTH-}-}" style="padding: 0 5px;" valign="top" height="100%">
17
- <table
18
- width="100%"
19
- height="100%"
20
- cellpadding="0"
21
- cellspacing="0"
22
- border="0"
23
- class="product-card-wrapper">
24
- <tr>
25
- <td
26
- class="product-attribute-cell"
27
- valign="top">
28
- <table cellpadding="0" cellspacing="0" role="presentation" width="100%">
29
- <tbody>
30
- {-{-PRODUCT_CONTENT-}-}
31
- </tbody>
32
- </table>
33
- </td>
34
- </tr>
35
- </table>
36
- </td>
37
- `, b = [
38
- "productImage",
39
- "productName",
40
- "productOldPrice",
41
- "productPrice",
42
- "productButton"
43
- ];
44
- function C() {
45
- return [
46
- {
47
- name: "Product Name",
48
- image_url: "https://email-static.useinsider.com/stripo/modules/email-recommendation-v3/assets/images/image-placeholder.png",
49
- price: { USD: 18 },
50
- original_price: { USD: 20 },
51
- discount: { USD: 2 },
52
- url: "https://example.com/product/1",
53
- item_id: "1",
54
- in_stock: 1,
55
- locale: "en",
56
- product_attributes: {},
57
- category: []
58
- },
59
- {
60
- name: "Belt",
61
- image_url: "https://inshoppingcart.com/ins-html/wp-content/uploads/2018/09/belt-2.jpg",
62
- price: { TRY: 55 },
63
- original_price: { TRY: 65 },
64
- discount: { TRY: 10 },
65
- url: "https://example.com/product/2",
66
- item_id: "2",
67
- in_stock: 1,
68
- locale: "tr",
69
- product_attributes: {},
70
- category: []
71
- },
72
- {
73
- name: "Beanie",
74
- image_url: "https://inshoppingcart.com/ins-html/wp-content/uploads/2018/08/beanie-with-logo-1.jpg",
75
- price: { TRY: 18 },
76
- original_price: { TRY: 20 },
77
- discount: { TRY: 2 },
78
- url: "https://example.com/product/3",
79
- item_id: "3",
80
- in_stock: 1,
81
- locale: "tr",
82
- product_attributes: {},
83
- category: []
84
- },
85
- {
86
- name: "Album",
87
- image_url: "https://inshoppingcart.com/ins-html/wp-content/uploads/2018/12/poster_2_up.jpg",
88
- price: { TRY: 15 },
89
- original_price: { TRY: 15 },
90
- discount: { TRY: 0 },
91
- url: "https://example.com/product/4",
92
- item_id: "4",
93
- in_stock: 1,
94
- locale: "tr",
95
- product_attributes: {},
96
- category: []
97
- },
98
- {
99
- name: "Flying Ninja with a very long product name",
100
- image_url: "https://inshoppingcart.com/ins-html/wp-content/uploads/2018/09/belt-2.jpg",
101
- price: { TRY: 12 },
102
- original_price: { TRY: 15 },
103
- discount: { TRY: 3 },
104
- url: "https://example.com/product/5",
105
- item_id: "5",
106
- in_stock: 1,
107
- locale: "tr",
108
- product_attributes: {},
109
- category: []
110
- },
111
- {
112
- name: "Single",
113
- image_url: "https://inshoppingcart.com/ins-html/wp-content/uploads/2018/12/poster_2_up.jpg",
114
- price: { TRY: 22555 },
115
- original_price: { TRY: 33989 },
116
- discount: { TRY: 11434 },
117
- url: "https://example.com/product/6",
118
- item_id: "6",
119
- in_stock: 1,
120
- locale: "tr",
121
- product_attributes: {},
122
- category: []
123
- }
124
- ];
125
- }
126
- function N(p, r, e, l = b) {
127
- const n = (100 / r).toFixed(2), a = [];
128
- for (let o = 0; o < p.length; o += r)
129
- a.push(p.slice(o, o + r));
130
- let c = "";
131
- return a.forEach((o, _) => {
132
- _ > 0 && (c += O);
133
- let s = "", u = "", d = "", m = "", g = "";
134
- o.forEach((t) => {
135
- s += i.replace(
136
- "{-{-PRODUCT_CONTENT-}-}",
137
- e.productImage(t)
138
- ), u += i.replace(
139
- "{-{-PRODUCT_CONTENT-}-}",
140
- e.productName(t)
141
- ), d += i.replace(
142
- "{-{-PRODUCT_CONTENT-}-}",
143
- e.productPrice(t)
144
- ), m += i.replace(
145
- "{-{-PRODUCT_CONTENT-}-}",
146
- e.productOldPrice(t)
147
- ), g += i.replace(
148
- "{-{-PRODUCT_CONTENT-}-}",
149
- e.productButton(t)
150
- );
151
- });
152
- const T = {
153
- productImage: s,
154
- productName: u,
155
- productPrice: d,
156
- productOldPrice: m,
157
- productButton: g
158
- }, h = l.filter((t) => !!T[t]).map((t) => `<tr>${T[t]}</tr>`).join("");
159
- c += w.replace("{-{-PRODUCTS-}-}", h);
160
- }), c.replaceAll("{-{-COLUMN_WIDTH-}-}", `${n}%`);
161
- }
162
- function P(p, r, e, l, n = R.TITLE, a) {
163
- const c = N(
164
- r,
165
- e,
166
- l,
167
- a
168
- );
169
- return p.replace("{-{-TITLE-}-}", n).replace("{-{-PRODUCT_ROWS-}-}", c);
170
- }
171
- export {
172
- R as DEFAULTS,
173
- b as DEFAULT_CARD_COMPOSITION,
174
- P as generateTemplate,
175
- C as getDefaultProducts,
176
- N as prepareProductRows,
177
- i as productCardWrapper,
178
- w as productRow,
179
- O as spacer
180
- };
@@ -1,6 +0,0 @@
1
- /**
2
- * Migrates legacy ItemsBlock templates to v2 format
3
- * @param html - HTML string containing legacy items blocks
4
- * @returns Migrated HTML with replaced variables and cleaned conditionals
5
- */
6
- export declare function migrateItemsBlock(html: string): string;
@@ -1,18 +0,0 @@
1
- import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
- import { CommonControl } from '../../../common-control';
3
- import { ItemsBlockControlId } from '../../enums/controlEnums';
4
- export declare const CONTROL_BLOCK_ID = ItemsBlockControlId.PRICE_SINGLE_PRICE;
5
- export declare class PriceSinglePriceControl extends CommonControl {
6
- private store;
7
- getId(): string;
8
- getTemplate(): string;
9
- onRender(): void;
10
- onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
11
- /**
12
- * Syncs single price state from nodeConfig.
13
- */
14
- private _syncSinglePriceFromNodeConfig;
15
- _onSinglePriceChange(value: boolean): void;
16
- private _updatePriceBlock;
17
- _getSinglePrice(): string;
18
- }
@@ -1,73 +0,0 @@
1
- import { OrientationType, ProductType } from '@@/Types/extensions/items';
2
- import { ImmutableHtmlNode, ImmutableHtmlElementNode, ControlApi, BlockApi } from '@stripoinc/ui-editor-extensions';
3
- /**
4
- * Typed configuration object for Items Block.
5
- * Configuration is stored directly on the block node using Stripo V2's getNodeConfig/setNodeConfig API.
6
- */
7
- export interface ItemsBlockConfig {
8
- initialized: boolean;
9
- blockInstanceId: string;
10
- source: ProductType;
11
- type: ProductType;
12
- itemsSelectValue: string;
13
- orientation: OrientationType;
14
- nameTrimming: boolean;
15
- nameControlEnabled: boolean;
16
- priceHideDiscount: boolean;
17
- priceFormatted: boolean;
18
- priceSinglePrice: boolean;
19
- priceCurrencySymbol: string;
20
- priceCurrencyLocation: string;
21
- priceControlOpened: boolean;
22
- priceOrientation: 'vertical' | 'horizontal';
23
- quantityControlEnabled: boolean;
24
- buttonLink: string;
25
- imageLink: string;
26
- buttonLabel: string;
27
- /** Whether button should be full width (true = es-fw class) or inline (false = es-il class) */
28
- buttonFullWidth: boolean;
29
- imageVisible: boolean;
30
- nameVisible: boolean;
31
- quantityVisible: boolean;
32
- priceVisible: boolean;
33
- originalPriceVisible: boolean;
34
- buttonVisible: boolean;
35
- }
36
- /**
37
- * Generates a unique block instance ID.
38
- */
39
- export declare function generateBlockInstanceId(): string;
40
- /**
41
- * Returns default ItemsBlockConfig values.
42
- * These are used when initializing a new block or when migrating from legacy format.
43
- */
44
- export declare function getDefaultItemsBlockConfig(): ItemsBlockConfig;
45
- /**
46
- * Gets the Items block container element from the current node.
47
- * The container is identified by the `.items-block-v2` class (new) or `.esd-cart-items-block` (legacy).
48
- * @param currentNode - The current node from the control (usually this.currentNode)
49
- * @returns The container element or null if not found
50
- */
51
- export declare function getItemsBlockContainer(currentNode: ImmutableHtmlNode | undefined): ImmutableHtmlElementNode | null;
52
- /**
53
- * Gets the node configuration from the Items block.
54
- * Uses Stripo V2's getNodeConfig() API.
55
- * Falls back to migrating from legacy config block if nodeConfig is empty.
56
- * @param currentNode - The current node from the control
57
- * @returns The ItemsBlockConfig object or null if not found
58
- */
59
- export declare function getItemsBlockConfig(currentNode: ImmutableHtmlNode | undefined): ItemsBlockConfig | null;
60
- /**
61
- * Sets the node configuration on the Items block.
62
- * Uses Stripo V2's setNodeConfig() API.
63
- * @param currentNode - The current node from the control
64
- * @param api - The API object (ControlApi or BlockApi)
65
- * @param config - The configuration to set (partial update supported)
66
- */
67
- export declare function setItemsBlockConfig(currentNode: ImmutableHtmlNode | undefined, api: ControlApi | BlockApi, config: Partial<ItemsBlockConfig>): void;
68
- /**
69
- * Gets the block instance ID from the node config.
70
- * @param currentNode - The current node from the control
71
- * @returns The block instance ID or null if not found
72
- */
73
- export declare function getBlockInstanceIdFromConfig(currentNode: ImmutableHtmlNode | undefined): string | null;
@@ -1,28 +0,0 @@
1
- import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
- import { CommonControl } from '../common-control';
3
- export declare const COMPOSITION_CONTROL_BLOCK_ID = "ui-elements-recommendation-card-composition";
4
- export interface CardCompositionItem {
5
- key: string;
6
- label: string;
7
- visible: boolean;
8
- }
9
- export declare class RecommendationCardCompositionControl extends CommonControl {
10
- private currentComposition;
11
- private currentVisibility;
12
- getId(): string;
13
- getTemplate(): string;
14
- onRender(): void;
15
- onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
16
- /**
17
- * Initialize the composition order and visibility from the block or use defaults
18
- */
19
- private _initializeComposition;
20
- /**
21
- * Apply the reordered composition to the block's HTML structure
22
- */
23
- private _applyCompositionToBlock;
24
- /**
25
- * Apply visibility changes to the block's HTML structure
26
- */
27
- private _applyVisibilityToBlock;
28
- }
@@ -1,35 +0,0 @@
1
- import { CommonControl } from '../common-control';
2
- export declare const CONTROL_BLOCK_ID = "ui-elements-recommendation-block";
3
- export declare class RecommendationBlockControl extends CommonControl {
4
- private store;
5
- private storeUnsubscription;
6
- private addFilterListener;
7
- private addFilterButton;
8
- getId(): string;
9
- getTemplate(): string;
10
- onRender(): Promise<void>;
11
- onDestroy(): void;
12
- _setFormValues(): void;
13
- _initializeSelectItems(): void;
14
- _getAlgorithms(): string;
15
- _getLanguages(): string;
16
- _getCurrency(): string;
17
- _getProductLayout(): string;
18
- _getFilterStatus(): string;
19
- _getShuffleProducts(): string;
20
- _getResponsive(): string;
21
- _onFilterChange(value: boolean): void;
22
- _onFilterSelectClick(): void;
23
- _onDataChange(item: string, value: string | number | string[]): void;
24
- /**
25
- * Get the current card composition from block data attribute or use default
26
- */
27
- _getCardComposition(): string[];
28
- _regenerateProductRows(): void;
29
- _debouncedRegenerateProductRows: import("@vueuse/shared").PromisifyFn<() => void>;
30
- _onCurrencyConfigChange(item: string, value: string | number): void;
31
- _onCurrencyChange(value: string): void;
32
- _setProductIdsVisibility(): void;
33
- _listenToFormUpdates(): void;
34
- _listenStateUpdates(): void;
35
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonAlignBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonAlignControl extends ButtonAlignBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonBorderBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonBorderControl extends ButtonBorderBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonBorderRadiusBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonBorderRadiusControl extends ButtonBorderRadiusBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonColorBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonColorControl extends ButtonColorBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonFitToContainerBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonFitToContentControl extends ButtonFitToContainerBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonFontFamilyBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonFontFamilyControl extends ButtonFontFamilyBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonMarginsBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonMarginsControl extends ButtonMarginsBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonPaddingsBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonPaddingsControl extends ButtonPaddingsBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonTextBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonTextControl extends ButtonTextBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonTextSizeBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonTextSizeControl extends ButtonTextSizeBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ButtonTextStyleAndFontColorBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ButtonTextStyleAndFontColorControl extends ButtonTextStyleAndFontColorBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ImageMarginsBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ImageMarginsControl extends ImageMarginsBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, ImageSizeBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class ImageSizeControl extends ImageSizeBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextAlignBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class NameAlignControl extends TextAlignBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextBlockBackgroundBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class NameBackgroundControl extends TextBlockBackgroundBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextColorBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class NameColorControl extends TextColorBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextFontFamilyBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class NameFontFamilyControl extends TextFontFamilyBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextPaddingsBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class NamePaddingsControl extends TextPaddingsBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextSizeBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class NameSizeControl extends TextSizeBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextStyleBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class NameStyleControl extends TextStyleBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextAlignBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class OldPriceAlignControl extends TextAlignBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextBlockBackgroundBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class OldPriceBackgroundControl extends TextBlockBackgroundBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextColorBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class OldPriceColorControl extends TextColorBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextFontFamilyBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class OldPriceFontFamilyControl extends TextFontFamilyBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextPaddingsBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class OldPricePaddingsControl extends TextPaddingsBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextSizeBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class OldPriceSizeControl extends TextSizeBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextStyleBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class OldPriceStyleControl extends TextStyleBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextAlignBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class PriceAlignControl extends TextAlignBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextBlockBackgroundBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class PriceBackgroundControl extends TextBlockBackgroundBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextColorBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class PriceColorControl extends TextColorBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextFontFamilyBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class PriceFontFamilyControl extends TextFontFamilyBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextPaddingsBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class PricePaddingsControl extends TextPaddingsBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextSizeBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class PriceSizeControl extends TextSizeBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,5 +0,0 @@
1
- import { ImmutableHtmlNode, TextStyleBuiltInControl } from '@stripoinc/ui-editor-extensions';
2
- export declare class PriceStyleControl extends TextStyleBuiltInControl {
3
- getId(): string;
4
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
5
- }
@@ -1,16 +0,0 @@
1
- import type { RecommendationProduct } from '@@/Types/recommendation';
2
- import { DEFAULTS, getDefaultProducts, DEFAULT_CARD_COMPOSITION } from './templateUtils';
3
- declare const blockTemplate = "\n <td align=\"left\" class=\"ins-recommendation-v3-block-v2 esd-block-recommendation-v3-block es-p20\">\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n <tr>\n <td align=\"center\">\n <table\n class=\"container\"\n width=\"100%\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n border=\"0\">\n <tbody>\n <tr>\n <td>\n <table\n width=\"100%\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n border=\"0\">\n <tbody>\n <BLOCK_TEXT\n class=\"es-p10t es-p10b es-p20l es-p20r\"\n align=\"center\">\n <p path=\"1\" style=\"font-size: 28px; color: #333333;\">\n <strong path=\"1,0\">{-{-TITLE-}-}</strong>\n </p>\n </BLOCK_TEXT>\n </tbody>\n </table>\n </td>\n </tr>\n \n <tr>\n <td class=\"spacer\" style=\"height: 20px;\"></td>\n </tr>\n\n <tr>\n <td>\n <table\n class=\"ins-recommendation-product-container\"\n width=\"100%\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n border=\"0\"\n >\n {-{-PRODUCT_ROWS-}-}\n </table>\n </td>\n </tr>\n </tbody>\n </table>\n </td>\n </tr>\n </table>\n </td>\n";
4
- export declare function getDefaultTemplate(): string;
5
- /**
6
- * Generates a custom template with specified products and layout
7
- * @param products - Array of products to display
8
- * @param productsPerRow - Number of products per row
9
- * @param title - Optional title for the block
10
- * @param composition - Optional array defining order of card elements
11
- * @returns Complete HTML template
12
- */
13
- export declare function generateBlockTemplate(products: RecommendationProduct[], productsPerRow: number, title?: string, composition?: string[]): string;
14
- export declare function prepareProductRows(products: RecommendationProduct[], productsPerRow: number, composition?: string[]): string;
15
- export { DEFAULTS, DEFAULT_CARD_COMPOSITION, getDefaultProducts, };
16
- export default blockTemplate;