@useinsider/guido 2.0.0-beta.087a24f → 2.0.0-beta.0941bcd

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 (284) hide show
  1. package/README.md +2 -0
  2. package/dist/@types/config/schemas.js +55 -39
  3. package/dist/components/Guido.vue.js +1 -1
  4. package/dist/components/Guido.vue2.js +15 -17
  5. package/dist/components/organisms/email-preview/PreviewContainer.vue.js +3 -3
  6. package/dist/components/organisms/email-preview/amp/AmpErrorModal.vue.js +6 -6
  7. package/dist/components/organisms/email-preview/amp/AmpErrorModal.vue2.js +17 -13
  8. package/dist/components/organisms/email-preview/amp/AmpToggle.vue.js +6 -6
  9. package/dist/components/organisms/email-preview/amp/AmpToggle.vue2.js +14 -12
  10. package/dist/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue.js +18 -0
  11. package/dist/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue2.js +15 -0
  12. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue.js +10 -14
  13. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue2.js +14 -22
  14. package/dist/components/organisms/email-preview/desktop-preview/EmailSizeIndicator.vue.js +3 -3
  15. package/dist/components/organisms/email-preview/mobile-preview/ContentView.vue.js +12 -11
  16. package/dist/components/organisms/email-preview/mobile-preview/InboxView.vue.js +12 -10
  17. package/dist/components/organisms/email-preview/mobile-preview/MobilePreview.vue.js +11 -10
  18. package/dist/components/organisms/email-preview/mobile-preview/MobilePreview.vue2.js +15 -14
  19. package/dist/components/organisms/header/EditorActions.vue.js +21 -0
  20. package/dist/components/organisms/header/EditorActions.vue2.js +41 -0
  21. package/dist/components/organisms/header/EditorToolbar.vue.js +18 -0
  22. package/dist/components/organisms/header/EditorToolbar.vue2.js +17 -0
  23. package/dist/components/organisms/header/HeaderWrapper.vue.js +6 -5
  24. package/dist/components/organisms/header/LeftSlot.vue.js +11 -11
  25. package/dist/components/organisms/header/LeftSlot.vue2.js +11 -12
  26. package/dist/components/organisms/header/MiddleSlot.vue.js +7 -7
  27. package/dist/components/organisms/header/MiddleSlot.vue2.js +11 -15
  28. package/dist/components/organisms/header/RightSlot.vue.js +11 -14
  29. package/dist/components/organisms/header/RightSlot.vue2.js +13 -30
  30. package/dist/components/organisms/header/version-history/VersionHistory.vue.js +5 -5
  31. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +15 -15
  32. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.js +1 -1
  33. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue2.js +20 -19
  34. package/dist/composables/useActionsApi.js +33 -30
  35. package/dist/composables/useConfig.js +29 -27
  36. package/dist/composables/useSave.js +13 -11
  37. package/dist/composables/useStripo.js +42 -40
  38. package/dist/config/migrator/index.js +8 -9
  39. package/dist/config/migrator/recommendationMigrator.js +2 -2
  40. package/dist/enums/academy.js +8 -0
  41. package/dist/enums/onboarding.js +1 -2
  42. package/dist/enums/unsubscribe.js +20 -21
  43. package/dist/extensions/Blocks/CouponBlock/constants.js +4 -0
  44. package/dist/extensions/Blocks/CouponBlock/controls/index.js +29 -0
  45. package/dist/extensions/Blocks/CouponBlock/extension.js +5 -4
  46. package/dist/extensions/Blocks/CouponBlock/settingsPanel.js +20 -14
  47. package/dist/extensions/Blocks/CouponBlock/template.js +22 -11
  48. package/dist/extensions/Blocks/Items/block.js +40 -39
  49. package/dist/extensions/Blocks/Items/controls/cardComposition.js +62 -50
  50. package/dist/extensions/Blocks/Items/controls/price/priceOrientation.js +26 -28
  51. package/dist/extensions/Blocks/Items/controls/settingsControl.js +127 -132
  52. package/dist/extensions/Blocks/Items/enums/settingsEnums.js +2 -2
  53. package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +48 -58
  54. package/dist/extensions/Blocks/Items/layouts/vertical.html.js +58 -48
  55. package/dist/extensions/Blocks/Items/store/items-block.js +2 -2
  56. package/dist/extensions/Blocks/Items/template.js +123 -296
  57. package/dist/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.js +20 -11
  58. package/dist/extensions/Blocks/Recommendation/block.js +40 -6
  59. package/dist/extensions/Blocks/Recommendation/constants/blockIds.js +4 -0
  60. package/dist/extensions/Blocks/Recommendation/constants/controlIds.js +4 -0
  61. package/dist/extensions/Blocks/Recommendation/constants/defaultConfig.js +64 -0
  62. package/dist/extensions/Blocks/Recommendation/constants/layout.js +20 -0
  63. package/dist/extensions/Blocks/Recommendation/constants/selectors.js +19 -0
  64. package/dist/extensions/Blocks/Recommendation/controls/button/index.js +64 -0
  65. package/dist/extensions/Blocks/Recommendation/controls/cardBackground/index.js +80 -0
  66. package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +232 -0
  67. package/dist/extensions/Blocks/Recommendation/controls/image/index.js +19 -0
  68. package/dist/extensions/Blocks/Recommendation/controls/layout/index.js +96 -0
  69. package/dist/extensions/Blocks/Recommendation/controls/main/algorithm.js +110 -0
  70. package/dist/extensions/Blocks/Recommendation/controls/main/currency.js +204 -0
  71. package/dist/extensions/Blocks/Recommendation/controls/main/filters.js +54 -0
  72. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +205 -0
  73. package/dist/extensions/Blocks/Recommendation/controls/main/locale.js +74 -0
  74. package/dist/extensions/Blocks/Recommendation/controls/main/productLayout.js +118 -0
  75. package/dist/extensions/Blocks/Recommendation/controls/main/shuffle.js +71 -0
  76. package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +286 -0
  77. package/dist/extensions/Blocks/Recommendation/controls/name/index.js +46 -0
  78. package/dist/extensions/Blocks/Recommendation/controls/name/textTrim.js +76 -0
  79. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/index.js +44 -0
  80. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.js +48 -0
  81. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.js +73 -0
  82. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.js +73 -0
  83. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/index.js +48 -0
  84. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.js +73 -0
  85. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.js +73 -0
  86. package/dist/extensions/Blocks/Recommendation/controls/price/index.js +44 -0
  87. package/dist/extensions/Blocks/Recommendation/controls/spacing/index.js +222 -0
  88. package/dist/extensions/Blocks/Recommendation/extension.js +40 -43
  89. package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +19 -3
  90. package/dist/extensions/Blocks/Recommendation/recommendation.css.js +13 -4
  91. package/dist/extensions/Blocks/Recommendation/services/configService.js +239 -0
  92. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +128 -72
  93. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +41 -36
  94. package/dist/extensions/Blocks/Recommendation/templates/grid/elementRenderer.js +233 -0
  95. package/dist/extensions/Blocks/Recommendation/templates/grid/migration.js +251 -0
  96. package/dist/extensions/Blocks/Recommendation/templates/grid/template.js +69 -0
  97. package/dist/extensions/Blocks/Recommendation/templates/index.js +12 -0
  98. package/dist/extensions/Blocks/Recommendation/templates/list/elementRenderer.js +174 -0
  99. package/dist/extensions/Blocks/Recommendation/templates/list/template.js +73 -0
  100. package/dist/extensions/Blocks/Recommendation/templates/utils.js +121 -0
  101. package/dist/extensions/Blocks/Recommendation/types/nodeConfig.js +6 -0
  102. package/dist/extensions/Blocks/Recommendation/utils/filterUtil.js +9 -9
  103. package/dist/extensions/Blocks/Recommendation/utils/preserveTextStyles.js +36 -0
  104. package/dist/extensions/Blocks/Recommendation/utils/priceFormatter.js +29 -0
  105. package/dist/extensions/Blocks/Recommendation/utils/tagName.js +46 -0
  106. package/dist/extensions/Blocks/Unsubscribe/extension.js +9 -9
  107. package/dist/extensions/Blocks/common-control.js +55 -67
  108. package/dist/extensions/Blocks/controlFactories.js +162 -117
  109. package/dist/guido.css +1 -1
  110. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +229 -176
  111. package/dist/package.json.js +7 -0
  112. package/dist/services/recommendationApi.js +10 -9
  113. package/dist/services/stripoApi.js +6 -10
  114. package/dist/src/@types/config/index.d.ts +2 -2
  115. package/dist/src/@types/config/schemas.d.ts +30 -0
  116. package/dist/src/@types/config/types.d.ts +7 -1
  117. package/dist/src/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue.d.ts +2 -0
  118. package/dist/src/components/organisms/header/EditorActions.vue.d.ts +4 -0
  119. package/dist/src/components/organisms/header/EditorToolbar.vue.d.ts +2 -0
  120. package/dist/src/components/organisms/header/RightSlot.vue.d.ts +1 -1
  121. package/dist/src/components/wrappers/WpDrawer.vue.d.ts +1 -1
  122. package/dist/src/composables/useActionsApi.d.ts +1 -0
  123. package/dist/src/composables/useConfig.d.ts +8 -0
  124. package/dist/src/enums/academy.d.ts +12 -0
  125. package/dist/src/enums/onboarding.d.ts +0 -1
  126. package/dist/src/enums/unsubscribe.d.ts +0 -1
  127. package/dist/src/extensions/Blocks/CouponBlock/constants.d.ts +14 -0
  128. package/dist/src/extensions/Blocks/CouponBlock/controls/index.d.ts +108 -0
  129. package/dist/src/extensions/Blocks/CouponBlock/template.d.ts +1 -1
  130. package/dist/src/extensions/Blocks/Items/controls/price/priceOrientation.d.ts +1 -1
  131. package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +4 -0
  132. package/dist/src/extensions/Blocks/Items/template.d.ts +1 -20
  133. package/dist/src/extensions/Blocks/Recommendation/block.d.ts +34 -0
  134. package/dist/src/extensions/Blocks/Recommendation/constants/blockIds.d.ts +13 -0
  135. package/dist/src/extensions/Blocks/Recommendation/{constants.d.ts → constants/controlIds.d.ts} +19 -11
  136. package/dist/src/extensions/Blocks/Recommendation/constants/defaultConfig.d.ts +49 -0
  137. package/dist/src/extensions/Blocks/Recommendation/constants/index.d.ts +13 -0
  138. package/dist/src/extensions/Blocks/Recommendation/constants/layout.d.ts +35 -0
  139. package/dist/src/extensions/Blocks/Recommendation/constants/selectors.d.ts +31 -0
  140. package/dist/src/extensions/Blocks/Recommendation/controls/button/index.d.ts +143 -0
  141. package/dist/src/extensions/Blocks/Recommendation/controls/cardBackground/index.d.ts +31 -0
  142. package/dist/src/extensions/Blocks/Recommendation/controls/cardComposition/index.d.ts +95 -0
  143. package/dist/src/extensions/Blocks/Recommendation/controls/image/index.d.ts +35 -0
  144. package/dist/src/extensions/Blocks/Recommendation/controls/index.d.ts +24 -0
  145. package/dist/src/extensions/Blocks/Recommendation/controls/layout/index.d.ts +37 -0
  146. package/dist/src/extensions/Blocks/Recommendation/controls/main/algorithm.d.ts +29 -0
  147. package/dist/src/extensions/Blocks/Recommendation/controls/main/currency.d.ts +45 -0
  148. package/dist/src/extensions/Blocks/Recommendation/controls/main/filters.d.ts +22 -0
  149. package/dist/src/extensions/Blocks/Recommendation/controls/main/index.d.ts +57 -0
  150. package/dist/src/extensions/Blocks/Recommendation/controls/main/locale.d.ts +24 -0
  151. package/dist/src/extensions/Blocks/Recommendation/controls/main/productLayout.d.ts +42 -0
  152. package/dist/src/extensions/Blocks/Recommendation/controls/main/shuffle.d.ts +23 -0
  153. package/dist/src/extensions/Blocks/Recommendation/controls/main/utils.d.ts +214 -0
  154. package/dist/src/extensions/Blocks/Recommendation/controls/name/index.d.ts +97 -0
  155. package/dist/src/extensions/Blocks/Recommendation/controls/name/textTrim.d.ts +16 -0
  156. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/index.d.ts +95 -0
  157. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.d.ts +100 -0
  158. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.d.ts +15 -0
  159. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.d.ts +15 -0
  160. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/index.d.ts +100 -0
  161. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.d.ts +15 -0
  162. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.d.ts +15 -0
  163. package/dist/src/extensions/Blocks/Recommendation/controls/price/index.d.ts +95 -0
  164. package/dist/src/extensions/Blocks/Recommendation/controls/spacing/index.d.ts +83 -0
  165. package/dist/src/extensions/Blocks/Recommendation/extension.d.ts +9 -0
  166. package/dist/src/extensions/Blocks/Recommendation/services/configService.d.ts +151 -0
  167. package/dist/src/extensions/Blocks/Recommendation/services/index.d.ts +6 -0
  168. package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +17 -16
  169. package/dist/src/extensions/Blocks/Recommendation/templates/grid/elementRenderer.d.ts +20 -0
  170. package/dist/src/extensions/Blocks/Recommendation/templates/{migrationTemplate.d.ts → grid/migration.d.ts} +11 -4
  171. package/dist/src/extensions/Blocks/Recommendation/templates/grid/template.d.ts +33 -0
  172. package/dist/src/extensions/Blocks/Recommendation/templates/index.d.ts +39 -0
  173. package/dist/src/extensions/Blocks/Recommendation/templates/list/elementRenderer.d.ts +8 -0
  174. package/dist/src/extensions/Blocks/Recommendation/templates/list/migration.d.ts +25 -0
  175. package/dist/src/extensions/Blocks/Recommendation/templates/list/template.d.ts +18 -0
  176. package/dist/src/extensions/Blocks/Recommendation/templates/utils.d.ts +54 -0
  177. package/dist/src/extensions/Blocks/Recommendation/types/index.d.ts +7 -0
  178. package/dist/src/extensions/Blocks/Recommendation/types/nodeConfig.d.ts +154 -0
  179. package/dist/src/extensions/Blocks/Recommendation/utils/preserveTextStyles.d.ts +19 -0
  180. package/dist/src/extensions/Blocks/Recommendation/utils/priceFormatter.d.ts +33 -0
  181. package/dist/src/extensions/Blocks/Recommendation/utils/stylePreserver.d.ts +113 -0
  182. package/dist/src/extensions/Blocks/Recommendation/utils/tagName.d.ts +77 -0
  183. package/dist/src/extensions/Blocks/common-control.d.ts +9 -14
  184. package/dist/src/extensions/Blocks/controlFactories.d.ts +30 -7
  185. package/dist/src/stores/config.d.ts +164 -1
  186. package/dist/src/stores/editor.d.ts +21 -0
  187. package/dist/static/assets/desktop/desktop-mockup-center.svg.js +4 -0
  188. package/dist/static/assets/desktop/desktop-mockup-left.svg.js +4 -0
  189. package/dist/static/assets/desktop/desktop-mockup-right.svg.js +4 -0
  190. package/dist/static/assets/mobile/email-mockup.svg.js +4 -0
  191. package/dist/static/assets/mobile/inbox-mockup.svg.js +4 -0
  192. package/dist/static/styles/components/button.css.js +1 -1
  193. package/dist/static/styles/components/wide-panel.css.js +1 -5
  194. package/dist/static/styles/customEditorStyle.css.js +38 -2
  195. package/dist/stores/config.js +7 -0
  196. package/dist/stores/editor.js +1 -0
  197. package/dist/utils/templatePreparation.js +17 -17
  198. package/package.json +1 -1
  199. package/dist/components/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue.js +0 -17
  200. package/dist/components/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue2.js +0 -20
  201. package/dist/config/migrator/itemsBlockMigrator.js +0 -283
  202. package/dist/extensions/Blocks/Items/utils/nodeConfigUtils.js +0 -172
  203. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +0 -103
  204. package/dist/extensions/Blocks/Recommendation/constants.js +0 -5
  205. package/dist/extensions/Blocks/Recommendation/control.js +0 -306
  206. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
  207. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
  208. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
  209. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
  210. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
  211. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
  212. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
  213. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
  214. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
  215. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
  216. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
  217. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
  218. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
  219. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
  220. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
  221. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
  222. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
  223. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
  224. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
  225. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
  226. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
  227. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
  228. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
  229. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
  230. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
  231. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
  232. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
  233. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
  234. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
  235. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
  236. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
  237. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
  238. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
  239. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
  240. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +0 -160
  241. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +0 -152
  242. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +0 -180
  243. package/dist/src/config/migrator/itemsBlockMigrator.d.ts +0 -6
  244. package/dist/src/extensions/Blocks/Items/utils/nodeConfigUtils.d.ts +0 -71
  245. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +0 -28
  246. package/dist/src/extensions/Blocks/Recommendation/control.d.ts +0 -35
  247. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +0 -5
  248. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +0 -5
  249. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +0 -5
  250. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +0 -5
  251. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +0 -5
  252. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +0 -5
  253. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +0 -5
  254. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +0 -5
  255. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +0 -5
  256. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +0 -5
  257. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +0 -5
  258. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +0 -5
  259. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +0 -5
  260. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +0 -5
  261. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
  262. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +0 -5
  263. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +0 -5
  264. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +0 -5
  265. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +0 -5
  266. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +0 -5
  267. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +0 -5
  268. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
  269. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +0 -5
  270. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +0 -5
  271. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +0 -5
  272. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +0 -5
  273. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +0 -5
  274. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +0 -5
  275. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
  276. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +0 -5
  277. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +0 -5
  278. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +0 -5
  279. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +0 -5
  280. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +0 -5
  281. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +0 -16
  282. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +0 -44
  283. package/dist/static/assets/inbox-mockup.svg.js +0 -4
  284. package/dist/static/assets/phone-mockup.svg.js +0 -4
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Node Type Guards and Tag Name Utilities
3
+ *
4
+ * Provides type-safe utilities for working with ImmutableHtmlNode.
5
+ * Handles both standard DOM properties and Stripo's custom methods.
6
+ */
7
+ import type { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
8
+ /** Interface for nodes with standard tagName property */
9
+ interface NodeWithTagName {
10
+ tagName: string;
11
+ }
12
+ /** Interface for nodes with getStyle method */
13
+ export interface NodeWithGetStyle {
14
+ getStyle: (property: string) => string | null | undefined;
15
+ }
16
+ /** Interface for nodes with parent method */
17
+ export interface NodeWithParent {
18
+ parent: () => ImmutableHtmlNode | null;
19
+ }
20
+ /**
21
+ * Type guard to check if a node has getStyle method
22
+ * @param node - The node to check
23
+ */
24
+ export declare function hasGetStyle(node: unknown): node is NodeWithGetStyle;
25
+ /**
26
+ * Type guard to check if a node has parent method
27
+ * @param node - The node to check
28
+ */
29
+ export declare function hasParent(node: unknown): node is NodeWithParent;
30
+ /**
31
+ * Type guard to check if a node is a TD element
32
+ * @param node - The node to check
33
+ */
34
+ export declare function isTdNode(node: unknown): node is ImmutableHtmlNode & NodeWithTagName;
35
+ /**
36
+ * Safely retrieves a style value from a node
37
+ * @param node - The node to get the style from
38
+ * @param property - The CSS property name
39
+ * @returns The style value or null if not accessible
40
+ */
41
+ export declare function safeGetStyle(node: ImmutableHtmlNode | null, property: string): string | null | undefined;
42
+ /**
43
+ * Safely retrieves the parent element of a node
44
+ * @param node - The node to get the parent from
45
+ * @returns The parent node or null if not accessible
46
+ */
47
+ export declare function safeGetParent(node: ImmutableHtmlNode | null): ImmutableHtmlNode | null;
48
+ /**
49
+ * Safely retrieves the tag name from a node.
50
+ * Handles both standard DOM tagName property and Stripo's getTagName() method.
51
+ * @param node - The node to get the tag name from
52
+ * @param defaultValue - Default value if tag name cannot be determined (default: 'UNKNOWN')
53
+ * @returns The uppercase tag name
54
+ */
55
+ export declare function getTagName(node: ImmutableHtmlNode | null | undefined, defaultValue?: string): string;
56
+ /**
57
+ * Checks if a tag name represents a table cell element.
58
+ * Includes standard TD and Stripo's custom block types (BLOCK_IMAGE, BLOCK_BUTTON).
59
+ * @param tagName - The tag name to check (case-insensitive)
60
+ * @returns True if the tag represents a table cell
61
+ */
62
+ export declare function isTableCellTag(tagName: string): boolean;
63
+ /**
64
+ * Checks if a node is a table cell element.
65
+ * Combines getTagName and isTableCellTag for convenience.
66
+ * @param node - The node to check
67
+ * @returns True if the node is a table cell element
68
+ */
69
+ export declare function isTableCellNode(node: ImmutableHtmlNode | null | undefined): boolean;
70
+ /**
71
+ * Gets the appropriate CSS display value for showing a table element.
72
+ * Table cells use 'table-cell', table rows use 'table-row'.
73
+ * @param node - The table element node
74
+ * @returns The CSS display value ('table-cell' or 'table-row')
75
+ */
76
+ export declare function getTableDisplayValue(node: ImmutableHtmlNode | null | undefined): 'table-cell' | 'table-row';
77
+ export {};
@@ -56,31 +56,26 @@ export declare abstract class CommonControl extends Control {
56
56
  onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
57
57
  onDestroy(): void;
58
58
  /**
59
- * Gets the Items block container element from the current node.
60
- * @returns The container element or null if not found
61
- */
62
- protected getItemsBlockContainer(): ImmutableHtmlElementNode | null;
63
- /**
64
- * Gets the config block element from the current node (legacy support).
65
- * @deprecated Use getNodeConfig() from nodeConfigUtils instead for Stripo V2
59
+ * Gets the config block element from the current node.
66
60
  * @returns The config block element or null if not found
67
61
  */
68
62
  protected getConfigBlock(): ImmutableHtmlElementNode | null;
69
63
  /**
70
- * Gets the current block instance ID from the node config (Stripo V2) or legacy config block.
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')
71
66
  * @returns The block instance ID or null if not found
72
67
  */
73
- protected getBlockInstanceId(): string | null;
68
+ protected getBlockInstanceId(blockInstanceIdAttribute?: string): string | null;
74
69
  /**
75
70
  * Handles block instance change detection and syncing.
76
- * This is a helper method for controls that need to sync config when switching between block instances.
77
- * Uses Stripo V2 nodeConfig API for block instance tracking.
78
- * @param syncFunction - Function to call when block instance changes (to sync from node config)
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)
79
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')
80
75
  * @returns true if block instance changed, false otherwise
81
76
  */
82
- protected handleBlockInstanceChange(syncFunction: (node: ImmutableHtmlNode) => void, updateUI: () => void): boolean;
83
- _GuLabel({ text, name, position }: LabelProps): string;
77
+ protected handleBlockInstanceChange(syncFunction: (node: ImmutableHtmlNode) => void, updateUI: () => void, blockInstanceIdAttribute?: string): boolean;
78
+ _GuLabel({ text, name }: LabelProps): string;
84
79
  _GuToggle(name: string): string;
85
80
  _GuSelectItem({ text, value }: {
86
81
  text: string;
@@ -12,8 +12,9 @@
12
12
  import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
13
13
  /**
14
14
  * Factory function to create text align controls for different block elements
15
+ * When targetBlockId and containerSelector are not provided, applies directly to root
15
16
  */
16
- export declare function createTextAlignControl(controlId: string, targetBlockId: string, containerSelector: string): {
17
+ export declare function createTextAlignControl(controlId: string, targetBlockId?: string, containerSelector?: string): {
17
18
  new (): {
18
19
  getId(): string;
19
20
  getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
@@ -27,8 +28,9 @@ export declare function createTextAlignControl(controlId: string, targetBlockId:
27
28
  };
28
29
  /**
29
30
  * Factory function to create text color controls for different block elements
31
+ * When targetBlockId and containerSelector are not provided, applies directly to root
30
32
  */
31
- export declare function createTextColorControl(controlId: string, targetBlockId: string, containerSelector?: string): {
33
+ export declare function createTextColorControl(controlId: string, targetBlockId?: string, containerSelector?: string): {
32
34
  new (): {
33
35
  getId(): string;
34
36
  getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
@@ -42,8 +44,9 @@ export declare function createTextColorControl(controlId: string, targetBlockId:
42
44
  };
43
45
  /**
44
46
  * Factory function to create text size controls for different block elements
47
+ * When targetBlockId and containerSelector are not provided, applies directly to root
45
48
  */
46
- export declare function createTextSizeControl(controlId: string, targetBlockId: string, containerSelector?: string): {
49
+ export declare function createTextSizeControl(controlId: string, targetBlockId?: string, containerSelector?: string): {
47
50
  new (): {
48
51
  getId(): string;
49
52
  getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
@@ -57,8 +60,9 @@ export declare function createTextSizeControl(controlId: string, targetBlockId:
57
60
  };
58
61
  /**
59
62
  * Factory function to create text style controls for different block elements
63
+ * When targetBlockId and containerSelector are not provided, applies directly to root
60
64
  */
61
- export declare function createTextStyleControl(controlId: string, targetBlockId: string, containerSelector?: string): {
65
+ export declare function createTextStyleControl(controlId: string, targetBlockId?: string, containerSelector?: string): {
62
66
  new (): {
63
67
  getId(): string;
64
68
  getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
@@ -72,8 +76,9 @@ export declare function createTextStyleControl(controlId: string, targetBlockId:
72
76
  };
73
77
  /**
74
78
  * Factory function to create text font family controls for different block elements
79
+ * When targetBlockId and containerSelector are not provided, applies directly to root
75
80
  */
76
- export declare function createTextFontFamilyControl(controlId: string, targetBlockId: string, containerSelector?: string): {
81
+ export declare function createTextFontFamilyControl(controlId: string, targetBlockId?: string, containerSelector?: string): {
77
82
  new (): {
78
83
  getId(): string;
79
84
  getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
@@ -87,8 +92,9 @@ export declare function createTextFontFamilyControl(controlId: string, targetBlo
87
92
  };
88
93
  /**
89
94
  * Factory function to create text background color controls for different block elements
95
+ * When targetBlockId and containerSelector are not provided, applies directly to root
90
96
  */
91
- export declare function createTextBackgroundColorControl(controlId: string, targetBlockId: string, containerSelector?: string): {
97
+ export declare function createTextBackgroundColorControl(controlId: string, targetBlockId?: string, containerSelector?: string): {
92
98
  new (): {
93
99
  getId(): string;
94
100
  getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
@@ -102,8 +108,25 @@ export declare function createTextBackgroundColorControl(controlId: string, targ
102
108
  };
103
109
  /**
104
110
  * Factory function to create paddings controls for different block elements
111
+ * When targetBlockId and containerSelector are not provided, applies directly to root
105
112
  */
106
- export declare function createPaddingsControl(controlId: string, targetBlockId: string, containerSelector?: string): {
113
+ export declare function createPaddingsControl(controlId: string, targetBlockId?: string, containerSelector?: string): {
114
+ new (): {
115
+ getId(): string;
116
+ getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
117
+ getParentControlId(): string;
118
+ api: import("@stripoinc/ui-editor-extensions").ControlApi;
119
+ getLabels(): import("@stripoinc/ui-editor-extensions").ControlLabels | undefined;
120
+ getModificationDescription(): import("@stripoinc/ui-editor-extensions").ModificationDescription | undefined;
121
+ getAdditionalModifications(_root: ImmutableHtmlNode): import("@stripoinc/ui-editor-extensions").TemplateModifier<import("@stripoinc/ui-editor-extensions").HtmlNodeModifier, import("@stripoinc/ui-editor-extensions").CssNodeModifier> | undefined;
122
+ isVisible(_node: ImmutableHtmlNode): boolean;
123
+ };
124
+ };
125
+ /**
126
+ * Factory function to create text line spacing controls for different block elements
127
+ * When targetBlockId and containerSelector are not provided, applies directly to root
128
+ */
129
+ export declare function createTextLineSpacingControl(controlId: string, targetBlockId?: string, containerSelector?: string): {
107
130
  new (): {
108
131
  getId(): string;
109
132
  getTargetNodes(root: ImmutableHtmlNode): ImmutableHtmlNode[];
@@ -1,4 +1,4 @@
1
- import type { GuidoConfig, GuidoConfigInput, IdentityConfig, PartnerConfig, TemplateConfig, EditorConfig, UIConfig, FeaturesConfig, BlocksConfig, CompilerConfig } from '@@/Types/config';
1
+ import type { GuidoConfig, GuidoConfigInput, IdentityConfig, PartnerConfig, TemplateConfig, EditorConfig, UIConfig, FeaturesConfig, BlocksConfig, CompilerConfig, CallbacksConfig } from '@@/Types/config';
2
2
  interface ConfigStoreState {
3
3
  /** Whether the config has been initialized */
4
4
  initialized: boolean;
@@ -36,6 +36,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
36
36
  } | undefined;
37
37
  }[];
38
38
  selectedUnsubscribePages: number[];
39
+ forceRecreate: boolean;
39
40
  };
40
41
  editor: {
41
42
  locale: string;
@@ -95,6 +96,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
95
96
  })[];
96
97
  ignoreDefaultRules: boolean;
97
98
  };
99
+ callbacks: {
100
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
101
+ };
98
102
  } | null;
99
103
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => IdentityConfig | null;
100
104
  /**
@@ -127,6 +131,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
127
131
  } | undefined;
128
132
  }[];
129
133
  selectedUnsubscribePages: number[];
134
+ forceRecreate: boolean;
130
135
  };
131
136
  editor: {
132
137
  locale: string;
@@ -186,6 +191,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
186
191
  })[];
187
192
  ignoreDefaultRules: boolean;
188
193
  };
194
+ callbacks: {
195
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
196
+ };
189
197
  } | null;
190
198
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => PartnerConfig | null;
191
199
  /**
@@ -218,6 +226,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
218
226
  } | undefined;
219
227
  }[];
220
228
  selectedUnsubscribePages: number[];
229
+ forceRecreate: boolean;
221
230
  };
222
231
  editor: {
223
232
  locale: string;
@@ -277,6 +286,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
277
286
  })[];
278
287
  ignoreDefaultRules: boolean;
279
288
  };
289
+ callbacks: {
290
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
291
+ };
280
292
  } | null;
281
293
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => TemplateConfig | null;
282
294
  /**
@@ -309,6 +321,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
309
321
  } | undefined;
310
322
  }[];
311
323
  selectedUnsubscribePages: number[];
324
+ forceRecreate: boolean;
312
325
  };
313
326
  editor: {
314
327
  locale: string;
@@ -368,6 +381,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
368
381
  })[];
369
382
  ignoreDefaultRules: boolean;
370
383
  };
384
+ callbacks: {
385
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
386
+ };
371
387
  } | null;
372
388
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => EditorConfig | null;
373
389
  /**
@@ -400,6 +416,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
400
416
  } | undefined;
401
417
  }[];
402
418
  selectedUnsubscribePages: number[];
419
+ forceRecreate: boolean;
403
420
  };
404
421
  editor: {
405
422
  locale: string;
@@ -459,6 +476,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
459
476
  })[];
460
477
  ignoreDefaultRules: boolean;
461
478
  };
479
+ callbacks: {
480
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
481
+ };
462
482
  } | null;
463
483
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => UIConfig | null;
464
484
  /**
@@ -491,6 +511,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
491
511
  } | undefined;
492
512
  }[];
493
513
  selectedUnsubscribePages: number[];
514
+ forceRecreate: boolean;
494
515
  };
495
516
  editor: {
496
517
  locale: string;
@@ -550,6 +571,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
550
571
  })[];
551
572
  ignoreDefaultRules: boolean;
552
573
  };
574
+ callbacks: {
575
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
576
+ };
553
577
  } | null;
554
578
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => FeaturesConfig | null;
555
579
  /**
@@ -582,6 +606,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
582
606
  } | undefined;
583
607
  }[];
584
608
  selectedUnsubscribePages: number[];
609
+ forceRecreate: boolean;
585
610
  };
586
611
  editor: {
587
612
  locale: string;
@@ -641,6 +666,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
641
666
  })[];
642
667
  ignoreDefaultRules: boolean;
643
668
  };
669
+ callbacks: {
670
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
671
+ };
644
672
  } | null;
645
673
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => BlocksConfig | null;
646
674
  /**
@@ -673,6 +701,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
673
701
  } | undefined;
674
702
  }[];
675
703
  selectedUnsubscribePages: number[];
704
+ forceRecreate: boolean;
676
705
  };
677
706
  editor: {
678
707
  locale: string;
@@ -732,8 +761,106 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
732
761
  })[];
733
762
  ignoreDefaultRules: boolean;
734
763
  };
764
+ callbacks: {
765
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
766
+ };
735
767
  } | null;
736
768
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => CompilerConfig | null;
769
+ /**
770
+ * Get the callbacks configuration
771
+ */
772
+ callbacks: (state: {
773
+ initialized: boolean;
774
+ config: {
775
+ identity: {
776
+ templateId: string;
777
+ userId: string;
778
+ variationId?: string | undefined;
779
+ };
780
+ partner: {
781
+ name: string;
782
+ productType: 60 | 49 | 97;
783
+ messageType: 1 | 2;
784
+ username: string;
785
+ };
786
+ template: {
787
+ html: string;
788
+ css: string;
789
+ preselectedDynamicContent: {
790
+ text: string;
791
+ value: string;
792
+ fallback?: string | undefined;
793
+ format?: {
794
+ key: string;
795
+ value: string;
796
+ } | undefined;
797
+ }[];
798
+ selectedUnsubscribePages: number[];
799
+ forceRecreate: boolean;
800
+ };
801
+ editor: {
802
+ locale: string;
803
+ translationsPath: string;
804
+ migrationDate: number;
805
+ emailHeader: {
806
+ senderName: string;
807
+ subject: string;
808
+ };
809
+ };
810
+ ui: {
811
+ showHeader: boolean;
812
+ backButtonLabel?: string | undefined;
813
+ };
814
+ features: {
815
+ dynamicContent: boolean;
816
+ saveAsTemplate: boolean;
817
+ versionHistory: boolean;
818
+ testMessage: boolean;
819
+ displayConditions: boolean;
820
+ unsubscribe: boolean;
821
+ modulesDisabled: boolean;
822
+ };
823
+ blocks: {
824
+ excludeDefaults: ("amp-accordion" | "amp-carousel" | "amp-form-controls" | "banner-block" | "button-block" | "html-block" | "image-block" | "menu-block" | "social-block" | "spacer-block" | "text-block" | "timer-block" | "video-block")[];
825
+ includeCustoms: ("dynamic-content" | "checkbox-block" | "radio-button-block" | "recommendation-block" | "unsubscribe-block" | "coupon-block" | "items-block")[];
826
+ };
827
+ compiler: {
828
+ customRules: ({
829
+ type: "replace";
830
+ search: string;
831
+ replacement: string;
832
+ replaceAll?: boolean | undefined;
833
+ id: string;
834
+ description?: string | undefined;
835
+ priority: number;
836
+ } | {
837
+ type: "regex";
838
+ pattern: string;
839
+ replacement: string;
840
+ flags?: string | undefined;
841
+ id: string;
842
+ description?: string | undefined;
843
+ priority: number;
844
+ } | {
845
+ type: "remove";
846
+ targets: string[];
847
+ id: string;
848
+ description?: string | undefined;
849
+ priority: number;
850
+ } | {
851
+ type: "custom";
852
+ processor: (html: string) => string;
853
+ id: string;
854
+ description?: string | undefined;
855
+ priority: number;
856
+ })[];
857
+ ignoreDefaultRules: boolean;
858
+ };
859
+ callbacks: {
860
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
861
+ };
862
+ } | null;
863
+ } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => CallbacksConfig | null;
737
864
  /**
738
865
  * Get the template ID
739
866
  */
@@ -764,6 +891,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
764
891
  } | undefined;
765
892
  }[];
766
893
  selectedUnsubscribePages: number[];
894
+ forceRecreate: boolean;
767
895
  };
768
896
  editor: {
769
897
  locale: string;
@@ -823,6 +951,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
823
951
  })[];
824
952
  ignoreDefaultRules: boolean;
825
953
  };
954
+ callbacks: {
955
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
956
+ };
826
957
  } | null;
827
958
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
828
959
  /**
@@ -855,6 +986,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
855
986
  } | undefined;
856
987
  }[];
857
988
  selectedUnsubscribePages: number[];
989
+ forceRecreate: boolean;
858
990
  };
859
991
  editor: {
860
992
  locale: string;
@@ -914,6 +1046,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
914
1046
  })[];
915
1047
  ignoreDefaultRules: boolean;
916
1048
  };
1049
+ callbacks: {
1050
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
1051
+ };
917
1052
  } | null;
918
1053
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
919
1054
  /**
@@ -946,6 +1081,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
946
1081
  } | undefined;
947
1082
  }[];
948
1083
  selectedUnsubscribePages: number[];
1084
+ forceRecreate: boolean;
949
1085
  };
950
1086
  editor: {
951
1087
  locale: string;
@@ -1005,6 +1141,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1005
1141
  })[];
1006
1142
  ignoreDefaultRules: boolean;
1007
1143
  };
1144
+ callbacks: {
1145
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
1146
+ };
1008
1147
  } | null;
1009
1148
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
1010
1149
  /**
@@ -1037,6 +1176,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1037
1176
  } | undefined;
1038
1177
  }[];
1039
1178
  selectedUnsubscribePages: number[];
1179
+ forceRecreate: boolean;
1040
1180
  };
1041
1181
  editor: {
1042
1182
  locale: string;
@@ -1096,6 +1236,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1096
1236
  })[];
1097
1237
  ignoreDefaultRules: boolean;
1098
1238
  };
1239
+ callbacks: {
1240
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
1241
+ };
1099
1242
  } | null;
1100
1243
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
1101
1244
  /**
@@ -1128,6 +1271,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1128
1271
  } | undefined;
1129
1272
  }[];
1130
1273
  selectedUnsubscribePages: number[];
1274
+ forceRecreate: boolean;
1131
1275
  };
1132
1276
  editor: {
1133
1277
  locale: string;
@@ -1187,6 +1331,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1187
1331
  })[];
1188
1332
  ignoreDefaultRules: boolean;
1189
1333
  };
1334
+ callbacks: {
1335
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
1336
+ };
1190
1337
  } | null;
1191
1338
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => number;
1192
1339
  /**
@@ -1219,6 +1366,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1219
1366
  } | undefined;
1220
1367
  }[];
1221
1368
  selectedUnsubscribePages: number[];
1369
+ forceRecreate: boolean;
1222
1370
  };
1223
1371
  editor: {
1224
1372
  locale: string;
@@ -1278,6 +1426,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1278
1426
  })[];
1279
1427
  ignoreDefaultRules: boolean;
1280
1428
  };
1429
+ callbacks: {
1430
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
1431
+ };
1281
1432
  } | null;
1282
1433
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => number;
1283
1434
  /**
@@ -1310,6 +1461,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1310
1461
  } | undefined;
1311
1462
  }[];
1312
1463
  selectedUnsubscribePages: number[];
1464
+ forceRecreate: boolean;
1313
1465
  };
1314
1466
  editor: {
1315
1467
  locale: string;
@@ -1369,6 +1521,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1369
1521
  })[];
1370
1522
  ignoreDefaultRules: boolean;
1371
1523
  };
1524
+ callbacks: {
1525
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
1526
+ };
1372
1527
  } | null;
1373
1528
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
1374
1529
  /**
@@ -1401,6 +1556,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1401
1556
  } | undefined;
1402
1557
  }[];
1403
1558
  selectedUnsubscribePages: number[];
1559
+ forceRecreate: boolean;
1404
1560
  };
1405
1561
  editor: {
1406
1562
  locale: string;
@@ -1460,6 +1616,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1460
1616
  })[];
1461
1617
  ignoreDefaultRules: boolean;
1462
1618
  };
1619
+ callbacks: {
1620
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
1621
+ };
1463
1622
  } | null;
1464
1623
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => boolean;
1465
1624
  /**
@@ -1492,6 +1651,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1492
1651
  } | undefined;
1493
1652
  }[];
1494
1653
  selectedUnsubscribePages: number[];
1654
+ forceRecreate: boolean;
1495
1655
  };
1496
1656
  editor: {
1497
1657
  locale: string;
@@ -1551,6 +1711,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1551
1711
  })[];
1552
1712
  ignoreDefaultRules: boolean;
1553
1713
  };
1714
+ callbacks: {
1715
+ externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
1716
+ };
1554
1717
  } | null;
1555
1718
  } & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => (feature: keyof FeaturesConfig) => boolean;
1556
1719
  }, {
@@ -9,6 +9,27 @@ export declare const useEditorStore: import("pinia").StoreDefinition<"guidoEdito
9
9
  isStripoInitialized: boolean;
10
10
  templateId: string;
11
11
  }, {
12
+ isEditorToolbarVisible: (state: {
13
+ loadingStatus: boolean;
14
+ isCodeEditorOpen: boolean;
15
+ isSaveAsTemplateDrawerOpen: boolean;
16
+ isVersionHistoryOpen: boolean;
17
+ isPreviewModeOpen: boolean;
18
+ editorVisualMode: string;
19
+ hasChanges: boolean;
20
+ isStripoInitialized: boolean;
21
+ templateId: string;
22
+ } & import("pinia").PiniaCustomStateProperties<{
23
+ loadingStatus: boolean;
24
+ isCodeEditorOpen: boolean;
25
+ isSaveAsTemplateDrawerOpen: boolean;
26
+ isVersionHistoryOpen: boolean;
27
+ isPreviewModeOpen: boolean;
28
+ editorVisualMode: string;
29
+ hasChanges: boolean;
30
+ isStripoInitialized: boolean;
31
+ templateId: string;
32
+ }>) => boolean;
12
33
  isUndoButtonDisabled: (state: {
13
34
  loadingStatus: boolean;
14
35
  isCodeEditorOpen: boolean;
@@ -0,0 +1,4 @@
1
+ const e = "data:image/svg+xml,%3csvg%20width='2'%20height='79'%20viewBox='0%200%202%2079'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20filter='url(%23filter0_d_14_463)'%3e%3crect%20y='42'%20width='2'%20height='36'%20fill='white'/%3e%3c/g%3e%3cg%20clip-path='url(%23clip0_14_463)'%3e%3crect%20y='46'%20width='2'%20height='28'%20fill='%23F0F3F4'/%3e%3c/g%3e%3cg%20clip-path='url(%23clip1_14_463)'%3e%3cpath%20d='M0%200H2V42H0V0Z'%20fill='%23DFE1E5'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_d_14_463'%20x='0'%20y='42'%20width='2'%20height='37'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='1'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200.858824%200%200%200%200%200.862745%200%200%200%200%200.866667%200%200%200%201%200'/%3e%3cfeBlend%20mode='normal'%20in2='BackgroundImageFix'%20result='effect1_dropShadow_14_463'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='effect1_dropShadow_14_463'%20result='shape'/%3e%3c/filter%3e%3cclipPath%20id='clip0_14_463'%3e%3crect%20width='2'%20height='28'%20fill='white'%20transform='translate(0%2046)'/%3e%3c/clipPath%3e%3cclipPath%20id='clip1_14_463'%3e%3crect%20width='2'%20height='42'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e";
2
+ export {
3
+ e as default
4
+ };
@@ -0,0 +1,4 @@
1
+ const L = "data:image/svg+xml,%3csvg%20width='378'%20height='79'%20viewBox='0%200%20378%2079'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20filter='url(%23filter0_d_1_981)'%3e%3crect%20y='42'%20width='378'%20height='36'%20fill='white'/%3e%3c/g%3e%3cg%20clip-path='url(%23clip0_1_981)'%3e%3cpath%20d='M108%2060C108%2052.268%20114.268%2046%20122%2046H378V74H122C114.268%2074%20108%2067.732%20108%2060V60Z'%20fill='%23F0F3F4'/%3e%3cpath%20d='M126%2055C127.381%2055.0002%20128.5%2056.1194%20128.5%2057.5V58.5H129C129.552%2058.5%20130%2058.9477%20130%2059.5V64.5C130%2065.0523%20129.552%2065.5%20129%2065.5H123C122.448%2065.5%20122%2065.0523%20122%2064.5V59.5C122%2058.9477%20122.448%2058.5%20123%2058.5H123.5V57.5C123.5%2056.1194%20124.619%2055.0002%20126%2055ZM126%2056C125.172%2056.0002%20124.5%2056.6717%20124.5%2057.5V58.5H127.5V57.5C127.5%2056.6717%20126.828%2056.0002%20126%2056Z'%20fill='%235F6367'/%3e%3c/g%3e%3cpath%20d='M86%2053.5C87.9218%2053.5001%2089.6479%2054.3352%2090.8379%2055.6611L89.7754%2056.7236C88.8587%2055.6683%2087.5076%2055.0001%2086%2055C83.2387%2055.0001%2081%2057.2386%2081%2060C81%2062.7614%2083.2387%2064.9999%2086%2065C88.2387%2064.9999%2090.1333%2063.5284%2090.7705%2061.5H92.3242C91.6469%2064.3664%2089.0733%2066.4999%2086%2066.5C82.4102%2066.4999%2079.5%2063.5898%2079.5%2060C79.5%2056.4102%2082.4102%2053.5001%2086%2053.5ZM93%2059H87.5L93%2053.5V59Z'%20fill='%235F6367'/%3e%3cpath%20d='M53.9824%2053.957C54.2823%2053.6714%2054.7573%2053.6827%2055.043%2053.9824L60.043%2059.2324L60.1172%2059.3242C60.3158%2059.6117%2060.2912%2060.0069%2060.043%2060.2676L55.043%2065.5176L54.9609%2065.5918C54.6727%2065.8167%2054.2551%2065.8027%2053.9824%2065.543L53.9082%2065.4609C53.6833%2065.1727%2053.6973%2064.7551%2053.957%2064.4824L57.75%2060.5H48.25C47.8358%2060.5%2047.5%2060.1642%2047.5%2059.75C47.5%2059.3358%2047.8358%2059%2048.25%2059H57.75L53.957%2055.0176L53.8867%2054.9316C53.6762%2054.6329%2053.71%2054.2167%2053.9824%2053.957Z'%20fill='%23BABCBE'/%3e%3cpath%20d='M20.9575%2053.9823C21.2432%2053.6827%2021.7173%2053.6714%2022.0171%2053.9569C22.2898%2054.2166%2022.3244%2054.6327%2022.1138%2054.9315L22.0435%2055.0174L18.2505%2058.9999H27.7505C28.1646%2059%2028.5005%2059.3357%2028.5005%2059.7499C28.5005%2060.164%2028.1646%2060.4997%2027.7505%2060.4999H18.2505L22.0435%2064.4823C22.3032%2064.755%2022.3173%2065.1726%2022.0923%2065.4608L22.0171%2065.5428C21.7444%2065.8024%2021.3277%2065.8165%2021.0396%2065.5917L20.9575%2065.5174L15.9575%2060.2674C15.7093%2060.0068%2015.6838%2059.6116%2015.8824%2059.3241L15.9575%2059.2323L20.9575%2053.9823Z'%20fill='%235F6367'/%3e%3cg%20clip-path='url(%23clip1_1_981)'%3e%3cpath%20d='M0%200H378V42H0V0Z'%20fill='%23DFE1E5'/%3e%3cpath%20d='M355%2019C355.552%2019%20356%2019.4477%20356%2020V24H360C360.552%2024%20361%2024.4477%20361%2025C361%2025.5523%20360.552%2026%20360%2026H356V30C356%2030.5523%20355.552%2031%20355%2031C354.448%2031%20354%2030.5523%20354%2030V26H350C349.448%2026%20349%2025.5523%20349%2025C349%2024.4477%20349.448%2024%20350%2024H354V20C354%2019.4477%20354.448%2019%20355%2019Z'%20fill='%233C4043'/%3e%3cg%20clip-path='url(%23clip2_1_981)'%3e%3cpath%20d='M320.2%208C324.68%208%20326.921%208.00015%20328.632%208.87207C330.137%209.63906%20331.361%2010.8629%20332.128%2012.3682C333%2014.0794%20333%2016.3195%20333%2020.7998V33C333%2037.9706%20337.029%2042%20342%2042H84C88.9706%2042%2093%2037.9706%2093%2033V20.7998C93%2016.3195%2093.0001%2014.0794%2093.8721%2012.3682C94.6391%2010.8629%2095.8629%209.63906%2097.3682%208.87207C99.0794%208.00015%20101.32%208%20105.8%208H320.2Z'%20fill='white'/%3e%3cpath%20d='M320.147%2021.1466L319.793%2020.7931L320.147%2021.1466ZM320.854%2021.1466L321.207%2020.7931L321.207%2020.7931L320.854%2021.1466ZM320.854%2021.8536L321.207%2022.2072L320.854%2021.8536ZM317.707%2025.0001L317.354%2024.6466L317%2025.0001L317.354%2025.3537L317.707%2025.0001ZM320.854%2028.1466L321.207%2027.7931L321.207%2027.7931L320.854%2028.1466ZM320.854%2028.8536L321.207%2029.2072V29.2072L320.854%2028.8536ZM320.147%2028.8536L319.793%2029.2072L319.793%2029.2073L320.147%2028.8536ZM317%2025.7072L317.354%2025.3536L317%2025L316.647%2025.3536L317%2025.7072ZM313.854%2028.8536L314.207%2029.2072L313.854%2028.8536ZM313.147%2028.8536L312.793%2029.2072L312.793%2029.2073L313.147%2028.8536ZM313.147%2028.1466L313.5%2028.5002L313.147%2028.1466ZM316.293%2025.0001L316.647%2025.3537L317%2025.0001L316.647%2024.6466L316.293%2025.0001ZM313.147%2021.8536L312.793%2022.2072L313.147%2021.8536ZM313.147%2021.1466L312.793%2020.7931V20.7931L313.147%2021.1466ZM313.854%2021.1466L314.207%2020.7931L313.854%2021.1466ZM317%2024.2931L316.647%2024.6466L317%2025.0002L317.354%2024.6466L317%2024.2931ZM320.147%2021.1466L320.5%2021.5002H320.5L320.854%2021.1466L321.207%2020.7931C320.817%2020.4025%20320.184%2020.4025%20319.793%2020.7931L320.147%2021.1466ZM320.854%2021.1466L320.5%2021.5001L320.5%2021.5001L320.854%2021.8536L321.207%2022.2072C321.598%2021.8166%20321.597%2021.1836%20321.207%2020.7931L320.854%2021.1466ZM320.854%2021.8536L320.5%2021.5001L317.354%2024.6466L317.707%2025.0001L318.061%2025.3537L321.207%2022.2072L320.854%2021.8536ZM317.707%2025.0001L317.354%2025.3537L320.5%2028.5002L320.854%2028.1466L321.207%2027.7931L318.061%2024.6466L317.707%2025.0001ZM320.854%2028.1466L320.5%2028.5001L320.5%2028.5001L320.854%2028.8536L321.207%2029.2072C321.598%2028.8166%20321.597%2028.1836%20321.207%2027.7931L320.854%2028.1466ZM320.854%2028.8536L320.5%2028.5001L320.5%2028.5L320.147%2028.8536L319.793%2029.2073C320.184%2029.5975%20320.817%2029.5978%20321.207%2029.2072L320.854%2028.8536ZM320.147%2028.8536L320.5%2028.5001L317.354%2025.3536L317%2025.7072L316.647%2026.0607L319.793%2029.2072L320.147%2028.8536ZM317%2025.7072L316.647%2025.3536L313.5%2028.5001L313.854%2028.8536L314.207%2029.2072L317.354%2026.0607L317%2025.7072ZM313.854%2028.8536L313.5%2028.5001L313.5%2028.5L313.147%2028.8536L312.793%2029.2073C313.184%2029.5975%20313.817%2029.5978%20314.207%2029.2072L313.854%2028.8536ZM313.147%2028.8536L313.5%2028.5001V28.5002L313.147%2028.1466L312.793%2027.7931C312.402%2028.1836%20312.402%2028.8167%20312.793%2029.2072L313.147%2028.8536ZM313.147%2028.1466L313.5%2028.5002L316.647%2025.3537L316.293%2025.0001L315.94%2024.6466L312.793%2027.7931L313.147%2028.1466ZM316.293%2025.0001L316.647%2024.6466L313.5%2021.5001L313.147%2021.8536L312.793%2022.2072L315.94%2025.3537L316.293%2025.0001ZM313.147%2021.8536L313.5%2021.5001V21.5002L313.147%2021.1466L312.793%2020.7931C312.402%2021.1836%20312.402%2021.8167%20312.793%2022.2072L313.147%2021.8536ZM313.147%2021.1466L313.5%2021.5002H313.5L313.854%2021.1466L314.207%2020.7931C313.817%2020.4025%20313.184%2020.4025%20312.793%2020.7931L313.147%2021.1466ZM313.854%2021.1466L313.5%2021.5002L316.647%2024.6466L317%2024.2931L317.354%2023.9395L314.207%2020.7931L313.854%2021.1466ZM317%2024.2931L317.354%2024.6466L320.5%2021.5002L320.147%2021.1466L319.793%2020.7931L316.647%2023.9395L317%2024.2931Z'%20fill='%239D9FA1'/%3e%3crect%20x='105'%20y='17'%20width='16'%20height='16'%20rx='8'%20fill='%23F0F0F0'/%3e%3c/g%3e%3ccircle%20cx='67'%20cy='21'%20r='6'%20fill='%2361C554'/%3e%3ccircle%20cx='67'%20cy='21'%20r='5.75'%20stroke='black'%20stroke-opacity='0.2'%20stroke-width='0.5'/%3e%3ccircle%20cx='47'%20cy='21'%20r='6'%20fill='%23F4BF4F'/%3e%3ccircle%20cx='47'%20cy='21'%20r='5.75'%20stroke='black'%20stroke-opacity='0.2'%20stroke-width='0.5'/%3e%3ccircle%20cx='27'%20cy='21'%20r='6'%20fill='%23ED6A5F'/%3e%3ccircle%20cx='27'%20cy='21'%20r='5.75'%20stroke='black'%20stroke-opacity='0.2'%20stroke-width='0.5'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_d_1_981'%20x='0'%20y='42'%20width='378'%20height='37'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='1'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200.858824%200%200%200%200%200.862745%200%200%200%200%200.866667%200%200%200%201%200'/%3e%3cfeBlend%20mode='normal'%20in2='BackgroundImageFix'%20result='effect1_dropShadow_1_981'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='effect1_dropShadow_1_981'%20result='shape'/%3e%3c/filter%3e%3cclipPath%20id='clip0_1_981'%3e%3crect%20width='270'%20height='28'%20fill='white'%20transform='translate(108%2046)'/%3e%3c/clipPath%3e%3cclipPath%20id='clip1_1_981'%3e%3crect%20width='378'%20height='42'%20fill='white'/%3e%3c/clipPath%3e%3cclipPath%20id='clip2_1_981'%3e%3crect%20width='258'%20height='34'%20fill='white'%20transform='translate(84%208)'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e";
2
+ export {
3
+ L as default
4
+ };