@useinsider/guido 1.0.3-beta.ce3ed00 → 1.0.3-beta.cedc8cb

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) hide show
  1. package/README.md +3 -173
  2. package/dist/{src/@types → @types}/generic.d.ts +0 -15
  3. package/dist/{src/components → components}/Guido.vue.d.ts +1 -1
  4. package/dist/components/Guido.vue.js +10 -12
  5. package/dist/components/Guido.vue2.js +90 -67
  6. package/dist/components/organisms/header/LeftSlot.vue.js +1 -1
  7. package/dist/components/organisms/header/LeftSlot.vue2.js +15 -16
  8. package/dist/components/organisms/header/RightSlot.vue.js +11 -11
  9. package/dist/components/organisms/onboarding/NewVersionPopup.vue.js +9 -9
  10. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +17 -30
  11. package/dist/components/organisms/onboarding/OnboardingWrapper.vue.js +10 -12
  12. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +18 -19
  13. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.d.ts +2 -0
  14. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue.d.ts +2 -0
  15. package/dist/composables/useApiErrorTracking.d.ts +26 -0
  16. package/dist/composables/useApiErrorTracking.js +120 -0
  17. package/dist/composables/useErrorTracking.d.ts +30 -0
  18. package/dist/composables/useErrorTracking.js +98 -0
  19. package/dist/composables/useHttp.js +89 -52
  20. package/dist/composables/useStripo.js +158 -57
  21. package/dist/composables/useStripoErrorCategory.d.ts +26 -0
  22. package/dist/composables/useStripoErrorCategory.js +86 -0
  23. package/dist/composables/useStripoSlackNotifier.d.ts +8 -0
  24. package/dist/composables/useStripoSlackNotifier.js +47 -0
  25. package/dist/config/migrator/index.js +6 -7
  26. package/dist/enums/defaults.js +8 -15
  27. package/dist/enums/extensions/recommendationBlock.js +2 -2
  28. package/dist/enums/onboarding.d.ts +1 -0
  29. package/dist/enums/onboarding.js +1 -2
  30. package/dist/{src/extensions → extensions}/Blocks/Checkbox/block.d.ts +0 -1
  31. package/dist/extensions/Blocks/Checkbox/block.js +2 -5
  32. package/dist/extensions/Blocks/Checkbox/extension.js +2 -2
  33. package/dist/extensions/Blocks/CouponBlock/extension.js +2 -2
  34. package/dist/{src/extensions → extensions}/Blocks/RadioButton/block.d.ts +0 -1
  35. package/dist/extensions/Blocks/RadioButton/block.js +2 -5
  36. package/dist/{src/extensions → extensions}/Blocks/Recommendation/block.d.ts +0 -1
  37. package/dist/extensions/Blocks/Recommendation/block.js +3 -6
  38. package/dist/{src/extensions → extensions}/Blocks/Recommendation/control.d.ts +0 -6
  39. package/dist/extensions/Blocks/Recommendation/control.js +40 -69
  40. package/dist/extensions/Blocks/Recommendation/extension.js +7 -42
  41. package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +43 -43
  42. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +22 -107
  43. package/dist/extensions/Blocks/Recommendation/template.d.ts +6 -0
  44. package/dist/extensions/Blocks/Recommendation/template.js +200 -0
  45. package/dist/{src/extensions → extensions}/Blocks/common-control.d.ts +5 -40
  46. package/dist/extensions/Blocks/common-control.js +60 -167
  47. package/dist/guido.css +1 -1
  48. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +101 -343
  49. package/dist/services/recommendationApi.js +19 -13
  50. package/dist/services/slackNotificationService.d.ts +110 -0
  51. package/dist/services/slackNotificationService.js +167 -0
  52. package/dist/services/stripoApi.js +49 -19
  53. package/dist/services/stripoErrorDeduplicationService.d.ts +75 -0
  54. package/dist/services/stripoErrorDeduplicationService.js +91 -0
  55. package/dist/static/styles/components/narrow-panel.css.js +0 -10
  56. package/dist/static/styles/customEditorStyle.css.js +0 -5
  57. package/dist/{src/stores → stores}/config.d.ts +0 -7
  58. package/dist/utils/dateUtil.d.ts +1 -0
  59. package/dist/utils/dateUtil.js +3 -24
  60. package/dist/utils/genericUtil.js +8 -7
  61. package/package.json +3 -15
  62. package/dist/composables/useBlocksConfig.js +0 -48
  63. package/dist/config/migrator/recommendationMigrator.js +0 -293
  64. package/dist/enums/date.js +0 -6
  65. package/dist/extensions/Blocks/Items/block.js +0 -70
  66. package/dist/extensions/Blocks/Items/controls/button/link.js +0 -60
  67. package/dist/extensions/Blocks/Items/controls/cardComposition.js +0 -99
  68. package/dist/extensions/Blocks/Items/controls/image/link.js +0 -60
  69. package/dist/extensions/Blocks/Items/controls/index.js +0 -217
  70. package/dist/extensions/Blocks/Items/controls/name/trimming.js +0 -63
  71. package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +0 -100
  72. package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +0 -113
  73. package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +0 -69
  74. package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +0 -38
  75. package/dist/extensions/Blocks/Items/controls/settingsControl.js +0 -279
  76. package/dist/extensions/Blocks/Items/enums/controlEnums.js +0 -5
  77. package/dist/extensions/Blocks/Items/enums/productEnums.js +0 -181
  78. package/dist/extensions/Blocks/Items/enums/settingsEnums.js +0 -63
  79. package/dist/extensions/Blocks/Items/extension.js +0 -19
  80. package/dist/extensions/Blocks/Items/iconsRegistry.js +0 -32
  81. package/dist/extensions/Blocks/Items/items.css.js +0 -23
  82. package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +0 -64
  83. package/dist/extensions/Blocks/Items/layouts/vertical.html.js +0 -66
  84. package/dist/extensions/Blocks/Items/settingsPanel.js +0 -106
  85. package/dist/extensions/Blocks/Items/store/items-block.js +0 -67
  86. package/dist/extensions/Blocks/Items/template.js +0 -108
  87. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +0 -103
  88. package/dist/extensions/Blocks/Recommendation/constants.js +0 -5
  89. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
  90. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
  91. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
  92. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
  93. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
  94. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
  95. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
  96. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
  97. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
  98. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
  99. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
  100. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
  101. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
  102. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
  103. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
  104. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
  105. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
  106. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
  107. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
  108. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
  109. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
  110. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
  111. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
  112. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
  113. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
  114. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
  115. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
  116. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
  117. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
  118. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
  119. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
  120. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
  121. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
  122. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
  123. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +0 -160
  124. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +0 -152
  125. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +0 -180
  126. package/dist/extensions/Blocks/controlFactories.js +0 -223
  127. package/dist/package.json.js +0 -7
  128. package/dist/src/components/organisms/onboarding/NewVersionPopup.vue.d.ts +0 -4
  129. package/dist/src/components/organisms/onboarding/OnboardingWrapper.vue.d.ts +0 -4
  130. package/dist/src/composables/useBlocksConfig.d.ts +0 -11
  131. package/dist/src/config/migrator/recommendationMigrator.d.ts +0 -1
  132. package/dist/src/enums/date.d.ts +0 -4
  133. package/dist/src/enums/onboarding.d.ts +0 -2
  134. package/dist/src/extensions/Blocks/Items/block.d.ts +0 -12
  135. package/dist/src/extensions/Blocks/Items/controls/button/link.d.ts +0 -14
  136. package/dist/src/extensions/Blocks/Items/controls/cardComposition.d.ts +0 -20
  137. package/dist/src/extensions/Blocks/Items/controls/image/link.d.ts +0 -14
  138. package/dist/src/extensions/Blocks/Items/controls/index.d.ts +0 -501
  139. package/dist/src/extensions/Blocks/Items/controls/name/trimming.d.ts +0 -14
  140. package/dist/src/extensions/Blocks/Items/controls/price/currencyLocation.d.ts +0 -19
  141. package/dist/src/extensions/Blocks/Items/controls/price/currencySymbol.d.ts +0 -20
  142. package/dist/src/extensions/Blocks/Items/controls/price/formattedPrice.d.ts +0 -14
  143. package/dist/src/extensions/Blocks/Items/controls/price/hideDiscount.d.ts +0 -9
  144. package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +0 -42
  145. package/dist/src/extensions/Blocks/Items/enums/controlEnums.d.ts +0 -61
  146. package/dist/src/extensions/Blocks/Items/enums/productEnums.d.ts +0 -143
  147. package/dist/src/extensions/Blocks/Items/enums/settingsEnums.d.ts +0 -35
  148. package/dist/src/extensions/Blocks/Items/iconsRegistry.d.ts +0 -4
  149. package/dist/src/extensions/Blocks/Items/store/items-block.d.ts +0 -39
  150. package/dist/src/extensions/Blocks/Items/template.d.ts +0 -16
  151. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +0 -28
  152. package/dist/src/extensions/Blocks/Recommendation/constants.d.ts +0 -51
  153. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +0 -5
  154. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +0 -5
  155. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +0 -5
  156. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +0 -5
  157. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +0 -5
  158. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +0 -5
  159. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +0 -5
  160. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +0 -5
  161. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +0 -5
  162. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +0 -5
  163. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +0 -5
  164. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +0 -5
  165. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +0 -5
  166. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +0 -5
  167. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
  168. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +0 -5
  169. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +0 -5
  170. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +0 -5
  171. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +0 -5
  172. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +0 -5
  173. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +0 -5
  174. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
  175. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +0 -5
  176. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +0 -5
  177. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +0 -5
  178. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +0 -5
  179. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +0 -5
  180. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +0 -5
  181. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
  182. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +0 -5
  183. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +0 -5
  184. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +0 -5
  185. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +0 -5
  186. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +0 -5
  187. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +0 -16
  188. package/dist/src/extensions/Blocks/Recommendation/templates/migrationTemplate.d.ts +0 -16
  189. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +0 -44
  190. package/dist/src/extensions/Blocks/_Boilerplate/settingsPanel.d.ts +0 -4
  191. package/dist/src/extensions/Blocks/controlFactories.d.ts +0 -312
  192. package/dist/src/extensions/DynamicContent/extension.d.ts +0 -2
  193. package/dist/src/utils/dateUtil.d.ts +0 -22
  194. package/dist/{src/@types → @types}/events.d.ts +0 -0
  195. package/dist/{src/@types → @types}/save-as-template.d.ts +0 -0
  196. package/dist/{src/App.vue.d.ts → App.vue.d.ts} +0 -0
  197. package/dist/{src/components → components}/organisms/LoadingWrapper.vue.d.ts +0 -0
  198. package/dist/{src/components → components}/organisms/base/Toaster.vue.d.ts +0 -0
  199. package/dist/{src/components → components}/organisms/email-preview/PreviewContainer.vue.d.ts +0 -0
  200. package/dist/{src/components → components}/organisms/email-preview/amp/AmpErrorModal.vue.d.ts +0 -0
  201. package/dist/{src/components → components}/organisms/email-preview/amp/AmpToggle.vue.d.ts +0 -0
  202. package/dist/{src/components → components}/organisms/email-preview/desktop-preview/DesktopPreview.vue.d.ts +0 -0
  203. package/dist/{src/components → components}/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue.d.ts +0 -0
  204. package/dist/{src/components → components}/organisms/email-preview/desktop-preview/EmailSizeIndicator.vue.d.ts +0 -0
  205. package/dist/{src/components → components}/organisms/email-preview/mobile-preview/ContentView.vue.d.ts +0 -0
  206. package/dist/{src/components → components}/organisms/email-preview/mobile-preview/InboxView.vue.d.ts +0 -0
  207. package/dist/{src/components → components}/organisms/email-preview/mobile-preview/MobilePreview.vue.d.ts +0 -0
  208. package/dist/{src/components → components}/organisms/extensions/recommendation/FilterItem.vue.d.ts +0 -0
  209. package/dist/{src/components → components}/organisms/extensions/recommendation/FilterSelectionDrawer.vue.d.ts +0 -0
  210. package/dist/{src/components → components}/organisms/extensions/recommendation/Filters.vue.d.ts +0 -0
  211. package/dist/{src/components → components}/organisms/extensions/recommendation/LogicAdapter.vue.d.ts +0 -0
  212. package/dist/{src/components → components}/organisms/header/HeaderWrapper.vue.d.ts +0 -0
  213. package/dist/{src/components → components}/organisms/header/LeftSlot.vue.d.ts +0 -0
  214. package/dist/{src/components → components}/organisms/header/MiddleSlot.vue.d.ts +0 -0
  215. package/dist/{src/components → components}/organisms/header/RightSlot.vue.d.ts +0 -0
  216. package/dist/{src/components → components}/organisms/header/ViewOptions.vue.d.ts +0 -0
  217. package/dist/{src/components → components}/organisms/header/version-history/RestoreButton.vue.d.ts +0 -0
  218. package/dist/{src/components → components}/organisms/header/version-history/VersionHistory.vue.d.ts +0 -0
  219. package/dist/{src/components → components}/organisms/header/version-history/VersionHistoryItem.vue.d.ts +0 -0
  220. package/dist/{src/components → components}/organisms/header/version-history/ViewOptions.vue.d.ts +0 -0
  221. package/dist/{src/components → components}/organisms/onboarding/AMPOnboarding.vue.d.ts +0 -0
  222. package/dist/{src/components → components}/organisms/onboarding/GenericOnboarding.vue.d.ts +0 -0
  223. package/dist/{src/components/organisms/onboarding/TextBlockOnboarding.vue.d.ts → components/organisms/onboarding/NewVersionPopup.vue.d.ts} +0 -0
  224. package/dist/{src/components/organisms/onboarding/VersionHistoryOnboarding.vue.d.ts → components/organisms/onboarding/OnboardingWrapper.vue.d.ts} +0 -0
  225. package/dist/{src/components/organisms/save-as-template/SaveAsTemplateDrawer.vue.d.ts → components/organisms/onboarding/TextBlockOnboarding.vue.d.ts} +0 -0
  226. package/dist/{src/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue.d.ts → components/organisms/onboarding/VersionHistoryOnboarding.vue.d.ts} +0 -0
  227. package/dist/{src/components/organisms/unsubscribe/UnsubscribePageSelection.vue.d.ts → components/organisms/save-as-template/SaveAsTemplateDrawer.vue.d.ts} +0 -0
  228. package/dist/{src/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.d.ts → components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue.d.ts} +0 -0
  229. package/dist/{src/components/organisms/unsubscribe/UnsubscribeWrapper.vue.d.ts → components/organisms/unsubscribe/UnsubscribePageSelection.vue.d.ts} +0 -0
  230. package/dist/{src/components → components}/wrappers/WpDrawer.vue.d.ts +0 -0
  231. package/dist/{src/components → components}/wrappers/WpModal.vue.d.ts +1 -1
  232. /package/dist/{src/composables → composables}/useActionsApi.d.ts +0 -0
  233. /package/dist/{src/composables → composables}/useApiExample.d.ts +0 -0
  234. /package/dist/{src/composables → composables}/useCodeEditorApi.d.ts +0 -0
  235. /package/dist/{src/composables → composables}/useConfig.d.ts +0 -0
  236. /package/dist/{src/composables → composables}/useCustomInterfaceAppearance.d.ts +0 -0
  237. /package/dist/{src/composables → composables}/useDebounce.d.ts +0 -0
  238. /package/dist/{src/composables → composables}/useExport.d.ts +0 -0
  239. /package/dist/{src/composables → composables}/useGuidoActions.d.ts +0 -0
  240. /package/dist/{src/composables → composables}/useHtmlCompiler.d.ts +0 -0
  241. /package/dist/{src/composables → composables}/useHtmlValidator.d.ts +0 -0
  242. /package/dist/{src/composables → composables}/useHttp.d.ts +0 -0
  243. /package/dist/{src/composables → composables}/usePartner.d.ts +0 -0
  244. /package/dist/{src/composables → composables}/usePreviewMode.d.ts +0 -0
  245. /package/dist/{src/composables → composables}/useProvideInject.d.ts +0 -0
  246. /package/dist/{src/composables → composables}/useRecommendation.d.ts +0 -0
  247. /package/dist/{src/composables → composables}/useResponsivePreview.d.ts +0 -0
  248. /package/dist/{src/composables → composables}/useSave.d.ts +0 -0
  249. /package/dist/{src/composables → composables}/useStripo.d.ts +0 -0
  250. /package/dist/{src/composables → composables}/useStripoEventHandler.d.ts +0 -0
  251. /package/dist/{src/composables → composables}/useToaster.d.ts +0 -0
  252. /package/dist/{src/composables → composables}/useTranslations.d.ts +0 -0
  253. /package/dist/{src/composables → composables}/useValidation.d.ts +0 -0
  254. /package/dist/{src/composables → composables}/useVersionHistoryApi.d.ts +0 -0
  255. /package/dist/{src/composables → composables}/validators/saveAsTemplate.d.ts +0 -0
  256. /package/dist/{src/config → config}/compiler/htmlCompilerRules.d.ts +0 -0
  257. /package/dist/{src/config → config}/compiler/outlookCompilerRules.d.ts +0 -0
  258. /package/dist/{src/config → config}/compiler/recommendationCompilerRules.d.ts +0 -0
  259. /package/dist/{src/config → config}/compiler/socialCompilerRules.d.ts +0 -0
  260. /package/dist/{src/config → config}/compiler/unsubscribeCompilerRules.d.ts +0 -0
  261. /package/dist/{src/config → config}/migrator/checkboxMigrator.d.ts +0 -0
  262. /package/dist/{src/config → config}/migrator/couponBlockMigrator.d.ts +0 -0
  263. /package/dist/{src/config → config}/migrator/index.d.ts +0 -0
  264. /package/dist/{src/config → config}/migrator/radioButtonMigrator.d.ts +0 -0
  265. /package/dist/{src/config → config}/migrator/unsubscribeMigrator.d.ts +0 -0
  266. /package/dist/{src/enums → enums}/defaults.d.ts +0 -0
  267. /package/dist/{src/enums → enums}/displayConditions.d.ts +0 -0
  268. /package/dist/{src/enums → enums}/extensions/recommendationBlock.d.ts +0 -0
  269. /package/dist/{src/enums → enums}/html-validator.d.ts +0 -0
  270. /package/dist/{src/enums → enums}/preview.d.ts +0 -0
  271. /package/dist/{src/enums → enums}/recommendation.d.ts +0 -0
  272. /package/dist/{src/enums → enums}/toaster.d.ts +0 -0
  273. /package/dist/{src/enums → enums}/unsubscribe.d.ts +0 -0
  274. /package/dist/{src/extensions → extensions}/Blocks/Checkbox/control.d.ts +0 -0
  275. /package/dist/{src/extensions → extensions}/Blocks/Checkbox/extension.d.ts +0 -0
  276. /package/dist/{src/extensions → extensions}/Blocks/Checkbox/iconsRegistry.d.ts +0 -0
  277. /package/dist/{src/extensions → extensions}/Blocks/Checkbox/settingsPanel.d.ts +0 -0
  278. /package/dist/{src/extensions → extensions}/Blocks/Checkbox/template.d.ts +0 -0
  279. /package/dist/{src/extensions → extensions}/Blocks/CouponBlock/block.d.ts +0 -0
  280. /package/dist/{src/extensions → extensions}/Blocks/CouponBlock/extension.d.ts +0 -0
  281. /package/dist/{src/extensions → extensions}/Blocks/CouponBlock/iconsRegistry.d.ts +0 -0
  282. /package/dist/{src/extensions → extensions}/Blocks/CouponBlock/settingsPanel.d.ts +0 -0
  283. /package/dist/{src/extensions → extensions}/Blocks/CouponBlock/template.d.ts +0 -0
  284. /package/dist/{src/extensions → extensions}/Blocks/RadioButton/control.d.ts +0 -0
  285. /package/dist/{src/extensions/Blocks/Items → extensions/Blocks/RadioButton}/extension.d.ts +0 -0
  286. /package/dist/{src/extensions → extensions}/Blocks/RadioButton/iconsRegistry.d.ts +0 -0
  287. /package/dist/{src/extensions → extensions}/Blocks/RadioButton/settingsPanel.d.ts +0 -0
  288. /package/dist/{src/extensions → extensions}/Blocks/RadioButton/template.d.ts +0 -0
  289. /package/dist/{src/extensions/Blocks/RadioButton → extensions/Blocks/Recommendation}/extension.d.ts +0 -0
  290. /package/dist/{src/extensions → extensions}/Blocks/Recommendation/iconsRegistry.d.ts +0 -0
  291. /package/dist/{src/extensions/Blocks/Items → extensions/Blocks/Recommendation}/settingsPanel.d.ts +0 -0
  292. /package/dist/{src/extensions → extensions}/Blocks/Recommendation/store/recommendation.d.ts +0 -0
  293. /package/dist/{src/extensions → extensions}/Blocks/Recommendation/utils/filterUtil.d.ts +0 -0
  294. /package/dist/{src/extensions → extensions}/Blocks/Unsubscribe/block.d.ts +0 -0
  295. /package/dist/{src/extensions → extensions}/Blocks/Unsubscribe/control.d.ts +0 -0
  296. /package/dist/{src/extensions → extensions}/Blocks/Unsubscribe/elements/preview.d.ts +0 -0
  297. /package/dist/{src/extensions/Blocks/Recommendation → extensions/Blocks/Unsubscribe}/extension.d.ts +0 -0
  298. /package/dist/{src/extensions → extensions}/Blocks/Unsubscribe/iconsRegistry.d.ts +0 -0
  299. /package/dist/{src/extensions/Blocks/Recommendation → extensions/Blocks/Unsubscribe}/settingsPanel.d.ts +0 -0
  300. /package/dist/{src/extensions → extensions}/Blocks/Unsubscribe/tagRegistry.d.ts +0 -0
  301. /package/dist/{src/extensions → extensions}/Blocks/Unsubscribe/template.d.ts +0 -0
  302. /package/dist/{src/extensions → extensions}/Blocks/Unsubscribe/utils/constants.d.ts +0 -0
  303. /package/dist/{src/extensions → extensions}/Blocks/Unsubscribe/utils/utils.d.ts +0 -0
  304. /package/dist/{src/extensions → extensions}/Blocks/_Boilerplate/block.d.ts +0 -0
  305. /package/dist/{src/extensions → extensions}/Blocks/_Boilerplate/control.d.ts +0 -0
  306. /package/dist/{src/extensions/Blocks/Unsubscribe → extensions/Blocks/_Boilerplate}/extension.d.ts +0 -0
  307. /package/dist/{src/extensions → extensions}/Blocks/_Boilerplate/iconsRegistry.d.ts +0 -0
  308. /package/dist/{src/extensions/Blocks/Unsubscribe → extensions/Blocks/_Boilerplate}/settingsPanel.d.ts +0 -0
  309. /package/dist/{src/extensions → extensions}/Blocks/_Boilerplate/template.d.ts +0 -0
  310. /package/dist/{src/extensions → extensions}/DynamicContent/dynamic-content-modal.d.ts +0 -0
  311. /package/dist/{src/extensions → extensions}/DynamicContent/dynamic-content.d.ts +0 -0
  312. /package/dist/{src/extensions/Blocks/_Boilerplate → extensions/DynamicContent}/extension.d.ts +0 -0
  313. /package/dist/{src/library.d.ts → library.d.ts} +0 -0
  314. /package/dist/{src/main.d.ts → main.d.ts} +0 -0
  315. /package/dist/{src/mock → mock}/api/auth.d.ts +0 -0
  316. /package/dist/{src/mock → mock}/api/custom-fonts.d.ts +0 -0
  317. /package/dist/{src/mock → mock}/api/default-template.d.ts +0 -0
  318. /package/dist/{src/mock → mock}/api/recommendation.d.ts +0 -0
  319. /package/dist/{src/mock → mock}/api/template-library.d.ts +0 -0
  320. /package/dist/{src/mock → mock}/api/unsubscribe.d.ts +0 -0
  321. /package/dist/{src/mock → mock}/api/user-modal-state.d.ts +0 -0
  322. /package/dist/{src/mock → mock}/api/validator.d.ts +0 -0
  323. /package/dist/{src/mock → mock}/browser.d.ts +0 -0
  324. /package/dist/{src/mock → mock}/handlers.d.ts +0 -0
  325. /package/dist/{src/services → services}/onboardingApi.d.ts +0 -0
  326. /package/dist/{src/services → services}/recommendationApi.d.ts +0 -0
  327. /package/dist/{src/services → services}/stripoApi.d.ts +0 -0
  328. /package/dist/{src/services → services}/templateLibraryApi.d.ts +0 -0
  329. /package/dist/{src/services → services}/unsubscribeApi.d.ts +0 -0
  330. /package/dist/{src/stores → stores}/dynamic-content.d.ts +0 -0
  331. /package/dist/{src/stores → stores}/editor.d.ts +0 -0
  332. /package/dist/{src/stores → stores}/onboarding.d.ts +0 -0
  333. /package/dist/{src/stores → stores}/preview.d.ts +0 -0
  334. /package/dist/{src/stores → stores}/recommendation.d.ts +0 -0
  335. /package/dist/{src/stores → stores}/save-as-template.d.ts +0 -0
  336. /package/dist/{src/stores → stores}/toaster.d.ts +0 -0
  337. /package/dist/{src/stores → stores}/unsubscribe.d.ts +0 -0
  338. /package/dist/{src/stores → stores}/version-history.d.ts +0 -0
  339. /package/dist/{src/utils → utils}/arrayUtil.d.ts +0 -0
  340. /package/dist/{src/utils → utils}/base64.d.ts +0 -0
  341. /package/dist/{src/utils → utils}/genericUtil.d.ts +0 -0
  342. /package/dist/{src/utils → utils}/htmlCompiler.d.ts +0 -0
  343. /package/dist/{src/utils → utils}/templatePreparation.d.ts +0 -0
  344. /package/dist/{src/utils → utils}/tooltipUtils.d.ts +0 -0
@@ -1,24 +1,41 @@
1
- import { useActionsApi as y } from "./useActionsApi.js";
2
- import { useBlocksConfig as E } from "./useBlocksConfig.js";
3
- import { useCustomInterfaceAppearance as w } from "./useCustomInterfaceAppearance.js";
4
- import { useStripoEventHandler as h } from "./useStripoEventHandler.js";
5
- import { useToaster as b } from "./useToaster.js";
6
- import { displayConditions as k } from "../enums/displayConditions.js";
7
- import { useStripoApi as B } from "../services/stripoApi.js";
8
- import V from "../static/styles/customEditorStyle.css.js";
9
- import { useEditorStore as _ } from "../stores/editor.js";
10
- import { dynamicContentToMergeTags as F } from "../utils/genericUtil.js";
11
- import A from "../package.json.js";
12
- const L = (d) => {
13
- const { handleError: u } = b(), { getToken: p, getCustomFonts: m } = B(), { handleEvent: g } = h(), { getStripoBlocksConfig: f } = E(), S = async (r, i = []) => {
14
- const t = _(), { html: n, css: l, forceRecreate: a } = r, { baseBlocks: e, extensions: c } = await f();
1
+ import { useActionsApi as C } from "./useActionsApi.js";
2
+ import { useCustomInterfaceAppearance as _ } from "./useCustomInterfaceAppearance.js";
3
+ import { useErrorTracking as w } from "./useErrorTracking.js";
4
+ import { useStripoErrorCategory as b } from "./useStripoErrorCategory.js";
5
+ import { useStripoEventHandler as k } from "./useStripoEventHandler.js";
6
+ import { useStripoSlackNotifier as v } from "./useStripoSlackNotifier.js";
7
+ import { useToaster as B } from "./useToaster.js";
8
+ import { displayConditions as V } from "../enums/displayConditions.js";
9
+ import x from "../extensions/Blocks/Checkbox/extension.js";
10
+ import F from "../extensions/Blocks/CouponBlock/extension.js";
11
+ import A from "../extensions/Blocks/RadioButton/extension.js";
12
+ import M from "../extensions/Blocks/Recommendation/extension.js";
13
+ import U from "../extensions/Blocks/Unsubscribe/extension.js";
14
+ import D from "../extensions/DynamicContent/extension.js";
15
+ import { useStripoApi as P } from "../services/stripoApi.js";
16
+ import R from "../static/styles/customEditorStyle.css.js";
17
+ import { useEditorStore as z } from "../stores/editor.js";
18
+ import { dynamicContentToMergeTags as H } from "../utils/genericUtil.js";
19
+ const no = (o) => {
20
+ const { handleError: g } = B(), { getToken: S, getCustomFonts: y } = P(), { handleEvent: E } = k(), { captureStripoError: c, withTimeout: f } = w(), { shouldCaptureSentry: u } = b(), { notifySlack: p } = v(), h = (m, n = []) => {
21
+ const r = z(), { html: i, css: a, forceRecreate: d } = m, l = (e) => {
22
+ const t = e instanceof Error ? e : new Error(String(e)), s = "stripo_runtime_error", I = u(s);
23
+ c(t, s, {
24
+ emailId: o.emailId,
25
+ userId: o.userId
26
+ }, I), p(
27
+ t.message,
28
+ s,
29
+ { emailId: o.emailId, userId: o.userId }
30
+ );
31
+ };
15
32
  window.UIEditor.initEditor(
16
33
  document.querySelector("#guido-editor"),
17
34
  {
18
- metadata: d,
19
- html: n,
20
- css: l,
21
- forceRecreate: a,
35
+ metadata: o,
36
+ html: i,
37
+ css: a,
38
+ forceRecreate: d,
22
39
  locale: "en",
23
40
  undoButtonSelector: "#guido__undo-button",
24
41
  redoButtonSelector: "#guido__redo-button",
@@ -28,83 +45,167 @@ const L = (d) => {
28
45
  customAppearanceMergetags: !0,
29
46
  customAppearanceMergetagsBorderColor: "#f1f3fe",
30
47
  customAppearanceMergetagsBackgroundColor: "#f1f3fe",
31
- customViewStyles: V,
48
+ customViewStyles: R,
32
49
  conditionsEnabled: !0,
33
50
  customConditionsEnabled: !0,
34
- conditionCategories: k,
51
+ conditionCategories: V,
35
52
  enableXSSSecurity: !0,
36
53
  messageSettingsEnabled: !1,
37
54
  selectBlockAfterDropFromSettingsPanel: !0,
38
- ...e ? { baseBlocks: e } : {},
39
55
  editorFonts: {
40
56
  showDefaultStandardFonts: !0,
41
57
  showDefaultNotStandardFonts: !0,
42
- customFonts: i
58
+ customFonts: n
43
59
  },
44
60
  mergeTags: [
45
61
  {
46
- entries: F(d.preselectedDynamicContentList)
62
+ entries: H(o.preselectedDynamicContentList)
47
63
  }
48
64
  ],
49
- async onTokenRefreshRequest(o) {
65
+ async onTokenRefreshRequest(e) {
50
66
  try {
51
- const s = await p();
52
- o(s);
53
- } catch (s) {
54
- u(s, "Failed to refresh token");
67
+ const t = await f(
68
+ S(),
69
+ 1e4,
70
+ // 10 second timeout
71
+ "token_refresh",
72
+ { emailId: o.emailId, userId: o.userId }
73
+ );
74
+ e(t);
75
+ } catch (t) {
76
+ const s = "token_refresh", I = u(s);
77
+ c(t, s, {
78
+ templateId: o.emailId,
79
+ userId: o.userId
80
+ }, I), p(
81
+ "Token refresh operation failed",
82
+ s,
83
+ { emailId: o.emailId, userId: o.userId }
84
+ ), g(t, "Failed to refresh token");
55
85
  }
56
86
  },
57
87
  onTemplateLoaded() {
58
88
  try {
59
- const { importCss: o } = w(), { activateCustomViewStyles: s } = y();
60
- o(), s(), d.onReady(), t.isStripoInitialized = !0, t.loadingStatus = !1, setTimeout(() => {
61
- t.hasChanges = !1;
89
+ const { importCss: e } = _(), { activateCustomViewStyles: t } = C();
90
+ e(), t(), o.onReady(), r.isStripoInitialized = !0, r.loadingStatus = !1, setTimeout(() => {
91
+ r.hasChanges = !1;
62
92
  }, 1e3);
63
- } catch (o) {
64
- u(o, "Failed to load custom interface appearance");
93
+ } catch (e) {
94
+ const t = "template_loaded", s = u(t);
95
+ c(e, t, {
96
+ templateId: o.emailId,
97
+ userId: o.userId
98
+ }, s), p(
99
+ "Template loading operation failed",
100
+ t,
101
+ { emailId: o.emailId, userId: o.userId }
102
+ ), g(e, "Failed to load custom interface appearance");
65
103
  }
66
104
  },
67
- onCodeEditorVisibilityChanged(o) {
68
- t.isCodeEditorOpen = o;
105
+ onCodeEditorVisibilityChanged(e) {
106
+ r.isCodeEditorOpen = e;
69
107
  },
70
- onEditorVisualModeChanged(o) {
71
- t.editorVisualMode = o.toLowerCase();
108
+ onEditorVisualModeChanged(e) {
109
+ r.editorVisualMode = e.toLowerCase();
72
110
  },
73
- onVersionHistoryVisibilityChanged(o) {
74
- t.isVersionHistoryOpen = o;
111
+ onVersionHistoryVisibilityChanged(e) {
112
+ r.isVersionHistoryOpen = e;
75
113
  },
76
114
  onDataChanged() {
77
- t.hasChanges = !0;
115
+ r.hasChanges = !0;
78
116
  },
79
- onEvent: g,
117
+ onEvent: E,
118
+ // Error handler for Stripo runtime errors (CORS, plugin issues, etc.)
119
+ onError: l,
80
120
  ignoreClickOutsideSelectors: [
81
121
  "#guido-dynamic-content-modal",
82
122
  ".in-on-board-wrapper",
83
123
  ".in-drawer__container"
84
124
  ],
85
- extensions: c
125
+ extensions: [
126
+ D,
127
+ x,
128
+ A,
129
+ M,
130
+ U,
131
+ F
132
+ ]
86
133
  }
87
134
  );
88
- }, C = (r) => new Promise((i, t) => {
89
- var c;
135
+ }, T = (m) => new Promise((n, r) => {
90
136
  if (document.getElementById("UiEditorScript")) {
91
- r(), i();
137
+ m(), n();
92
138
  return;
93
139
  }
94
- const n = A.guido, a = `https://email-static.useinsider.com/guido/${(c = n == null ? void 0 : n.stripo) == null ? void 0 : c.version}/UIEditor.js`, e = document.createElement("script");
95
- e.id = "UiEditorScript", e.type = "module", e.src = a, e.onload = () => {
96
- r(), i();
97
- }, e.onerror = () => {
98
- t(new Error(`Failed to load Stripo UIEditor script from S3: ${a}`));
99
- }, document.body.appendChild(e);
140
+ const i = document.createElement("script");
141
+ i.id = "UiEditorScript", i.type = "module", i.src = "https://plugins.stripo.email/resources/uieditor/latest/UIEditor.js";
142
+ const a = setTimeout(() => {
143
+ const d = new Error("Timeout loading Stripo UIEditor script (30s)"), l = "plugin_load_timeout", e = u(l);
144
+ c(d, l, {
145
+ scriptSrc: i.src,
146
+ emailId: o.emailId,
147
+ userId: o.userId
148
+ }, e), p(
149
+ `Stripo plugin failed to load (timeout): ${i.src}`,
150
+ l,
151
+ { emailId: o.emailId, userId: o.userId, reason: "timeout" }
152
+ ), r(d);
153
+ }, 3e4);
154
+ i.onload = () => {
155
+ clearTimeout(a), m(), n();
156
+ }, i.onerror = (d) => {
157
+ clearTimeout(a);
158
+ const l = new Error("Failed to load Stripo UIEditor script"), e = d instanceof Event ? d.type : String(d), t = "plugin_load_error", s = u(t);
159
+ c(l, t, {
160
+ scriptSrc: i.src,
161
+ event: e,
162
+ emailId: o.emailId,
163
+ userId: o.userId
164
+ }, s), p(
165
+ `Stripo plugin failed to load: ${e}`,
166
+ t,
167
+ { emailId: o.emailId, userId: o.userId, scriptSrc: i.src }
168
+ ), r(l);
169
+ }, document.body.appendChild(i);
100
170
  });
101
- return { initPlugin: async (r) => {
102
- await C(async () => {
103
- const i = await m();
104
- await S(r, i);
105
- });
171
+ return { initPlugin: async (m) => {
172
+ try {
173
+ await T(async () => {
174
+ try {
175
+ const n = await f(
176
+ y(),
177
+ 5e3,
178
+ // 5 second timeout for fonts
179
+ "load_custom_fonts",
180
+ { emailId: o.emailId }
181
+ );
182
+ h(m, n);
183
+ } catch (n) {
184
+ const r = "init_editor", i = u(r);
185
+ throw c(n, r, {
186
+ templateId: o.emailId,
187
+ userId: o.userId,
188
+ hasTemplate: !!m.html
189
+ }, i), p(
190
+ "Editor initialization failed",
191
+ r,
192
+ { emailId: o.emailId, userId: o.userId }
193
+ ), n;
194
+ }
195
+ });
196
+ } catch (n) {
197
+ const r = "init_plugin", i = u(r);
198
+ throw c(n, r, {
199
+ templateId: o.emailId,
200
+ userId: o.userId
201
+ }, i), p(
202
+ "Plugin initialization failed",
203
+ r,
204
+ { emailId: o.emailId, userId: o.userId }
205
+ ), n;
206
+ }
106
207
  } };
107
208
  };
108
209
  export {
109
- L as useStripo
210
+ no as useStripo
110
211
  };
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Error categorization system for Stripo integration
3
+ * Determines whether errors should be logged to Sentry/FullStory, Slack, or both
4
+ *
5
+ * Note: Error type names use snake_case (e.g., plugin_load_error) to match
6
+ * error type strings used throughout the codebase. This is intentional and
7
+ * required for the categorization system to work correctly.
8
+ */
9
+ export type ErrorSeverity = 'critical' | 'warning' | 'info';
10
+ export type ErrorCaptureLevel = 'sentry_and_slack' | 'slack_only' | 'sentry_only';
11
+ export interface ErrorCategory {
12
+ type: string;
13
+ severity: ErrorSeverity;
14
+ captureLevel: ErrorCaptureLevel;
15
+ description: string;
16
+ }
17
+ /**
18
+ * Categorize an error based on its type
19
+ * Returns the error category with capture level and severity
20
+ */
21
+ export declare const useStripoErrorCategory: () => {
22
+ getErrorCategory: (errorType: string) => ErrorCategory;
23
+ shouldCaptureSentry: (errorType: string) => boolean;
24
+ shouldNotifySlack: (errorType: string) => boolean;
25
+ addErrorCategory: (category: ErrorCategory) => void;
26
+ };
@@ -0,0 +1,86 @@
1
+ const i = {
2
+ // Critical errors: Log to Sentry + Alert Slack
3
+ plugin_load_error: {
4
+ type: "plugin_load_error",
5
+ severity: "critical",
6
+ captureLevel: "sentry_and_slack",
7
+ description: "Stripo UIEditor.js script failed to load"
8
+ },
9
+ plugin_load_timeout: {
10
+ type: "plugin_load_timeout",
11
+ severity: "critical",
12
+ captureLevel: "sentry_and_slack",
13
+ description: "Stripo script loading exceeded timeout threshold"
14
+ },
15
+ authentication_error: {
16
+ type: "authentication_error",
17
+ severity: "critical",
18
+ captureLevel: "sentry_and_slack",
19
+ description: "Token or authentication failure"
20
+ },
21
+ // Handled errors: Alert Slack but DON'T log to Sentry/FullStory
22
+ cors_error: {
23
+ type: "cors_error",
24
+ severity: "warning",
25
+ captureLevel: "slack_only",
26
+ description: "CORS policy blocked resource (can be caught before Sentry)"
27
+ },
28
+ // Runtime errors: Log to Sentry but DON'T alert Slack
29
+ stripo_runtime_error: {
30
+ type: "stripo_runtime_error",
31
+ severity: "warning",
32
+ captureLevel: "sentry_only",
33
+ description: "Runtime error from Stripo editor"
34
+ },
35
+ init_editor: {
36
+ type: "init_editor",
37
+ severity: "warning",
38
+ captureLevel: "sentry_only",
39
+ description: "Editor initialization failure"
40
+ },
41
+ init_plugin: {
42
+ type: "init_plugin",
43
+ severity: "warning",
44
+ captureLevel: "sentry_only",
45
+ description: "Plugin initialization failure"
46
+ },
47
+ token_refresh: {
48
+ type: "token_refresh",
49
+ severity: "warning",
50
+ captureLevel: "sentry_only",
51
+ description: "Token refresh operation failed"
52
+ },
53
+ template_loaded: {
54
+ type: "template_loaded",
55
+ severity: "warning",
56
+ captureLevel: "sentry_only",
57
+ description: "Template loading operation failed"
58
+ }
59
+ }, l = () => {
60
+ const t = (e) => {
61
+ const r = i[e];
62
+ return r || {
63
+ type: e,
64
+ severity: "warning",
65
+ captureLevel: "sentry_only",
66
+ description: "Unknown error type"
67
+ };
68
+ };
69
+ return {
70
+ getErrorCategory: t,
71
+ shouldCaptureSentry: (e) => {
72
+ const r = t(e);
73
+ return ["sentry_and_slack", "sentry_only"].includes(r.captureLevel);
74
+ },
75
+ shouldNotifySlack: (e) => {
76
+ const r = t(e);
77
+ return ["sentry_and_slack", "slack_only"].includes(r.captureLevel);
78
+ },
79
+ addErrorCategory: (e) => {
80
+ i[e.type] = e;
81
+ }
82
+ };
83
+ };
84
+ export {
85
+ l as useStripoErrorCategory
86
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Slack notifications for Stripo errors
3
+ * Uses error categorization to determine which errors should trigger Slack alerts
4
+ * Prevents duplicate alerts within the same session
5
+ */
6
+ export declare const useStripoSlackNotifier: () => {
7
+ notifySlack: (errorMessage: string, errorType: string, additionalContext?: Record<string, unknown>) => Promise<boolean>;
8
+ };
@@ -0,0 +1,47 @@
1
+ import { useStripoErrorCategory as g } from "./useStripoErrorCategory.js";
2
+ import { getSlackNotificationService as f } from "../services/slackNotificationService.js";
3
+ import { getStripoErrorDeduplicationService as u } from "../services/stripoErrorDeduplicationService.js";
4
+ const w = () => {
5
+ const c = f(), s = u(), { shouldNotifySlack: a, getErrorCategory: l } = g();
6
+ return {
7
+ notifySlack: async (o, t, r) => {
8
+ const e = l(t), i = a(t) || e.captureLevel === "sentry_only", S = {
9
+ critical: "critical",
10
+ warning: "high",
11
+ info: "low"
12
+ };
13
+ let n = o;
14
+ i && (n += `
15
+
16
+ _Also logged to Sentry/FullStory for analysis_`);
17
+ const p = {
18
+ title: `Stripo ${t.replace(/_/g, " ").toUpperCase()}`,
19
+ message: n,
20
+ errorType: t,
21
+ severity: S[e.severity] || "high",
22
+ context: {
23
+ ...r,
24
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
25
+ environment: "production",
26
+ captureLevel: e.captureLevel,
27
+ description: e.description,
28
+ loggedToSentry: i
29
+ }
30
+ };
31
+ return s.trackError({
32
+ errorType: t,
33
+ errorMessage: o,
34
+ errorCategory: e.severity,
35
+ context: {
36
+ ...r,
37
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
38
+ environment: "production"
39
+ },
40
+ reportedAt: (/* @__PURE__ */ new Date()).toISOString()
41
+ }) ? c.sendErrorNotification(p) : !1;
42
+ }
43
+ };
44
+ };
45
+ export {
46
+ w as useStripoSlackNotifier
47
+ };
@@ -1,12 +1,11 @@
1
- import { migrateCheckbox as m } from "./checkboxMigrator.js";
2
- import { migrateCouponBlock as o } from "./couponBlockMigrator.js";
1
+ import { migrateCheckbox as o } from "./checkboxMigrator.js";
2
+ import { migrateCouponBlock as m } from "./couponBlockMigrator.js";
3
3
  import { migrateRadioButton as i } from "./radioButtonMigrator.js";
4
- import { migrateRecommendation as e } from "./recommendationMigrator.js";
5
- import { migrateUnsubscribe as a } from "./unsubscribeMigrator.js";
6
- const s = async (t) => {
4
+ import { migrateUnsubscribe as e } from "./unsubscribeMigrator.js";
5
+ const c = async (t) => {
7
6
  let r = t;
8
- return r = m(r), r = i(r), r = await a(r), r = o(r), r = e(r), r;
7
+ return r = o(r), r = i(r), r = await e(r), r = m(r), r;
9
8
  };
10
9
  export {
11
- s as migrate
10
+ c as migrate
12
11
  };
@@ -1,6 +1,5 @@
1
- const e = {
1
+ const a = {
2
2
  translationsPath: "window.trans.en",
3
- migrationDate: 1759696858,
4
3
  emailHeader: {
5
4
  senderName: "",
6
5
  subject: ""
@@ -8,24 +7,18 @@ const e = {
8
7
  extensions: {
9
8
  unsubscribe: !0
10
9
  },
11
- blocks: {
12
- excludeDefaults: [],
13
- includeCustoms: []
14
- },
15
10
  features: {
16
11
  dynamicContent: !0,
17
12
  saveAsTemplate: !0,
18
- versionHistory: !0,
19
- testMessage: !0
13
+ versionHistory: !0
20
14
  },
21
15
  useHeader: !0
22
16
  }, t = {
23
17
  promotional: 1,
24
18
  transactional: 2
25
- }, a = "email", o = "Guido User", s = t.promotional, n = 2, i = {
19
+ }, e = "email", o = "Guido User", n = t.promotional, s = 2, i = {
26
20
  email: 60,
27
- architect: 49,
28
- unsubscribePages: 97
21
+ architect: 49
29
22
  }, u = [
30
23
  "alfredtesting",
31
24
  "electio",
@@ -59,11 +52,11 @@ const e = {
59
52
  "stripoeditorlivetest"
60
53
  ];
61
54
  export {
62
- e as DefaultGuidoConfig,
63
- s as DefaultMessageType,
64
- a as DefaultProductType,
55
+ a as DefaultGuidoConfig,
56
+ n as DefaultMessageType,
57
+ e as DefaultProductType,
65
58
  o as DefaultUsername,
66
- n as EditorType,
59
+ s as EditorType,
67
60
  i as ProductIds,
68
61
  u as TEST_PARTNER_LIST,
69
62
  t as TemplateTypes
@@ -12,8 +12,8 @@ const s = {
12
12
  { id: 61, key: "mostPopular", name: "Most Popular Items", path: "most-popular" },
13
13
  { id: 62, key: "mostPurchased", name: "Top Sellers", path: "top-sellers" }
14
14
  ], u = ["discount", "omnibus_price", "omnibus_discount", "price", "original_price"], l = [
15
- { text: "before the amount", value: "0" },
16
- { text: "after the amount", value: "1" }
15
+ { text: "after the amount", value: "1" },
16
+ { text: "before the amount", value: "0" }
17
17
  ], c = [
18
18
  { text: "dot(.)", value: "." },
19
19
  { text: "comma(,)", value: "," }
@@ -0,0 +1 @@
1
+ export declare const SERVICE_HOVER_SELECTORS: string[];
@@ -2,8 +2,7 @@ const e = [
2
2
  ".service-element.stacked-panel-item.ng-tns-c1014751574-3.level-bottom-0.ng-star-inserted",
3
3
  ".service-element.stacked-panel-item.ng-tns-c1014751574-3.level-bottom-1.ng-star-inserted",
4
4
  ".service-element.stacked-panel-item.ng-tns-c1014751574-3.level-bottom-2.ng-star-inserted"
5
- ], t = "https://academy.useinsider.com/docs/email-drag-drop-editor";
5
+ ];
6
6
  export {
7
- t as ACADEMY_LINK,
8
7
  e as SERVICE_HOVER_SELECTORS
9
8
  };
@@ -8,5 +8,4 @@ export declare class CheckboxBlock extends Block {
8
8
  getName(): string;
9
9
  getDescription(): string;
10
10
  getTemplate(): string;
11
- allowInnerBlocksDND(): boolean;
12
11
  }
@@ -1,7 +1,7 @@
1
1
  import { Block as e, BlockCompositionType as t } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
2
  import { getDefaultTemplate as o } from "./template.js";
3
3
  const r = "checkbox-block";
4
- class s extends e {
4
+ class p extends e {
5
5
  constructor() {
6
6
  super();
7
7
  }
@@ -23,11 +23,8 @@ class s extends e {
23
23
  getTemplate() {
24
24
  return o();
25
25
  }
26
- allowInnerBlocksDND() {
27
- return !1;
28
- }
29
26
  }
30
27
  export {
31
28
  r as CHECKBOX_BLOCK_ID,
32
- s as CheckboxBlock
29
+ p as CheckboxBlock
33
30
  };
@@ -3,7 +3,7 @@ import { CheckboxBlock as t } from "./block.js";
3
3
  import { CheckboxControl as e } from "./control.js";
4
4
  import { CheckboxIconsRegistry as r } from "./iconsRegistry.js";
5
5
  import { CheckboxBlockSettings as i } from "./settingsPanel.js";
6
- const d = new o().addBlock(t).withSettingsPanelRegistry(i).addControl(e).withIconsRegistry(r).build();
6
+ const k = new o().addBlock(t).withSettingsPanelRegistry(i).addControl(e).withIconsRegistry(r).build();
7
7
  export {
8
- d as default
8
+ k as default
9
9
  };
@@ -2,7 +2,7 @@ import { ExtensionBuilder as o } from "../../../node_modules/@stripoinc/ui-edito
2
2
  import { CouponBlock as t } from "./block.js";
3
3
  import { CouponIconsRegistry as i } from "./iconsRegistry.js";
4
4
  import { CouponBlockSettings as n } from "./settingsPanel.js";
5
- const p = new o().addBlock(t).withSettingsPanelRegistry(n).withIconsRegistry(i).build();
5
+ const m = new o().addBlock(t).withSettingsPanelRegistry(n).withIconsRegistry(i).build();
6
6
  export {
7
- p as default
7
+ m as default
8
8
  };
@@ -8,5 +8,4 @@ export declare class RadioButtonCustomBlock extends Block {
8
8
  getName(): string;
9
9
  getDescription(): string;
10
10
  getTemplate(): string;
11
- allowInnerBlocksDND(): boolean;
12
11
  }
@@ -1,7 +1,7 @@
1
1
  import { Block as t, BlockCompositionType as o } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
2
  import { getDefaultTemplate as e } from "./template.js";
3
3
  const r = "radio-button-block";
4
- class l extends t {
4
+ class c extends t {
5
5
  constructor() {
6
6
  super();
7
7
  }
@@ -23,11 +23,8 @@ class l extends t {
23
23
  getTemplate() {
24
24
  return e();
25
25
  }
26
- allowInnerBlocksDND() {
27
- return !1;
28
- }
29
26
  }
30
27
  export {
31
28
  r as BLOCK_ID,
32
- l as RadioButtonCustomBlock
29
+ c as RadioButtonCustomBlock
33
30
  };
@@ -1,7 +1,6 @@
1
1
  import { Block, BlockCompositionType } from '@stripoinc/ui-editor-extensions';
2
2
  export declare const BLOCK_ID = "recommendation-block";
3
3
  export declare class RecommendationBlock extends Block {
4
- constructor();
5
4
  getId(): string;
6
5
  getIcon(): string;
7
6
  getBlockCompositionType(): BlockCompositionType;
@@ -1,10 +1,7 @@
1
1
  import { Block as e, BlockCompositionType as t } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { getDefaultTemplate as o } from "./templates/blockTemplate.js";
2
+ import { getDefaultTemplate as o } from "./template.js";
3
3
  const n = "recommendation-block";
4
- class m extends e {
5
- constructor() {
6
- super();
7
- }
4
+ class c extends e {
8
5
  getId() {
9
6
  return n;
10
7
  }
@@ -26,5 +23,5 @@ class m extends e {
26
23
  }
27
24
  export {
28
25
  n as BLOCK_ID,
29
- m as RecommendationBlock
26
+ c as RecommendationBlock
30
27
  };
@@ -21,12 +21,6 @@ export declare class RecommendationBlockControl extends CommonControl {
21
21
  _onFilterChange(value: boolean): void;
22
22
  _onFilterSelectClick(): void;
23
23
  _onDataChange(item: string, value: string | number | string[]): void;
24
- /**
25
- * Get the current card composition from block data attribute or use default
26
- */
27
- _getCardComposition(): string[];
28
- _regenerateProductRows(): void;
29
- _debouncedRegenerateProductRows: import("@vueuse/shared").PromisifyFn<() => void>;
30
24
  _onCurrencyConfigChange(item: string, value: string | number): void;
31
25
  _onCurrencyChange(value: string): void;
32
26
  _setProductIdsVisibility(): void;