@useinsider/guido 1.0.3-beta.df886ce → 1.0.3-beta.dfb1fcf

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 (269) hide show
  1. package/README.md +0 -3
  2. package/dist/components/Guido.vue.js +1 -1
  3. package/dist/components/organisms/LoadingWrapper.vue.js +1 -1
  4. package/dist/components/organisms/header/RightSlot.vue2.js +13 -13
  5. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +18 -20
  6. package/dist/composables/useActionsApi.js +1 -1
  7. package/dist/composables/useBlocksConfig.js +2 -1
  8. package/dist/composables/useHtmlCompiler.js +13 -15
  9. package/dist/composables/useHtmlValidator.js +35 -36
  10. package/dist/composables/useStripo.js +12 -12
  11. package/dist/enums/extensions/recommendationBlock.js +2 -2
  12. package/dist/enums/onboarding.js +3 -7
  13. package/dist/extensions/Blocks/Checkbox/block.js +2 -5
  14. package/dist/extensions/Blocks/Checkbox/control.js +14 -15
  15. package/dist/extensions/Blocks/Checkbox/template.js +9 -14
  16. package/dist/extensions/Blocks/RadioButton/block.js +2 -5
  17. package/dist/extensions/Blocks/RadioButton/control.js +17 -18
  18. package/dist/extensions/Blocks/RadioButton/template.js +9 -18
  19. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +158 -68
  20. package/dist/extensions/Blocks/Recommendation/constants.js +10 -1
  21. package/dist/extensions/Blocks/Recommendation/control.js +74 -59
  22. package/dist/extensions/Blocks/Recommendation/controls/cardBackgroundColorControl.js +68 -0
  23. package/dist/extensions/Blocks/Recommendation/controls/index.js +272 -0
  24. package/dist/extensions/Blocks/Recommendation/controls/nameTextTrimControl.js +74 -0
  25. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscountTextAfterControl.js +71 -0
  26. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscountTextBeforeControl.js +71 -0
  27. package/dist/extensions/Blocks/Recommendation/controls/omnibusPriceTextAfterControl.js +71 -0
  28. package/dist/extensions/Blocks/Recommendation/controls/omnibusPriceTextBeforeControl.js +71 -0
  29. package/dist/extensions/Blocks/Recommendation/controls/priceHideControl.js +60 -0
  30. package/dist/extensions/Blocks/Recommendation/controls/priceInlineLayoutControl.js +160 -0
  31. package/dist/extensions/Blocks/Recommendation/controls/spacingControl.js +188 -0
  32. package/dist/extensions/Blocks/Recommendation/extension.js +16 -40
  33. package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +43 -43
  34. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +124 -71
  35. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +89 -65
  36. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +56 -19
  37. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +74 -45
  38. package/dist/extensions/Blocks/Recommendation/utils/preserveTextStyles.js +25 -0
  39. package/dist/extensions/Blocks/Unsubscribe/block.js +41 -45
  40. package/dist/extensions/Blocks/common-control.js +110 -174
  41. package/dist/extensions/Blocks/controlFactories.js +62 -51
  42. package/dist/guido.css +1 -1
  43. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +157 -197
  44. package/dist/node_modules/lodash-es/_arrayLikeKeys.js +12 -13
  45. package/dist/node_modules/lodash-es/keysIn.js +3 -3
  46. package/dist/package.json.js +1 -1
  47. package/dist/services/recommendationApi.js +19 -13
  48. package/dist/src/enums/onboarding.d.ts +0 -4
  49. package/dist/src/extensions/Blocks/Checkbox/block.d.ts +0 -1
  50. package/dist/src/extensions/Blocks/Checkbox/template.d.ts +1 -1
  51. package/dist/src/extensions/Blocks/RadioButton/block.d.ts +0 -1
  52. package/dist/src/extensions/Blocks/RadioButton/template.d.ts +1 -1
  53. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +54 -3
  54. package/dist/src/extensions/Blocks/Recommendation/constants.d.ts +41 -1
  55. package/dist/src/extensions/Blocks/Recommendation/control.d.ts +5 -2
  56. package/dist/src/extensions/Blocks/Recommendation/controls/cardBackgroundColorControl.d.ts +25 -0
  57. package/dist/src/extensions/Blocks/Recommendation/controls/index.d.ts +71 -0
  58. package/dist/src/extensions/Blocks/Recommendation/controls/nameTextTrimControl.d.ts +16 -0
  59. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscountTextAfterControl.d.ts +15 -0
  60. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscountTextBeforeControl.d.ts +15 -0
  61. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPriceTextAfterControl.d.ts +15 -0
  62. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPriceTextBeforeControl.d.ts +15 -0
  63. package/dist/src/extensions/Blocks/Recommendation/controls/priceHideControl.d.ts +16 -0
  64. package/dist/src/extensions/Blocks/Recommendation/controls/priceInlineLayoutControl.d.ts +50 -0
  65. package/dist/src/extensions/Blocks/Recommendation/controls/spacingControl.d.ts +60 -0
  66. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +3 -3
  67. package/dist/src/extensions/Blocks/Recommendation/templates/migrationTemplate.d.ts +1 -1
  68. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +15 -7
  69. package/dist/src/extensions/Blocks/Recommendation/utils/preserveTextStyles.d.ts +19 -0
  70. package/dist/src/extensions/Blocks/Unsubscribe/block.d.ts +4 -3
  71. package/dist/src/extensions/Blocks/common-control.d.ts +7 -44
  72. package/dist/src/extensions/Blocks/controlFactories.d.ts +24 -241
  73. package/dist/src/stores/onboarding.d.ts +0 -334
  74. package/dist/static/styles/components/wide-panel.css.js +0 -4
  75. package/dist/static/styles/customEditorStyle.css.js +15 -1
  76. package/dist/stores/onboarding.js +12 -20
  77. package/dist/utils/genericUtil.js +17 -16
  78. package/package.json +4 -6
  79. package/dist/components/organisms/onboarding/ItemsOnboarding.vue.js +0 -21
  80. package/dist/components/organisms/onboarding/ItemsOnboarding.vue2.js +0 -99
  81. package/dist/config/compiler/itemsCompilerRules.js +0 -14
  82. package/dist/extensions/Blocks/Items/block.js +0 -67
  83. package/dist/extensions/Blocks/Items/controls/button/link.js +0 -68
  84. package/dist/extensions/Blocks/Items/controls/cardComposition.js +0 -193
  85. package/dist/extensions/Blocks/Items/controls/image/link.js +0 -68
  86. package/dist/extensions/Blocks/Items/controls/index.js +0 -217
  87. package/dist/extensions/Blocks/Items/controls/name/trimming.js +0 -70
  88. package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +0 -107
  89. package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +0 -123
  90. package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +0 -76
  91. package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +0 -61
  92. package/dist/extensions/Blocks/Items/controls/price/priceOrientation.js +0 -92
  93. package/dist/extensions/Blocks/Items/controls/settingsControl.js +0 -316
  94. package/dist/extensions/Blocks/Items/enums/controlEnums.js +0 -5
  95. package/dist/extensions/Blocks/Items/enums/productEnums.js +0 -274
  96. package/dist/extensions/Blocks/Items/enums/settingsEnums.js +0 -77
  97. package/dist/extensions/Blocks/Items/extension.js +0 -20
  98. package/dist/extensions/Blocks/Items/iconsRegistry.js +0 -32
  99. package/dist/extensions/Blocks/Items/items.css.js +0 -23
  100. package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +0 -62
  101. package/dist/extensions/Blocks/Items/layouts/vertical.html.js +0 -72
  102. package/dist/extensions/Blocks/Items/settingsPanel.js +0 -132
  103. package/dist/extensions/Blocks/Items/store/items-block.js +0 -75
  104. package/dist/extensions/Blocks/Items/template.js +0 -195
  105. package/dist/extensions/Blocks/Items/utils/configBlockUtils.js +0 -17
  106. package/dist/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.js +0 -28
  107. package/dist/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.js +0 -76
  108. package/dist/extensions/Blocks/Items/utils/updateAttributes.js +0 -46
  109. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
  110. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
  111. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
  112. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
  113. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
  114. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
  115. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
  116. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
  117. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
  118. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
  119. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
  120. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
  121. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
  122. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
  123. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
  124. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
  125. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
  126. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
  127. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
  128. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
  129. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
  130. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
  131. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
  132. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
  133. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
  134. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
  135. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
  136. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
  137. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
  138. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
  139. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
  140. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
  141. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
  142. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
  143. package/dist/node_modules/lodash-es/_DataView.js +0 -6
  144. package/dist/node_modules/lodash-es/_Promise.js +0 -6
  145. package/dist/node_modules/lodash-es/_Set.js +0 -6
  146. package/dist/node_modules/lodash-es/_SetCache.js +0 -13
  147. package/dist/node_modules/lodash-es/_WeakMap.js +0 -6
  148. package/dist/node_modules/lodash-es/_arrayFilter.js +0 -10
  149. package/dist/node_modules/lodash-es/_arrayMap.js +0 -8
  150. package/dist/node_modules/lodash-es/_arrayPush.js +0 -8
  151. package/dist/node_modules/lodash-es/_arraySome.js +0 -9
  152. package/dist/node_modules/lodash-es/_baseEach.js +0 -6
  153. package/dist/node_modules/lodash-es/_baseFlatten.js +0 -13
  154. package/dist/node_modules/lodash-es/_baseForOwn.js +0 -8
  155. package/dist/node_modules/lodash-es/_baseGet.js +0 -11
  156. package/dist/node_modules/lodash-es/_baseGetAllKeys.js +0 -9
  157. package/dist/node_modules/lodash-es/_baseHasIn.js +0 -6
  158. package/dist/node_modules/lodash-es/_baseIsEqual.js +0 -8
  159. package/dist/node_modules/lodash-es/_baseIsEqualDeep.js +0 -32
  160. package/dist/node_modules/lodash-es/_baseIsMatch.js +0 -29
  161. package/dist/node_modules/lodash-es/_baseIteratee.js +0 -11
  162. package/dist/node_modules/lodash-es/_baseKeys.js +0 -14
  163. package/dist/node_modules/lodash-es/_baseMap.js +0 -11
  164. package/dist/node_modules/lodash-es/_baseMatches.js +0 -12
  165. package/dist/node_modules/lodash-es/_baseMatchesProperty.js +0 -17
  166. package/dist/node_modules/lodash-es/_baseProperty.js +0 -8
  167. package/dist/node_modules/lodash-es/_basePropertyDeep.js +0 -9
  168. package/dist/node_modules/lodash-es/_baseRange.js +0 -9
  169. package/dist/node_modules/lodash-es/_baseToString.js +0 -18
  170. package/dist/node_modules/lodash-es/_baseTrim.js +0 -8
  171. package/dist/node_modules/lodash-es/_cacheHas.js +0 -6
  172. package/dist/node_modules/lodash-es/_castPath.js +0 -10
  173. package/dist/node_modules/lodash-es/_createBaseEach.js +0 -15
  174. package/dist/node_modules/lodash-es/_createRange.js +0 -11
  175. package/dist/node_modules/lodash-es/_equalArrays.js +0 -40
  176. package/dist/node_modules/lodash-es/_equalByTag.js +0 -45
  177. package/dist/node_modules/lodash-es/_equalObjects.js +0 -36
  178. package/dist/node_modules/lodash-es/_getAllKeys.js +0 -9
  179. package/dist/node_modules/lodash-es/_getMatchData.js +0 -12
  180. package/dist/node_modules/lodash-es/_getSymbols.js +0 -10
  181. package/dist/node_modules/lodash-es/_getTag.js +0 -28
  182. package/dist/node_modules/lodash-es/_hasPath.js +0 -19
  183. package/dist/node_modules/lodash-es/_isFlattenable.js +0 -10
  184. package/dist/node_modules/lodash-es/_isKey.js +0 -12
  185. package/dist/node_modules/lodash-es/_isStrictComparable.js +0 -7
  186. package/dist/node_modules/lodash-es/_mapToArray.js +0 -9
  187. package/dist/node_modules/lodash-es/_matchesStrictComparable.js +0 -8
  188. package/dist/node_modules/lodash-es/_memoizeCapped.js +0 -11
  189. package/dist/node_modules/lodash-es/_nativeKeys.js +0 -5
  190. package/dist/node_modules/lodash-es/_setCacheAdd.js +0 -7
  191. package/dist/node_modules/lodash-es/_setCacheHas.js +0 -6
  192. package/dist/node_modules/lodash-es/_setToArray.js +0 -9
  193. package/dist/node_modules/lodash-es/_stringToPath.js +0 -10
  194. package/dist/node_modules/lodash-es/_toKey.js +0 -10
  195. package/dist/node_modules/lodash-es/_trimmedEndIndex.js +0 -9
  196. package/dist/node_modules/lodash-es/flatMap.js +0 -8
  197. package/dist/node_modules/lodash-es/get.js +0 -8
  198. package/dist/node_modules/lodash-es/hasIn.js +0 -8
  199. package/dist/node_modules/lodash-es/isSymbol.js +0 -9
  200. package/dist/node_modules/lodash-es/keys.js +0 -9
  201. package/dist/node_modules/lodash-es/map.js +0 -11
  202. package/dist/node_modules/lodash-es/property.js +0 -10
  203. package/dist/node_modules/lodash-es/range.js +0 -5
  204. package/dist/node_modules/lodash-es/stubArray.js +0 -6
  205. package/dist/node_modules/lodash-es/toFinite.js +0 -14
  206. package/dist/node_modules/lodash-es/toNumber.js +0 -22
  207. package/dist/node_modules/lodash-es/toString.js +0 -7
  208. package/dist/src/components/organisms/onboarding/ItemsOnboarding.vue.d.ts +0 -2
  209. package/dist/src/config/compiler/itemsCompilerRules.d.ts +0 -2
  210. package/dist/src/extensions/Blocks/Items/block.d.ts +0 -27
  211. package/dist/src/extensions/Blocks/Items/controls/button/link.d.ts +0 -14
  212. package/dist/src/extensions/Blocks/Items/controls/cardComposition.d.ts +0 -33
  213. package/dist/src/extensions/Blocks/Items/controls/image/link.d.ts +0 -14
  214. package/dist/src/extensions/Blocks/Items/controls/index.d.ts +0 -501
  215. package/dist/src/extensions/Blocks/Items/controls/name/trimming.d.ts +0 -14
  216. package/dist/src/extensions/Blocks/Items/controls/price/currencyLocation.d.ts +0 -19
  217. package/dist/src/extensions/Blocks/Items/controls/price/currencySymbol.d.ts +0 -21
  218. package/dist/src/extensions/Blocks/Items/controls/price/formattedPrice.d.ts +0 -14
  219. package/dist/src/extensions/Blocks/Items/controls/price/hideDiscount.d.ts +0 -13
  220. package/dist/src/extensions/Blocks/Items/controls/price/priceOrientation.d.ts +0 -15
  221. package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +0 -48
  222. package/dist/src/extensions/Blocks/Items/enums/controlEnums.d.ts +0 -62
  223. package/dist/src/extensions/Blocks/Items/enums/productEnums.d.ts +0 -163
  224. package/dist/src/extensions/Blocks/Items/enums/settingsEnums.d.ts +0 -50
  225. package/dist/src/extensions/Blocks/Items/extension.d.ts +0 -2
  226. package/dist/src/extensions/Blocks/Items/iconsRegistry.d.ts +0 -4
  227. package/dist/src/extensions/Blocks/Items/settingsPanel.d.ts +0 -4
  228. package/dist/src/extensions/Blocks/Items/store/items-block.d.ts +0 -43
  229. package/dist/src/extensions/Blocks/Items/template.d.ts +0 -24
  230. package/dist/src/extensions/Blocks/Items/utils/configBlockUtils.d.ts +0 -23
  231. package/dist/src/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.d.ts +0 -32
  232. package/dist/src/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.d.ts +0 -50
  233. package/dist/src/extensions/Blocks/Items/utils/updateAttributes.d.ts +0 -8
  234. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +0 -5
  235. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +0 -5
  236. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +0 -5
  237. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +0 -5
  238. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +0 -5
  239. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +0 -5
  240. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +0 -5
  241. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +0 -5
  242. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +0 -5
  243. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +0 -5
  244. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +0 -5
  245. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +0 -5
  246. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +0 -5
  247. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +0 -5
  248. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
  249. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +0 -5
  250. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +0 -5
  251. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +0 -5
  252. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +0 -5
  253. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +0 -5
  254. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +0 -5
  255. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
  256. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +0 -5
  257. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +0 -5
  258. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +0 -5
  259. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +0 -5
  260. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +0 -5
  261. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +0 -5
  262. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
  263. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +0 -5
  264. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +0 -5
  265. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +0 -5
  266. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +0 -5
  267. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +0 -5
  268. package/dist/src/utils/pairProductVariables.d.ts +0 -7
  269. package/dist/utils/pairProductVariables.js +0 -136
@@ -0,0 +1,60 @@
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
+ getId(): string;
11
+ getTemplate(): string;
12
+ onRender(): void;
13
+ onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
14
+ /**
15
+ * Reads spacing values from data attributes or returns defaults
16
+ */
17
+ _setFormValues(): void;
18
+ /**
19
+ * Gets stored column spacing from the first product card wrapper's parent element's padding
20
+ * Reads the actual padding value instead of relying on data attributes
21
+ *
22
+ * The padding is applied as "0 {halfSpacing}px" on the parent TD element,
23
+ * so we need to extract the horizontal padding value and multiply by 2 to get total spacing.
24
+ */
25
+ _getStoredColumnSpacing(): number;
26
+ /**
27
+ * Gets stored row spacing from the first spacer element's height style
28
+ * Reads the actual height value instead of relying on data attributes
29
+ */
30
+ _getStoredRowSpacing(): number;
31
+ /**
32
+ * Handles column spacing changes
33
+ * Applies horizontal padding to all product card wrappers
34
+ */
35
+ _onColumnSpacingChange(spacing: number): void;
36
+ /**
37
+ * Handles row spacing changes
38
+ * Applies height to all spacer elements between product rows
39
+ */
40
+ _onRowSpacingChange(spacing: number): void;
41
+ /**
42
+ * Stores column spacing value in block data attribute
43
+ */
44
+ _storeColumnSpacing(spacing: number): void;
45
+ /**
46
+ * Stores row spacing value in block data attribute
47
+ */
48
+ _storeRowSpacing(spacing: number): void;
49
+ _listenToFormUpdates(): void;
50
+ /**
51
+ * Debounced version of _onColumnSpacingChange
52
+ * Prevents excessive DOM updates when user rapidly adjusts the counter
53
+ */
54
+ _debouncedOnColumnSpacingChange: import("@vueuse/shared").PromisifyFn<(spacing: number) => void>;
55
+ /**
56
+ * Debounced version of _onRowSpacingChange
57
+ * Prevents excessive DOM updates when user rapidly adjusts the counter
58
+ */
59
+ _debouncedOnRowSpacingChange: import("@vueuse/shared").PromisifyFn<(spacing: number) => void>;
60
+ }
@@ -1,6 +1,6 @@
1
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";
2
+ import { DEFAULTS, getDefaultProducts, DEFAULT_CARD_COMPOSITION, DEFAULT_CARD_VISIBILITY } from './templateUtils';
3
+ declare const blockTemplate = "\n <td\n align=\"left\"\n class=\"ins-recommendation-v3-block-v2 es-p20\"\n data-price-inline=\"0\">\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: 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";
4
4
  export declare function getDefaultTemplate(): string;
5
5
  /**
6
6
  * Generates a custom template with specified products and layout
@@ -12,5 +12,5 @@ export declare function getDefaultTemplate(): string;
12
12
  */
13
13
  export declare function generateBlockTemplate(products: RecommendationProduct[], productsPerRow: number, title?: string, composition?: string[]): string;
14
14
  export declare function prepareProductRows(products: RecommendationProduct[], productsPerRow: number, composition?: string[]): string;
15
- export { DEFAULTS, DEFAULT_CARD_COMPOSITION, getDefaultProducts, };
15
+ export { DEFAULTS, DEFAULT_CARD_COMPOSITION, DEFAULT_CARD_VISIBILITY, getDefaultProducts, };
16
16
  export default blockTemplate;
@@ -1,6 +1,6 @@
1
1
  import type { RecommendationProduct } from '@@/Types/recommendation';
2
2
  import { DEFAULTS, getDefaultProducts } from './templateUtils';
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";
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 es-p20 esd-recommendation-block esd-extension-block esd-container-frame\"\n data-price-inline=\"0\">\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
4
  export declare function getMigrationTemplate(): string;
5
5
  /**
6
6
  * Generates a custom migration template with specified products and layout
@@ -1,10 +1,13 @@
1
1
  import type { RecommendationProduct } from '@@/Types/recommendation';
2
+ import { ATTR_PRODUCT_IMAGE, ATTR_PRODUCT_NAME, ATTR_PRODUCT_PRICE, ATTR_PRODUCT_OLD_PRICE, ATTR_PRODUCT_OMNIBUS_PRICE, ATTR_PRODUCT_OMNIBUS_DISCOUNT, ATTR_PRODUCT_BUTTON } from '../constants';
2
3
  export interface ElementRenderer {
3
- productImage: (product: RecommendationProduct) => string;
4
- productName: (product: RecommendationProduct) => string;
5
- productPrice: (product: RecommendationProduct) => string;
6
- productOldPrice: (product: RecommendationProduct) => string;
7
- productButton: (product: RecommendationProduct) => string;
4
+ [ATTR_PRODUCT_IMAGE]: (product: RecommendationProduct) => string;
5
+ [ATTR_PRODUCT_NAME]: (product: RecommendationProduct) => string;
6
+ [ATTR_PRODUCT_PRICE]: (product: RecommendationProduct) => string;
7
+ [ATTR_PRODUCT_OLD_PRICE]: (product: RecommendationProduct) => string;
8
+ [ATTR_PRODUCT_OMNIBUS_PRICE]: (product: RecommendationProduct) => string;
9
+ [ATTR_PRODUCT_OMNIBUS_DISCOUNT]: (product: RecommendationProduct) => string;
10
+ [ATTR_PRODUCT_BUTTON]: (product: RecommendationProduct) => string;
8
11
  }
9
12
  export interface TemplateConfig {
10
13
  spacer: string;
@@ -17,10 +20,15 @@ export declare const DEFAULTS: {
17
20
  TITLE: string;
18
21
  DESCRIPTION: string;
19
22
  };
20
- export declare const spacer = "\n <tr>\n <td class=\"spacer\" style=\"height: 20px;\"></td>\n </tr>\n";
21
- export declare const productRow = "\n <tr>\n <td>\n <table width=\"100%\" height=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n {-{-PRODUCTS-}-}\n </table>\n </td>\n </tr>\n";
23
+ export declare const spacer = "\n <tr>\n <td class=\"spacer\" style=\"height: 10px;\"></td>\n </tr>\n";
24
+ export declare const productRow = "\n <tr class=\"recommendation-product-row\">\n <td>\n <table width=\"100%\" height=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n {-{-PRODUCTS-}-}\n </table>\n </td>\n </tr>\n";
22
25
  export declare const productCardWrapper = "\n <td width=\"{-{-COLUMN_WIDTH-}-}\" style=\"padding: 0 5px;\" valign=\"top\" height=\"100%\">\n <table\n width=\"100%\"\n height=\"100%\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n border=\"0\"\n class=\"product-card-wrapper\">\n <tr>\n <td\n class=\"product-attribute-cell\"\n valign=\"top\">\n <table cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\">\n <tbody>\n {-{-PRODUCT_CONTENT-}-}\n </tbody>\n </table>\n </td>\n </tr>\n </table>\n </td>\n";
23
26
  export declare const DEFAULT_CARD_COMPOSITION: string[];
27
+ /**
28
+ * Default visibility settings for card composition elements
29
+ * Omnibus Price and Omnibus Discount are hidden by default
30
+ */
31
+ export declare const DEFAULT_CARD_VISIBILITY: Record<string, boolean>;
24
32
  export declare function getDefaultProducts(): RecommendationProduct[];
25
33
  /**
26
34
  * Core template generation logic that works with any element renderer
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Utility for preserving text styling when updating innerHTML
3
+ */
4
+ import type { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
5
+ /**
6
+ * Preserves existing style tags when updating text content
7
+ *
8
+ * When users apply text styles (bold, italic, etc.) in Stripo, the editor wraps
9
+ * content in tags like <strong>, <em>, <u>, <s>. This function extracts those
10
+ * style tags from the original HTML and re-applies them to the new text content.
11
+ * @example
12
+ * // Original: <span class="omnibus-text-before"><strong>Lowest price: </strong></span>
13
+ * // After calling preserveTextStyles(element, 'Best price: ')
14
+ * // Result: <strong>Best price: </strong>
15
+ * @param element - The DOM element or ImmutableHtmlNode containing the styled text
16
+ * @param newText - The new text content to insert
17
+ * @returns The new text wrapped in the original style tags
18
+ */
19
+ export declare function preserveTextStyles(element: ImmutableHtmlNode | Element, newText: string): string;
@@ -1,4 +1,4 @@
1
- import type { ImmutableHtmlElementNode } from '@stripoinc/ui-editor-extensions';
1
+ import type { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
2
  import { Block, BlockCompositionType } from '@stripoinc/ui-editor-extensions';
3
3
  export declare const UNSUBSCRIBE_BLOCK_ID = "unsubscribe-block";
4
4
  export declare class UnsubscribeBlock extends Block {
@@ -12,8 +12,9 @@ export declare class UnsubscribeBlock extends Block {
12
12
  getName(): string;
13
13
  getDescription(): string;
14
14
  getTemplate(): string;
15
- onSelect(node: ImmutableHtmlElementNode): void;
16
- onDelete(node: ImmutableHtmlElementNode): void;
15
+ onCreated(node: ImmutableHtmlNode): void;
16
+ onSelect(node: ImmutableHtmlNode): undefined;
17
+ onDelete(node: ImmutableHtmlNode): undefined;
17
18
  onDestroy(): void;
18
19
  private _setupSelectEventListener;
19
20
  private _removeSelectEventListener;
@@ -1,10 +1,8 @@
1
- import { TextValueObject } from '@@/Types/generic';
2
- import { Control, ImmutableHtmlElementNode, ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
1
+ import { Control, ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
3
2
  interface TextInputProps {
4
3
  name: string;
5
4
  placeholder?: string;
6
5
  className?: string;
7
- disabled?: boolean;
8
6
  }
9
7
  interface LabelProps {
10
8
  text: string;
@@ -19,7 +17,10 @@ interface IconButtonProps {
19
17
  interface SelectProps {
20
18
  name: string;
21
19
  placeholder: string;
22
- options: TextValueObject[];
20
+ options: {
21
+ text: string;
22
+ value: string;
23
+ }[];
23
24
  className?: string;
24
25
  }
25
26
  interface CounterProps {
@@ -28,15 +29,6 @@ interface CounterProps {
28
29
  minValue?: number;
29
30
  step?: number;
30
31
  }
31
- interface RadioButtonProps {
32
- name: string;
33
- buttons: {
34
- text?: string;
35
- value: string;
36
- icon?: string;
37
- }[];
38
- id?: string;
39
- }
40
32
  interface ButtonProps {
41
33
  name: string;
42
34
  label: string;
@@ -48,33 +40,11 @@ interface ButtonProps {
48
40
  */
49
41
  export declare abstract class CommonControl extends Control {
50
42
  currentNode?: ImmutableHtmlNode;
51
- protected lastBlockInstanceId: string | null;
52
43
  abstract getId(): string;
53
44
  abstract getTemplate(): string;
54
45
  abstract onRender(): Promise<void> | void;
55
46
  getContainer(): ShadowRoot;
56
47
  onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
57
- onDestroy(): void;
58
- /**
59
- * Gets the config block element from the current node.
60
- * @returns The config block element or null if not found
61
- */
62
- protected getConfigBlock(): ImmutableHtmlElementNode | null;
63
- /**
64
- * Gets the current block instance ID from the config block.
65
- * @param blockInstanceIdAttribute - The attribute name for block instance ID (default: 'data-block-instance-id')
66
- * @returns The block instance ID or null if not found
67
- */
68
- protected getBlockInstanceId(blockInstanceIdAttribute?: string): string | null;
69
- /**
70
- * Handles block instance change detection and syncing.
71
- * This is a helper method for controls that need to sync attributes when switching between block instances.
72
- * @param syncFunction - Function to call when block instance changes (to sync from attributes)
73
- * @param updateUI - Function to call to update the UI (called both on change and when same block)
74
- * @param blockInstanceIdAttribute - The attribute name for block instance ID (default: 'data-block-instance-id')
75
- * @returns true if block instance changed, false otherwise
76
- */
77
- protected handleBlockInstanceChange(syncFunction: (node: ImmutableHtmlNode) => void, updateUI: () => void, blockInstanceIdAttribute?: string): boolean;
78
48
  _GuLabel({ text, name, position }: LabelProps): string;
79
49
  _GuToggle(name: string): string;
80
50
  _GuSelectItem({ text, value }: {
@@ -82,14 +52,8 @@ export declare abstract class CommonControl extends Control {
82
52
  value: string;
83
53
  }): string;
84
54
  _GuSelect({ name, placeholder, options, className }: SelectProps): string;
85
- _GuTextInput({ name, placeholder, className, disabled }: TextInputProps): string;
55
+ _GuTextInput({ name, placeholder, className }: TextInputProps): string;
86
56
  _GuCounter({ name, maxValue, minValue, step }: CounterProps): string;
87
- _GuRadioButtonItem({ text, value, icon }: {
88
- text?: string;
89
- value: string;
90
- icon?: string;
91
- }): string;
92
- _GuRadioButton({ name, buttons, id }: RadioButtonProps): string;
93
57
  _GuButton({ name, label, id }: ButtonProps): string;
94
58
  /**
95
59
  *
@@ -97,8 +61,7 @@ export declare abstract class CommonControl extends Control {
97
61
  * @returns It returns a button with an icon.
98
62
  */
99
63
  _GuIconButton({ name, icon, className }: IconButtonProps): string;
100
- _GuOneColumn(children: string[], className?: string): string;
101
- _GuTwoColumns(children: string[], className?: string): string;
64
+ _GuTwoColumns(children: string[]): string;
102
65
  /**
103
66
  * Creates an orderable (sortable) list control
104
67
  * @param name - The control name for value binding
@@ -9,304 +9,87 @@
9
9
  * extensive type assertions throughout the file. The generated controls are type-safe
10
10
  * at runtime and follow the exact same patterns as manually-written control classes.
11
11
  */
12
- import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
13
12
  /**
14
13
  * Factory function to create text align controls for different block elements
15
14
  */
16
- export declare function createTextAlignControl(controlId: string, targetBlockId: string, containerSelector: string): {
17
- new (): {
18
- getId(): string;
19
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
20
- getParentControlId(): string;
21
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
22
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
23
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
24
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
25
- isVisible(_node: ImmutableHtmlNode): boolean;
26
- };
27
- };
15
+ export declare function createTextAlignControl(controlId: string, targetBlockId: string, containerSelector: string): any;
28
16
  /**
29
17
  * Factory function to create text color controls for different block elements
30
18
  */
31
- export declare function createTextColorControl(controlId: string, targetBlockId: string, containerSelector?: string): {
32
- new (): {
33
- getId(): string;
34
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
35
- getParentControlId(): string;
36
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
37
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
38
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
39
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
40
- isVisible(_node: ImmutableHtmlNode): boolean;
41
- };
42
- };
19
+ export declare function createTextColorControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
43
20
  /**
44
21
  * Factory function to create text size controls for different block elements
45
22
  */
46
- export declare function createTextSizeControl(controlId: string, targetBlockId: string, containerSelector?: string): {
47
- new (): {
48
- getId(): string;
49
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
50
- getParentControlId(): string;
51
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
52
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
53
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
54
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
55
- isVisible(_node: ImmutableHtmlNode): boolean;
56
- };
57
- };
23
+ export declare function createTextSizeControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
58
24
  /**
59
25
  * Factory function to create text style controls for different block elements
60
26
  */
61
- export declare function createTextStyleControl(controlId: string, targetBlockId: string, containerSelector?: string): {
62
- new (): {
63
- getId(): string;
64
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
65
- getParentControlId(): string;
66
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
67
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
68
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
69
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
70
- isVisible(_node: ImmutableHtmlNode): boolean;
71
- };
72
- };
27
+ export declare function createTextStyleControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
73
28
  /**
74
29
  * Factory function to create text font family controls for different block elements
75
30
  */
76
- export declare function createTextFontFamilyControl(controlId: string, targetBlockId: string, containerSelector?: string): {
77
- new (): {
78
- getId(): string;
79
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
80
- getParentControlId(): string;
81
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
82
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
83
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
84
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
85
- isVisible(_node: ImmutableHtmlNode): boolean;
86
- };
87
- };
31
+ export declare function createTextFontFamilyControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
88
32
  /**
89
33
  * Factory function to create text background color controls for different block elements
90
34
  */
91
- export declare function createTextBackgroundColorControl(controlId: string, targetBlockId: string, containerSelector?: string): {
92
- new (): {
93
- getId(): string;
94
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
95
- getParentControlId(): string;
96
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
97
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
98
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
99
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
100
- isVisible(_node: ImmutableHtmlNode): boolean;
101
- };
102
- };
35
+ export declare function createTextBackgroundColorControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
103
36
  /**
104
37
  * Factory function to create paddings controls for different block elements
105
38
  */
106
- export declare function createPaddingsControl(controlId: string, targetBlockId: string, containerSelector?: string): {
107
- new (): {
108
- getId(): string;
109
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
110
- getParentControlId(): string;
111
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
112
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
113
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
114
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
115
- isVisible(_node: ImmutableHtmlNode): boolean;
116
- };
117
- };
39
+ export declare function createPaddingsControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
40
+ /**
41
+ * Factory function to create text line spacing controls for different block elements
42
+ */
43
+ export declare function createTextLineSpacingControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
118
44
  /**
119
45
  * Factory function to create button align controls for different block elements
120
46
  */
121
- export declare function createButtonAlignControl(controlId: string, targetBlockId: string, containerSelector?: string): {
122
- new (): {
123
- getId(): string;
124
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
125
- getParentControlId(): string;
126
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
127
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
128
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
129
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
130
- isVisible(_node: ImmutableHtmlNode): boolean;
131
- };
132
- };
47
+ export declare function createButtonAlignControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
133
48
  /**
134
49
  * Factory function to create button color controls for different block elements
135
50
  */
136
- export declare function createButtonColorControl(controlId: string, targetBlockId: string, containerSelector?: string): {
137
- new (): {
138
- getId(): string;
139
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
140
- getParentControlId(): string;
141
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
142
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
143
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
144
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
145
- isVisible(_node: ImmutableHtmlNode): boolean;
146
- };
147
- };
51
+ export declare function createButtonColorControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
148
52
  /**
149
53
  * Factory function to create button border controls for different block elements
150
54
  */
151
- export declare function createButtonBorderControl(controlId: string, targetBlockId: string, containerSelector?: string): {
152
- new (): {
153
- getId(): string;
154
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
155
- getParentControlId(): string;
156
- getLabels(): import("@stripoinc/ui-editor-extensions").ButtonBorderControlLabels | undefined;
157
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
158
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
159
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
160
- isVisible(_node: ImmutableHtmlNode): boolean;
161
- };
162
- };
55
+ export declare function createButtonBorderControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
163
56
  /**
164
57
  * Factory function to create button border radius controls for different block elements
165
58
  */
166
- export declare function createButtonBorderRadiusControl(controlId: string, targetBlockId: string, containerSelector?: string): {
167
- new (): {
168
- getId(): string;
169
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
170
- getParentControlId(): string;
171
- getLabels(): import("@stripoinc/ui-editor-extensions").ButtonBorderRadiusControlLabels | undefined;
172
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
173
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
174
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
175
- isVisible(_node: ImmutableHtmlNode): boolean;
176
- };
177
- };
59
+ export declare function createButtonBorderRadiusControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
178
60
  /**
179
61
  * Factory function to create button font family controls for different block elements
180
62
  */
181
- export declare function createButtonFontFamilyControl(controlId: string, targetBlockId: string, containerSelector?: string): {
182
- new (): {
183
- getId(): string;
184
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
185
- getParentControlId(): string;
186
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
187
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
188
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
189
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
190
- isVisible(_node: ImmutableHtmlNode): boolean;
191
- };
192
- };
63
+ export declare function createButtonFontFamilyControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
193
64
  /**
194
65
  * Factory function to create button margins controls for different block elements
195
66
  */
196
- export declare function createButtonMarginsControl(controlId: string, targetBlockId: string, containerSelector?: string): {
197
- new (): {
198
- getId(): string;
199
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
200
- getParentControlId(): string;
201
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
202
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
203
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
204
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
205
- isVisible(_node: ImmutableHtmlNode): boolean;
206
- };
207
- };
67
+ export declare function createButtonMarginsControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
208
68
  /**
209
69
  * Factory function to create button paddings controls for different block elements
210
70
  */
211
- export declare function createButtonPaddingsControl(controlId: string, targetBlockId: string, containerSelector?: string): {
212
- new (): {
213
- getId(): string;
214
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
215
- getParentControlId(): string;
216
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
217
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
218
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
219
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
220
- isVisible(_node: ImmutableHtmlNode): boolean;
221
- };
222
- };
71
+ export declare function createButtonPaddingsControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
223
72
  /**
224
73
  * Factory function to create button text controls for different block elements
225
74
  */
226
- export declare function createButtonTextControl(controlId: string, targetBlockId: string, containerSelector?: string): {
227
- new (): {
228
- getId(): string;
229
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
230
- getParentControlId(): string;
231
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
232
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
233
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
234
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
235
- isVisible(_node: ImmutableHtmlNode): boolean;
236
- };
237
- };
75
+ export declare function createButtonTextControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
238
76
  /**
239
77
  * Factory function to create button text size controls for different block elements
240
78
  */
241
- export declare function createButtonTextSizeControl(controlId: string, targetBlockId: string, containerSelector?: string): {
242
- new (): {
243
- getId(): string;
244
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
245
- getParentControlId(): string;
246
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
247
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
248
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
249
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
250
- isVisible(_node: ImmutableHtmlNode): boolean;
251
- };
252
- };
79
+ export declare function createButtonTextSizeControl(controlId: string, targetBlockId: string, containerSelector?: string): any;
253
80
  /**
254
81
  * Factory function to create button text style and font color controls for different block elements
255
82
  */
256
- export declare function createButtonTextStyleAndFontColorControl(controlId: string, targetBlockId: string, containerSelector: string): {
257
- new (): {
258
- getId(): string;
259
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
260
- getParentControlId(): string;
261
- getLabels(): import("@stripoinc/ui-editor-extensions").ButtonTextStyleAndFontColorControlLabels | undefined;
262
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
263
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
264
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
265
- isVisible(_node: ImmutableHtmlNode): boolean;
266
- };
267
- };
83
+ export declare function createButtonTextStyleAndFontColorControl(controlId: string, targetBlockId: string, containerSelector: string): any;
268
84
  /**
269
85
  * Factory function to create button fit to container controls for different block elements
270
86
  */
271
- export declare function createButtonFitToContainerControl(controlId: string, targetBlockId: string, containerSelector: string): {
272
- new (): {
273
- getId(): string;
274
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
275
- getParentControlId(): string;
276
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
277
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
278
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
279
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
280
- isVisible(_node: ImmutableHtmlNode): boolean;
281
- };
282
- };
87
+ export declare function createButtonFitToContainerControl(controlId: string, targetBlockId: string, containerSelector: string): any;
283
88
  /**
284
89
  * Factory function to create image size controls for different block elements
285
90
  */
286
- export declare function createImageSizeControl(controlId: string, targetBlockId: string, containerSelector: string): {
287
- new (): {
288
- getId(): string;
289
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
290
- getParentControlId(): string;
291
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
292
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
293
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
294
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
295
- isVisible(_node: ImmutableHtmlNode): boolean;
296
- };
297
- };
91
+ export declare function createImageSizeControl(controlId: string, targetBlockId: string, containerSelector: string): any;
298
92
  /**
299
93
  * Factory function to create image margins controls for different block elements
300
94
  */
301
- export declare function createImageMarginsControl(controlId: string, targetBlockId: string, containerSelector: string): {
302
- new (): {
303
- getId(): string;
304
- getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
305
- getParentControlId(): string;
306
- api: import("@stripoinc/ui-editor-extensions").ControlApi;
307
- getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
308
- getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
309
- getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
310
- isVisible(_node: ImmutableHtmlNode): boolean;
311
- };
312
- };
95
+ export declare function createImageMarginsControl(controlId: string, targetBlockId: string, containerSelector: string): any;