@useinsider/guido 1.0.3-beta.1cd6abc → 1.0.3-beta.1d07a49

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 (308) hide show
  1. package/README.md +22 -7
  2. package/dist/components/Guido.vue.js +11 -9
  3. package/dist/components/Guido.vue2.js +76 -70
  4. package/dist/components/organisms/header/LeftSlot.vue.js +1 -1
  5. package/dist/components/organisms/header/LeftSlot.vue2.js +15 -15
  6. package/dist/components/organisms/header/RightSlot.vue.js +10 -10
  7. package/dist/components/organisms/header/RightSlot.vue2.js +18 -18
  8. package/dist/components/organisms/onboarding/ItemsOnboarding.vue.js +21 -0
  9. package/dist/components/organisms/onboarding/ItemsOnboarding.vue2.js +99 -0
  10. package/dist/components/organisms/onboarding/NewVersionPopup.vue.js +9 -9
  11. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +30 -17
  12. package/dist/components/organisms/onboarding/OnboardingWrapper.vue.js +12 -10
  13. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +23 -20
  14. package/dist/composables/useActionsApi.js +33 -24
  15. package/dist/composables/useBlocksConfig.js +21 -31
  16. package/dist/composables/useGuidoActions.js +19 -9
  17. package/dist/composables/useHtmlCompiler.js +15 -13
  18. package/dist/composables/useHtmlValidator.js +36 -35
  19. package/dist/composables/usePartner.js +10 -11
  20. package/dist/composables/useSave.js +11 -10
  21. package/dist/composables/useStripo.js +63 -55
  22. package/dist/composables/useTimerClone.js +75 -0
  23. package/dist/config/compiler/itemsCompilerRules.js +14 -0
  24. package/dist/config/compiler/unsubscribeCompilerRules.js +33 -28
  25. package/dist/config/migrator/index.js +7 -6
  26. package/dist/config/migrator/recommendationMigrator.js +293 -0
  27. package/dist/enums/date.js +6 -0
  28. package/dist/enums/defaults.js +6 -4
  29. package/dist/enums/extensions/recommendationBlock.js +2 -2
  30. package/dist/enums/onboarding.js +7 -2
  31. package/dist/enums/unsubscribe.js +27 -25
  32. package/dist/extensions/Blocks/Checkbox/block.js +5 -2
  33. package/dist/extensions/Blocks/Checkbox/control.js +15 -14
  34. package/dist/extensions/Blocks/Checkbox/extension.js +2 -2
  35. package/dist/extensions/Blocks/Checkbox/template.js +14 -9
  36. package/dist/extensions/Blocks/CouponBlock/extension.js +2 -2
  37. package/dist/extensions/Blocks/Items/block.js +67 -0
  38. package/dist/extensions/Blocks/Items/controls/button/link.js +68 -0
  39. package/dist/extensions/Blocks/Items/controls/cardComposition.js +193 -0
  40. package/dist/extensions/Blocks/Items/controls/image/link.js +68 -0
  41. package/dist/extensions/Blocks/Items/controls/index.js +217 -0
  42. package/dist/extensions/Blocks/Items/controls/name/trimming.js +70 -0
  43. package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +107 -0
  44. package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +123 -0
  45. package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +76 -0
  46. package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +61 -0
  47. package/dist/extensions/Blocks/Items/controls/settingsControl.js +312 -0
  48. package/dist/extensions/Blocks/Items/enums/controlEnums.js +5 -0
  49. package/dist/extensions/Blocks/Items/enums/productEnums.js +273 -0
  50. package/dist/extensions/Blocks/Items/enums/settingsEnums.js +76 -0
  51. package/dist/extensions/Blocks/Items/extension.js +19 -0
  52. package/dist/extensions/Blocks/Items/iconsRegistry.js +32 -0
  53. package/dist/extensions/Blocks/Items/items.css.js +23 -0
  54. package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +62 -0
  55. package/dist/extensions/Blocks/Items/layouts/vertical.html.js +60 -0
  56. package/dist/extensions/Blocks/Items/settingsPanel.js +131 -0
  57. package/dist/extensions/Blocks/Items/store/items-block.js +71 -0
  58. package/dist/extensions/Blocks/Items/template.js +189 -0
  59. package/dist/extensions/Blocks/Items/utils/configBlockUtils.js +17 -0
  60. package/dist/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.js +28 -0
  61. package/dist/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.js +67 -0
  62. package/dist/extensions/Blocks/Items/utils/updateAttributes.js +44 -0
  63. package/dist/extensions/Blocks/RadioButton/block.js +5 -2
  64. package/dist/extensions/Blocks/RadioButton/control.js +18 -17
  65. package/dist/extensions/Blocks/RadioButton/template.js +18 -9
  66. package/dist/extensions/Blocks/Recommendation/block.js +6 -3
  67. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +103 -0
  68. package/dist/extensions/Blocks/Recommendation/constants.js +5 -0
  69. package/dist/extensions/Blocks/Recommendation/control.js +69 -40
  70. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +13 -0
  71. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +13 -0
  72. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +13 -0
  73. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +13 -0
  74. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +13 -0
  75. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +13 -0
  76. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +13 -0
  77. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +13 -0
  78. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +13 -0
  79. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +13 -0
  80. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +13 -0
  81. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +13 -0
  82. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +13 -0
  83. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +13 -0
  84. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +13 -0
  85. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +13 -0
  86. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +13 -0
  87. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +13 -0
  88. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +13 -0
  89. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +13 -0
  90. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +13 -0
  91. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +13 -0
  92. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +13 -0
  93. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +13 -0
  94. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +13 -0
  95. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +13 -0
  96. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +13 -0
  97. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +13 -0
  98. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +13 -0
  99. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +13 -0
  100. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +13 -0
  101. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +13 -0
  102. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +13 -0
  103. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +13 -0
  104. package/dist/extensions/Blocks/Recommendation/extension.js +42 -7
  105. package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +43 -43
  106. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +107 -22
  107. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +1 -1
  108. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +160 -0
  109. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +152 -0
  110. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +180 -0
  111. package/dist/extensions/Blocks/Unsubscribe/block.js +27 -27
  112. package/dist/extensions/Blocks/common-control.js +201 -55
  113. package/dist/extensions/Blocks/controlFactories.js +223 -0
  114. package/dist/extensions/DynamicContent/dynamic-content-modal.js +25 -19
  115. package/dist/extensions/DynamicContent/dynamic-content.js +128 -33
  116. package/dist/guido.css +1 -1
  117. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +353 -101
  118. package/dist/node_modules/lodash-es/_DataView.js +6 -0
  119. package/dist/node_modules/lodash-es/_Promise.js +6 -0
  120. package/dist/node_modules/lodash-es/_Set.js +6 -0
  121. package/dist/node_modules/lodash-es/_SetCache.js +13 -0
  122. package/dist/node_modules/lodash-es/_WeakMap.js +6 -0
  123. package/dist/node_modules/lodash-es/_arrayFilter.js +10 -0
  124. package/dist/node_modules/lodash-es/_arrayLikeKeys.js +13 -12
  125. package/dist/node_modules/lodash-es/_arrayMap.js +8 -0
  126. package/dist/node_modules/lodash-es/_arrayPush.js +8 -0
  127. package/dist/node_modules/lodash-es/_arraySome.js +9 -0
  128. package/dist/node_modules/lodash-es/_baseEach.js +6 -0
  129. package/dist/node_modules/lodash-es/_baseFlatten.js +13 -0
  130. package/dist/node_modules/lodash-es/_baseForOwn.js +8 -0
  131. package/dist/node_modules/lodash-es/_baseGet.js +11 -0
  132. package/dist/node_modules/lodash-es/_baseGetAllKeys.js +9 -0
  133. package/dist/node_modules/lodash-es/_baseHasIn.js +6 -0
  134. package/dist/node_modules/lodash-es/_baseIsEqual.js +8 -0
  135. package/dist/node_modules/lodash-es/_baseIsEqualDeep.js +32 -0
  136. package/dist/node_modules/lodash-es/_baseIsMatch.js +29 -0
  137. package/dist/node_modules/lodash-es/_baseIteratee.js +11 -0
  138. package/dist/node_modules/lodash-es/_baseKeys.js +14 -0
  139. package/dist/node_modules/lodash-es/_baseMap.js +11 -0
  140. package/dist/node_modules/lodash-es/_baseMatches.js +12 -0
  141. package/dist/node_modules/lodash-es/_baseMatchesProperty.js +17 -0
  142. package/dist/node_modules/lodash-es/_baseProperty.js +8 -0
  143. package/dist/node_modules/lodash-es/_basePropertyDeep.js +9 -0
  144. package/dist/node_modules/lodash-es/_baseRange.js +9 -0
  145. package/dist/node_modules/lodash-es/_baseToString.js +18 -0
  146. package/dist/node_modules/lodash-es/_baseTrim.js +8 -0
  147. package/dist/node_modules/lodash-es/_cacheHas.js +6 -0
  148. package/dist/node_modules/lodash-es/_castPath.js +10 -0
  149. package/dist/node_modules/lodash-es/_createBaseEach.js +15 -0
  150. package/dist/node_modules/lodash-es/_createRange.js +11 -0
  151. package/dist/node_modules/lodash-es/_equalArrays.js +40 -0
  152. package/dist/node_modules/lodash-es/_equalByTag.js +45 -0
  153. package/dist/node_modules/lodash-es/_equalObjects.js +36 -0
  154. package/dist/node_modules/lodash-es/_getAllKeys.js +9 -0
  155. package/dist/node_modules/lodash-es/_getMatchData.js +12 -0
  156. package/dist/node_modules/lodash-es/_getSymbols.js +10 -0
  157. package/dist/node_modules/lodash-es/_getTag.js +28 -0
  158. package/dist/node_modules/lodash-es/_hasPath.js +19 -0
  159. package/dist/node_modules/lodash-es/_isFlattenable.js +10 -0
  160. package/dist/node_modules/lodash-es/_isKey.js +12 -0
  161. package/dist/node_modules/lodash-es/_isStrictComparable.js +7 -0
  162. package/dist/node_modules/lodash-es/_mapToArray.js +9 -0
  163. package/dist/node_modules/lodash-es/_matchesStrictComparable.js +8 -0
  164. package/dist/node_modules/lodash-es/_memoizeCapped.js +11 -0
  165. package/dist/node_modules/lodash-es/_nativeKeys.js +5 -0
  166. package/dist/node_modules/lodash-es/_setCacheAdd.js +7 -0
  167. package/dist/node_modules/lodash-es/_setCacheHas.js +6 -0
  168. package/dist/node_modules/lodash-es/_setToArray.js +9 -0
  169. package/dist/node_modules/lodash-es/_stringToPath.js +10 -0
  170. package/dist/node_modules/lodash-es/_toKey.js +10 -0
  171. package/dist/node_modules/lodash-es/_trimmedEndIndex.js +9 -0
  172. package/dist/node_modules/lodash-es/flatMap.js +8 -0
  173. package/dist/node_modules/lodash-es/get.js +8 -0
  174. package/dist/node_modules/lodash-es/hasIn.js +8 -0
  175. package/dist/node_modules/lodash-es/isSymbol.js +9 -0
  176. package/dist/node_modules/lodash-es/keys.js +9 -0
  177. package/dist/node_modules/lodash-es/keysIn.js +3 -3
  178. package/dist/node_modules/lodash-es/map.js +11 -0
  179. package/dist/node_modules/lodash-es/property.js +10 -0
  180. package/dist/node_modules/lodash-es/range.js +5 -0
  181. package/dist/node_modules/lodash-es/stubArray.js +6 -0
  182. package/dist/node_modules/lodash-es/toFinite.js +14 -0
  183. package/dist/node_modules/lodash-es/toNumber.js +22 -0
  184. package/dist/node_modules/lodash-es/toString.js +7 -0
  185. package/dist/package.json.js +1 -1
  186. package/dist/services/recommendationApi.js +13 -19
  187. package/dist/services/stripoApi.js +1 -1
  188. package/dist/src/@types/generic.d.ts +35 -6
  189. package/dist/src/components/Guido.vue.d.ts +4 -2
  190. package/dist/src/components/organisms/onboarding/ItemsOnboarding.vue.d.ts +2 -0
  191. package/dist/src/components/organisms/onboarding/NewVersionPopup.vue.d.ts +3 -1
  192. package/dist/src/components/organisms/onboarding/OnboardingWrapper.vue.d.ts +3 -1
  193. package/dist/src/composables/useActionsApi.d.ts +1 -0
  194. package/dist/src/composables/useBlocksConfig.d.ts +2 -2
  195. package/dist/src/composables/useGuidoActions.d.ts +9 -0
  196. package/dist/src/composables/usePartner.d.ts +0 -1
  197. package/dist/src/composables/useTimerClone.d.ts +6 -0
  198. package/dist/src/config/compiler/itemsCompilerRules.d.ts +2 -0
  199. package/dist/src/config/migrator/recommendationMigrator.d.ts +1 -0
  200. package/dist/src/enums/date.d.ts +4 -0
  201. package/dist/src/enums/defaults.d.ts +1 -1
  202. package/dist/src/enums/onboarding.d.ts +5 -0
  203. package/dist/src/extensions/Blocks/Checkbox/block.d.ts +1 -0
  204. package/dist/src/extensions/Blocks/Checkbox/template.d.ts +1 -1
  205. package/dist/src/extensions/Blocks/Items/block.d.ts +27 -0
  206. package/dist/src/extensions/Blocks/Items/controls/button/link.d.ts +14 -0
  207. package/dist/src/extensions/Blocks/Items/controls/cardComposition.d.ts +33 -0
  208. package/dist/src/extensions/Blocks/Items/controls/image/link.d.ts +14 -0
  209. package/dist/src/extensions/Blocks/Items/controls/index.d.ts +501 -0
  210. package/dist/src/extensions/Blocks/Items/controls/name/trimming.d.ts +14 -0
  211. package/dist/src/extensions/Blocks/Items/controls/price/currencyLocation.d.ts +19 -0
  212. package/dist/src/extensions/Blocks/Items/controls/price/currencySymbol.d.ts +21 -0
  213. package/dist/src/extensions/Blocks/Items/controls/price/formattedPrice.d.ts +14 -0
  214. package/dist/src/extensions/Blocks/Items/controls/price/hideDiscount.d.ts +13 -0
  215. package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +48 -0
  216. package/dist/src/extensions/Blocks/Items/enums/controlEnums.d.ts +61 -0
  217. package/dist/src/extensions/Blocks/Items/enums/productEnums.d.ts +162 -0
  218. package/dist/src/extensions/Blocks/Items/enums/settingsEnums.d.ts +49 -0
  219. package/dist/src/extensions/Blocks/Items/extension.d.ts +2 -0
  220. package/dist/src/extensions/Blocks/Items/iconsRegistry.d.ts +4 -0
  221. package/dist/src/extensions/Blocks/Items/settingsPanel.d.ts +4 -0
  222. package/dist/src/extensions/Blocks/Items/store/items-block.d.ts +41 -0
  223. package/dist/src/extensions/Blocks/Items/template.d.ts +24 -0
  224. package/dist/src/extensions/Blocks/Items/utils/configBlockUtils.d.ts +23 -0
  225. package/dist/src/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.d.ts +32 -0
  226. package/dist/src/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.d.ts +44 -0
  227. package/dist/src/extensions/Blocks/Items/utils/updateAttributes.d.ts +8 -0
  228. package/dist/src/extensions/Blocks/RadioButton/block.d.ts +1 -0
  229. package/dist/src/extensions/Blocks/RadioButton/template.d.ts +1 -1
  230. package/dist/src/extensions/Blocks/Recommendation/block.d.ts +1 -0
  231. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +28 -0
  232. package/dist/src/extensions/Blocks/Recommendation/constants.d.ts +51 -0
  233. package/dist/src/extensions/Blocks/Recommendation/control.d.ts +6 -0
  234. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +5 -0
  235. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +5 -0
  236. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +5 -0
  237. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +5 -0
  238. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +5 -0
  239. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +5 -0
  240. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +5 -0
  241. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +5 -0
  242. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +5 -0
  243. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +5 -0
  244. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +5 -0
  245. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +5 -0
  246. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +5 -0
  247. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +5 -0
  248. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +5 -0
  249. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +5 -0
  250. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +5 -0
  251. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +5 -0
  252. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +5 -0
  253. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +5 -0
  254. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +5 -0
  255. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +5 -0
  256. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +5 -0
  257. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +5 -0
  258. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +5 -0
  259. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +5 -0
  260. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +5 -0
  261. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +5 -0
  262. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +5 -0
  263. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +5 -0
  264. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +5 -0
  265. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +5 -0
  266. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +5 -0
  267. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +5 -0
  268. package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +1 -1
  269. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +16 -0
  270. package/dist/src/extensions/Blocks/Recommendation/templates/migrationTemplate.d.ts +16 -0
  271. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +44 -0
  272. package/dist/src/extensions/Blocks/common-control.d.ts +65 -7
  273. package/dist/src/extensions/Blocks/controlFactories.d.ts +312 -0
  274. package/dist/src/extensions/DynamicContent/dynamic-content-modal.d.ts +9 -2
  275. package/dist/src/extensions/DynamicContent/dynamic-content.d.ts +52 -2
  276. package/dist/src/stores/config.d.ts +6 -2
  277. package/dist/src/stores/dynamic-content.d.ts +3 -3
  278. package/dist/src/stores/editor.d.ts +1 -1
  279. package/dist/src/stores/onboarding.d.ts +335 -1
  280. package/dist/src/stores/preview.d.ts +1 -1
  281. package/dist/src/stores/recommendation.d.ts +1 -1
  282. package/dist/src/stores/save-as-template.d.ts +1 -1
  283. package/dist/src/stores/toaster.d.ts +1 -1
  284. package/dist/src/stores/unsubscribe.d.ts +1 -1
  285. package/dist/src/stores/version-history.d.ts +1 -1
  286. package/dist/src/utils/dateUtil.d.ts +21 -0
  287. package/dist/src/utils/environmentUtil.d.ts +5 -0
  288. package/dist/src/utils/genericUtil.d.ts +1 -0
  289. package/dist/src/utils/pairProductVariables.d.ts +7 -0
  290. package/dist/static/styles/components/narrow-panel.css.js +10 -0
  291. package/dist/static/styles/customEditorStyle.css.js +5 -0
  292. package/dist/stores/config.js +5 -5
  293. package/dist/stores/dynamic-content.js +2 -2
  294. package/dist/stores/editor.js +1 -1
  295. package/dist/stores/onboarding.js +44 -36
  296. package/dist/stores/preview.js +1 -1
  297. package/dist/stores/recommendation.js +3 -3
  298. package/dist/stores/save-as-template.js +2 -2
  299. package/dist/stores/toaster.js +1 -1
  300. package/dist/stores/unsubscribe.js +1 -1
  301. package/dist/stores/version-history.js +4 -4
  302. package/dist/utils/dateUtil.js +24 -3
  303. package/dist/utils/environmentUtil.js +4 -0
  304. package/dist/utils/genericUtil.js +18 -8
  305. package/dist/utils/pairProductVariables.js +136 -0
  306. package/package.json +4 -4
  307. package/dist/extensions/Blocks/Recommendation/template.js +0 -200
  308. package/dist/src/extensions/Blocks/Recommendation/template.d.ts +0 -6
@@ -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
+ }
@@ -34,7 +34,7 @@ interface StoreState {
34
34
  filterList: FiltersResponse;
35
35
  filterGroup: number;
36
36
  }
37
- export declare const useRecommendationExtensionStore: import("pinia").StoreDefinition<"recommendationExtension", StoreState, {
37
+ export declare const useRecommendationExtensionStore: import("pinia").StoreDefinition<"guidoRecommendationExtension", StoreState, {
38
38
  hasFilters: (state: {
39
39
  recommendationCampaignUrls: Record<string, string>;
40
40
  recommendationConfigs: {
@@ -0,0 +1,16 @@
1
+ import type { RecommendationProduct } from '@@/Types/recommendation';
2
+ import { DEFAULTS, getDefaultProducts, DEFAULT_CARD_COMPOSITION } from './templateUtils';
3
+ declare const blockTemplate = "\n <td align=\"left\" class=\"ins-recommendation-v3-block-v2 esd-block-recommendation-v3-block es-p20\">\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n <tr>\n <td align=\"center\">\n <table\n class=\"container\"\n width=\"100%\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n border=\"0\">\n <tbody>\n <tr>\n <td>\n <table\n width=\"100%\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n border=\"0\">\n <tbody>\n <BLOCK_TEXT\n class=\"es-p10t es-p10b es-p20l es-p20r\"\n align=\"center\">\n <p path=\"1\" style=\"font-size: 28px; color: #333333;\">\n <strong path=\"1,0\">{-{-TITLE-}-}</strong>\n </p>\n </BLOCK_TEXT>\n </tbody>\n </table>\n </td>\n </tr>\n \n <tr>\n <td class=\"spacer\" style=\"height: 20px;\"></td>\n </tr>\n\n <tr>\n <td>\n <table\n class=\"ins-recommendation-product-container\"\n width=\"100%\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n border=\"0\"\n >\n {-{-PRODUCT_ROWS-}-}\n </table>\n </td>\n </tr>\n </tbody>\n </table>\n </td>\n </tr>\n </table>\n </td>\n";
4
+ export declare function getDefaultTemplate(): string;
5
+ /**
6
+ * Generates a custom template with specified products and layout
7
+ * @param products - Array of products to display
8
+ * @param productsPerRow - Number of products per row
9
+ * @param title - Optional title for the block
10
+ * @param composition - Optional array defining order of card elements
11
+ * @returns Complete HTML template
12
+ */
13
+ export declare function generateBlockTemplate(products: RecommendationProduct[], productsPerRow: number, title?: string, composition?: string[]): string;
14
+ export declare function prepareProductRows(products: RecommendationProduct[], productsPerRow: number, composition?: string[]): string;
15
+ export { DEFAULTS, DEFAULT_CARD_COMPOSITION, getDefaultProducts, };
16
+ export default blockTemplate;
@@ -0,0 +1,16 @@
1
+ import type { RecommendationProduct } from '@@/Types/recommendation';
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";
4
+ export declare function getMigrationTemplate(): string;
5
+ /**
6
+ * Generates a custom migration template with specified products and layout
7
+ * @param products - Array of products to display
8
+ * @param productsPerRow - Number of products per row
9
+ * @param title - Optional title for the block
10
+ * @param composition - Optional array defining order of card elements
11
+ * @returns Complete HTML template
12
+ */
13
+ export declare function generateMigrationTemplate(products: RecommendationProduct[], productsPerRow: number, title?: string, composition?: string[]): string;
14
+ export declare function prepareProductRows(products: RecommendationProduct[], productsPerRow: number, composition?: string[]): string;
15
+ export { DEFAULTS, getDefaultProducts };
16
+ export default migrationTemplate;
@@ -0,0 +1,44 @@
1
+ import type { RecommendationProduct } from '@@/Types/recommendation';
2
+ 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;
8
+ }
9
+ export interface TemplateConfig {
10
+ spacer: string;
11
+ blockTemplate: string;
12
+ productRow: string;
13
+ productCardWrapper: string;
14
+ elementRenderer: ElementRenderer;
15
+ }
16
+ export declare const DEFAULTS: {
17
+ TITLE: string;
18
+ DESCRIPTION: string;
19
+ };
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";
22
+ 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
+ export declare const DEFAULT_CARD_COMPOSITION: string[];
24
+ export declare function getDefaultProducts(): RecommendationProduct[];
25
+ /**
26
+ * Core template generation logic that works with any element renderer
27
+ * @param products - Array of products to display
28
+ * @param productsPerRow - Number of products per row
29
+ * @param elementRenderer - Object with methods to render each product element
30
+ * @param composition - Optional array defining order of card elements
31
+ * @returns HTML string for product rows
32
+ */
33
+ export declare function prepareProductRows(products: RecommendationProduct[], productsPerRow: number, elementRenderer: ElementRenderer, composition?: string[]): string;
34
+ /**
35
+ * Generates complete HTML template with dynamic products and layout
36
+ * @param blockTemplate - The base block template string
37
+ * @param products - Array of products to display
38
+ * @param productsPerRow - Number of products per row
39
+ * @param elementRenderer - Element renderer for generating product HTML
40
+ * @param title - Title for the block
41
+ * @param composition - Optional array defining order of card elements
42
+ * @returns Complete HTML template
43
+ */
44
+ export declare function generateTemplate(blockTemplate: string, products: RecommendationProduct[], productsPerRow: number, elementRenderer: ElementRenderer, title?: string, composition?: string[]): string;
@@ -1,8 +1,10 @@
1
- import { Control, ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
1
+ import { TextValueObject } from '@@/Types/generic';
2
+ import { Control, ImmutableHtmlElementNode, ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
3
  interface TextInputProps {
3
4
  name: string;
4
5
  placeholder?: string;
5
6
  className?: string;
7
+ disabled?: boolean;
6
8
  }
7
9
  interface LabelProps {
8
10
  text: string;
@@ -17,10 +19,7 @@ interface IconButtonProps {
17
19
  interface SelectProps {
18
20
  name: string;
19
21
  placeholder: string;
20
- options: {
21
- text: string;
22
- value: string;
23
- }[];
22
+ options: TextValueObject[];
24
23
  className?: string;
25
24
  }
26
25
  interface CounterProps {
@@ -29,6 +28,15 @@ interface CounterProps {
29
28
  minValue?: number;
30
29
  step?: number;
31
30
  }
31
+ interface RadioButtonProps {
32
+ name: string;
33
+ buttons: {
34
+ text?: string;
35
+ value: string;
36
+ icon?: string;
37
+ }[];
38
+ id?: string;
39
+ }
32
40
  interface ButtonProps {
33
41
  name: string;
34
42
  label: string;
@@ -40,11 +48,33 @@ interface ButtonProps {
40
48
  */
41
49
  export declare abstract class CommonControl extends Control {
42
50
  currentNode?: ImmutableHtmlNode;
51
+ protected lastBlockInstanceId: string | null;
43
52
  abstract getId(): string;
44
53
  abstract getTemplate(): string;
45
54
  abstract onRender(): Promise<void> | void;
46
55
  getContainer(): ShadowRoot;
47
56
  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;
48
78
  _GuLabel({ text, name, position }: LabelProps): string;
49
79
  _GuToggle(name: string): string;
50
80
  _GuSelectItem({ text, value }: {
@@ -52,8 +82,14 @@ export declare abstract class CommonControl extends Control {
52
82
  value: string;
53
83
  }): string;
54
84
  _GuSelect({ name, placeholder, options, className }: SelectProps): string;
55
- _GuTextInput({ name, placeholder, className }: TextInputProps): string;
85
+ _GuTextInput({ name, placeholder, className, disabled }: TextInputProps): string;
56
86
  _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;
57
93
  _GuButton({ name, label, id }: ButtonProps): string;
58
94
  /**
59
95
  *
@@ -61,6 +97,28 @@ export declare abstract class CommonControl extends Control {
61
97
  * @returns It returns a button with an icon.
62
98
  */
63
99
  _GuIconButton({ name, icon, className }: IconButtonProps): string;
64
- _GuTwoColumns(children: string[]): string;
100
+ _GuOneColumn(children: string[], className?: string): string;
101
+ _GuTwoColumns(children: string[], className?: string): string;
102
+ /**
103
+ * Creates an orderable (sortable) list control
104
+ * @param name - The control name for value binding
105
+ * @param items - Array of item keys/values
106
+ * @param itemLabels - Optional array of objects with key and label properties for display
107
+ * @returns HTML string for the orderable control
108
+ */
109
+ _GuOrderable(name: string, items: {
110
+ key: string;
111
+ label: string;
112
+ content: string;
113
+ }[]): string;
114
+ _GuNestedControl(id: string, content: string): string;
115
+ _GuExpandable(label: string, content: string): string;
116
+ _GuColorPicker(name: string): string;
117
+ _GuFontFamily(name: string, placeholder?: string): string;
118
+ _GuRadioButtons(name: string, buttons: {
119
+ text: string;
120
+ value: string;
121
+ }[]): string;
122
+ _GuCheckbox(name: string, caption: string): string;
65
123
  }
66
124
  export {};