@useinsider/guido 1.0.3-beta.0da597d → 1.0.3-beta.0f92b5e
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 -176
- package/dist/@types/generic.d.ts +49 -0
- package/dist/{src/components → components}/Guido.vue.d.ts +3 -5
- package/dist/components/Guido.vue.js +9 -11
- package/dist/components/Guido.vue2.js +69 -81
- 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/header/RightSlot.vue2.js +22 -23
- 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/{src/components → components}/wrappers/WpDrawer.vue.d.ts +4 -6
- package/dist/components/wrappers/WpDrawer.vue.js +4 -6
- package/dist/{src/composables → composables}/useGuidoActions.d.ts +0 -9
- package/dist/composables/useGuidoActions.js +9 -19
- package/dist/composables/useStripo.js +54 -54
- package/dist/config/compiler/unsubscribeCompilerRules.js +29 -47
- package/dist/config/migrator/index.d.ts +1 -0
- package/dist/config/migrator/index.js +6 -9
- package/dist/enums/defaults.js +9 -20
- package/dist/enums/onboarding.d.ts +1 -0
- package/dist/enums/onboarding.js +1 -2
- package/dist/enums/unsubscribe.d.ts +15 -0
- package/dist/enums/unsubscribe.js +6 -44
- package/dist/{src/extensions → extensions}/Blocks/Checkbox/block.d.ts +0 -2
- package/dist/extensions/Blocks/Checkbox/block.js +24 -18
- package/dist/extensions/Blocks/Checkbox/control.js +67 -55
- package/dist/extensions/Blocks/Checkbox/extension.js +16 -5
- package/dist/extensions/Blocks/Checkbox/settingsPanel.js +25 -12
- package/dist/extensions/Blocks/Checkbox/template.js +16 -5
- package/dist/{src/extensions → extensions}/Blocks/CouponBlock/block.d.ts +0 -1
- package/dist/extensions/Blocks/CouponBlock/block.js +23 -14
- package/dist/extensions/Blocks/CouponBlock/extension.js +16 -5
- package/dist/extensions/Blocks/CouponBlock/settingsPanel.js +29 -16
- package/dist/extensions/Blocks/CouponBlock/template.d.ts +3 -0
- package/dist/extensions/Blocks/CouponBlock/template.js +8 -13
- package/dist/{src/extensions → extensions}/Blocks/RadioButton/block.d.ts +0 -2
- package/dist/extensions/Blocks/RadioButton/block.js +22 -16
- package/dist/extensions/Blocks/RadioButton/control.js +52 -40
- package/dist/extensions/Blocks/RadioButton/extension.js +15 -4
- package/dist/extensions/Blocks/RadioButton/settingsPanel.js +26 -13
- package/dist/extensions/Blocks/RadioButton/template.js +24 -13
- package/dist/{src/extensions → extensions}/Blocks/_Boilerplate/block.d.ts +0 -1
- package/dist/extensions/DynamicContent/dynamic-content-modal.d.ts +6 -0
- package/dist/extensions/DynamicContent/dynamic-content-modal.js +19 -25
- package/dist/extensions/DynamicContent/dynamic-content.d.ts +16 -0
- package/dist/extensions/DynamicContent/dynamic-content.js +44 -125
- package/dist/extensions/DynamicContent/extension.js +18 -6
- package/dist/guido.css +1 -1
- package/dist/icons/coupon.svg +3 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/Extension.js +75 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/ExtensionBuilder.js +77 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/blocks/Block.js +123 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/AiAssistantValueType.js +7 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockCompositionType.js +7 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockName.js +12 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockType.js +7 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BuiltInControlTypes.js +119 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/ContextActionType.js +7 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/EditorStatePropertyType.js +7 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/PanelPosition.js +7 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/Popover.js +12 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/PreviewDeviceMode.js +7 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/SettingsTab.js +7 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementType.js +7 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementsAttributes.js +24 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/Control.js +24 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/SettingsPanelRegistry.js +11 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/SettingsPanelTab.js +33 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/modifications/ModificationDescription.js +22 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/ui-elements/UIElement.js +40 -0
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/ui-elements/UIElementTagRegistry.js +5 -0
- package/dist/services/stripoApi.js +1 -1
- package/dist/static/styles/components/narrow-panel.css.js +0 -10
- package/dist/static/styles/customEditorStyle.css.js +0 -5
- package/dist/{src/stores → stores}/dynamic-content.d.ts +3 -3
- package/dist/stores/dynamic-content.js +2 -2
- package/dist/{src/stores → stores}/editor.d.ts +1 -22
- package/dist/stores/editor.js +2 -3
- package/dist/{src/stores → stores}/onboarding.d.ts +1 -1
- package/dist/stores/onboarding.js +27 -27
- package/dist/{src/stores → stores}/preview.d.ts +1 -1
- package/dist/stores/preview.js +1 -1
- package/dist/{src/stores → stores}/recommendation.d.ts +1 -1
- package/dist/stores/recommendation.js +3 -3
- package/dist/{src/stores → stores}/save-as-template.d.ts +1 -1
- package/dist/stores/save-as-template.js +2 -2
- package/dist/{src/stores → stores}/toaster.d.ts +1 -1
- package/dist/stores/toaster.js +1 -1
- package/dist/stores/unsubscribe.d.ts +8 -0
- package/dist/stores/unsubscribe.js +6 -126
- package/dist/{src/stores → stores}/version-history.d.ts +1 -1
- package/dist/stores/version-history.js +4 -4
- package/dist/utils/dateUtil.d.ts +1 -0
- package/dist/utils/dateUtil.js +3 -24
- package/dist/{src/utils → utils}/genericUtil.d.ts +0 -2
- package/dist/utils/genericUtil.js +6 -17
- package/dist/utils/templatePreparation.js +16 -17
- package/package.json +4 -16
- package/dist/components/organisms/extensions/recommendation/FilterItem.vue.js +0 -28
- package/dist/components/organisms/extensions/recommendation/FilterItem.vue2.js +0 -38
- package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue.js +0 -17
- package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue2.js +0 -37
- package/dist/components/organisms/extensions/recommendation/Filters.vue.js +0 -20
- package/dist/components/organisms/extensions/recommendation/Filters.vue2.js +0 -44
- package/dist/components/organisms/extensions/recommendation/LogicAdapter.vue.js +0 -17
- package/dist/components/organisms/extensions/recommendation/LogicAdapter.vue2.js +0 -27
- package/dist/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue.js +0 -18
- package/dist/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue2.js +0 -16
- package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue.js +0 -24
- package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue2.js +0 -64
- package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.js +0 -18
- package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue2.js +0 -107
- package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue.js +0 -18
- package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue2.js +0 -12
- package/dist/composables/useBlocksConfig.js +0 -48
- package/dist/config/migrator/couponBlockMigrator.js +0 -67
- package/dist/config/migrator/recommendationMigrator.js +0 -293
- package/dist/config/migrator/unsubscribeMigrator.js +0 -124
- package/dist/enums/date.js +0 -6
- package/dist/enums/extensions/recommendationBlock.js +0 -80
- package/dist/extensions/Blocks/Checkbox/iconsRegistry.js +0 -18
- package/dist/extensions/Blocks/CouponBlock/iconsRegistry.js +0 -33
- package/dist/extensions/Blocks/Items/block.js +0 -66
- package/dist/extensions/Blocks/Items/controls/button/link.js +0 -68
- package/dist/extensions/Blocks/Items/controls/cardComposition.js +0 -99
- package/dist/extensions/Blocks/Items/controls/image/link.js +0 -68
- package/dist/extensions/Blocks/Items/controls/index.js +0 -217
- package/dist/extensions/Blocks/Items/controls/name/trimming.js +0 -70
- package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +0 -107
- package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +0 -123
- package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +0 -76
- package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +0 -61
- package/dist/extensions/Blocks/Items/controls/settingsControl.js +0 -280
- package/dist/extensions/Blocks/Items/enums/controlEnums.js +0 -5
- package/dist/extensions/Blocks/Items/enums/productEnums.js +0 -195
- package/dist/extensions/Blocks/Items/enums/settingsEnums.js +0 -70
- package/dist/extensions/Blocks/Items/extension.js +0 -19
- package/dist/extensions/Blocks/Items/iconsRegistry.js +0 -32
- package/dist/extensions/Blocks/Items/items.css.js +0 -23
- package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +0 -61
- package/dist/extensions/Blocks/Items/layouts/vertical.html.js +0 -61
- package/dist/extensions/Blocks/Items/settingsPanel.js +0 -106
- package/dist/extensions/Blocks/Items/store/items-block.js +0 -71
- package/dist/extensions/Blocks/Items/template.js +0 -110
- 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/RadioButton/iconsRegistry.js +0 -14
- package/dist/extensions/Blocks/Recommendation/block.js +0 -30
- package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +0 -103
- package/dist/extensions/Blocks/Recommendation/constants.js +0 -5
- package/dist/extensions/Blocks/Recommendation/control.js +0 -306
- 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/extension.js +0 -45
- package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +0 -51
- package/dist/extensions/Blocks/Recommendation/recommendation.css.js +0 -19
- package/dist/extensions/Blocks/Recommendation/settingsPanel.js +0 -117
- package/dist/extensions/Blocks/Recommendation/store/recommendation.js +0 -266
- 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/Recommendation/utils/filterUtil.js +0 -28
- package/dist/extensions/Blocks/Unsubscribe/block.js +0 -131
- package/dist/extensions/Blocks/Unsubscribe/control.js +0 -167
- package/dist/extensions/Blocks/Unsubscribe/elements/preview.js +0 -42
- package/dist/extensions/Blocks/Unsubscribe/extension.js +0 -21
- package/dist/extensions/Blocks/Unsubscribe/iconsRegistry.js +0 -21
- package/dist/extensions/Blocks/Unsubscribe/settingsPanel.js +0 -35
- package/dist/extensions/Blocks/Unsubscribe/styles.css.js +0 -42
- package/dist/extensions/Blocks/Unsubscribe/tagRegistry.js +0 -10
- package/dist/extensions/Blocks/Unsubscribe/template.js +0 -22
- package/dist/extensions/Blocks/Unsubscribe/utils/constants.js +0 -11
- package/dist/extensions/Blocks/Unsubscribe/utils/utils.js +0 -6
- package/dist/extensions/Blocks/common-control.js +0 -248
- package/dist/extensions/Blocks/controlFactories.js +0 -223
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +0 -911
- package/dist/package.json.js +0 -7
- package/dist/services/recommendationApi.js +0 -37
- package/dist/services/unsubscribeApi.js +0 -16
- package/dist/src/@types/generic.d.ts +0 -98
- package/dist/src/components/organisms/extensions/recommendation/FilterItem.vue.d.ts +0 -19
- package/dist/src/components/organisms/extensions/recommendation/LogicAdapter.vue.d.ts +0 -16
- package/dist/src/components/organisms/onboarding/NewVersionPopup.vue.d.ts +0 -4
- package/dist/src/components/organisms/onboarding/OnboardingWrapper.vue.d.ts +0 -4
- package/dist/src/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue.d.ts +0 -2
- package/dist/src/components/organisms/unsubscribe/UnsubscribePageSelection.vue.d.ts +0 -2
- package/dist/src/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.d.ts +0 -2
- package/dist/src/components/organisms/unsubscribe/UnsubscribeWrapper.vue.d.ts +0 -2
- package/dist/src/composables/useBlocksConfig.d.ts +0 -11
- package/dist/src/config/migrator/couponBlockMigrator.d.ts +0 -1
- package/dist/src/config/migrator/index.d.ts +0 -1
- package/dist/src/config/migrator/recommendationMigrator.d.ts +0 -1
- package/dist/src/config/migrator/unsubscribeMigrator.d.ts +0 -1
- package/dist/src/enums/date.d.ts +0 -4
- package/dist/src/enums/extensions/recommendationBlock.d.ts +0 -16
- package/dist/src/enums/onboarding.d.ts +0 -2
- package/dist/src/enums/unsubscribe.d.ts +0 -38
- package/dist/src/extensions/Blocks/Checkbox/iconsRegistry.d.ts +0 -4
- package/dist/src/extensions/Blocks/CouponBlock/iconsRegistry.d.ts +0 -4
- package/dist/src/extensions/Blocks/CouponBlock/template.d.ts +0 -3
- package/dist/src/extensions/Blocks/Items/block.d.ts +0 -13
- package/dist/src/extensions/Blocks/Items/controls/button/link.d.ts +0 -14
- package/dist/src/extensions/Blocks/Items/controls/cardComposition.d.ts +0 -20
- package/dist/src/extensions/Blocks/Items/controls/image/link.d.ts +0 -14
- package/dist/src/extensions/Blocks/Items/controls/index.d.ts +0 -501
- package/dist/src/extensions/Blocks/Items/controls/name/trimming.d.ts +0 -14
- package/dist/src/extensions/Blocks/Items/controls/price/currencyLocation.d.ts +0 -19
- package/dist/src/extensions/Blocks/Items/controls/price/currencySymbol.d.ts +0 -21
- package/dist/src/extensions/Blocks/Items/controls/price/formattedPrice.d.ts +0 -14
- package/dist/src/extensions/Blocks/Items/controls/price/hideDiscount.d.ts +0 -13
- package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +0 -42
- package/dist/src/extensions/Blocks/Items/enums/controlEnums.d.ts +0 -61
- package/dist/src/extensions/Blocks/Items/enums/productEnums.d.ts +0 -154
- package/dist/src/extensions/Blocks/Items/enums/settingsEnums.d.ts +0 -43
- package/dist/src/extensions/Blocks/Items/iconsRegistry.d.ts +0 -4
- package/dist/src/extensions/Blocks/Items/store/items-block.d.ts +0 -41
- package/dist/src/extensions/Blocks/Items/template.d.ts +0 -16
- 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/RadioButton/iconsRegistry.d.ts +0 -4
- package/dist/src/extensions/Blocks/Recommendation/block.d.ts +0 -11
- 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/control.d.ts +0 -35
- package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/iconsRegistry.d.ts +0 -4
- package/dist/src/extensions/Blocks/Recommendation/settingsPanel.d.ts +0 -4
- package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +0 -555
- 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/Recommendation/utils/filterUtil.d.ts +0 -7
- package/dist/src/extensions/Blocks/Unsubscribe/block.d.ts +0 -32
- package/dist/src/extensions/Blocks/Unsubscribe/control.d.ts +0 -29
- package/dist/src/extensions/Blocks/Unsubscribe/elements/preview.d.ts +0 -11
- package/dist/src/extensions/Blocks/Unsubscribe/extension.d.ts +0 -2
- package/dist/src/extensions/Blocks/Unsubscribe/iconsRegistry.d.ts +0 -4
- package/dist/src/extensions/Blocks/Unsubscribe/settingsPanel.d.ts +0 -4
- package/dist/src/extensions/Blocks/Unsubscribe/tagRegistry.d.ts +0 -4
- package/dist/src/extensions/Blocks/Unsubscribe/template.d.ts +0 -12
- package/dist/src/extensions/Blocks/Unsubscribe/utils/constants.d.ts +0 -9
- package/dist/src/extensions/Blocks/Unsubscribe/utils/utils.d.ts +0 -7
- package/dist/src/extensions/Blocks/_Boilerplate/extension.d.ts +0 -2
- package/dist/src/extensions/Blocks/_Boilerplate/iconsRegistry.d.ts +0 -4
- package/dist/src/extensions/Blocks/_Boilerplate/settingsPanel.d.ts +0 -4
- package/dist/src/extensions/Blocks/common-control.d.ts +0 -124
- package/dist/src/extensions/Blocks/controlFactories.d.ts +0 -312
- package/dist/src/extensions/DynamicContent/dynamic-content-modal.d.ts +0 -13
- package/dist/src/extensions/DynamicContent/dynamic-content.d.ts +0 -66
- package/dist/src/extensions/DynamicContent/extension.d.ts +0 -2
- package/dist/src/mock/api/recommendation.d.ts +0 -2
- package/dist/src/services/recommendationApi.d.ts +0 -6
- package/dist/src/services/unsubscribeApi.d.ts +0 -4
- package/dist/src/stores/config.d.ts +0 -104
- package/dist/src/stores/unsubscribe.d.ts +0 -256
- package/dist/src/utils/dateUtil.d.ts +0 -22
- package/dist/stores/config.js +0 -17
- package/dist/{src/@types → @types}/events.d.ts +0 -0
- package/dist/{src/@types → @types}/save-as-template.d.ts +0 -0
- package/dist/{src/App.vue.d.ts → App.vue.d.ts} +0 -0
- package/dist/{src/components → components}/organisms/LoadingWrapper.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/base/Toaster.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/email-preview/PreviewContainer.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/email-preview/amp/AmpErrorModal.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/email-preview/amp/AmpToggle.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/email-preview/desktop-preview/DesktopPreview.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/email-preview/desktop-preview/EmailSizeIndicator.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/email-preview/mobile-preview/ContentView.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/email-preview/mobile-preview/InboxView.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/email-preview/mobile-preview/MobilePreview.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/header/HeaderWrapper.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/header/LeftSlot.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/header/MiddleSlot.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/header/RightSlot.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/header/ViewOptions.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/header/version-history/RestoreButton.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/header/version-history/VersionHistory.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/header/version-history/VersionHistoryItem.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/header/version-history/ViewOptions.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/onboarding/AMPOnboarding.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/onboarding/GenericOnboarding.vue.d.ts +0 -0
- package/dist/{src/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue.d.ts → components/organisms/onboarding/NewVersionPopup.vue.d.ts} +0 -0
- package/dist/{src/components/organisms/extensions/recommendation/Filters.vue.d.ts → components/organisms/onboarding/OnboardingWrapper.vue.d.ts} +0 -0
- package/dist/{src/components → components}/organisms/onboarding/TextBlockOnboarding.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/onboarding/VersionHistoryOnboarding.vue.d.ts +0 -0
- package/dist/{src/components → components}/organisms/save-as-template/SaveAsTemplateDrawer.vue.d.ts +0 -0
- package/dist/{src/components → components}/wrappers/WpModal.vue.d.ts +1 -1
- /package/dist/{src/composables → composables}/useActionsApi.d.ts +0 -0
- /package/dist/{src/composables → composables}/useApiExample.d.ts +0 -0
- /package/dist/{src/composables → composables}/useCodeEditorApi.d.ts +0 -0
- /package/dist/{src/composables → composables}/useConfig.d.ts +0 -0
- /package/dist/{src/composables → composables}/useCustomInterfaceAppearance.d.ts +0 -0
- /package/dist/{src/composables → composables}/useDebounce.d.ts +0 -0
- /package/dist/{src/composables → composables}/useExport.d.ts +0 -0
- /package/dist/{src/composables → composables}/useHtmlCompiler.d.ts +0 -0
- /package/dist/{src/composables → composables}/useHtmlValidator.d.ts +0 -0
- /package/dist/{src/composables → composables}/useHttp.d.ts +0 -0
- /package/dist/{src/composables → composables}/usePartner.d.ts +0 -0
- /package/dist/{src/composables → composables}/usePreviewMode.d.ts +0 -0
- /package/dist/{src/composables → composables}/useProvideInject.d.ts +0 -0
- /package/dist/{src/composables → composables}/useRecommendation.d.ts +0 -0
- /package/dist/{src/composables → composables}/useResponsivePreview.d.ts +0 -0
- /package/dist/{src/composables → composables}/useSave.d.ts +0 -0
- /package/dist/{src/composables → composables}/useStripo.d.ts +0 -0
- /package/dist/{src/composables → composables}/useStripoEventHandler.d.ts +0 -0
- /package/dist/{src/composables → composables}/useToaster.d.ts +0 -0
- /package/dist/{src/composables → composables}/useTranslations.d.ts +0 -0
- /package/dist/{src/composables → composables}/useValidation.d.ts +0 -0
- /package/dist/{src/composables → composables}/useVersionHistoryApi.d.ts +0 -0
- /package/dist/{src/composables → composables}/validators/saveAsTemplate.d.ts +0 -0
- /package/dist/{src/config → config}/compiler/htmlCompilerRules.d.ts +0 -0
- /package/dist/{src/config → config}/compiler/outlookCompilerRules.d.ts +0 -0
- /package/dist/{src/config → config}/compiler/recommendationCompilerRules.d.ts +0 -0
- /package/dist/{src/config → config}/compiler/socialCompilerRules.d.ts +0 -0
- /package/dist/{src/config → config}/compiler/unsubscribeCompilerRules.d.ts +0 -0
- /package/dist/{src/config → config}/migrator/checkboxMigrator.d.ts +0 -0
- /package/dist/{src/config → config}/migrator/radioButtonMigrator.d.ts +0 -0
- /package/dist/{src/enums → enums}/defaults.d.ts +0 -0
- /package/dist/{src/enums → enums}/displayConditions.d.ts +0 -0
- /package/dist/{src/enums → enums}/html-validator.d.ts +0 -0
- /package/dist/{src/enums → enums}/preview.d.ts +0 -0
- /package/dist/{src/enums → enums}/recommendation.d.ts +0 -0
- /package/dist/{src/enums → enums}/toaster.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/Checkbox/control.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/Checkbox/extension.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/Checkbox/settingsPanel.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/Checkbox/template.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/CouponBlock/extension.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/CouponBlock/settingsPanel.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/RadioButton/control.d.ts +0 -0
- /package/dist/{src/extensions/Blocks/Items → extensions/Blocks/RadioButton}/extension.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/RadioButton/settingsPanel.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/RadioButton/template.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/_Boilerplate/control.d.ts +0 -0
- /package/dist/{src/extensions/Blocks/RadioButton → extensions/Blocks/_Boilerplate}/extension.d.ts +0 -0
- /package/dist/{src/extensions/Blocks/Items → extensions/Blocks/_Boilerplate}/settingsPanel.d.ts +0 -0
- /package/dist/{src/extensions → extensions}/Blocks/_Boilerplate/template.d.ts +0 -0
- /package/dist/{src/extensions/Blocks/Recommendation → extensions/DynamicContent}/extension.d.ts +0 -0
- /package/dist/{src/library.d.ts → library.d.ts} +0 -0
- /package/dist/{src/main.d.ts → main.d.ts} +0 -0
- /package/dist/{src/mock → mock}/api/auth.d.ts +0 -0
- /package/dist/{src/mock → mock}/api/custom-fonts.d.ts +0 -0
- /package/dist/{src/mock → mock}/api/default-template.d.ts +0 -0
- /package/dist/{src/mock → mock}/api/template-library.d.ts +0 -0
- /package/dist/{src/mock → mock}/api/unsubscribe.d.ts +0 -0
- /package/dist/{src/mock → mock}/api/user-modal-state.d.ts +0 -0
- /package/dist/{src/mock → mock}/api/validator.d.ts +0 -0
- /package/dist/{src/mock → mock}/browser.d.ts +0 -0
- /package/dist/{src/mock → mock}/handlers.d.ts +0 -0
- /package/dist/{src/services → services}/onboardingApi.d.ts +0 -0
- /package/dist/{src/services → services}/stripoApi.d.ts +0 -0
- /package/dist/{src/services → services}/templateLibraryApi.d.ts +0 -0
- /package/dist/{src/utils → utils}/arrayUtil.d.ts +0 -0
- /package/dist/{src/utils → utils}/base64.d.ts +0 -0
- /package/dist/{src/utils → utils}/htmlCompiler.d.ts +0 -0
- /package/dist/{src/utils → utils}/templatePreparation.d.ts +0 -0
- /package/dist/{src/utils → utils}/tooltipUtils.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,8 +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
|
-
| `test-email:click` | - | Fired when user clicks the test email button in the header |
|
|
171
164
|
|
|
172
165
|
### Guido Exposed Methods
|
|
173
166
|
```typescript
|
|
@@ -197,12 +190,6 @@ interface GuidoConfig {
|
|
|
197
190
|
dynamicContent: boolean;
|
|
198
191
|
saveAsTemplate: boolean;
|
|
199
192
|
versionHistory: boolean;
|
|
200
|
-
testMessage: boolean;
|
|
201
|
-
displayConditions: boolean;
|
|
202
|
-
};
|
|
203
|
-
blocks?: {
|
|
204
|
-
excludeDefaults?: GuidoBlockType[];
|
|
205
|
-
includeCustoms?: GuidoCustomBlockType[];
|
|
206
193
|
};
|
|
207
194
|
}
|
|
208
195
|
```
|
|
@@ -217,10 +204,6 @@ interface GuidoConfig {
|
|
|
217
204
|
| `features.dynamicContent` | `boolean` | `true` | Enable dynamic content insertion feature |
|
|
218
205
|
| `features.saveAsTemplate` | `boolean` | `true` | Enable save as template feature |
|
|
219
206
|
| `features.versionHistory` | `boolean` | `true` | Enable version history feature |
|
|
220
|
-
| `features.displayConditions` | `boolean` | `true` | Enable display conditions |
|
|
221
|
-
| `blocks` | `BlocksConfig` | `{ excludeDefaults: [], includeCustoms: [] }` | Block configuration for excluding default blocks and including custom blocks. See [Blocks Configuration](#-blocks-configuration) section below |
|
|
222
|
-
| `blocks.excludeDefaults` | `GuidoBlockType[]` | `[]` | Array of default Stripo blocks to exclude from the editor |
|
|
223
|
-
| `blocks.includeCustoms` | `GuidoCustomBlockType[]` | `[]` | Array of custom blocks to include in the editor |
|
|
224
207
|
|
|
225
208
|
```typescript
|
|
226
209
|
interface DynamicContent {
|
|
@@ -237,128 +220,6 @@ interface DynamicContent {
|
|
|
237
220
|
| `text` | `string` | '' | Visible value of the dynamic content |
|
|
238
221
|
| `fallback?` | `string` | '' | Fallback value of the dynamic content. Optional |
|
|
239
222
|
|
|
240
|
-
## 🧱 Blocks Configuration
|
|
241
|
-
|
|
242
|
-
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.
|
|
243
|
-
|
|
244
|
-
### Block Types
|
|
245
|
-
|
|
246
|
-
#### Default Blocks (GuidoBlockType)
|
|
247
|
-
|
|
248
|
-
These are the standard Stripo email editor blocks that can be excluded:
|
|
249
|
-
|
|
250
|
-
```typescript
|
|
251
|
-
type GuidoBlockType =
|
|
252
|
-
| 'amp-accordion' // AMP accordion component
|
|
253
|
-
| 'amp-carousel' // AMP image carousel
|
|
254
|
-
| 'amp-form-controls' // AMP form elements
|
|
255
|
-
| 'banner-block' // Banner/hero section
|
|
256
|
-
| 'button-block' // Call-to-action buttons
|
|
257
|
-
| 'html-block' // Custom HTML
|
|
258
|
-
| 'image-block' // Image elements
|
|
259
|
-
| 'menu-block' // Navigation menu
|
|
260
|
-
| 'social-block' // Social media links
|
|
261
|
-
| 'spacer-block' // Vertical spacing
|
|
262
|
-
| 'text-block' // Text content
|
|
263
|
-
| 'timer-block' // Countdown timer
|
|
264
|
-
| 'video-block' // Video embeds
|
|
265
|
-
```
|
|
266
|
-
|
|
267
|
-
#### Custom Blocks (GuidoCustomBlockType)
|
|
268
|
-
|
|
269
|
-
These are custom blocks that can be selectively included:
|
|
270
|
-
|
|
271
|
-
```typescript
|
|
272
|
-
type GuidoCustomBlockType =
|
|
273
|
-
| 'dynamic-content' // Dynamic content merge tags
|
|
274
|
-
| 'checkbox-block' // Checkbox form input
|
|
275
|
-
| 'radio-button-block' // Radio button form input
|
|
276
|
-
| 'recommendation-block' // Product recommendations
|
|
277
|
-
| 'unsubscribe-block' // Unsubscribe link
|
|
278
|
-
| 'coupon-block' // Coupon/promo code
|
|
279
|
-
| 'items-block' // Cart items display
|
|
280
|
-
```
|
|
281
|
-
|
|
282
|
-
### Configuration Examples
|
|
283
|
-
|
|
284
|
-
#### Example 1: Exclude Specific Default Blocks
|
|
285
|
-
|
|
286
|
-
Disable button, image, and video blocks while keeping all custom blocks:
|
|
287
|
-
|
|
288
|
-
```typescript
|
|
289
|
-
const guidoConfig = {
|
|
290
|
-
translationsPath: 'window.trans.en',
|
|
291
|
-
features: {
|
|
292
|
-
dynamicContent: true,
|
|
293
|
-
saveAsTemplate: true,
|
|
294
|
-
versionHistory: true,
|
|
295
|
-
testMessage: true
|
|
296
|
-
},
|
|
297
|
-
blocks: {
|
|
298
|
-
excludeDefaults: ['button-block', 'image-block', 'video-block']
|
|
299
|
-
}
|
|
300
|
-
};
|
|
301
|
-
```
|
|
302
|
-
|
|
303
|
-
**Result:**
|
|
304
|
-
- Button, Image, Video blocks disabled
|
|
305
|
-
- All other default blocks enabled
|
|
306
|
-
- All custom blocks are disabled.
|
|
307
|
-
|
|
308
|
-
#### Example 2: Include Only Specific Custom Blocks
|
|
309
|
-
|
|
310
|
-
Enable only coupon and recommendation blocks:
|
|
311
|
-
|
|
312
|
-
```typescript
|
|
313
|
-
const guidoConfig = {
|
|
314
|
-
translationsPath: 'window.trans.en',
|
|
315
|
-
features: {
|
|
316
|
-
dynamicContent: true,
|
|
317
|
-
saveAsTemplate: true,
|
|
318
|
-
versionHistory: true,
|
|
319
|
-
testMessage: true
|
|
320
|
-
},
|
|
321
|
-
blocks: {
|
|
322
|
-
includeCustoms: ['coupon-block', 'recommendation-block']
|
|
323
|
-
}
|
|
324
|
-
};
|
|
325
|
-
```
|
|
326
|
-
|
|
327
|
-
**Result:**
|
|
328
|
-
- All default blocks enabled
|
|
329
|
-
- Only Coupon and Recommendation extensions enabled.
|
|
330
|
-
- Other custom blocks are disabled
|
|
331
|
-
|
|
332
|
-
### Default Behavior
|
|
333
|
-
|
|
334
|
-
When `blocks` is not provided or is `undefined`:
|
|
335
|
-
|
|
336
|
-
```typescript
|
|
337
|
-
const guidoConfig = {
|
|
338
|
-
translationsPath: 'window.trans.en',
|
|
339
|
-
features: {
|
|
340
|
-
dynamicContent: true,
|
|
341
|
-
saveAsTemplate: true,
|
|
342
|
-
versionHistory: true,
|
|
343
|
-
testMessage: true
|
|
344
|
-
},
|
|
345
|
-
// No blocks config
|
|
346
|
-
};
|
|
347
|
-
```
|
|
348
|
-
|
|
349
|
-
**Result:**
|
|
350
|
-
- All 13 default Stripo blocks enabled
|
|
351
|
-
- All custom blocks are disabled.
|
|
352
|
-
|
|
353
|
-
### Block Configuration Interface
|
|
354
|
-
|
|
355
|
-
```typescript
|
|
356
|
-
interface BlocksConfig {
|
|
357
|
-
excludeDefaults?: GuidoBlockType[];
|
|
358
|
-
includeCustoms?: GuidoCustomBlockType[];
|
|
359
|
-
}
|
|
360
|
-
```
|
|
361
|
-
|
|
362
223
|
### TypeScript Types
|
|
363
224
|
|
|
364
225
|
The library exports the following TypeScript types:
|
|
@@ -453,8 +314,7 @@ const guidoConfig = {
|
|
|
453
314
|
features: {
|
|
454
315
|
dynamicContent: true,
|
|
455
316
|
saveAsTemplate: true,
|
|
456
|
-
versionHistory: false
|
|
457
|
-
testMessage: true
|
|
317
|
+
versionHistory: false // Disable version history
|
|
458
318
|
},
|
|
459
319
|
htmlCompilerRules: [
|
|
460
320
|
{
|
|
@@ -487,8 +347,7 @@ const guidoConfig = {
|
|
|
487
347
|
features: {
|
|
488
348
|
dynamicContent: true,
|
|
489
349
|
saveAsTemplate: true,
|
|
490
|
-
versionHistory: true
|
|
491
|
-
testMessage: true
|
|
350
|
+
versionHistory: true
|
|
492
351
|
},
|
|
493
352
|
ignoreDefaultHtmlCompilerRules: true, // Skip all default rules
|
|
494
353
|
htmlCompilerRules: [
|
|
@@ -787,35 +646,3 @@ ISC License
|
|
|
787
646
|
- Playwright integrationBoilerplate/control.ts
|
|
788
647
|
- Commitlint & Precommit Hooks integration
|
|
789
648
|
- Get Pre-built display conditions from API
|
|
790
|
-
|
|
791
|
-
Recommendation Block:
|
|
792
|
-
- [ ] Validations for Filters
|
|
793
|
-
- [ ] DOM Rerender after Filters change
|
|
794
|
-
- [ ] Change currencySymbol as Input Type
|
|
795
|
-
- [ ] Apply filter query to request
|
|
796
|
-
- [ ] Drawer loading bug
|
|
797
|
-
- [ ] Drawer send request when apply filters
|
|
798
|
-
- [ ] Clear all feature for Drawer
|
|
799
|
-
- [ ] Stripo's controls should be effect specific DOM item -- Try extending CommonControl class
|
|
800
|
-
- [ ] Show toaster message if uses multiple recommendation blocks in same template
|
|
801
|
-
- [ ] Change filter button text as Change Filters
|
|
802
|
-
- [ ] Migration template for Recommendation Block
|
|
803
|
-
- [ ] Recommendation Algorithm default value should be mostPopular
|
|
804
|
-
- [ ] Default fields for empty template like currency, title etc.
|
|
805
|
-
- [ ] Recommendation Block Icon Registry should be updated
|
|
806
|
-
- [ ] AMP Block Icon should be updated
|
|
807
|
-
- [ ] Padding feature for between Product Rows
|
|
808
|
-
|
|
809
|
-
Items Block Phase 2:
|
|
810
|
-
[ ] Writing configs to esd-config-data DOM.
|
|
811
|
-
[ ] Build on save feature should be working
|
|
812
|
-
[ ] Data Migration feature should be working
|
|
813
|
-
|
|
814
|
-
Tech Debts:
|
|
815
|
-
[ ] Merge Custom Blocks into a single File
|
|
816
|
-
[ ] Move Custom Blocks names to an enum file
|
|
817
|
-
[ ] Template Replacement should be optimized for version history
|
|
818
|
-
[ ] Code Optimization for Items Block inner blocks reordering
|
|
819
|
-
[ ] Image Size & Margins controls has an error on console
|
|
820
|
-
[ ] Feed Text Trimming feature to toggle settings
|
|
821
|
-
[ ] Formatted Price feature to toggle settings
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { CompilerRule } from './html-compiler';
|
|
2
|
+
type Features = {
|
|
3
|
+
dynamicContent?: boolean;
|
|
4
|
+
saveAsTemplate?: boolean;
|
|
5
|
+
versionHistory?: boolean;
|
|
6
|
+
};
|
|
7
|
+
type Partner = {
|
|
8
|
+
partnerName: string;
|
|
9
|
+
productType: number;
|
|
10
|
+
messageType: number;
|
|
11
|
+
};
|
|
12
|
+
export type GuidoConfig = {
|
|
13
|
+
translationsPath: string;
|
|
14
|
+
htmlCompilerRules?: CompilerRule[];
|
|
15
|
+
ignoreDefaultHtmlCompilerRules?: boolean;
|
|
16
|
+
useHeader?: boolean;
|
|
17
|
+
emailHeader: EmailHeader;
|
|
18
|
+
partner?: Partner;
|
|
19
|
+
features?: Features;
|
|
20
|
+
};
|
|
21
|
+
export type DynamicContent = {
|
|
22
|
+
value: string;
|
|
23
|
+
text: string;
|
|
24
|
+
fallback?: string;
|
|
25
|
+
format?: {
|
|
26
|
+
key: string;
|
|
27
|
+
value: string;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
export interface EmailHeader {
|
|
31
|
+
senderName: string;
|
|
32
|
+
subject: string;
|
|
33
|
+
}
|
|
34
|
+
export interface TooltipOptions {
|
|
35
|
+
id: string;
|
|
36
|
+
dynamicPosition: boolean;
|
|
37
|
+
staticPosition: 'top center' | 'top left' | 'top right' | 'bottom center' | 'bottom left' | 'bottom right' | 'right center' | 'right top' | 'right bottom' | 'left center' | 'left top' | 'left bottom';
|
|
38
|
+
iconStatus: boolean;
|
|
39
|
+
offset?: {
|
|
40
|
+
x: number;
|
|
41
|
+
y: number;
|
|
42
|
+
};
|
|
43
|
+
preventXss?: boolean;
|
|
44
|
+
}
|
|
45
|
+
export type MergeTag = {
|
|
46
|
+
label: string;
|
|
47
|
+
value: string;
|
|
48
|
+
};
|
|
49
|
+
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DynamicContent, GuidoConfig
|
|
1
|
+
import type { DynamicContent, GuidoConfig } from '@@/Types/generic';
|
|
2
2
|
import type { SavedTemplateDetails } from '@@/Types/stripo';
|
|
3
3
|
type __VLS_Props = {
|
|
4
4
|
templateId: string;
|
|
@@ -9,8 +9,8 @@ type __VLS_Props = {
|
|
|
9
9
|
username?: string;
|
|
10
10
|
html?: string;
|
|
11
11
|
css?: string;
|
|
12
|
+
preselectedDynamicContentList: DynamicContent[];
|
|
12
13
|
guidoConfig: GuidoConfig;
|
|
13
|
-
templateConfig?: TemplateConfig;
|
|
14
14
|
};
|
|
15
15
|
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToOption<__VLS_Props>, {
|
|
16
16
|
dynamicContent: {
|
|
@@ -20,14 +20,12 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToOption<__
|
|
|
20
20
|
hasChanges: import("vue").ComputedRef<boolean>;
|
|
21
21
|
saveSilent: () => Promise<SavedTemplateDetails | undefined> | undefined;
|
|
22
22
|
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {
|
|
23
|
-
"dynamic-content:open": (detail: DynamicContent | null
|
|
23
|
+
"dynamic-content:open": (detail: DynamicContent | null) => void;
|
|
24
24
|
back: () => void;
|
|
25
25
|
"save:start": () => void;
|
|
26
26
|
"save:complete": (data: Omit<SavedTemplateDetails, "forceRecreate">) => void;
|
|
27
27
|
"on-change": (hasChanges: boolean) => void;
|
|
28
28
|
ready: () => void;
|
|
29
|
-
"onboarding:finished": () => void;
|
|
30
|
-
"test-email:click": () => void;
|
|
31
29
|
}, string, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<__VLS_Props>>>, {}>;
|
|
32
30
|
export default _default;
|
|
33
31
|
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
@@ -1,20 +1,18 @@
|
|
|
1
|
-
import
|
|
1
|
+
import o 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
|
-
var
|
|
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) :
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}, n = [], s = /* @__PURE__ */ a(
|
|
10
|
-
i,
|
|
5
|
+
var a = this, r = a._self._c, e = a._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) : a._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.SaveAsTemplateDrawer), e.isTestPartner() ? a._e() : r(e.OnboardingWrapper), r(e.LoadingWrapper)], 1);
|
|
7
|
+
}, s = [], d = /* @__PURE__ */ i(
|
|
8
|
+
o,
|
|
11
9
|
t,
|
|
12
|
-
|
|
10
|
+
s,
|
|
13
11
|
!1,
|
|
14
12
|
null,
|
|
15
|
-
"
|
|
13
|
+
"aca05338"
|
|
16
14
|
);
|
|
17
|
-
const v =
|
|
15
|
+
const v = d.exports;
|
|
18
16
|
export {
|
|
19
17
|
v as default
|
|
20
18
|
};
|
|
@@ -1,23 +1,19 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { provideGuidoActions as
|
|
3
|
-
import { usePartner as
|
|
4
|
-
import { useStripo as
|
|
5
|
-
import { migrate as
|
|
6
|
-
import { DefaultUsername as
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import
|
|
16
|
-
|
|
17
|
-
import { usePreviewStore as ce } from "../stores/preview.js";
|
|
18
|
-
import { useUnsubscribeStore as me } from "../stores/unsubscribe.js";
|
|
19
|
-
import de from "../node_modules/lodash-es/merge.js";
|
|
20
|
-
const Ue = /* @__PURE__ */ O({
|
|
1
|
+
import { defineComponent as H, defineAsyncComponent as E, ref as R, computed as G, watch as U, onMounted as x, onUnmounted as F } from "vue";
|
|
2
|
+
import { provideGuidoActions as M } from "../composables/useGuidoActions.js";
|
|
3
|
+
import { usePartner as z } from "../composables/usePartner.js";
|
|
4
|
+
import { useStripo as B } from "../composables/useStripo.js";
|
|
5
|
+
import { migrate as P } from "../config/migrator/index.js";
|
|
6
|
+
import { DefaultUsername as K, DefaultMessageType as O, DefaultGuidoConfig as j } from "../enums/defaults.js";
|
|
7
|
+
import q from "./organisms/base/Toaster.vue.js";
|
|
8
|
+
import J from "./organisms/header/HeaderWrapper.vue.js";
|
|
9
|
+
import Q from "./organisms/LoadingWrapper.vue.js";
|
|
10
|
+
import V from "./organisms/save-as-template/SaveAsTemplateDrawer.vue.js";
|
|
11
|
+
import { useStripoApi as X } from "../services/stripoApi.js";
|
|
12
|
+
import { useDynamicContentStore as Y } from "../stores/dynamic-content.js";
|
|
13
|
+
import { useEditorStore as Z } from "../stores/editor.js";
|
|
14
|
+
import { usePreviewStore as $ } from "../stores/preview.js";
|
|
15
|
+
import ee from "../node_modules/lodash-es/merge.js";
|
|
16
|
+
const ye = /* @__PURE__ */ H({
|
|
21
17
|
__name: "Guido",
|
|
22
18
|
props: {
|
|
23
19
|
templateId: null,
|
|
@@ -28,50 +24,49 @@ const Ue = /* @__PURE__ */ O({
|
|
|
28
24
|
username: null,
|
|
29
25
|
html: null,
|
|
30
26
|
css: null,
|
|
31
|
-
|
|
32
|
-
|
|
27
|
+
preselectedDynamicContentList: null,
|
|
28
|
+
guidoConfig: null
|
|
33
29
|
},
|
|
34
|
-
emits: ["dynamic-content:open", "back", "save:start", "save:complete", "on-change", "ready"
|
|
35
|
-
setup(
|
|
36
|
-
const
|
|
30
|
+
emits: ["dynamic-content:open", "back", "save:start", "save:complete", "on-change", "ready"],
|
|
31
|
+
setup(I, { expose: L, emit: o }) {
|
|
32
|
+
const r = I, _ = E(
|
|
37
33
|
() => import("./organisms/email-preview/PreviewContainer.vue.js")
|
|
38
|
-
),
|
|
34
|
+
), W = E(
|
|
39
35
|
() => import("./organisms/onboarding/OnboardingWrapper.vue.js")
|
|
40
|
-
),
|
|
36
|
+
), d = R(), a = Y(), m = Z(), k = $(), t = G(() => m.hasChanges), i = r.preselectedDynamicContentList || [], { getPartnerName: l, getProductType: u, isTestPartner: A } = z(), p = () => {
|
|
41
37
|
var e;
|
|
42
|
-
return (e =
|
|
38
|
+
return (e = d.value) == null ? void 0 : e.handleSave(!0);
|
|
43
39
|
}, {
|
|
44
|
-
templateId:
|
|
45
|
-
userId:
|
|
46
|
-
guidoConfig:
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
preselectedDynamicContentList: d,
|
|
40
|
+
templateId: g,
|
|
41
|
+
userId: f,
|
|
42
|
+
guidoConfig: y,
|
|
43
|
+
html: n = "",
|
|
44
|
+
css: v = "",
|
|
45
|
+
partnerName: s = l(),
|
|
46
|
+
productType: c = u(),
|
|
47
|
+
messageType: C = O,
|
|
48
|
+
username: h = K
|
|
49
|
+
} = r;
|
|
50
|
+
window.GuidoConfig = ee(j, y), window.GuidoConfig.partner = {
|
|
51
|
+
partnerName: s,
|
|
52
|
+
productType: c,
|
|
53
|
+
messageType: C
|
|
54
|
+
};
|
|
55
|
+
const { initPlugin: w } = B({
|
|
56
|
+
emailId: g,
|
|
57
|
+
userId: f,
|
|
58
|
+
username: h,
|
|
59
|
+
partnerName: s,
|
|
60
|
+
productType: c,
|
|
61
|
+
preselectedDynamicContentList: i,
|
|
67
62
|
onReady: () => {
|
|
68
63
|
console.debug("guido:ready"), o("ready");
|
|
69
64
|
}
|
|
70
|
-
}), { getDefaultTemplate:
|
|
65
|
+
}), { getDefaultTemplate: S } = X(), N = G(() => {
|
|
71
66
|
var e;
|
|
72
67
|
return !((e = window.GuidoConfig) != null && e.useHeader);
|
|
73
68
|
});
|
|
74
|
-
|
|
69
|
+
M({
|
|
75
70
|
onBack: () => {
|
|
76
71
|
console.debug("guido:back"), o("back");
|
|
77
72
|
},
|
|
@@ -80,55 +75,48 @@ const Ue = /* @__PURE__ */ O({
|
|
|
80
75
|
},
|
|
81
76
|
onSaveComplete: (e) => {
|
|
82
77
|
console.debug("guido:save:complete", e), o("save:complete", e);
|
|
83
|
-
},
|
|
84
|
-
onTestEmailClick: () => {
|
|
85
|
-
console.debug("guido:test-email:click"), o("test-email:click");
|
|
86
78
|
}
|
|
87
79
|
});
|
|
88
|
-
const
|
|
89
|
-
console.debug("dynamic-content:close", e),
|
|
90
|
-
},
|
|
80
|
+
const b = (e) => {
|
|
81
|
+
console.debug("dynamic-content:close", e), a.setSelectedDynamicContent(e), document.dispatchEvent(new CustomEvent("dynamic-content:close", { detail: e }));
|
|
82
|
+
}, D = () => {
|
|
91
83
|
console.debug("dynamic-content:close", "Without Data"), document.dispatchEvent(new CustomEvent("dynamic-content:close", { detail: { text: "", value: "" } }));
|
|
92
84
|
};
|
|
93
|
-
|
|
94
|
-
o("on-change",
|
|
95
|
-
})
|
|
96
|
-
const l = (e) => {
|
|
97
|
-
const G = e, { attribute: x, position: M } = G.detail;
|
|
98
|
-
console.debug("dynamic-content:open", G.detail), o("dynamic-content:open", x, M);
|
|
99
|
-
};
|
|
100
|
-
return K(async () => {
|
|
85
|
+
return U(() => t.value, () => {
|
|
86
|
+
o("on-change", t.value);
|
|
87
|
+
}), x(async () => {
|
|
101
88
|
console.debug("Guido says happy coding 🎉"), console.debug("🚗 Ka-Chow");
|
|
102
89
|
try {
|
|
103
|
-
g.selectedUnsubscribePages = (t == null ? void 0 : t.selectedUnsubscribePages) || [];
|
|
104
90
|
let e = {
|
|
105
|
-
html:
|
|
106
|
-
css:
|
|
91
|
+
html: n && P(n),
|
|
92
|
+
css: v,
|
|
107
93
|
forceRecreate: !0
|
|
108
94
|
// TODO: It should be false for old templates. We will communicate with Stripo
|
|
109
95
|
};
|
|
110
|
-
e.html || (e = await
|
|
96
|
+
e.html || (e = await S(), e.html = P(e.html)), await w(e), a.selectedDynamicContentList = i;
|
|
111
97
|
} catch (e) {
|
|
112
98
|
console.error("Failed to initialize Stripo editor:", e);
|
|
113
99
|
}
|
|
114
|
-
document.addEventListener("dynamic-content:open",
|
|
115
|
-
|
|
116
|
-
|
|
100
|
+
document.addEventListener("dynamic-content:open", (e) => {
|
|
101
|
+
const T = e;
|
|
102
|
+
console.debug("dynamic-content:open", T.detail), o("dynamic-content:open", T.detail);
|
|
103
|
+
});
|
|
104
|
+
}), F(() => {
|
|
117
105
|
try {
|
|
118
106
|
window.UIEditor.removeEditor();
|
|
119
107
|
} catch {
|
|
120
108
|
console.debug("Failed to remove Stripo editor: No editor found");
|
|
121
109
|
}
|
|
122
|
-
}),
|
|
110
|
+
}), L({
|
|
123
111
|
dynamicContent: {
|
|
124
|
-
insert:
|
|
125
|
-
close:
|
|
112
|
+
insert: b,
|
|
113
|
+
close: D
|
|
126
114
|
},
|
|
127
|
-
hasChanges:
|
|
128
|
-
saveSilent:
|
|
129
|
-
}), { __sfc: !0, PreviewContainer:
|
|
115
|
+
hasChanges: t,
|
|
116
|
+
saveSilent: p
|
|
117
|
+
}), { __sfc: !0, PreviewContainer: _, OnboardingWrapper: W, headerWrapperRef: d, dynamicContentStore: a, props: r, editorStore: m, previewStore: k, hasChanges: t, preselectedDynamicContentList: i, getPartnerName: l, getProductType: u, isTestPartner: A, saveSilent: p, templateId: g, userId: f, guidoConfig: y, html: n, css: v, partnerName: s, productType: c, messageType: C, username: h, emit: o, initPlugin: w, getDefaultTemplate: S, noHeader: N, insertDynamicContent: b, closeDynamicContent: D, Toaster: q, HeaderWrapper: J, LoadingWrapper: Q, SaveAsTemplateDrawer: V };
|
|
130
118
|
}
|
|
131
119
|
});
|
|
132
120
|
export {
|
|
133
|
-
|
|
121
|
+
ye as default
|
|
134
122
|
};
|
|
@@ -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
|
};
|