@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.
- package/README.md +3 -143
- package/dist/components/Guido.vue.js +9 -11
- package/dist/components/Guido.vue2.js +14 -14
- package/dist/components/organisms/header/LeftSlot.vue.js +1 -1
- package/dist/components/organisms/header/LeftSlot.vue2.js +15 -16
- package/dist/components/organisms/header/RightSlot.vue.js +11 -11
- package/dist/components/organisms/onboarding/NewVersionPopup.vue.js +9 -9
- package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +17 -30
- package/dist/components/organisms/onboarding/OnboardingWrapper.vue.js +10 -12
- package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +18 -19
- package/dist/composables/useStripo.js +55 -42
- package/dist/config/migrator/index.js +6 -7
- package/dist/enums/defaults.js +8 -15
- package/dist/enums/extensions/recommendationBlock.js +2 -2
- package/dist/enums/onboarding.js +1 -2
- package/dist/extensions/Blocks/Checkbox/extension.js +2 -2
- package/dist/extensions/Blocks/CouponBlock/extension.js +2 -2
- package/dist/extensions/Blocks/Items/block.js +13 -44
- package/dist/extensions/Blocks/Items/controls/button/align.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/border.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/borderRadius.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/color.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/fitToContent.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/fontFamily.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/link.js +9 -43
- package/dist/extensions/Blocks/Items/controls/button/margin.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/padding.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/text.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/textSize.js +12 -0
- package/dist/extensions/Blocks/Items/controls/button/textStyleAndFontColor.js +12 -0
- package/dist/extensions/Blocks/Items/controls/cardComposition.js +26 -27
- package/dist/extensions/Blocks/Items/controls/image/link.js +8 -42
- package/dist/extensions/Blocks/Items/controls/image/margin.js +13 -0
- package/dist/extensions/Blocks/Items/controls/image/size.js +13 -0
- package/dist/extensions/Blocks/Items/controls/name/align.js +12 -0
- package/dist/extensions/Blocks/Items/controls/name/color.js +12 -0
- package/dist/extensions/Blocks/Items/controls/name/fontFamily.js +12 -0
- package/dist/extensions/Blocks/Items/controls/name/padding.js +14 -0
- package/dist/extensions/Blocks/Items/controls/name/size.js +12 -0
- package/dist/extensions/Blocks/Items/controls/name/style.js +13 -0
- package/dist/extensions/Blocks/Items/controls/name/trimming.js +13 -46
- package/dist/extensions/Blocks/Items/controls/originalPrice/align.js +12 -0
- package/dist/extensions/Blocks/Items/controls/originalPrice/color.js +12 -0
- package/dist/extensions/Blocks/Items/controls/originalPrice/fontFamily.js +12 -0
- package/dist/extensions/Blocks/Items/controls/originalPrice/padding.js +14 -0
- package/dist/extensions/Blocks/Items/controls/originalPrice/size.js +12 -0
- package/dist/extensions/Blocks/Items/controls/originalPrice/style.js +13 -0
- package/dist/extensions/Blocks/Items/controls/price/align.js +12 -0
- package/dist/extensions/Blocks/Items/controls/price/color.js +12 -0
- package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +12 -82
- package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +9 -97
- package/dist/extensions/Blocks/Items/controls/price/fontFamily.js +12 -0
- package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +13 -52
- package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +12 -36
- package/dist/extensions/Blocks/Items/controls/price/padding.js +14 -0
- package/dist/extensions/Blocks/Items/controls/price/size.js +12 -0
- package/dist/extensions/Blocks/Items/controls/price/style.js +13 -0
- package/dist/extensions/Blocks/Items/controls/quantity/align.js +12 -0
- package/dist/extensions/Blocks/Items/controls/quantity/color.js +12 -0
- package/dist/extensions/Blocks/Items/controls/quantity/fontFamily.js +12 -0
- package/dist/extensions/Blocks/Items/controls/quantity/padding.js +14 -0
- package/dist/extensions/Blocks/Items/controls/quantity/size.js +12 -0
- package/dist/extensions/Blocks/Items/controls/quantity/style.js +13 -0
- package/dist/extensions/Blocks/Items/controls/settingsControl.js +86 -169
- package/dist/extensions/Blocks/Items/enums/productEnums.js +2 -21
- package/dist/extensions/Blocks/Items/enums/settingsEnums.js +13 -28
- package/dist/extensions/Blocks/Items/extension.js +52 -16
- package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +51 -54
- package/dist/extensions/Blocks/Items/layouts/vertical.html.js +16 -33
- package/dist/extensions/Blocks/Items/settingsPanel.js +75 -76
- package/dist/extensions/Blocks/Items/template.js +40 -74
- package/dist/extensions/Blocks/Recommendation/block.js +3 -6
- package/dist/extensions/Blocks/Recommendation/control.js +40 -69
- package/dist/extensions/Blocks/Recommendation/extension.js +7 -42
- package/dist/extensions/Blocks/Recommendation/settingsPanel.js +22 -107
- package/dist/extensions/Blocks/Recommendation/template.js +200 -0
- package/dist/extensions/Blocks/common-control.js +55 -176
- package/dist/guido.css +1 -1
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +153 -225
- package/dist/services/stripoApi.js +1 -1
- package/dist/src/@types/generic.d.ts +0 -15
- package/dist/src/components/Guido.vue.d.ts +0 -1
- package/dist/src/components/organisms/onboarding/NewVersionPopup.vue.d.ts +1 -3
- package/dist/src/components/organisms/onboarding/OnboardingWrapper.vue.d.ts +1 -3
- package/dist/src/components/wrappers/WpModal.vue.d.ts +1 -1
- package/dist/src/enums/onboarding.d.ts +0 -1
- package/dist/src/extensions/Blocks/Items/block.d.ts +1 -3
- package/dist/src/extensions/Blocks/Items/controls/button/link.d.ts +1 -7
- package/dist/src/extensions/Blocks/Items/controls/image/link.d.ts +1 -7
- package/dist/src/extensions/Blocks/{Recommendation/controls/price/paddings.d.ts → Items/controls/name/padding.d.ts} +2 -1
- package/dist/src/extensions/Blocks/Items/controls/name/trimming.d.ts +1 -7
- package/dist/src/extensions/Blocks/Items/controls/originalPrice/align.d.ts +5 -0
- package/dist/src/extensions/Blocks/Items/controls/originalPrice/color.d.ts +5 -0
- package/dist/src/extensions/Blocks/Items/controls/originalPrice/fontFamily.d.ts +5 -0
- package/dist/src/extensions/Blocks/Items/controls/originalPrice/padding.d.ts +6 -0
- package/dist/src/extensions/Blocks/Items/controls/originalPrice/size.d.ts +5 -0
- package/dist/src/extensions/Blocks/Items/controls/originalPrice/style.d.ts +5 -0
- package/dist/src/extensions/Blocks/Items/controls/price/currencyLocation.d.ts +1 -12
- package/dist/src/extensions/Blocks/Items/controls/price/currencySymbol.d.ts +2 -15
- package/dist/src/extensions/Blocks/Items/controls/price/formattedPrice.d.ts +2 -8
- package/dist/src/extensions/Blocks/Items/controls/price/hideDiscount.d.ts +2 -7
- package/dist/src/extensions/Blocks/{Recommendation/controls/name/paddings.d.ts → Items/controls/price/padding.d.ts} +2 -1
- package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/align.d.ts +1 -1
- package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/color.d.ts +1 -1
- package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/fontFamily.d.ts +1 -1
- package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice/paddings.d.ts → Items/controls/quantity/padding.d.ts} +2 -1
- package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/size.d.ts +1 -1
- package/dist/src/extensions/Blocks/{Recommendation/controls/oldPrice → Items/controls/quantity}/style.d.ts +1 -1
- package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +1 -10
- package/dist/src/extensions/Blocks/Items/enums/productEnums.d.ts +0 -19
- package/dist/src/extensions/Blocks/Items/enums/settingsEnums.d.ts +3 -21
- package/dist/src/extensions/Blocks/Items/template.d.ts +1 -4
- package/dist/src/extensions/Blocks/Recommendation/block.d.ts +0 -1
- package/dist/src/extensions/Blocks/Recommendation/control.d.ts +0 -6
- package/dist/src/extensions/Blocks/Recommendation/template.d.ts +6 -0
- package/dist/src/extensions/Blocks/common-control.d.ts +2 -46
- package/dist/src/stores/config.d.ts +0 -7
- package/dist/src/utils/dateUtil.d.ts +0 -21
- package/dist/static/styles/components/narrow-panel.css.js +0 -10
- package/dist/static/styles/customEditorStyle.css.js +2 -3
- package/dist/utils/dateUtil.js +3 -24
- package/package.json +2 -2
- package/dist/composables/useBlocksConfig.js +0 -48
- package/dist/config/migrator/recommendationMigrator.js +0 -293
- package/dist/enums/date.js +0 -6
- package/dist/extensions/Blocks/Items/controls/index.js +0 -217
- package/dist/extensions/Blocks/Items/enums/controlEnums.js +0 -5
- package/dist/extensions/Blocks/Items/store/items-block.js +0 -71
- package/dist/extensions/Blocks/Items/utils/configBlockUtils.js +0 -17
- package/dist/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.js +0 -28
- package/dist/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.js +0 -67
- package/dist/extensions/Blocks/Items/utils/updateAttributes.js +0 -44
- package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +0 -103
- package/dist/extensions/Blocks/Recommendation/constants.js +0 -5
- package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
- package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
- package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +0 -160
- package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +0 -152
- package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +0 -180
- package/dist/extensions/Blocks/controlFactories.js +0 -223
- package/dist/src/composables/useBlocksConfig.d.ts +0 -11
- package/dist/src/config/migrator/recommendationMigrator.d.ts +0 -1
- package/dist/src/enums/date.d.ts +0 -4
- package/dist/src/extensions/Blocks/Items/controls/index.d.ts +0 -501
- package/dist/src/extensions/Blocks/Items/enums/controlEnums.d.ts +0 -61
- package/dist/src/extensions/Blocks/Items/store/items-block.d.ts +0 -41
- package/dist/src/extensions/Blocks/Items/utils/configBlockUtils.d.ts +0 -23
- package/dist/src/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.d.ts +0 -32
- package/dist/src/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.d.ts +0 -44
- package/dist/src/extensions/Blocks/Items/utils/updateAttributes.d.ts +0 -8
- package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +0 -28
- package/dist/src/extensions/Blocks/Recommendation/constants.d.ts +0 -51
- package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +0 -16
- package/dist/src/extensions/Blocks/Recommendation/templates/migrationTemplate.d.ts +0 -16
- package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +0 -44
- package/dist/src/extensions/Blocks/controlFactories.d.ts +0 -312
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/align.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/border.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/borderRadius.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/color.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/fitToContent.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/fontFamily.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation/controls/button/margins.d.ts → Items/controls/button/margin.d.ts} +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation/controls/button/paddings.d.ts → Items/controls/button/padding.d.ts} +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/text.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/textSize.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/button/textStyleAndFontColor.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation/controls/image/margins.d.ts → Items/controls/image/margin.d.ts} +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/image/size.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/align.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/color.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/fontFamily.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/size.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/name/style.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/price/align.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/price/color.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/price/fontFamily.d.ts +0 -0
- /package/dist/src/extensions/Blocks/{Recommendation → Items}/controls/price/size.d.ts +0 -0
- /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
|
|
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
|
|
1
|
+
import a from "./Guido.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
|
-
import
|
|
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,
|
|
7
|
-
|
|
8
|
-
|
|
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
|
-
|
|
10
|
+
s,
|
|
13
11
|
!1,
|
|
14
12
|
null,
|
|
15
|
-
"
|
|
13
|
+
"e8d51dec"
|
|
16
14
|
);
|
|
17
|
-
const
|
|
15
|
+
const l = d.exports;
|
|
18
16
|
export {
|
|
19
|
-
|
|
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
|
|
19
|
-
import
|
|
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"
|
|
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 =
|
|
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:
|
|
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:
|
|
51
|
+
productType: m = y(),
|
|
52
52
|
messageType: S = J,
|
|
53
53
|
username: w = q
|
|
54
|
-
} = u,
|
|
55
|
-
|
|
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:
|
|
57
|
+
productType: m,
|
|
58
58
|
messageType: S
|
|
59
59
|
}, g.templateConfig = o;
|
|
60
60
|
const { initPlugin: D } = j({
|
|
61
|
-
emailId:
|
|
61
|
+
emailId: i,
|
|
62
62
|
userId: b,
|
|
63
63
|
username: w,
|
|
64
64
|
partnerName: c,
|
|
65
|
-
productType:
|
|
66
|
-
preselectedDynamicContentList:
|
|
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 =
|
|
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:
|
|
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 {
|
|
@@ -1,29 +1,28 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
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
|
|
7
|
-
import { useEditorStore as
|
|
8
|
-
import { InButtonV2 as
|
|
9
|
-
import
|
|
10
|
-
const
|
|
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(
|
|
13
|
-
const o =
|
|
14
|
-
return { __sfc: !0, editorStore: o, handleBack: r, closeVersionHistory:
|
|
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
|
-
|
|
15
|
+
t();
|
|
17
16
|
return;
|
|
18
17
|
}
|
|
19
18
|
if (o.isPreviewModeOpen) {
|
|
20
|
-
|
|
19
|
+
i();
|
|
21
20
|
return;
|
|
22
21
|
}
|
|
23
22
|
r();
|
|
24
|
-
}, InButtonV2:
|
|
23
|
+
}, InButtonV2: f, RestoreButton: l };
|
|
25
24
|
}
|
|
26
25
|
});
|
|
27
26
|
export {
|
|
28
|
-
|
|
27
|
+
O as default
|
|
29
28
|
};
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
return e("div", { staticClass: "d-f" }, [(
|
|
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
|
-
},
|
|
10
|
-
|
|
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
|
|
17
|
+
const g = d.exports;
|
|
18
18
|
export {
|
|
19
|
-
|
|
19
|
+
g as default
|
|
20
20
|
};
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import
|
|
1
|
+
import s from "./NewVersionPopup.vue2.js";
|
|
2
2
|
import n from "../../../_virtual/_plugin-vue2_normalizer.js";
|
|
3
|
-
var
|
|
4
|
-
var e = this,
|
|
5
|
-
return o.isVisible ?
|
|
6
|
-
},
|
|
7
|
-
|
|
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
|
|
14
|
+
const p = a.exports;
|
|
15
15
|
export {
|
|
16
|
-
|
|
16
|
+
p as default
|
|
17
17
|
};
|
|
@@ -1,43 +1,30 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
|
|
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
|
-
|
|
12
|
-
|
|
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:
|
|
12
|
+
labelText: n("left-menu.discover-now")
|
|
24
13
|
},
|
|
25
14
|
secondaryButton: {
|
|
26
15
|
type: "subtle-primary",
|
|
27
|
-
labelText:
|
|
16
|
+
labelText: n("products.remind-me-later")
|
|
28
17
|
}
|
|
29
|
-
})
|
|
30
|
-
|
|
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
|
-
|
|
22
|
+
e.onRemindMeLater(), o.value = !1;
|
|
36
23
|
}, handleClose: () => {
|
|
37
|
-
|
|
38
|
-
}, WpModal:
|
|
24
|
+
e.onNewVersionPopupClose(), o.value = !1;
|
|
25
|
+
}, WpModal: a, onboardingImageSvg: l };
|
|
39
26
|
}
|
|
40
27
|
});
|
|
41
28
|
export {
|
|
42
|
-
|
|
29
|
+
w as default
|
|
43
30
|
};
|
|
@@ -1,21 +1,19 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
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,
|
|
5
|
-
return e("div", n._l(
|
|
6
|
-
return e(
|
|
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
|
-
},
|
|
11
|
-
|
|
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
|
|
16
|
+
const m = p.exports;
|
|
19
17
|
export {
|
|
20
|
-
|
|
18
|
+
m as default
|
|
21
19
|
};
|
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { usePartner as
|
|
3
|
-
import { useEditorStore as
|
|
4
|
-
import { useOnboardingStore as
|
|
5
|
-
import { usePreviewStore as
|
|
6
|
-
import
|
|
7
|
-
import
|
|
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
|
|
11
|
-
const
|
|
10
|
+
import h from "./VersionHistoryOnboarding.vue.js";
|
|
11
|
+
const E = /* @__PURE__ */ g({
|
|
12
12
|
__name: "OnboardingWrapper",
|
|
13
|
-
|
|
14
|
-
|
|
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:
|
|
16
|
+
{ type: "genericOnboarding", component: S },
|
|
18
17
|
{ type: "textBlockOnboarding", component: P },
|
|
19
|
-
{ type: "versionHistoryOnboarding", component:
|
|
20
|
-
{ type: "ampOnboarding", component:
|
|
21
|
-
], c = (n) => d.value || !p.value ? !1 : n === "newVersionPopup" ? o.shouldShowOnboarding(n) : o.isActive(n),
|
|
22
|
-
return
|
|
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,
|
|
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
|
-
|
|
42
|
+
E as default
|
|
44
43
|
};
|