@useinsider/guido 1.0.3-beta.8646ecc → 1.0.3-beta.866c587

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 (214) hide show
  1. package/README.md +3 -143
  2. package/dist/components/Guido.vue.js +9 -11
  3. package/dist/components/Guido.vue2.js +14 -14
  4. package/dist/components/organisms/header/LeftSlot.vue.js +1 -1
  5. package/dist/components/organisms/header/LeftSlot.vue2.js +15 -16
  6. package/dist/components/organisms/header/RightSlot.vue.js +11 -11
  7. package/dist/components/organisms/onboarding/NewVersionPopup.vue.js +9 -9
  8. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +17 -30
  9. package/dist/components/organisms/onboarding/OnboardingWrapper.vue.js +10 -12
  10. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +18 -19
  11. package/dist/composables/useStripo.js +55 -42
  12. package/dist/config/migrator/index.js +6 -7
  13. package/dist/enums/defaults.js +8 -15
  14. package/dist/enums/extensions/recommendationBlock.js +2 -2
  15. package/dist/enums/onboarding.js +1 -2
  16. package/dist/extensions/Blocks/Checkbox/extension.js +2 -2
  17. package/dist/extensions/Blocks/CouponBlock/extension.js +2 -2
  18. package/dist/extensions/Blocks/Items/block.js +13 -44
  19. package/dist/extensions/Blocks/Items/controls/button/align.js +12 -0
  20. package/dist/extensions/Blocks/Items/controls/button/border.js +12 -0
  21. package/dist/extensions/Blocks/Items/controls/button/borderRadius.js +12 -0
  22. package/dist/extensions/Blocks/Items/controls/button/color.js +12 -0
  23. package/dist/extensions/Blocks/Items/controls/button/fitToContent.js +12 -0
  24. package/dist/extensions/Blocks/Items/controls/button/fontFamily.js +12 -0
  25. package/dist/extensions/Blocks/Items/controls/button/link.js +9 -43
  26. package/dist/extensions/Blocks/Items/controls/button/margin.js +12 -0
  27. package/dist/extensions/Blocks/Items/controls/button/padding.js +12 -0
  28. package/dist/extensions/Blocks/Items/controls/button/text.js +12 -0
  29. package/dist/extensions/Blocks/Items/controls/button/textSize.js +12 -0
  30. package/dist/extensions/Blocks/Items/controls/button/textStyleAndFontColor.js +12 -0
  31. package/dist/extensions/Blocks/Items/controls/cardComposition.js +26 -27
  32. package/dist/extensions/Blocks/Items/controls/image/link.js +8 -42
  33. package/dist/extensions/Blocks/Items/controls/image/margin.js +13 -0
  34. package/dist/extensions/Blocks/Items/controls/image/size.js +13 -0
  35. package/dist/extensions/Blocks/Items/controls/name/align.js +12 -0
  36. package/dist/extensions/Blocks/Items/controls/name/color.js +12 -0
  37. package/dist/extensions/Blocks/Items/controls/name/fontFamily.js +12 -0
  38. package/dist/extensions/Blocks/Items/controls/name/padding.js +14 -0
  39. package/dist/extensions/Blocks/Items/controls/name/size.js +12 -0
  40. package/dist/extensions/Blocks/Items/controls/name/style.js +13 -0
  41. package/dist/extensions/Blocks/Items/controls/name/trimming.js +13 -46
  42. package/dist/extensions/Blocks/Items/controls/originalPrice/align.js +12 -0
  43. package/dist/extensions/Blocks/Items/controls/originalPrice/color.js +12 -0
  44. package/dist/extensions/Blocks/Items/controls/originalPrice/fontFamily.js +12 -0
  45. package/dist/extensions/Blocks/Items/controls/originalPrice/padding.js +14 -0
  46. package/dist/extensions/Blocks/Items/controls/originalPrice/size.js +12 -0
  47. package/dist/extensions/Blocks/Items/controls/originalPrice/style.js +13 -0
  48. package/dist/extensions/Blocks/Items/controls/price/align.js +12 -0
  49. package/dist/extensions/Blocks/Items/controls/price/color.js +12 -0
  50. package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +12 -82
  51. package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +9 -97
  52. package/dist/extensions/Blocks/Items/controls/price/fontFamily.js +12 -0
  53. package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +13 -52
  54. package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +12 -36
  55. package/dist/extensions/Blocks/Items/controls/price/padding.js +14 -0
  56. package/dist/extensions/Blocks/Items/controls/price/size.js +12 -0
  57. package/dist/extensions/Blocks/Items/controls/price/style.js +13 -0
  58. package/dist/extensions/Blocks/Items/controls/quantity/align.js +12 -0
  59. package/dist/extensions/Blocks/Items/controls/quantity/color.js +12 -0
  60. package/dist/extensions/Blocks/Items/controls/quantity/fontFamily.js +12 -0
  61. package/dist/extensions/Blocks/Items/controls/quantity/padding.js +14 -0
  62. package/dist/extensions/Blocks/Items/controls/quantity/size.js +12 -0
  63. package/dist/extensions/Blocks/Items/controls/quantity/style.js +13 -0
  64. package/dist/extensions/Blocks/Items/controls/settingsControl.js +86 -169
  65. package/dist/extensions/Blocks/Items/enums/productEnums.js +2 -21
  66. package/dist/extensions/Blocks/Items/enums/settingsEnums.js +13 -28
  67. package/dist/extensions/Blocks/Items/extension.js +52 -16
  68. package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +51 -54
  69. package/dist/extensions/Blocks/Items/layouts/vertical.html.js +16 -33
  70. package/dist/extensions/Blocks/Items/settingsPanel.js +75 -76
  71. package/dist/extensions/Blocks/Items/template.js +40 -74
  72. package/dist/extensions/Blocks/Recommendation/block.js +3 -6
  73. package/dist/extensions/Blocks/Recommendation/control.js +40 -69
  74. package/dist/extensions/Blocks/Recommendation/extension.js +7 -42
  75. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +22 -107
  76. package/dist/extensions/Blocks/Recommendation/template.js +200 -0
  77. package/dist/extensions/Blocks/common-control.js +55 -176
  78. package/dist/guido.css +1 -1
  79. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +153 -225
  80. package/dist/services/stripoApi.js +1 -1
  81. package/dist/src/@types/generic.d.ts +0 -15
  82. package/dist/src/components/Guido.vue.d.ts +0 -1
  83. package/dist/src/components/organisms/onboarding/NewVersionPopup.vue.d.ts +1 -3
  84. package/dist/src/components/organisms/onboarding/OnboardingWrapper.vue.d.ts +1 -3
  85. package/dist/src/components/wrappers/WpModal.vue.d.ts +1 -1
  86. package/dist/src/enums/onboarding.d.ts +0 -1
  87. package/dist/src/extensions/Blocks/Items/block.d.ts +1 -3
  88. package/dist/src/extensions/Blocks/Items/controls/button/link.d.ts +1 -7
  89. package/dist/src/extensions/Blocks/Items/controls/image/link.d.ts +1 -7
  90. package/dist/src/extensions/Blocks/{Recommendation/controls/price/paddings.d.ts → Items/controls/name/padding.d.ts} +2 -1
  91. package/dist/src/extensions/Blocks/Items/controls/name/trimming.d.ts +1 -7
  92. package/dist/src/extensions/Blocks/Items/controls/originalPrice/align.d.ts +5 -0
  93. package/dist/src/extensions/Blocks/Items/controls/originalPrice/color.d.ts +5 -0
  94. package/dist/src/extensions/Blocks/Items/controls/originalPrice/fontFamily.d.ts +5 -0
  95. package/dist/src/extensions/Blocks/Items/controls/originalPrice/padding.d.ts +6 -0
  96. package/dist/src/extensions/Blocks/Items/controls/originalPrice/size.d.ts +5 -0
  97. package/dist/src/extensions/Blocks/Items/controls/originalPrice/style.d.ts +5 -0
  98. package/dist/src/extensions/Blocks/Items/controls/price/currencyLocation.d.ts +1 -12
  99. package/dist/src/extensions/Blocks/Items/controls/price/currencySymbol.d.ts +2 -15
  100. package/dist/src/extensions/Blocks/Items/controls/price/formattedPrice.d.ts +2 -8
  101. package/dist/src/extensions/Blocks/Items/controls/price/hideDiscount.d.ts +2 -7
  102. package/dist/src/extensions/Blocks/{Recommendation/controls/name/paddings.d.ts → Items/controls/price/padding.d.ts} +2 -1
  103. package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/align.d.ts +1 -1
  104. package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/color.d.ts +1 -1
  105. package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/fontFamily.d.ts +1 -1
  106. package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice/paddings.d.ts → Items/controls/quantity/padding.d.ts} +2 -1
  107. package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/size.d.ts +1 -1
  108. package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/style.d.ts +1 -1
  109. package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +1 -10
  110. package/dist/src/extensions/Blocks/Items/enums/productEnums.d.ts +0 -19
  111. package/dist/src/extensions/Blocks/Items/enums/settingsEnums.d.ts +3 -21
  112. package/dist/src/extensions/Blocks/Items/template.d.ts +1 -4
  113. package/dist/src/extensions/Blocks/Recommendation/block.d.ts +0 -1
  114. package/dist/src/extensions/Blocks/Recommendation/control.d.ts +0 -6
  115. package/dist/src/extensions/Blocks/Recommendation/template.d.ts +6 -0
  116. package/dist/src/extensions/Blocks/common-control.d.ts +2 -46
  117. package/dist/src/stores/config.d.ts +0 -7
  118. package/dist/src/utils/dateUtil.d.ts +0 -21
  119. package/dist/static/styles/components/narrow-panel.css.js +0 -10
  120. package/dist/static/styles/customEditorStyle.css.js +2 -3
  121. package/dist/utils/dateUtil.js +3 -24
  122. package/package.json +2 -2
  123. package/dist/composables/useBlocksConfig.js +0 -48
  124. package/dist/config/migrator/recommendationMigrator.js +0 -293
  125. package/dist/enums/date.js +0 -6
  126. package/dist/extensions/Blocks/Items/controls/index.js +0 -217
  127. package/dist/extensions/Blocks/Items/enums/controlEnums.js +0 -5
  128. package/dist/extensions/Blocks/Items/store/items-block.js +0 -71
  129. package/dist/extensions/Blocks/Items/utils/configBlockUtils.js +0 -17
  130. package/dist/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.js +0 -28
  131. package/dist/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.js +0 -67
  132. package/dist/extensions/Blocks/Items/utils/updateAttributes.js +0 -44
  133. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +0 -103
  134. package/dist/extensions/Blocks/Recommendation/constants.js +0 -5
  135. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
  136. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
  137. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
  138. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
  139. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
  140. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
  141. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
  142. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
  143. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
  144. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
  145. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
  146. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
  147. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
  148. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
  149. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
  150. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
  151. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
  152. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
  153. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
  154. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
  155. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
  156. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
  157. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
  158. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
  159. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
  160. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
  161. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
  162. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
  163. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
  164. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
  165. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
  166. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
  167. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
  168. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
  169. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +0 -160
  170. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +0 -152
  171. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +0 -180
  172. package/dist/extensions/Blocks/controlFactories.js +0 -223
  173. package/dist/src/composables/useBlocksConfig.d.ts +0 -11
  174. package/dist/src/config/migrator/recommendationMigrator.d.ts +0 -1
  175. package/dist/src/enums/date.d.ts +0 -4
  176. package/dist/src/extensions/Blocks/Items/controls/index.d.ts +0 -501
  177. package/dist/src/extensions/Blocks/Items/enums/controlEnums.d.ts +0 -61
  178. package/dist/src/extensions/Blocks/Items/store/items-block.d.ts +0 -41
  179. package/dist/src/extensions/Blocks/Items/utils/configBlockUtils.d.ts +0 -23
  180. package/dist/src/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.d.ts +0 -32
  181. package/dist/src/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.d.ts +0 -44
  182. package/dist/src/extensions/Blocks/Items/utils/updateAttributes.d.ts +0 -8
  183. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +0 -28
  184. package/dist/src/extensions/Blocks/Recommendation/constants.d.ts +0 -51
  185. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
  186. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
  187. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
  188. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +0 -16
  189. package/dist/src/extensions/Blocks/Recommendation/templates/migrationTemplate.d.ts +0 -16
  190. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +0 -44
  191. package/dist/src/extensions/Blocks/controlFactories.d.ts +0 -312
  192. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/align.d.ts +0 -0
  193. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/border.d.ts +0 -0
  194. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/borderRadius.d.ts +0 -0
  195. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/color.d.ts +0 -0
  196. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/fitToContent.d.ts +0 -0
  197. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/fontFamily.d.ts +0 -0
  198. /package/dist/src/extensions/Blocks/{Recommendation/controls/button/margins.d.ts → Items/controls/button/margin.d.ts} +0 -0
  199. /package/dist/src/extensions/Blocks/{Recommendation/controls/button/paddings.d.ts → Items/controls/button/padding.d.ts} +0 -0
  200. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/text.d.ts +0 -0
  201. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/textSize.d.ts +0 -0
  202. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/textStyleAndFontColor.d.ts +0 -0
  203. /package/dist/src/extensions/Blocks/{Recommendation/controls/image/margins.d.ts → Items/controls/image/margin.d.ts} +0 -0
  204. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/image/size.d.ts +0 -0
  205. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/align.d.ts +0 -0
  206. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/color.d.ts +0 -0
  207. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/fontFamily.d.ts +0 -0
  208. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/size.d.ts +0 -0
  209. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/style.d.ts +0 -0
  210. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/price/align.d.ts +0 -0
  211. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/price/color.d.ts +0 -0
  212. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/price/fontFamily.d.ts +0 -0
  213. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/price/size.d.ts +0 -0
  214. /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/price/style.d.ts +0 -0
package/README.md CHANGED
@@ -52,7 +52,6 @@ npm install @useinsider/guido
52
52
  ref="guidoEditor"
53
53
  :template-id="templateId"
54
54
  :user-id="userId"
55
- :migration-date="migrationDate"
56
55
  :guido-config="guidoConfig"
57
56
  :html="initialHtml"
58
57
  :css="initialCss"
@@ -75,19 +74,16 @@ export default {
75
74
  return {
76
75
  templateId: 'template-123',
77
76
  userId: 'user-456',
78
- migrationDate: 1699488000,
79
77
  initialHtml: '<p>Initial HTML content</p>',
80
78
  initialCss: 'p { color: #333; }',
81
79
  guidoConfig: {
82
80
  translationsPath: 'window.trans.en',
83
81
  htmlCompilerRules: [],
84
82
  ignoreDefaultHtmlCompilerRules: false,
85
- backButtonLabel?: "Back to Design",
86
83
  features: {
87
84
  dynamicContent: true,
88
85
  saveAsTemplate: true,
89
- versionHistory: true,
90
- testMessage: true
86
+ versionHistory: true
91
87
  }
92
88
  },
93
89
  dynamicContentModalVisible: false
@@ -149,7 +145,6 @@ export default {
149
145
  | `templateId` | `string` | ✅ | - | Unique identifier for the email template |
150
146
  | `userId` | `string` | ✅ | - | Unique identifier for the user |
151
147
  | `guidoConfig` | `GuidoConfig` | ✅ | - | Configuration object for the editor |
152
- | `migrationDate` | `number` | ✅ | - | Stripo migration date in Unix timestamp (seconds). Retrieved from backend `/partner-settings` endpoint as `migrationDate`. Used for onboarding process |
153
148
  | `partnerName` | `string` | ⚪ | From URL host | Partner identifier |
154
149
  | `productType` | `string` | ⚪ | From URL path | Product type identifier |
155
150
  | `username` | `string` | ⚪ | `'Guido User'` | Display name for the user |
@@ -166,7 +161,6 @@ export default {
166
161
  | `save:complete` | `Omit<Template, 'forceRecreate'>` | Fired when template is successfully saved |
167
162
  | `on-change` | void | It Fires once for managing leave modal etc. |
168
163
  | `ready` | void | Fired when the editor is ready and template is loaded |
169
- | `onboarding-finished` | void | Fired when the onboarding popup is dismissed or completed, allowing parent applications to track onboarding state |
170
164
 
171
165
  ### Guido Exposed Methods
172
166
  ```typescript
@@ -196,11 +190,6 @@ interface GuidoConfig {
196
190
  dynamicContent: boolean;
197
191
  saveAsTemplate: boolean;
198
192
  versionHistory: boolean;
199
- testMessage: boolean;
200
- };
201
- blocks?: {
202
- excludeDefaults?: GuidoBlockType[];
203
- includeCustoms?: GuidoCustomBlockType[];
204
193
  };
205
194
  }
206
195
  ```
@@ -215,9 +204,6 @@ interface GuidoConfig {
215
204
  | `features.dynamicContent` | `boolean` | `true` | Enable dynamic content insertion feature |
216
205
  | `features.saveAsTemplate` | `boolean` | `true` | Enable save as template feature |
217
206
  | `features.versionHistory` | `boolean` | `true` | Enable version history feature |
218
- | `blocks` | `BlocksConfig` | `{ excludeDefaults: [], includeCustoms: [] }` | Block configuration for excluding default blocks and including custom blocks. See [Blocks Configuration](#-blocks-configuration) section below |
219
- | `blocks.excludeDefaults` | `GuidoBlockType[]` | `[]` | Array of default Stripo blocks to exclude from the editor |
220
- | `blocks.includeCustoms` | `GuidoCustomBlockType[]` | `[]` | Array of custom blocks to include in the editor |
221
207
 
222
208
  ```typescript
223
209
  interface DynamicContent {
@@ -234,128 +220,6 @@ interface DynamicContent {
234
220
  | `text` | `string` | '' | Visible value of the dynamic content |
235
221
  | `fallback?` | `string` | '' | Fallback value of the dynamic content. Optional |
236
222
 
237
- ## 🧱 Blocks Configuration
238
-
239
- Guido allows you to customize which blocks are available in the editor. You can exclude default Stripo blocks and selectively include custom blocks to create tailored editing experiences for different product types.
240
-
241
- ### Block Types
242
-
243
- #### Default Blocks (GuidoBlockType)
244
-
245
- These are the standard Stripo email editor blocks that can be excluded:
246
-
247
- ```typescript
248
- type GuidoBlockType =
249
- | 'amp-accordion' // AMP accordion component
250
- | 'amp-carousel' // AMP image carousel
251
- | 'amp-form-controls' // AMP form elements
252
- | 'banner-block' // Banner/hero section
253
- | 'button-block' // Call-to-action buttons
254
- | 'html-block' // Custom HTML
255
- | 'image-block' // Image elements
256
- | 'menu-block' // Navigation menu
257
- | 'social-block' // Social media links
258
- | 'spacer-block' // Vertical spacing
259
- | 'text-block' // Text content
260
- | 'timer-block' // Countdown timer
261
- | 'video-block' // Video embeds
262
- ```
263
-
264
- #### Custom Blocks (GuidoCustomBlockType)
265
-
266
- These are custom blocks that can be selectively included:
267
-
268
- ```typescript
269
- type GuidoCustomBlockType =
270
- | 'dynamic-content' // Dynamic content merge tags
271
- | 'checkbox-block' // Checkbox form input
272
- | 'radio-button-block' // Radio button form input
273
- | 'recommendation-block' // Product recommendations
274
- | 'unsubscribe-block' // Unsubscribe link
275
- | 'coupon-block' // Coupon/promo code
276
- | 'items-block' // Cart items display
277
- ```
278
-
279
- ### Configuration Examples
280
-
281
- #### Example 1: Exclude Specific Default Blocks
282
-
283
- Disable button, image, and video blocks while keeping all custom blocks:
284
-
285
- ```typescript
286
- const guidoConfig = {
287
- translationsPath: 'window.trans.en',
288
- features: {
289
- dynamicContent: true,
290
- saveAsTemplate: true,
291
- versionHistory: true,
292
- testMessage: true
293
- },
294
- blocks: {
295
- excludeDefaults: ['button-block', 'image-block', 'video-block']
296
- }
297
- };
298
- ```
299
-
300
- **Result:**
301
- - Button, Image, Video blocks disabled
302
- - All other default blocks enabled
303
- - All custom blocks are disabled.
304
-
305
- #### Example 2: Include Only Specific Custom Blocks
306
-
307
- Enable only coupon and recommendation blocks:
308
-
309
- ```typescript
310
- const guidoConfig = {
311
- translationsPath: 'window.trans.en',
312
- features: {
313
- dynamicContent: true,
314
- saveAsTemplate: true,
315
- versionHistory: true,
316
- testMessage: true
317
- },
318
- blocks: {
319
- includeCustoms: ['coupon-block', 'recommendation-block']
320
- }
321
- };
322
- ```
323
-
324
- **Result:**
325
- - All default blocks enabled
326
- - Only Coupon and Recommendation extensions enabled.
327
- - Other custom blocks are disabled
328
-
329
- ### Default Behavior
330
-
331
- When `blocks` is not provided or is `undefined`:
332
-
333
- ```typescript
334
- const guidoConfig = {
335
- translationsPath: 'window.trans.en',
336
- features: {
337
- dynamicContent: true,
338
- saveAsTemplate: true,
339
- versionHistory: true,
340
- testMessage: true
341
- },
342
- // No blocks config
343
- };
344
- ```
345
-
346
- **Result:**
347
- - All 13 default Stripo blocks enabled
348
- - All custom blocks are disabled.
349
-
350
- ### Block Configuration Interface
351
-
352
- ```typescript
353
- interface BlocksConfig {
354
- excludeDefaults?: GuidoBlockType[];
355
- includeCustoms?: GuidoCustomBlockType[];
356
- }
357
- ```
358
-
359
223
  ### TypeScript Types
360
224
 
361
225
  The library exports the following TypeScript types:
@@ -450,8 +314,7 @@ const guidoConfig = {
450
314
  features: {
451
315
  dynamicContent: true,
452
316
  saveAsTemplate: true,
453
- versionHistory: false, // Disable version history
454
- testMessage: true
317
+ versionHistory: false // Disable version history
455
318
  },
456
319
  htmlCompilerRules: [
457
320
  {
@@ -484,8 +347,7 @@ const guidoConfig = {
484
347
  features: {
485
348
  dynamicContent: true,
486
349
  saveAsTemplate: true,
487
- versionHistory: true,
488
- testMessage: true
350
+ versionHistory: true
489
351
  },
490
352
  ignoreDefaultHtmlCompilerRules: true, // Skip all default rules
491
353
  htmlCompilerRules: [
@@ -814,5 +676,3 @@ Tech Debts:
814
676
  [ ] Template Replacement should be optimized for version history
815
677
  [ ] Code Optimization for Items Block inner blocks reordering
816
678
  [ ] Image Size & Margins controls has an error on console
817
- [ ] Feed Text Trimming feature to toggle settings
818
- [ ] Formatted Price feature to toggle settings
@@ -1,20 +1,18 @@
1
- import i from "./Guido.vue2.js";
1
+ import a from "./Guido.vue2.js";
2
2
  /* empty css */
3
- import a from "../_virtual/_plugin-vue2_normalizer.js";
3
+ import i from "../_virtual/_plugin-vue2_normalizer.js";
4
4
  var t = function() {
5
5
  var o = this, r = o._self._c, e = o._self._setupProxy;
6
- return r("div", { staticClass: "guido-editor__wrapper", class: { "guido-editor__no-header": e.noHeader } }, [r(e.HeaderWrapper, { ref: "headerWrapperRef" }), e.editorStore.isPreviewModeOpen ? r(e.PreviewContainer) : o._e(), r("div", { directives: [{ name: "show", rawName: "v-show", value: !e.previewStore.isLoaded, expression: "!previewStore.isLoaded" }], staticClass: "guido-editor__container", class: { "guido-editor__no-header": e.noHeader }, attrs: { id: "guido-editor" } }), r(e.Toaster), r(e.FilterSelectionDrawer), r(e.SaveAsTemplateDrawer), e.isTestPartner() ? o._e() : r(e.OnboardingWrapper, { on: { "onboarding-finished": function(_) {
7
- return e.emit("onboarding:finished");
8
- } } }), r(e.UnsubscribeWrapper), r(e.LoadingWrapper)], 1);
9
- }, n = [], s = /* @__PURE__ */ a(
10
- i,
6
+ return r("div", { staticClass: "guido-editor__wrapper", class: { "guido-editor__no-header": e.noHeader } }, [r(e.HeaderWrapper, { ref: "headerWrapperRef" }), e.editorStore.isPreviewModeOpen ? r(e.PreviewContainer) : o._e(), r("div", { directives: [{ name: "show", rawName: "v-show", value: !e.previewStore.isLoaded, expression: "!previewStore.isLoaded" }], staticClass: "guido-editor__container", class: { "guido-editor__no-header": e.noHeader }, attrs: { id: "guido-editor" } }), r(e.Toaster), r(e.FilterSelectionDrawer), r(e.SaveAsTemplateDrawer), e.isTestPartner() ? o._e() : r(e.OnboardingWrapper), r(e.UnsubscribeWrapper), r(e.LoadingWrapper)], 1);
7
+ }, s = [], d = /* @__PURE__ */ i(
8
+ a,
11
9
  t,
12
- n,
10
+ s,
13
11
  !1,
14
12
  null,
15
- "3c910a93"
13
+ "e8d51dec"
16
14
  );
17
- const v = s.exports;
15
+ const l = d.exports;
18
16
  export {
19
- v as default
17
+ l as default
20
18
  };
@@ -15,8 +15,8 @@ import { useConfigStore as te } from "../stores/config.js";
15
15
  import { useDynamicContentStore as ne } from "../stores/dynamic-content.js";
16
16
  import { useEditorStore as re } from "../stores/editor.js";
17
17
  import { usePreviewStore as ae } from "../stores/preview.js";
18
- import { useUnsubscribeStore as ie } from "../stores/unsubscribe.js";
19
- import se from "../node_modules/lodash-es/merge.js";
18
+ import { useUnsubscribeStore as se } from "../stores/unsubscribe.js";
19
+ import ie from "../node_modules/lodash-es/merge.js";
20
20
  const Ge = /* @__PURE__ */ R({
21
21
  __name: "Guido",
22
22
  props: {
@@ -31,39 +31,39 @@ const Ge = /* @__PURE__ */ R({
31
31
  guidoConfig: null,
32
32
  templateConfig: null
33
33
  },
34
- emits: ["dynamic-content:open", "back", "save:start", "save:complete", "on-change", "ready", "onboarding:finished"],
34
+ emits: ["dynamic-content:open", "back", "save:start", "save:complete", "on-change", "ready"],
35
35
  setup(_, { expose: L, emit: t }) {
36
36
  const u = _, k = I(
37
37
  () => import("./organisms/email-preview/PreviewContainer.vue.js")
38
38
  ), A = I(
39
39
  () => import("./organisms/onboarding/OnboardingWrapper.vue.js")
40
- ), l = x(), a = ne(), p = ie(), g = te(), i = re(), N = ae(), n = U(() => i.hasChanges), { getPartnerName: f, getProductType: y, isTestPartner: F } = O(), v = () => {
40
+ ), l = x(), a = ne(), p = se(), g = te(), s = re(), N = ae(), n = U(() => s.hasChanges), { getPartnerName: f, getProductType: y, isTestPartner: F } = O(), v = () => {
41
41
  var e;
42
42
  return (e = l.value) == null ? void 0 : e.handleSave(!0);
43
43
  }, {
44
- templateId: s,
44
+ templateId: i,
45
45
  userId: b,
46
46
  guidoConfig: C,
47
47
  templateConfig: o,
48
48
  html: r = "",
49
49
  css: h = "",
50
50
  partnerName: c = f(),
51
- productType: d = y(),
51
+ productType: m = y(),
52
52
  messageType: S = J,
53
53
  username: w = q
54
- } = u, m = (o == null ? void 0 : o.preselectedDynamicContentList) || [];
55
- i.templateId = s, window.GuidoConfig = se(Q, C), window.GuidoConfig.partner = {
54
+ } = u, d = (o == null ? void 0 : o.preselectedDynamicContentList) || [];
55
+ s.templateId = i, window.GuidoConfig = ie(Q, C), window.GuidoConfig.partner = {
56
56
  partnerName: c,
57
- productType: d,
57
+ productType: m,
58
58
  messageType: S
59
59
  }, g.templateConfig = o;
60
60
  const { initPlugin: D } = j({
61
- emailId: s,
61
+ emailId: i,
62
62
  userId: b,
63
63
  username: w,
64
64
  partnerName: c,
65
- productType: d,
66
- preselectedDynamicContentList: m,
65
+ productType: m,
66
+ preselectedDynamicContentList: d,
67
67
  onReady: () => {
68
68
  console.debug("guido:ready"), t("ready");
69
69
  }
@@ -99,7 +99,7 @@ const Ge = /* @__PURE__ */ R({
99
99
  forceRecreate: !0
100
100
  // TODO: It should be false for old templates. We will communicate with Stripo
101
101
  };
102
- e.html || (e = await T(), e.html = await W(e.html)), await D(e), a.selectedDynamicContentList = m;
102
+ e.html || (e = await T(), e.html = await W(e.html)), await D(e), a.selectedDynamicContentList = d;
103
103
  } catch (e) {
104
104
  console.error("Failed to initialize Stripo editor:", e);
105
105
  }
@@ -120,7 +120,7 @@ const Ge = /* @__PURE__ */ R({
120
120
  },
121
121
  hasChanges: n,
122
122
  saveSilent: v
123
- }), { __sfc: !0, PreviewContainer: k, OnboardingWrapper: A, headerWrapperRef: l, dynamicContentStore: a, unsubscribeStore: p, props: u, configStore: g, editorStore: i, previewStore: N, hasChanges: n, getPartnerName: f, getProductType: y, isTestPartner: F, saveSilent: v, templateId: s, userId: b, guidoConfig: C, templateConfig: o, html: r, css: h, partnerName: c, productType: d, messageType: S, username: w, preselectedDynamicContentList: m, emit: t, initPlugin: D, getDefaultTemplate: T, noHeader: H, insertDynamicContent: E, closeDynamicContent: P, Toaster: V, FilterSelectionDrawer: X, HeaderWrapper: Y, LoadingWrapper: Z, SaveAsTemplateDrawer: $, UnsubscribeWrapper: ee };
123
+ }), { __sfc: !0, PreviewContainer: k, OnboardingWrapper: A, headerWrapperRef: l, dynamicContentStore: a, unsubscribeStore: p, props: u, configStore: g, editorStore: s, previewStore: N, hasChanges: n, getPartnerName: f, getProductType: y, isTestPartner: F, saveSilent: v, templateId: i, userId: b, guidoConfig: C, templateConfig: o, html: r, css: h, partnerName: c, productType: m, messageType: S, username: w, preselectedDynamicContentList: d, emit: t, initPlugin: D, getDefaultTemplate: T, noHeader: H, insertDynamicContent: E, closeDynamicContent: P, Toaster: V, FilterSelectionDrawer: X, HeaderWrapper: Y, LoadingWrapper: Z, SaveAsTemplateDrawer: $, UnsubscribeWrapper: ee };
124
124
  }
125
125
  });
126
126
  export {
@@ -10,7 +10,7 @@ var n = function() {
10
10
  a,
11
11
  !1,
12
12
  null,
13
- "0502bceb"
13
+ "2c168944"
14
14
  );
15
15
  const p = i.exports;
16
16
  export {
@@ -1,29 +1,28 @@
1
- import { defineComponent as c, computed as a } from "vue";
2
- import { useConfig as m } from "../../../composables/useConfig.js";
3
- import { useBack as u } from "../../../composables/useGuidoActions.js";
4
- import { usePreviewMode as f } from "../../../composables/usePreviewMode.js";
1
+ import { defineComponent as s, computed as c } from "vue";
2
+ import { useBack as m } from "../../../composables/useGuidoActions.js";
3
+ import { usePreviewMode as a } from "../../../composables/usePreviewMode.js";
5
4
  import { useTranslations as p } from "../../../composables/useTranslations.js";
6
- import { useVersionHistoryApi as d } from "../../../composables/useVersionHistoryApi.js";
7
- import { useEditorStore as l } from "../../../stores/editor.js";
8
- import { InButtonV2 as k } from "@useinsider/design-system-vue";
9
- import B from "./version-history/RestoreButton.vue.js";
10
- const P = /* @__PURE__ */ c({
5
+ import { useVersionHistoryApi as u } from "../../../composables/useVersionHistoryApi.js";
6
+ import { useEditorStore as d } from "../../../stores/editor.js";
7
+ import { InButtonV2 as f } from "@useinsider/design-system-vue";
8
+ import l from "./version-history/RestoreButton.vue.js";
9
+ const O = /* @__PURE__ */ s({
11
10
  __name: "LeftSlot",
12
- setup(b) {
13
- const o = l(), r = u(), { closeVersionHistory: i } = d(), { closePreviewMode: n } = f(), e = p(), { config: t } = m(), s = a(() => o.isVersionHistoryOpen || o.isPreviewModeOpen ? e("email-editor.back-to-editor") : t.backButtonLabel ? t.backButtonLabel : e("email-editor.back-to-design"));
14
- return { __sfc: !0, editorStore: o, handleBack: r, closeVersionHistory: i, closePreviewMode: n, trans: e, config: t, backButtonLabel: s, handleBackClick: () => {
11
+ setup(k) {
12
+ const o = d(), r = m(), { closeVersionHistory: t } = u(), { closePreviewMode: i } = a(), e = p(), n = c(() => o.isVersionHistoryOpen || o.isPreviewModeOpen ? e("email-editor.back-to-editor") : e("email-editor.back-to-design"));
13
+ return { __sfc: !0, editorStore: o, handleBack: r, closeVersionHistory: t, closePreviewMode: i, trans: e, backButtonLabel: n, handleBackClick: () => {
15
14
  if (o.isVersionHistoryOpen) {
16
- i();
15
+ t();
17
16
  return;
18
17
  }
19
18
  if (o.isPreviewModeOpen) {
20
- n();
19
+ i();
21
20
  return;
22
21
  }
23
22
  r();
24
- }, InButtonV2: k, RestoreButton: B };
23
+ }, InButtonV2: f, RestoreButton: l };
25
24
  }
26
25
  });
27
26
  export {
28
- P as default
27
+ O as default
29
28
  };
@@ -1,20 +1,20 @@
1
- import a from "./RightSlot.vue2.js";
2
- import l from "../../../_virtual/_plugin-vue2_normalizer.js";
3
- var r = function() {
4
- var o, i, n;
5
- var s = this, e = s._self._c, t = s._self._setupProxy;
6
- return e("div", { staticClass: "d-f" }, [(o = t.config.features) != null && o.versionHistory ? e(t.InButtonV2, { attrs: { id: "guido__history-button", "left-icon": "line-architect-version-history", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isVersionHistoryButtonDisabled, "label-text-status": !1, "selected-status": t.editorStore.isVersionHistoryOpen, "tooltip-options": t.getTooltipOptions("guido__history-button"), "tooltip-text": t.versionHistoryTooltipText }, on: { click: t.handleVersionHistory } }) : s._e(), e(t.InButtonV2, { attrs: { id: "guido__export-button", "left-icon": "line-export", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isExportButtonDisabled, "label-text-status": !1, "loading-status": t.isExporting, "tooltip-options": t.getTooltipOptions("guido__export-button"), "tooltip-text": t.trans("newsletter.export") }, on: { click: t.handleExport } }), (i = t.config.features) != null && i.saveAsTemplate ? e(t.InButtonV2, { attrs: { id: "guido__save-as-button", "left-icon": "line-newsletter-save-as-template", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isSaveAsButtonDisabled, "label-text-status": !1, "tooltip-options": t.getTooltipOptions("guido__save-as-button"), "tooltip-text": t.trans("newsletter.save-templates") }, on: { click: t.handleSaveAs } }) : s._e(), (n = t.config.features) != null && n.testMessage ? e(t.InButtonV2, { attrs: { id: "guido__test-button", "left-icon": "line-architect-test-journey", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isTestButtonDisabled, "label-text-status": !1, "tooltip-options": t.getTooltipOptions("guido__test-button"), "tooltip-text": t.trans("newsletter.test-email") } }) : s._e(), e(t.InButtonV2, { staticClass: "ml-3", attrs: { id: "guido__save-button", "label-text": "Save", "disabled-status": !t.isSaving && t.editorStore.isSaveButtonDisabled, "loading-status": t.isSaving }, on: { click: function(_) {
1
+ import n from "./RightSlot.vue2.js";
2
+ import a from "../../../_virtual/_plugin-vue2_normalizer.js";
3
+ var l = function() {
4
+ var s, i;
5
+ var o = this, e = o._self._c, t = o._self._setupProxy;
6
+ return e("div", { staticClass: "d-f" }, [(s = t.config.features) != null && s.versionHistory ? e(t.InButtonV2, { attrs: { id: "guido__history-button", "left-icon": "line-architect-version-history", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isVersionHistoryButtonDisabled, "label-text-status": !1, "selected-status": t.editorStore.isVersionHistoryOpen, "tooltip-options": t.getTooltipOptions("guido__history-button"), "tooltip-text": t.versionHistoryTooltipText }, on: { click: t.handleVersionHistory } }) : o._e(), e(t.InButtonV2, { attrs: { id: "guido__export-button", "left-icon": "line-export", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isExportButtonDisabled, "label-text-status": !1, "loading-status": t.isExporting, "tooltip-options": t.getTooltipOptions("guido__export-button"), "tooltip-text": t.trans("newsletter.export") }, on: { click: t.handleExport } }), (i = t.config.features) != null && i.saveAsTemplate ? e(t.InButtonV2, { attrs: { id: "guido__save-as-button", "left-icon": "line-newsletter-save-as-template", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isSaveAsButtonDisabled, "label-text-status": !1, "tooltip-options": t.getTooltipOptions("guido__save-as-button"), "tooltip-text": t.trans("newsletter.save-templates") }, on: { click: t.handleSaveAs } }) : o._e(), e(t.InButtonV2, { attrs: { id: "guido__test-button", "left-icon": "line-architect-test-journey", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isTestButtonDisabled, "label-text-status": !1, "tooltip-options": t.getTooltipOptions("guido__test-button"), "tooltip-text": t.trans("newsletter.test-email") } }), e(t.InButtonV2, { staticClass: "ml-3", attrs: { id: "guido__save-button", "label-text": "Save", "disabled-status": !t.isSaving && t.editorStore.isSaveButtonDisabled, "loading-status": t.isSaving }, on: { click: function(p) {
7
7
  return t.handleSave(!1);
8
8
  } } })], 1);
9
- }, u = [], d = /* @__PURE__ */ l(
10
- a,
9
+ }, r = [], d = /* @__PURE__ */ a(
10
+ n,
11
+ l,
11
12
  r,
12
- u,
13
13
  !1,
14
14
  null,
15
15
  null
16
16
  );
17
- const f = d.exports;
17
+ const g = d.exports;
18
18
  export {
19
- f as default
19
+ g as default
20
20
  };
@@ -1,17 +1,17 @@
1
- import t from "./NewVersionPopup.vue2.js";
1
+ import s from "./NewVersionPopup.vue2.js";
2
2
  import n from "../../../_virtual/_plugin-vue2_normalizer.js";
3
- var i = function() {
4
- var e = this, s = e._self._c, o = e._self._setupProxy;
5
- return o.isVisible ? s(o.WpModal, { attrs: { id: "guido__new-version-popup", size: "medium", "close-on-outside-click": !1, "footer-button-options": o.footerButtonOptions, title: o.popupTitle }, on: { close: o.handleClose, "primary-action": o.handleDiscoverNow, "secondary-action": o.handleRemindLater } }, [s("div", { staticClass: "d-f f-d-c" }, [s("img", { staticClass: "w-1 h-1 d-b p-e-n mb-5", attrs: { src: o.onboardingImageSvg } }), s("p", { staticClass: "f-s-2 f-w-400", domProps: { innerHTML: e._s(o.popupDescription) } })])]) : e._e();
6
- }, r = [], a = /* @__PURE__ */ n(
7
- t,
8
- i,
3
+ var r = function() {
4
+ var e = this, t = e._self._c, o = e._self._setupProxy;
5
+ return o.isVisible ? t(o.WpModal, { attrs: { id: "guido__new-version-popup", "close-on-outside-click": !1, "footer-button-options": o.footerButtonOptions, title: o.trans("email-editor.onboarding-title") }, on: { close: o.handleClose, "primary-action": o.handleDiscoverNow, "secondary-action": o.handleRemindLater } }, [t("div", { staticClass: "d-f f-d-c" }, [t("img", { staticClass: "w-1 h-1 d-b p-e-n mb-5", attrs: { src: o.onboardingImageSvg } }), t("p", { staticClass: "f-s-2 f-w-400", domProps: { innerHTML: e._s(o.trans("email-editor.onboarding-description")) } })])]) : e._e();
6
+ }, i = [], a = /* @__PURE__ */ n(
7
+ s,
9
8
  r,
9
+ i,
10
10
  !1,
11
11
  null,
12
12
  null
13
13
  );
14
- const _ = a.exports;
14
+ const p = a.exports;
15
15
  export {
16
- _ as default
16
+ p as default
17
17
  };
@@ -1,43 +1,30 @@
1
- import { defineComponent as g, ref as b, computed as o } from "vue";
2
- import v from "../../wrappers/WpModal.vue.js";
3
- import { useConfig as D } from "../../../composables/useConfig.js";
4
- import { useTranslations as h } from "../../../composables/useTranslations.js";
5
- import { ACADEMY_LINK as l } from "../../../enums/onboarding.js";
6
- import y from "../../../static/assets/onboarding-img.svg.js";
7
- import { useOnboardingStore as _ } from "../../../stores/onboarding.js";
8
- import { isAfterDate as C, formatShortDate as L } from "../../../utils/dateUtil.js";
9
- const I = /* @__PURE__ */ g({
1
+ import { defineComponent as s, ref as r } from "vue";
2
+ import a from "../../wrappers/WpModal.vue.js";
3
+ import { useTranslations as i } from "../../../composables/useTranslations.js";
4
+ import l from "../../../static/assets/onboarding-img.svg.js";
5
+ import { useOnboardingStore as m } from "../../../stores/onboarding.js";
6
+ const w = /* @__PURE__ */ s({
10
7
  __name: "NewVersionPopup",
11
- emits: ["onboarding-finished"],
12
- setup(w, { emit: a }) {
13
- const e = h(), t = _(), s = b(!0), { config: p } = D(), i = o(() => p.migrationDate), n = o(() => C(i.value || 0)), d = o(() => L(
14
- i.value
15
- )), m = o(() => n.value ? e("email-editor.onboarding-popup-sunsetted-title") : e("email-editor.onboarding-title")), c = o(() => n.value ? e("email-editor.onboarding-popup-sunsetted-description", {
16
- sunsetDate: d.value,
17
- academyLink: l
18
- }) : e("email-editor.onboarding-description", {
19
- academyLink: l
20
- })), u = o(() => n.value ? e("products.cancel") : e("products.remind-me-later")), f = o(() => ({
8
+ setup(p) {
9
+ const n = i(), e = m(), o = r(!0), t = r({
21
10
  primaryButton: {
22
11
  type: "primary",
23
- labelText: e("left-menu.discover-now")
12
+ labelText: n("left-menu.discover-now")
24
13
  },
25
14
  secondaryButton: {
26
15
  type: "subtle-primary",
27
- labelText: u.value
16
+ labelText: n("products.remind-me-later")
28
17
  }
29
- })), r = () => {
30
- s.value = !1, a("onboarding-finished");
31
- };
32
- return { __sfc: !0, emit: a, trans: e, onboardingStore: t, isVisible: s, config: p, migrationDate: i, isAfterMigrationDate: n, formattedSunsetDate: d, popupTitle: m, popupDescription: c, secondaryButtonLabel: u, footerButtonOptions: f, closePopup: r, handleDiscoverNow: () => {
33
- t.onDiscoverNowClicked(), r();
18
+ });
19
+ return { __sfc: !0, trans: n, onboardingStore: e, isVisible: o, footerButtonOptions: t, handleDiscoverNow: () => {
20
+ e.onDiscoverNowClicked(), o.value = !1;
34
21
  }, handleRemindLater: () => {
35
- t.onRemindMeLater(), r();
22
+ e.onRemindMeLater(), o.value = !1;
36
23
  }, handleClose: () => {
37
- t.onNewVersionPopupClose(), r();
38
- }, WpModal: v, onboardingImageSvg: y };
24
+ e.onNewVersionPopupClose(), o.value = !1;
25
+ }, WpModal: a, onboardingImageSvg: l };
39
26
  }
40
27
  });
41
28
  export {
42
- I as default
29
+ w as default
43
30
  };
@@ -1,21 +1,19 @@
1
- import t from "./OnboardingWrapper.vue2.js";
2
- import i from "../../../_virtual/_plugin-vue2_normalizer.js";
1
+ import o from "./OnboardingWrapper.vue2.js";
2
+ import _ from "../../../_virtual/_plugin-vue2_normalizer.js";
3
3
  var s = function() {
4
- var n = this, e = n._self._c, r = n._self._setupProxy;
5
- return e("div", n._l(r.visibleOnboardings, function(o) {
6
- return e(o.component, { key: o.type, tag: "component", on: { "onboarding-finished": function(p) {
7
- return r.emit("onboarding-finished");
8
- } } });
4
+ var n = this, e = n._self._c, t = n._self._setupProxy;
5
+ return e("div", n._l(t.visibleOnboardings, function(r) {
6
+ return e(r.component, { key: r.type, tag: "component" });
9
7
  }), 1);
10
- }, _ = [], a = /* @__PURE__ */ i(
11
- t,
8
+ }, a = [], p = /* @__PURE__ */ _(
9
+ o,
12
10
  s,
13
- _,
11
+ a,
14
12
  !1,
15
13
  null,
16
14
  null
17
15
  );
18
- const d = a.exports;
16
+ const m = p.exports;
19
17
  export {
20
- d as default
18
+ m as default
21
19
  };
@@ -1,25 +1,24 @@
1
- import { defineComponent as b, computed as e, onMounted as O, watch as t } from "vue";
2
- import { usePartner as u } from "../../../composables/usePartner.js";
3
- import { useEditorStore as v } from "../../../stores/editor.js";
4
- import { useOnboardingStore as l } from "../../../stores/onboarding.js";
5
- import { usePreviewStore as y } from "../../../stores/preview.js";
6
- import S from "./AMPOnboarding.vue.js";
7
- import h from "./GenericOnboarding.vue.js";
1
+ import { defineComponent as g, computed as e, onMounted as b, watch as t } from "vue";
2
+ import { usePartner as O } from "../../../composables/usePartner.js";
3
+ import { useEditorStore as u } from "../../../stores/editor.js";
4
+ import { useOnboardingStore as v } from "../../../stores/onboarding.js";
5
+ import { usePreviewStore as l } from "../../../stores/preview.js";
6
+ import y from "./AMPOnboarding.vue.js";
7
+ import S from "./GenericOnboarding.vue.js";
8
8
  import w from "./NewVersionPopup.vue.js";
9
9
  import P from "./TextBlockOnboarding.vue.js";
10
- import _ from "./VersionHistoryOnboarding.vue.js";
11
- const F = /* @__PURE__ */ b({
10
+ import h from "./VersionHistoryOnboarding.vue.js";
11
+ const E = /* @__PURE__ */ g({
12
12
  __name: "OnboardingWrapper",
13
- emits: ["onboarding-finished"],
14
- setup(A, { emit: f }) {
15
- const o = l(), r = v(), s = y(), { isTestPartner: a } = u(), p = e(() => r.isStripoInitialized), d = e(() => a()), m = [
13
+ setup(_) {
14
+ const o = v(), r = u(), s = l(), { isTestPartner: a } = O(), p = e(() => r.isStripoInitialized), d = e(() => a()), m = [
16
15
  { type: "newVersionPopup", component: w },
17
- { type: "genericOnboarding", component: h },
16
+ { type: "genericOnboarding", component: S },
18
17
  { type: "textBlockOnboarding", component: P },
19
- { type: "versionHistoryOnboarding", component: _ },
20
- { type: "ampOnboarding", component: S }
21
- ], c = (n) => d.value || !p.value ? !1 : n === "newVersionPopup" ? o.shouldShowOnboarding(n) : o.isActive(n), g = e(() => m.filter((n) => c(n.type)));
22
- return O(async () => {
18
+ { type: "versionHistoryOnboarding", component: h },
19
+ { type: "ampOnboarding", component: y }
20
+ ], c = (n) => d.value || !p.value ? !1 : n === "newVersionPopup" ? o.shouldShowOnboarding(n) : o.isActive(n), f = e(() => m.filter((n) => c(n.type)));
21
+ return b(async () => {
23
22
  await o.fetchUserModalState();
24
23
  }), t(
25
24
  () => r.isVersionHistoryOpen,
@@ -36,9 +35,9 @@ const F = /* @__PURE__ */ b({
36
35
  (n) => {
37
36
  !n && o.isActive("ampOnboarding") && o.close("ampOnboarding");
38
37
  }
39
- ), { __sfc: !0, emit: f, onboardingStore: o, editorStore: r, previewStore: s, isTestPartner: a, isStripoReady: p, isTestPartnerActive: d, onboardingConfigs: m, shouldShow: c, visibleOnboardings: g };
38
+ ), { __sfc: !0, onboardingStore: o, editorStore: r, previewStore: s, isTestPartner: a, isStripoReady: p, isTestPartnerActive: d, onboardingConfigs: m, shouldShow: c, visibleOnboardings: f };
40
39
  }
41
40
  });
42
41
  export {
43
- F as default
42
+ E as default
44
43
  };