@useinsider/guido 2.0.0-beta.c9db5fd → 2.0.0-beta.d0056c9

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 (196) hide show
  1. package/dist/components/organisms/email-preview/PreviewContainer.vue.js +3 -3
  2. package/dist/components/organisms/email-preview/amp/AmpErrorModal.vue.js +6 -6
  3. package/dist/components/organisms/email-preview/amp/AmpErrorModal.vue2.js +17 -13
  4. package/dist/components/organisms/email-preview/amp/AmpToggle.vue.js +6 -6
  5. package/dist/components/organisms/email-preview/amp/AmpToggle.vue2.js +14 -12
  6. package/dist/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue.js +18 -0
  7. package/dist/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue2.js +15 -0
  8. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue.js +10 -14
  9. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue2.js +14 -22
  10. package/dist/components/organisms/email-preview/desktop-preview/EmailSizeIndicator.vue.js +3 -3
  11. package/dist/components/organisms/email-preview/mobile-preview/ContentView.vue.js +11 -10
  12. package/dist/components/organisms/email-preview/mobile-preview/InboxView.vue.js +12 -10
  13. package/dist/components/organisms/email-preview/mobile-preview/MobilePreview.vue.js +11 -10
  14. package/dist/components/organisms/email-preview/mobile-preview/MobilePreview.vue2.js +15 -14
  15. package/dist/components/organisms/header/EditorActions.vue.js +21 -0
  16. package/dist/components/organisms/header/EditorActions.vue2.js +41 -0
  17. package/dist/components/organisms/header/EditorToolbar.vue.js +18 -0
  18. package/dist/components/organisms/header/EditorToolbar.vue2.js +17 -0
  19. package/dist/components/organisms/header/HeaderWrapper.vue.js +6 -5
  20. package/dist/components/organisms/header/LeftSlot.vue.js +11 -11
  21. package/dist/components/organisms/header/LeftSlot.vue2.js +11 -12
  22. package/dist/components/organisms/header/MiddleSlot.vue.js +7 -7
  23. package/dist/components/organisms/header/MiddleSlot.vue2.js +11 -15
  24. package/dist/components/organisms/header/RightSlot.vue.js +11 -14
  25. package/dist/components/organisms/header/RightSlot.vue2.js +13 -30
  26. package/dist/components/organisms/header/version-history/VersionHistory.vue.js +5 -5
  27. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +15 -15
  28. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.js +1 -1
  29. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue2.js +20 -19
  30. package/dist/config/migrator/recommendationMigrator.js +1 -1
  31. package/dist/enums/academy.js +8 -0
  32. package/dist/enums/onboarding.js +1 -2
  33. package/dist/enums/unsubscribe.js +20 -21
  34. package/dist/extensions/Blocks/Items/controls/cardComposition.js +4 -13
  35. package/dist/extensions/Blocks/Recommendation/block.js +1 -1
  36. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +103 -0
  37. package/dist/extensions/Blocks/Recommendation/constants.js +5 -0
  38. package/dist/extensions/Blocks/Recommendation/control.js +306 -0
  39. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +13 -0
  40. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +13 -0
  41. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +13 -0
  42. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +13 -0
  43. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +13 -0
  44. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +13 -0
  45. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +13 -0
  46. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +13 -0
  47. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +13 -0
  48. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +13 -0
  49. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +13 -0
  50. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +13 -0
  51. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +13 -0
  52. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +13 -0
  53. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +13 -0
  54. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +13 -0
  55. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +13 -0
  56. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +13 -0
  57. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +13 -0
  58. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +13 -0
  59. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +13 -0
  60. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +13 -0
  61. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +13 -0
  62. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +13 -0
  63. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +13 -0
  64. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +13 -0
  65. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +13 -0
  66. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +13 -0
  67. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +13 -0
  68. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +13 -0
  69. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +13 -0
  70. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +13 -0
  71. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +13 -0
  72. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +13 -0
  73. package/dist/extensions/Blocks/Recommendation/extension.js +43 -39
  74. package/dist/extensions/Blocks/Recommendation/recommendation.css.js +0 -5
  75. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +72 -127
  76. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +20 -20
  77. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +160 -0
  78. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +152 -0
  79. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +88 -67
  80. package/dist/extensions/Blocks/controlFactories.js +121 -155
  81. package/dist/guido.css +1 -1
  82. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +291 -361
  83. package/dist/package.json.js +1 -1
  84. package/dist/src/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue.d.ts +2 -0
  85. package/dist/src/components/organisms/header/EditorActions.vue.d.ts +4 -0
  86. package/dist/src/components/organisms/header/EditorToolbar.vue.d.ts +2 -0
  87. package/dist/src/components/organisms/header/RightSlot.vue.d.ts +1 -1
  88. package/dist/src/enums/academy.d.ts +12 -0
  89. package/dist/src/enums/onboarding.d.ts +0 -1
  90. package/dist/src/enums/unsubscribe.d.ts +0 -1
  91. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +28 -0
  92. package/dist/src/extensions/Blocks/Recommendation/{constants/controlIds.d.ts → constants.d.ts} +11 -19
  93. package/dist/src/extensions/Blocks/Recommendation/{controls/main/index.d.ts → control.d.ts} +3 -19
  94. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +5 -0
  95. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +5 -0
  96. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +5 -0
  97. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +5 -0
  98. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +5 -0
  99. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +5 -0
  100. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +5 -0
  101. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +5 -0
  102. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +5 -0
  103. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +5 -0
  104. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +5 -0
  105. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +5 -0
  106. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +5 -0
  107. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +5 -0
  108. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +5 -0
  109. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +5 -0
  110. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +5 -0
  111. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +5 -0
  112. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +5 -0
  113. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +5 -0
  114. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +5 -0
  115. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +5 -0
  116. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +5 -0
  117. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +5 -0
  118. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +5 -0
  119. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +5 -0
  120. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +5 -0
  121. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +5 -0
  122. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +5 -0
  123. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +5 -0
  124. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +5 -0
  125. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +5 -0
  126. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +5 -0
  127. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +5 -0
  128. package/dist/src/extensions/Blocks/Recommendation/extension.d.ts +0 -9
  129. package/dist/src/extensions/Blocks/Recommendation/templates/{verticalTemplate.d.ts → blockTemplate.d.ts} +9 -13
  130. package/dist/src/extensions/Blocks/Recommendation/templates/{verticalMigrationTemplate.d.ts → migrationTemplate.d.ts} +4 -11
  131. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +21 -59
  132. package/dist/src/stores/editor.d.ts +21 -0
  133. package/dist/static/assets/desktop/desktop-mockup-center.svg.js +4 -0
  134. package/dist/static/assets/desktop/desktop-mockup-left.svg.js +4 -0
  135. package/dist/static/assets/desktop/desktop-mockup-right.svg.js +4 -0
  136. package/dist/static/assets/mobile/email-mockup.svg.js +4 -0
  137. package/dist/static/assets/mobile/inbox-mockup.svg.js +4 -0
  138. package/dist/static/styles/components/wide-panel.css.js +5 -1
  139. package/dist/static/styles/customEditorStyle.css.js +2 -38
  140. package/dist/stores/editor.js +1 -0
  141. package/package.json +3 -3
  142. package/dist/components/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue.js +0 -17
  143. package/dist/components/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue2.js +0 -20
  144. package/dist/extensions/Blocks/Recommendation/constants/blockIds.js +0 -4
  145. package/dist/extensions/Blocks/Recommendation/constants/controlIds.js +0 -4
  146. package/dist/extensions/Blocks/Recommendation/constants/selectors.js +0 -11
  147. package/dist/extensions/Blocks/Recommendation/controls/button/index.js +0 -64
  148. package/dist/extensions/Blocks/Recommendation/controls/cardBackground/index.js +0 -100
  149. package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +0 -243
  150. package/dist/extensions/Blocks/Recommendation/controls/image/index.js +0 -19
  151. package/dist/extensions/Blocks/Recommendation/controls/layout/index.js +0 -152
  152. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +0 -370
  153. package/dist/extensions/Blocks/Recommendation/controls/name/index.js +0 -46
  154. package/dist/extensions/Blocks/Recommendation/controls/name/textTrim.js +0 -76
  155. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/index.js +0 -44
  156. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.js +0 -48
  157. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.js +0 -73
  158. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.js +0 -73
  159. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/index.js +0 -48
  160. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.js +0 -73
  161. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.js +0 -73
  162. package/dist/extensions/Blocks/Recommendation/controls/price/index.js +0 -44
  163. package/dist/extensions/Blocks/Recommendation/controls/spacing/index.js +0 -224
  164. package/dist/extensions/Blocks/Recommendation/templates/horizontalElementRenderer.js +0 -157
  165. package/dist/extensions/Blocks/Recommendation/templates/horizontalTemplate.js +0 -78
  166. package/dist/extensions/Blocks/Recommendation/templates/verticalElementRenderer.js +0 -186
  167. package/dist/extensions/Blocks/Recommendation/templates/verticalMigrationTemplate.js +0 -256
  168. package/dist/extensions/Blocks/Recommendation/templates/verticalTemplate.js +0 -81
  169. package/dist/extensions/Blocks/Recommendation/utils/preserveTextStyles.js +0 -25
  170. package/dist/src/extensions/Blocks/Recommendation/constants/blockIds.d.ts +0 -13
  171. package/dist/src/extensions/Blocks/Recommendation/constants/index.d.ts +0 -11
  172. package/dist/src/extensions/Blocks/Recommendation/constants/selectors.d.ts +0 -19
  173. package/dist/src/extensions/Blocks/Recommendation/controls/button/index.d.ts +0 -143
  174. package/dist/src/extensions/Blocks/Recommendation/controls/cardBackground/index.d.ts +0 -41
  175. package/dist/src/extensions/Blocks/Recommendation/controls/cardComposition/index.d.ts +0 -95
  176. package/dist/src/extensions/Blocks/Recommendation/controls/image/index.d.ts +0 -35
  177. package/dist/src/extensions/Blocks/Recommendation/controls/index.d.ts +0 -23
  178. package/dist/src/extensions/Blocks/Recommendation/controls/layout/index.d.ts +0 -50
  179. package/dist/src/extensions/Blocks/Recommendation/controls/name/index.d.ts +0 -97
  180. package/dist/src/extensions/Blocks/Recommendation/controls/name/textTrim.d.ts +0 -16
  181. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/index.d.ts +0 -95
  182. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.d.ts +0 -100
  183. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.d.ts +0 -15
  184. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.d.ts +0 -15
  185. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/index.d.ts +0 -100
  186. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.d.ts +0 -15
  187. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.d.ts +0 -15
  188. package/dist/src/extensions/Blocks/Recommendation/controls/price/index.d.ts +0 -95
  189. package/dist/src/extensions/Blocks/Recommendation/controls/spacing/index.d.ts +0 -77
  190. package/dist/src/extensions/Blocks/Recommendation/templates/horizontalElementRenderer.d.ts +0 -8
  191. package/dist/src/extensions/Blocks/Recommendation/templates/horizontalMigrationTemplate.d.ts +0 -25
  192. package/dist/src/extensions/Blocks/Recommendation/templates/horizontalTemplate.d.ts +0 -28
  193. package/dist/src/extensions/Blocks/Recommendation/templates/verticalElementRenderer.d.ts +0 -7
  194. package/dist/src/extensions/Blocks/Recommendation/utils/preserveTextStyles.d.ts +0 -19
  195. package/dist/static/assets/inbox-mockup.svg.js +0 -4
  196. package/dist/static/assets/phone-mockup.svg.js +0 -4
@@ -1,4 +1,4 @@
1
- const o = { stripo: { version: "2.52.0" } }, s = {
1
+ const o = { stripo: { version: "2.47.0" } }, s = {
2
2
  guido: o
3
3
  };
4
4
  export {
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
2
+ export default _default;
@@ -0,0 +1,4 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {
2
+ handleSave: (isSilent: boolean) => Promise<import("../../../@types/stripo").SavedTemplateDetails | undefined>;
3
+ }, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
4
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
2
+ export default _default;
@@ -1,4 +1,4 @@
1
1
  declare const _default: import("vue").DefineComponent<{}, {
2
- handleSave: (isSilent: boolean) => Promise<import("../../../@types/stripo").SavedTemplateDetails | undefined>;
2
+ handleSave: (isSilent: boolean) => Promise<import("../../../@types/stripo.js").SavedTemplateDetails | undefined> | undefined;
3
3
  }, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
4
4
  export default _default;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Centralized Academy Links
3
+ *
4
+ * All external academy documentation links should be defined here
5
+ * for easy maintenance and domain migration.
6
+ */
7
+ export declare const ACADEMY_LINKS: {
8
+ readonly EMAIL_EDITOR: "https://academy.insiderone.com//docs/email-drag-and-drop-editor";
9
+ readonly GLOBAL_UNSUBSCRIBE: "https://academy.insiderone.com//docs/global-unsubscribe-preference-center";
10
+ readonly AMP_FOR_EMAILS: "https://academy.insiderone.com//docs/amp-for-emails";
11
+ };
12
+ export type AcademyLinkKey = keyof typeof ACADEMY_LINKS;
@@ -3,4 +3,3 @@ export declare const UI_EDITOR_SELECTOR = "ui-editor";
3
3
  export declare const CARD_COMPOSITION_TAB_SELECTOR = "button[role=\"tab\"][aria-label=\"Card Composition\"]";
4
4
  export declare const SETTINGS_TAB_SELECTOR = "button[role=\"tab\"][aria-label=\"Settings\"]";
5
5
  export declare const RIBBON_SELECTOR = ".in-ribbons-wrapper";
6
- export declare const ACADEMY_LINK = "https://academy.useinsider.com/docs/email-drag-drop-editor";
@@ -17,7 +17,6 @@ export declare const DEFAULT_UNSUBSCRIBE_GROUP: {
17
17
  readonly name: "Global Unsubscribe";
18
18
  readonly sendGridId: "G";
19
19
  };
20
- export declare const ACADEMY_LINK = "https://academy.useinsider.com/docs/global-unsubscribe-preference-center";
21
20
  export declare const UNSUBSCRIBE_PAGES_LINK = "/email/unsubscribe-pages";
22
21
  export declare const PAGE_TYPES: {
23
22
  GLOBAL_UNSUBSCRIBE: number;
@@ -0,0 +1,28 @@
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,3 +1,14 @@
1
+ /**
2
+ * Block IDs used in the Recommendation Extension
3
+ * These IDs are used in the esd-extension-block-id attribute to identify specific blocks
4
+ */
5
+ export declare enum RecommendationBlockId {
6
+ BUTTON = "recommendation-block-button",
7
+ NAME = "recommendation-block-name",
8
+ PRICE = "recommendation-block-price",
9
+ OLD_PRICE = "recommendation-block-old-price",
10
+ IMAGE = "recommendation-block-image"
11
+ }
1
12
  /**
2
13
  * Control IDs used in the Recommendation Extension
3
14
  * These IDs are returned by the getId() method of each control
@@ -21,7 +32,6 @@ export declare enum RecommendationControlId {
21
32
  NAME_PADDINGS = "recommendation-block-name-paddings-control",
22
33
  NAME_SIZE = "recommendation-block-name-size-control",
23
34
  NAME_STYLE = "recommendation-block-name-style-control",
24
- NAME_TEXT_TRIM = "recommendation-block-name-text-trim-control",
25
35
  PRICE_ALIGN = "recommendation-block-price-align-control",
26
36
  PRICE_BACKGROUND = "recommendation-block-price-background-control",
27
37
  PRICE_COLOR = "recommendation-block-price-color-control",
@@ -36,24 +46,6 @@ export declare enum RecommendationControlId {
36
46
  OLD_PRICE_PADDINGS = "recommendation-block-old-price-paddings-control",
37
47
  OLD_PRICE_SIZE = "recommendation-block-old-price-size-control",
38
48
  OLD_PRICE_STYLE = "recommendation-block-old-price-style-control",
39
- OMNIBUS_PRICE_ALIGN = "recommendation-block-omnibus-price-align-control",
40
- OMNIBUS_PRICE_BACKGROUND = "recommendation-block-omnibus-price-background-control",
41
- OMNIBUS_PRICE_COLOR = "recommendation-block-omnibus-price-color-control",
42
- OMNIBUS_PRICE_FONT_FAMILY = "recommendation-block-omnibus-price-font-family-control",
43
- OMNIBUS_PRICE_PADDINGS = "recommendation-block-omnibus-price-paddings-control",
44
- OMNIBUS_PRICE_SIZE = "recommendation-block-omnibus-price-size-control",
45
- OMNIBUS_PRICE_STYLE = "recommendation-block-omnibus-price-style-control",
46
- OMNIBUS_PRICE_TEXT_BEFORE = "recommendation-block-omnibus-price-text-before-control",
47
- OMNIBUS_PRICE_TEXT_AFTER = "recommendation-block-omnibus-price-text-after-control",
48
- OMNIBUS_DISCOUNT_ALIGN = "recommendation-block-omnibus-discount-align-control",
49
- OMNIBUS_DISCOUNT_BACKGROUND = "recommendation-block-omnibus-discount-background-control",
50
- OMNIBUS_DISCOUNT_COLOR = "recommendation-block-omnibus-discount-color-control",
51
- OMNIBUS_DISCOUNT_FONT_FAMILY = "recommendation-block-omnibus-discount-font-family-control",
52
- OMNIBUS_DISCOUNT_PADDINGS = "recommendation-block-omnibus-discount-paddings-control",
53
- OMNIBUS_DISCOUNT_SIZE = "recommendation-block-omnibus-discount-size-control",
54
- OMNIBUS_DISCOUNT_STYLE = "recommendation-block-omnibus-discount-style-control",
55
- OMNIBUS_DISCOUNT_TEXT_BEFORE = "recommendation-block-omnibus-discount-text-before-control",
56
- OMNIBUS_DISCOUNT_TEXT_AFTER = "recommendation-block-omnibus-discount-text-after-control",
57
49
  IMAGE_SIZE = "recommendation-block-image-size-control",
58
50
  IMAGE_MARGINS = "recommendation-block-image-margins-control"
59
51
  }
@@ -1,6 +1,4 @@
1
- import type { Orientation } from '@@/Types/recommendation';
2
- import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
3
- import { CommonControl } from '../../../common-control';
1
+ import { CommonControl } from '../common-control';
4
2
  export declare const CONTROL_BLOCK_ID = "ui-elements-recommendation-block";
5
3
  export declare class RecommendationBlockControl extends CommonControl {
6
4
  private store;
@@ -10,7 +8,6 @@ export declare class RecommendationBlockControl extends CommonControl {
10
8
  getId(): string;
11
9
  getTemplate(): string;
12
10
  onRender(): Promise<void>;
13
- onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
14
11
  onDestroy(): void;
15
12
  _setFormValues(): void;
16
13
  _initializeSelectItems(): void;
@@ -18,18 +15,10 @@ export declare class RecommendationBlockControl extends CommonControl {
18
15
  _getLanguages(): string;
19
16
  _getCurrency(): string;
20
17
  _getProductLayout(): string;
21
- /**
22
- * Gets the current layout orientation from the block's data attribute
23
- */
24
- _getCurrentLayout(): Orientation;
25
- /**
26
- * Updates "Products in One Row" visibility based on layout orientation
27
- * This control is hidden for horizontal layout (products always take full width)
28
- * Reads from store first (reliable during state transitions), falls back to DOM
29
- */
30
- _updateProductsInRowVisibility(): void;
31
18
  _getFilterStatus(): string;
32
19
  _getShuffleProducts(): string;
20
+ _getResponsive(): string;
21
+ _onFilterChange(value: boolean): void;
33
22
  _onFilterSelectClick(): void;
34
23
  _onDataChange(item: string, value: string | number | string[]): void;
35
24
  /**
@@ -37,11 +26,6 @@ export declare class RecommendationBlockControl extends CommonControl {
37
26
  */
38
27
  _getCardComposition(): string[];
39
28
  _regenerateProductRows(): void;
40
- /**
41
- * Reapply spacing values after product regeneration
42
- * This ensures spacing persists when products are regenerated
43
- */
44
- _reapplySpacing(): void;
45
29
  _debouncedRegenerateProductRows: import("@vueuse/shared").PromisifyFn<() => void>;
46
30
  _onCurrencyConfigChange(item: string, value: string | number): void;
47
31
  _onCurrencyChange(value: string): void;
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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
+ }
@@ -0,0 +1,5 @@
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,11 +1,2 @@
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
- */
10
1
  declare const _default: import("@stripoinc/ui-editor-extensions").Extension;
11
2
  export default _default;
@@ -1,20 +1,16 @@
1
1
  import type { RecommendationProduct } from '@@/Types/recommendation';
2
- import { DEFAULTS, spacer, getDefaultProducts, DEFAULT_CARD_COMPOSITION, DEFAULT_CARD_VISIBILITY } from './templateUtils';
3
- /**
4
- * Block template container for vertical layout
5
- * Uses native HTML elements for dynamic DOM update compatibility
6
- */
7
- 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 <tr>\n <td\n class=\"esd-block-text 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 </td>\n </tr>\n </tbody>\n </table>\n </td>\n </tr>\n \n <tr>\n <td class=\"spacer\" style=\"height: 10px;\"></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";
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;
8
5
  /**
9
- * Prepares vertical product rows with attribute-aligned structure.
10
- * Uses row-based rendering where each attribute type forms a single row across all products.
6
+ * Generates a custom template with specified products and layout
11
7
  * @param products - Array of products to display
12
8
  * @param productsPerRow - Number of products per row
13
- * @param composition - Array defining element order
14
- * @returns HTML string for product rows
9
+ * @param title - Optional title for the block
10
+ * @param composition - Optional array defining order of card elements
11
+ * @returns Complete HTML template
15
12
  */
16
- export declare function prepareProductRows(products: RecommendationProduct[], productsPerRow: number, composition?: string[]): string;
17
- export declare function getDefaultTemplate(): string;
18
13
  export declare function generateBlockTemplate(products: RecommendationProduct[], productsPerRow: number, title?: string, composition?: string[]): string;
19
- export { DEFAULTS, DEFAULT_CARD_COMPOSITION, DEFAULT_CARD_VISIBILITY, getDefaultProducts, spacer, };
14
+ export declare function prepareProductRows(products: RecommendationProduct[], productsPerRow: number, composition?: string[]): string;
15
+ export { DEFAULTS, DEFAULT_CARD_COMPOSITION, getDefaultProducts, };
20
16
  export default blockTemplate;
@@ -1,17 +1,9 @@
1
1
  import type { RecommendationProduct } from '@@/Types/recommendation';
2
- import { DEFAULTS, getDefaultProducts, DEFAULT_CARD_COMPOSITION, DEFAULT_CARD_VISIBILITY } from './templateUtils';
2
+ import { DEFAULTS, getDefaultProducts } from './templateUtils';
3
3
  declare const migrationTemplate = "\n <td\n align=\"left\"\n esd-extension-block-id=\"recommendation-block\"\n esd-handler-name=\"esd-extension-RecommendationBlock\"\n class=\"ins-recommendation-v3-block-v2 esd-block-recommendation-v3-block esd-extension-block es-p20\"\n >\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 <tr>\n {-{-TITLE-}-}\n </tr>\n </tbody>\n </table>\n </td>\n </tr>\n <tr>\n <td class=\"spacer\" style=\"height: 20px;\"></td>\n </tr>\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
- /**
5
- * Prepares migration product rows with attribute-aligned structure.
6
- * @param products - Array of products to display
7
- * @param productsPerRow - Number of products per row
8
- * @param composition - Array defining element order
9
- * @returns HTML string for product rows
10
- */
11
- export declare function prepareProductRows(products: RecommendationProduct[], productsPerRow: number, composition?: string[]): string;
12
4
  export declare function getMigrationTemplate(): string;
13
5
  /**
14
- * Generates a custom migration template with specified products and layout.
6
+ * Generates a custom migration template with specified products and layout
15
7
  * @param products - Array of products to display
16
8
  * @param productsPerRow - Number of products per row
17
9
  * @param title - Optional title for the block
@@ -19,5 +11,6 @@ export declare function getMigrationTemplate(): string;
19
11
  * @returns Complete HTML template
20
12
  */
21
13
  export declare function generateMigrationTemplate(products: RecommendationProduct[], productsPerRow: number, title?: string, composition?: string[]): string;
22
- export { DEFAULTS, DEFAULT_CARD_COMPOSITION, DEFAULT_CARD_VISIBILITY, getDefaultProducts, };
14
+ export declare function prepareProductRows(products: RecommendationProduct[], productsPerRow: number, composition?: string[]): string;
15
+ export { DEFAULTS, getDefaultProducts };
23
16
  export default migrationTemplate;