@capillarytech/creatives-library 8.0.263 → 8.0.265

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 (280) hide show
  1. package/assets/Android.png +0 -0
  2. package/assets/iOS.png +0 -0
  3. package/constants/unified.js +1 -3
  4. package/initialReducer.js +0 -2
  5. package/package.json +1 -1
  6. package/services/api.js +0 -15
  7. package/services/tests/api.test.js +0 -34
  8. package/tests/integration/TemplateCreation/TemplateCreation.integration.test.js +35 -17
  9. package/tests/integration/TemplateCreation/api-response.js +1 -31
  10. package/tests/integration/TemplateCreation/msw-handler.js +0 -2
  11. package/utils/common.js +0 -11
  12. package/utils/commonUtils.js +5 -28
  13. package/utils/tests/commonUtil.test.js +0 -224
  14. package/utils/tests/transformerUtils.test.js +0 -297
  15. package/utils/transformTemplateConfig.js +10 -0
  16. package/utils/transformerUtils.js +0 -40
  17. package/v2Components/CapDeviceContent/index.js +56 -61
  18. package/v2Components/CapImageUpload/constants.js +0 -2
  19. package/v2Components/CapImageUpload/index.js +16 -65
  20. package/v2Components/CapImageUpload/index.scss +1 -4
  21. package/v2Components/CapImageUpload/messages.js +1 -5
  22. package/v2Components/CapTagList/index.js +1 -6
  23. package/v2Components/CapTagListWithInput/index.js +1 -5
  24. package/v2Components/CapTagListWithInput/messages.js +1 -1
  25. package/v2Components/CapWhatsappCTA/tests/index.test.js +0 -5
  26. package/v2Components/ErrorInfoNote/index.js +72 -402
  27. package/v2Components/ErrorInfoNote/messages.js +6 -32
  28. package/v2Components/ErrorInfoNote/style.scss +6 -278
  29. package/v2Components/FormBuilder/tests/index.test.js +4 -13
  30. package/v2Components/HtmlEditor/HTMLEditor.js +99 -418
  31. package/v2Components/HtmlEditor/__tests__/HTMLEditor.test.js +133 -1882
  32. package/v2Components/HtmlEditor/__tests__/index.lazy.test.js +16 -27
  33. package/v2Components/HtmlEditor/_htmlEditor.scss +45 -108
  34. package/v2Components/HtmlEditor/_index.lazy.scss +1 -0
  35. package/v2Components/HtmlEditor/components/CodeEditorPane/_codeEditorPane.scss +102 -23
  36. package/v2Components/HtmlEditor/components/CodeEditorPane/index.js +140 -148
  37. package/v2Components/HtmlEditor/components/DeviceToggle/_deviceToggle.scss +1 -2
  38. package/v2Components/HtmlEditor/components/DeviceToggle/index.js +3 -3
  39. package/v2Components/HtmlEditor/components/EditorToolbar/_editorToolbar.scss +1 -9
  40. package/v2Components/HtmlEditor/components/EditorToolbar/index.js +6 -31
  41. package/v2Components/HtmlEditor/components/FullscreenModal/_fullscreenModal.scss +0 -22
  42. package/v2Components/HtmlEditor/components/InAppPreviewPane/DeviceFrame.js +7 -4
  43. package/v2Components/HtmlEditor/components/InAppPreviewPane/__tests__/DeviceFrame.test.js +45 -35
  44. package/v2Components/HtmlEditor/components/InAppPreviewPane/_inAppPreviewPane.scss +3 -1
  45. package/v2Components/HtmlEditor/components/InAppPreviewPane/constants.js +33 -33
  46. package/v2Components/HtmlEditor/components/InAppPreviewPane/index.js +6 -7
  47. package/v2Components/HtmlEditor/components/PreviewPane/_previewPane.scss +10 -7
  48. package/v2Components/HtmlEditor/components/PreviewPane/index.js +43 -22
  49. package/v2Components/HtmlEditor/components/SplitContainer/_splitContainer.scss +1 -1
  50. package/v2Components/HtmlEditor/components/ValidationErrorDisplay/__tests__/index.test.js +152 -0
  51. package/v2Components/HtmlEditor/components/ValidationErrorDisplay/_validationErrorDisplay.scss +0 -18
  52. package/v2Components/HtmlEditor/components/ValidationErrorDisplay/index.js +31 -36
  53. package/v2Components/HtmlEditor/components/ValidationPanel/_validationPanel.scss +34 -46
  54. package/v2Components/HtmlEditor/components/ValidationPanel/index.js +46 -52
  55. package/v2Components/HtmlEditor/constants.js +20 -45
  56. package/v2Components/HtmlEditor/hooks/__tests__/useInAppContent.test.js +16 -373
  57. package/v2Components/HtmlEditor/hooks/__tests__/useValidation.test.js +16 -351
  58. package/v2Components/HtmlEditor/hooks/useEditorContent.js +2 -5
  59. package/v2Components/HtmlEditor/hooks/useInAppContent.js +146 -88
  60. package/v2Components/HtmlEditor/hooks/useValidation.js +56 -213
  61. package/v2Components/HtmlEditor/index.js +1 -1
  62. package/v2Components/HtmlEditor/messages.js +94 -102
  63. package/v2Components/HtmlEditor/utils/__tests__/htmlValidator.enhanced.test.js +45 -214
  64. package/v2Components/HtmlEditor/utils/__tests__/validationAdapter.test.js +0 -134
  65. package/v2Components/HtmlEditor/utils/contentSanitizer.js +41 -40
  66. package/v2Components/HtmlEditor/utils/htmlValidator.js +72 -71
  67. package/v2Components/HtmlEditor/utils/liquidTemplateSupport.js +124 -158
  68. package/v2Components/HtmlEditor/utils/properSyntaxHighlighting.js +25 -23
  69. package/v2Components/HtmlEditor/utils/validationAdapter.js +41 -66
  70. package/v2Components/MobilePushPreviewV2/index.js +7 -33
  71. package/v2Components/TemplatePreview/_templatePreview.scss +24 -55
  72. package/v2Components/TemplatePreview/index.js +32 -47
  73. package/v2Components/TemplatePreview/messages.js +0 -4
  74. package/v2Components/TestAndPreviewSlidebox/_testAndPreviewSlidebox.scss +0 -1
  75. package/v2Containers/App/constants.js +0 -5
  76. package/v2Containers/BeeEditor/index.js +90 -172
  77. package/v2Containers/CreativesContainer/SlideBoxContent.js +53 -184
  78. package/v2Containers/CreativesContainer/SlideBoxFooter.js +13 -163
  79. package/v2Containers/CreativesContainer/SlideBoxHeader.js +1 -3
  80. package/v2Containers/CreativesContainer/constants.js +0 -4
  81. package/v2Containers/CreativesContainer/index.js +46 -408
  82. package/v2Containers/CreativesContainer/messages.js +0 -12
  83. package/v2Containers/CreativesContainer/tests/SlideBoxContent.test.js +0 -210
  84. package/v2Containers/CreativesContainer/tests/SlideBoxFooter.test.js +2 -11
  85. package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxContent.test.js.snap +50 -342
  86. package/v2Containers/CreativesContainer/tests/__snapshots__/index.test.js.snap +0 -103
  87. package/v2Containers/Email/actions.js +0 -7
  88. package/v2Containers/Email/constants.js +1 -5
  89. package/v2Containers/Email/index.js +36 -237
  90. package/v2Containers/Email/messages.js +0 -32
  91. package/v2Containers/Email/reducer.js +1 -12
  92. package/v2Containers/Email/sagas.js +7 -61
  93. package/v2Containers/Email/tests/__snapshots__/reducer.test.js.snap +0 -2
  94. package/v2Containers/Email/tests/reducer.test.js +0 -46
  95. package/v2Containers/Email/tests/sagas.test.js +29 -320
  96. package/v2Containers/EmailWrapper/components/EmailWrapperView.js +21 -211
  97. package/v2Containers/EmailWrapper/components/HTMLEditorTesting.js +74 -40
  98. package/v2Containers/EmailWrapper/components/__tests__/HTMLEditorTesting.test.js +67 -2
  99. package/v2Containers/EmailWrapper/constants.js +0 -2
  100. package/v2Containers/EmailWrapper/hooks/useEmailWrapper.js +77 -629
  101. package/v2Containers/EmailWrapper/index.js +23 -103
  102. package/v2Containers/EmailWrapper/messages.js +1 -65
  103. package/v2Containers/EmailWrapper/tests/EmailWrapperView.test.js +214 -0
  104. package/v2Containers/EmailWrapper/tests/useEmailWrapper.test.js +77 -594
  105. package/v2Containers/InApp/actions.js +0 -7
  106. package/v2Containers/InApp/constants.js +4 -20
  107. package/v2Containers/InApp/index.js +359 -802
  108. package/v2Containers/InApp/index.scss +3 -4
  109. package/v2Containers/InApp/messages.js +3 -7
  110. package/v2Containers/InApp/reducer.js +3 -21
  111. package/v2Containers/InApp/sagas.js +9 -29
  112. package/v2Containers/InApp/selectors.js +5 -25
  113. package/v2Containers/InApp/tests/index.test.js +50 -154
  114. package/v2Containers/InApp/tests/reducer.test.js +0 -34
  115. package/v2Containers/InApp/tests/sagas.test.js +9 -61
  116. package/v2Containers/Line/Container/ImageCarousel/tests/__snapshots__/content.test.js.snap +0 -3
  117. package/v2Containers/Line/Container/ImageCarousel/tests/__snapshots__/index.test.js.snap +0 -2
  118. package/v2Containers/Line/Container/Wrapper/tests/__snapshots__/index.test.js.snap +0 -2
  119. package/v2Containers/Line/Container/tests/__snapshots__/index.test.js.snap +0 -9
  120. package/v2Containers/Rcs/tests/__snapshots__/index.test.js.snap +0 -12
  121. package/v2Containers/SmsTrai/Edit/tests/__snapshots__/index.test.js.snap +0 -4
  122. package/v2Containers/TagList/index.js +19 -62
  123. package/v2Containers/Templates/ChannelTypeIllustration.js +1 -13
  124. package/v2Containers/Templates/_templates.scss +1 -265
  125. package/v2Containers/Templates/actions.js +1 -2
  126. package/v2Containers/Templates/constants.js +0 -1
  127. package/v2Containers/Templates/index.js +38 -363
  128. package/v2Containers/Templates/messages.js +0 -28
  129. package/v2Containers/Templates/reducer.js +0 -2
  130. package/v2Containers/Templates/tests/index.test.js +0 -10
  131. package/v2Containers/TemplatesV2/TemplatesV2.style.js +2 -4
  132. package/v2Containers/TemplatesV2/index.js +7 -15
  133. package/v2Containers/TemplatesV2/messages.js +0 -4
  134. package/v2Containers/Whatsapp/tests/__snapshots__/index.test.js.snap +0 -34
  135. package/utils/imageUrlUpload.js +0 -141
  136. package/v2Components/CapImageUrlUpload/constants.js +0 -26
  137. package/v2Components/CapImageUrlUpload/index.js +0 -365
  138. package/v2Components/CapImageUrlUpload/index.scss +0 -35
  139. package/v2Components/CapImageUrlUpload/messages.js +0 -47
  140. package/v2Components/ErrorInfoNote/constants.js +0 -1
  141. package/v2Components/HtmlEditor/__tests__/HTMLEditor.apiErrors.test.js +0 -870
  142. package/v2Components/HtmlEditor/components/ValidationPanel/constants.js +0 -6
  143. package/v2Components/HtmlEditor/components/ValidationTabs/_validationTabs.scss +0 -281
  144. package/v2Components/HtmlEditor/components/ValidationTabs/index.js +0 -295
  145. package/v2Components/HtmlEditor/components/ValidationTabs/messages.js +0 -51
  146. package/v2Components/HtmlEditor/utils/validationConstants.js +0 -38
  147. package/v2Components/MobilePushPreviewV2/constants.js +0 -6
  148. package/v2Containers/BeePopupEditor/_beePopupEditor.scss +0 -14
  149. package/v2Containers/BeePopupEditor/constants.js +0 -10
  150. package/v2Containers/BeePopupEditor/index.js +0 -194
  151. package/v2Containers/BeePopupEditor/tests/index.test.js +0 -627
  152. package/v2Containers/EmailWrapper/components/EmailHTMLEditor.js +0 -1246
  153. package/v2Containers/EmailWrapper/components/__tests__/EmailHTMLEditor.test.js +0 -2472
  154. package/v2Containers/EmailWrapper/components/__tests__/EmailWrapperView.test.js +0 -520
  155. package/v2Containers/EmailWrapper/tests/useEmailWrapper.edgeCases.test.js +0 -956
  156. package/v2Containers/InApp/__tests__/InAppHTMLEditor.test.js +0 -376
  157. package/v2Containers/InApp/__tests__/sagas.test.js +0 -363
  158. package/v2Containers/InApp/tests/selectors.test.js +0 -612
  159. package/v2Containers/InAppWrapper/components/InAppWrapperView.js +0 -151
  160. package/v2Containers/InAppWrapper/components/__tests__/InAppWrapperView.test.js +0 -267
  161. package/v2Containers/InAppWrapper/components/inAppWrapperView.scss +0 -23
  162. package/v2Containers/InAppWrapper/constants.js +0 -16
  163. package/v2Containers/InAppWrapper/hooks/__tests__/useInAppWrapper.test.js +0 -473
  164. package/v2Containers/InAppWrapper/hooks/useInAppWrapper.js +0 -198
  165. package/v2Containers/InAppWrapper/index.js +0 -148
  166. package/v2Containers/InAppWrapper/messages.js +0 -49
  167. package/v2Containers/InappAdvance/index.js +0 -1099
  168. package/v2Containers/InappAdvance/index.scss +0 -10
  169. package/v2Containers/InappAdvance/tests/index.test.js +0 -448
  170. package/v2Containers/WebPush/Create/components/BrandIconSection.js +0 -108
  171. package/v2Containers/WebPush/Create/components/ButtonForm.js +0 -172
  172. package/v2Containers/WebPush/Create/components/ButtonItem.js +0 -101
  173. package/v2Containers/WebPush/Create/components/ButtonList.js +0 -145
  174. package/v2Containers/WebPush/Create/components/ButtonsLinksSection.js +0 -164
  175. package/v2Containers/WebPush/Create/components/ButtonsLinksSection.test.js +0 -463
  176. package/v2Containers/WebPush/Create/components/FormActions.js +0 -54
  177. package/v2Containers/WebPush/Create/components/FormActions.test.js +0 -163
  178. package/v2Containers/WebPush/Create/components/MediaSection.js +0 -142
  179. package/v2Containers/WebPush/Create/components/MediaSection.test.js +0 -341
  180. package/v2Containers/WebPush/Create/components/MessageSection.js +0 -103
  181. package/v2Containers/WebPush/Create/components/MessageSection.test.js +0 -268
  182. package/v2Containers/WebPush/Create/components/NotificationTitleSection.js +0 -87
  183. package/v2Containers/WebPush/Create/components/NotificationTitleSection.test.js +0 -210
  184. package/v2Containers/WebPush/Create/components/TemplateNameSection.js +0 -54
  185. package/v2Containers/WebPush/Create/components/TemplateNameSection.test.js +0 -143
  186. package/v2Containers/WebPush/Create/components/__snapshots__/ButtonsLinksSection.test.js.snap +0 -86
  187. package/v2Containers/WebPush/Create/components/__snapshots__/FormActions.test.js.snap +0 -16
  188. package/v2Containers/WebPush/Create/components/__snapshots__/MediaSection.test.js.snap +0 -41
  189. package/v2Containers/WebPush/Create/components/__snapshots__/MessageSection.test.js.snap +0 -54
  190. package/v2Containers/WebPush/Create/components/__snapshots__/NotificationTitleSection.test.js.snap +0 -37
  191. package/v2Containers/WebPush/Create/components/__snapshots__/TemplateNameSection.test.js.snap +0 -21
  192. package/v2Containers/WebPush/Create/components/_buttons.scss +0 -246
  193. package/v2Containers/WebPush/Create/components/tests/ButtonForm.test.js +0 -554
  194. package/v2Containers/WebPush/Create/components/tests/ButtonItem.test.js +0 -607
  195. package/v2Containers/WebPush/Create/components/tests/ButtonList.test.js +0 -633
  196. package/v2Containers/WebPush/Create/components/tests/__snapshots__/ButtonForm.test.js.snap +0 -666
  197. package/v2Containers/WebPush/Create/components/tests/__snapshots__/ButtonItem.test.js.snap +0 -74
  198. package/v2Containers/WebPush/Create/components/tests/__snapshots__/ButtonList.test.js.snap +0 -78
  199. package/v2Containers/WebPush/Create/hooks/useButtonManagement.js +0 -138
  200. package/v2Containers/WebPush/Create/hooks/useButtonManagement.test.js +0 -406
  201. package/v2Containers/WebPush/Create/hooks/useCharacterCount.js +0 -30
  202. package/v2Containers/WebPush/Create/hooks/useCharacterCount.test.js +0 -151
  203. package/v2Containers/WebPush/Create/hooks/useImageUpload.js +0 -104
  204. package/v2Containers/WebPush/Create/hooks/useImageUpload.test.js +0 -538
  205. package/v2Containers/WebPush/Create/hooks/useTagManagement.js +0 -122
  206. package/v2Containers/WebPush/Create/hooks/useTagManagement.test.js +0 -633
  207. package/v2Containers/WebPush/Create/index.js +0 -1148
  208. package/v2Containers/WebPush/Create/index.scss +0 -134
  209. package/v2Containers/WebPush/Create/messages.js +0 -211
  210. package/v2Containers/WebPush/Create/preview/DevicePreviewContent.js +0 -228
  211. package/v2Containers/WebPush/Create/preview/NotificationContainer.js +0 -294
  212. package/v2Containers/WebPush/Create/preview/PreviewContent.js +0 -90
  213. package/v2Containers/WebPush/Create/preview/PreviewControls.js +0 -305
  214. package/v2Containers/WebPush/Create/preview/PreviewDisclaimer.js +0 -25
  215. package/v2Containers/WebPush/Create/preview/WebPushPreview.js +0 -155
  216. package/v2Containers/WebPush/Create/preview/assets/Light.svg +0 -53
  217. package/v2Containers/WebPush/Create/preview/assets/Top.svg +0 -5
  218. package/v2Containers/WebPush/Create/preview/assets/android-arrow-down.svg +0 -9
  219. package/v2Containers/WebPush/Create/preview/assets/android-arrow-up.svg +0 -9
  220. package/v2Containers/WebPush/Create/preview/assets/chrome-icon.png +0 -0
  221. package/v2Containers/WebPush/Create/preview/assets/edge-icon.png +0 -0
  222. package/v2Containers/WebPush/Create/preview/assets/firefox-icon.svg +0 -106
  223. package/v2Containers/WebPush/Create/preview/assets/iOS.svg +0 -26
  224. package/v2Containers/WebPush/Create/preview/assets/macos-arrow-down-icon.svg +0 -9
  225. package/v2Containers/WebPush/Create/preview/assets/macos-triple-dot-icon.svg +0 -9
  226. package/v2Containers/WebPush/Create/preview/assets/opera-icon.svg +0 -18
  227. package/v2Containers/WebPush/Create/preview/assets/safari-icon.svg +0 -29
  228. package/v2Containers/WebPush/Create/preview/assets/windows-close-icon.svg +0 -9
  229. package/v2Containers/WebPush/Create/preview/assets/windows-triple-dot-icon.svg +0 -9
  230. package/v2Containers/WebPush/Create/preview/components/AndroidMobileChromeHeader.js +0 -51
  231. package/v2Containers/WebPush/Create/preview/components/AndroidMobileExpanded.js +0 -145
  232. package/v2Containers/WebPush/Create/preview/components/IOSHeader.js +0 -45
  233. package/v2Containers/WebPush/Create/preview/components/NotificationExpandedContent.js +0 -68
  234. package/v2Containers/WebPush/Create/preview/components/NotificationHeader.js +0 -61
  235. package/v2Containers/WebPush/Create/preview/components/WindowsChromeExpanded.js +0 -99
  236. package/v2Containers/WebPush/Create/preview/components/tests/AndroidMobileExpanded.test.js +0 -733
  237. package/v2Containers/WebPush/Create/preview/components/tests/WindowsChromeExpanded.test.js +0 -571
  238. package/v2Containers/WebPush/Create/preview/components/tests/__snapshots__/AndroidMobileExpanded.test.js.snap +0 -85
  239. package/v2Containers/WebPush/Create/preview/components/tests/__snapshots__/WindowsChromeExpanded.test.js.snap +0 -81
  240. package/v2Containers/WebPush/Create/preview/config/notificationMappings.js +0 -50
  241. package/v2Containers/WebPush/Create/preview/constants.js +0 -637
  242. package/v2Containers/WebPush/Create/preview/notification-container.scss +0 -79
  243. package/v2Containers/WebPush/Create/preview/preview.scss +0 -358
  244. package/v2Containers/WebPush/Create/preview/styles/_android-mobile-chrome.scss +0 -370
  245. package/v2Containers/WebPush/Create/preview/styles/_android-mobile-edge.scss +0 -12
  246. package/v2Containers/WebPush/Create/preview/styles/_android-mobile-firefox.scss +0 -12
  247. package/v2Containers/WebPush/Create/preview/styles/_android-mobile-opera.scss +0 -12
  248. package/v2Containers/WebPush/Create/preview/styles/_android-tablet-chrome.scss +0 -47
  249. package/v2Containers/WebPush/Create/preview/styles/_android-tablet-edge.scss +0 -11
  250. package/v2Containers/WebPush/Create/preview/styles/_android-tablet-firefox.scss +0 -11
  251. package/v2Containers/WebPush/Create/preview/styles/_android-tablet-opera.scss +0 -11
  252. package/v2Containers/WebPush/Create/preview/styles/_base.scss +0 -207
  253. package/v2Containers/WebPush/Create/preview/styles/_ios.scss +0 -153
  254. package/v2Containers/WebPush/Create/preview/styles/_ipados.scss +0 -107
  255. package/v2Containers/WebPush/Create/preview/styles/_macos-chrome.scss +0 -101
  256. package/v2Containers/WebPush/Create/preview/styles/_windows-chrome.scss +0 -229
  257. package/v2Containers/WebPush/Create/preview/tests/DevicePreviewContent.test.js +0 -909
  258. package/v2Containers/WebPush/Create/preview/tests/NotificationContainer.test.js +0 -1081
  259. package/v2Containers/WebPush/Create/preview/tests/PreviewControls.test.js +0 -723
  260. package/v2Containers/WebPush/Create/preview/tests/WebPushPreview.test.js +0 -1327
  261. package/v2Containers/WebPush/Create/preview/tests/__snapshots__/DevicePreviewContent.test.js.snap +0 -131
  262. package/v2Containers/WebPush/Create/preview/tests/__snapshots__/NotificationContainer.test.js.snap +0 -112
  263. package/v2Containers/WebPush/Create/preview/tests/__snapshots__/PreviewControls.test.js.snap +0 -144
  264. package/v2Containers/WebPush/Create/preview/tests/__snapshots__/WebPushPreview.test.js.snap +0 -129
  265. package/v2Containers/WebPush/Create/utils/payloadBuilder.js +0 -96
  266. package/v2Containers/WebPush/Create/utils/payloadBuilder.test.js +0 -396
  267. package/v2Containers/WebPush/Create/utils/previewUtils.js +0 -89
  268. package/v2Containers/WebPush/Create/utils/urlValidation.js +0 -115
  269. package/v2Containers/WebPush/Create/utils/urlValidation.test.js +0 -449
  270. package/v2Containers/WebPush/Create/utils/validation.js +0 -75
  271. package/v2Containers/WebPush/Create/utils/validation.test.js +0 -283
  272. package/v2Containers/WebPush/actions.js +0 -60
  273. package/v2Containers/WebPush/constants.js +0 -132
  274. package/v2Containers/WebPush/index.js +0 -2
  275. package/v2Containers/WebPush/reducer.js +0 -104
  276. package/v2Containers/WebPush/sagas.js +0 -119
  277. package/v2Containers/WebPush/selectors.js +0 -65
  278. package/v2Containers/WebPush/tests/reducer.test.js +0 -863
  279. package/v2Containers/WebPush/tests/sagas.test.js +0 -566
  280. package/v2Containers/WebPush/tests/selectors.test.js +0 -960
@@ -13,329 +13,321 @@ export default defineMessages({
13
13
  // Main component messages
14
14
  initializing: {
15
15
  id: `${scope}.initializing`,
16
- defaultMessage: 'Initializing HTML Editor...',
16
+ defaultMessage: 'Initializing HTML Editor...'
17
17
  },
18
18
 
19
19
  // Label insertion messages
20
20
  addLabel: {
21
21
  id: `${scope}.addLabel`,
22
- defaultMessage: 'Add label',
22
+ defaultMessage: 'Add label'
23
23
  },
24
24
  labelInserted: {
25
25
  id: `${scope}.labelInserted`,
26
- defaultMessage: 'Label inserted successfully',
26
+ defaultMessage: 'Label inserted successfully'
27
27
  },
28
28
  labelInsertedDescription: {
29
29
  id: `${scope}.labelInsertedDescription`,
30
- defaultMessage: 'The label "{label}" has been inserted at the cursor position',
30
+ defaultMessage: 'The label "{label}" has been inserted at the cursor position'
31
31
  },
32
32
  labelInsertError: {
33
33
  id: `${scope}.labelInsertError`,
34
- defaultMessage: 'Failed to insert label',
34
+ defaultMessage: 'Failed to insert label'
35
35
  },
36
36
  editorNotReady: {
37
37
  id: `${scope}.editorNotReady`,
38
- defaultMessage: 'Editor is not ready. Please try again.',
38
+ defaultMessage: 'Editor is not ready. Please try again.'
39
39
  },
40
40
  editorMethodNotAvailable: {
41
41
  id: `${scope}.editorMethodNotAvailable`,
42
- defaultMessage: 'Editor method not available. Please refresh and try again.',
42
+ defaultMessage: 'Editor method not available. Please refresh and try again.'
43
43
  },
44
44
 
45
45
  // Save messages
46
46
  contentSaved: {
47
47
  id: `${scope}.contentSaved`,
48
- defaultMessage: 'Content saved successfully',
48
+ defaultMessage: 'Content saved successfully'
49
49
  },
50
50
  saveError: {
51
51
  id: `${scope}.saveError`,
52
- defaultMessage: 'Failed to save content',
52
+ defaultMessage: 'Failed to save content'
53
53
  },
54
54
  autoSaveEnabled: {
55
55
  id: `${scope}.autoSaveEnabled`,
56
- defaultMessage: 'Auto-save is enabled',
56
+ defaultMessage: 'Auto-save is enabled'
57
57
  },
58
58
  autoSaveDisabled: {
59
59
  id: `${scope}.autoSaveDisabled`,
60
- defaultMessage: 'Auto-save is disabled',
60
+ defaultMessage: 'Auto-save is disabled'
61
61
  },
62
62
 
63
63
  // Editor toolbar messages
64
64
  htmlEditor: {
65
65
  id: `${scope}.htmlEditor`,
66
- defaultMessage: 'Email content',
66
+ defaultMessage: 'Email content'
67
67
  },
68
68
  desktop: {
69
69
  id: `${scope}.desktop`,
70
- defaultMessage: 'Desktop',
70
+ defaultMessage: 'Desktop'
71
71
  },
72
72
  mobile: {
73
73
  id: `${scope}.mobile`,
74
- defaultMessage: 'Mobile',
74
+ defaultMessage: 'Mobile'
75
75
  },
76
76
  mobileDevice: {
77
77
  id: `${scope}.mobileDevice`,
78
- defaultMessage: 'Mobile Device',
78
+ defaultMessage: 'Mobile Device'
79
79
  },
80
80
  htmlPreview: {
81
81
  id: `${scope}.htmlPreview`,
82
- defaultMessage: 'HTML Preview',
82
+ defaultMessage: 'HTML Preview'
83
+ },
84
+ startTypingHtml: {
85
+ id: `${scope}.startTypingHtml`,
86
+ defaultMessage: 'Start typing HTML to see the preview'
87
+ },
88
+ previewMode: {
89
+ id: `${scope}.previewMode`,
90
+ defaultMessage: 'Preview Mode'
83
91
  },
84
92
  fullscreen: {
85
93
  id: `${scope}.fullscreen`,
86
- defaultMessage: 'Fullscreen',
94
+ defaultMessage: 'Fullscreen'
87
95
  },
88
96
  enterFullscreen: {
89
97
  id: `${scope}.enterFullscreen`,
90
- defaultMessage: 'Enter Fullscreen',
98
+ defaultMessage: 'Enter Fullscreen'
91
99
  },
92
100
  exitFullscreen: {
93
101
  id: `${scope}.exitFullscreen`,
94
- defaultMessage: 'Exit Fullscreen',
102
+ defaultMessage: 'Exit Fullscreen'
95
103
  },
96
104
  save: {
97
105
  id: `${scope}.save`,
98
- defaultMessage: 'Save',
106
+ defaultMessage: 'Save'
99
107
  },
100
108
 
101
109
  // Editor tabs messages
102
110
  htmlTab: {
103
111
  id: `${scope}.htmlTab`,
104
- defaultMessage: 'HTML',
112
+ defaultMessage: 'HTML'
105
113
  },
106
114
  cssTab: {
107
115
  id: `${scope}.cssTab`,
108
- defaultMessage: 'CSS',
116
+ defaultMessage: 'CSS'
109
117
  },
110
118
  javascriptTab: {
111
119
  id: `${scope}.javascriptTab`,
112
- defaultMessage: 'JavaScript',
120
+ defaultMessage: 'JavaScript'
113
121
  },
114
122
 
115
123
  // Preview messages
116
124
  previewTitle: {
117
125
  id: `${scope}.previewTitle`,
118
- defaultMessage: 'Preview',
126
+ defaultMessage: 'Preview'
119
127
  },
120
128
  previewLoading: {
121
129
  id: `${scope}.previewLoading`,
122
- defaultMessage: 'Loading preview...',
130
+ defaultMessage: 'Loading preview...'
123
131
  },
124
132
  previewError: {
125
133
  id: `${scope}.previewError`,
126
- defaultMessage: 'Preview error',
134
+ defaultMessage: 'Preview error'
135
+ },
136
+ previewEmpty: {
137
+ id: `${scope}.previewEmpty`,
138
+ defaultMessage: 'Start typing HTML to see the preview'
127
139
  },
128
140
  refreshPreview: {
129
141
  id: `${scope}.refreshPreview`,
130
- defaultMessage: 'Refresh Preview',
142
+ defaultMessage: 'Refresh Preview'
131
143
  },
132
144
 
133
145
  // Mobile device preview messages
134
146
  android: {
135
147
  id: `${scope}.android`,
136
- defaultMessage: 'Android',
148
+ defaultMessage: 'Android'
137
149
  },
138
150
  ios: {
139
151
  id: `${scope}.ios`,
140
- defaultMessage: 'iOS',
152
+ defaultMessage: 'iOS'
141
153
  },
142
154
  devicePreview: {
143
155
  id: `${scope}.devicePreview`,
144
- defaultMessage: 'Device Preview',
156
+ defaultMessage: 'Device Preview'
145
157
  },
146
158
 
147
159
  // InApp variant messages
148
160
  inAppEditor: {
149
161
  id: `${scope}.inAppEditor`,
150
- defaultMessage: 'In-app content',
162
+ defaultMessage: 'In-app content'
151
163
  },
152
164
  keepContentSameForBoth: {
153
165
  id: `${scope}.keepContentSameForBoth`,
154
- defaultMessage: 'Keep content same for both',
166
+ defaultMessage: 'Keep content same for both'
155
167
  },
156
168
 
157
169
  // Validation messages
158
170
  validationErrors: {
159
171
  id: `${scope}.validationErrors`,
160
- defaultMessage: '{count} validation {count, plural, one {error} other {errors}}',
172
+ defaultMessage: '{count} validation {count, plural, one {error} other {errors}}'
161
173
  },
162
174
  validationWarnings: {
163
175
  id: `${scope}.validationWarnings`,
164
- defaultMessage: '{count} validation {count, plural, one {warning} other {warnings}}',
176
+ defaultMessage: '{count} validation {count, plural, one {warning} other {warnings}}'
165
177
  },
166
178
  noValidationIssues: {
167
179
  id: `${scope}.noValidationIssues`,
168
- defaultMessage: 'No validation issues',
180
+ defaultMessage: 'No validation issues'
169
181
  },
170
182
  showProblems: {
171
183
  id: `${scope}.showProblems`,
172
- defaultMessage: 'Show Problems',
184
+ defaultMessage: 'Show Problems'
173
185
  },
174
186
  hideProblems: {
175
187
  id: `${scope}.hideProblems`,
176
- defaultMessage: 'Hide Problems',
188
+ defaultMessage: 'Hide Problems'
177
189
  },
178
190
 
179
191
  // Error messages
180
192
  securityError: {
181
193
  id: `${scope}.securityError`,
182
- defaultMessage: 'Security Error',
194
+ defaultMessage: 'Security Error'
183
195
  },
184
196
  runtimeError: {
185
197
  id: `${scope}.runtimeError`,
186
- defaultMessage: 'Runtime Error',
198
+ defaultMessage: 'Runtime Error'
187
199
  },
188
200
  renderError: {
189
201
  id: `${scope}.renderError`,
190
- defaultMessage: 'Render Error',
202
+ defaultMessage: 'Render Error'
191
203
  },
192
204
  clearErrors: {
193
205
  id: `${scope}.clearErrors`,
194
- defaultMessage: 'Clear Errors',
206
+ defaultMessage: 'Clear Errors'
195
207
  },
196
208
  copyError: {
197
209
  id: `${scope}.copyError`,
198
- defaultMessage: 'Copy Error Details',
210
+ defaultMessage: 'Copy Error Details'
199
211
  },
200
212
  errorCopied: {
201
213
  id: `${scope}.errorCopied`,
202
- defaultMessage: 'Error details copied to clipboard',
203
- },
204
-
205
- // Placeholder messages
206
- editorPlaceholderEmail: {
207
- id: `${scope}.editorPlaceholderEmail`,
208
- defaultMessage: 'Write your HTML email code here...',
209
- },
210
- editorPlaceholderInapp: {
211
- id: `${scope}.editorPlaceholderInapp`,
212
- defaultMessage: 'Write your HTML inapp code here...',
214
+ defaultMessage: 'Error details copied to clipboard'
213
215
  },
214
216
 
215
217
  // Accessibility messages
216
218
  codeEditor: {
217
219
  id: `${scope}.codeEditor`,
218
- defaultMessage: 'Email Editor',
220
+ defaultMessage: 'Email Editor'
219
221
  },
220
222
  previewPanel: {
221
223
  id: `${scope}.previewPanel`,
222
- defaultMessage: 'Preview Panel',
224
+ defaultMessage: 'Preview Panel'
223
225
  },
224
226
  resizeHandle: {
225
227
  id: `${scope}.resizeHandle`,
226
- defaultMessage: 'Drag to resize panels',
228
+ defaultMessage: 'Drag to resize panels'
227
229
  },
228
230
  splitPanels: {
229
231
  id: `${scope}.splitPanels`,
230
- defaultMessage: 'Split panels - code editor and preview',
232
+ defaultMessage: 'Split panels - code editor and preview'
231
233
  },
232
234
 
233
235
  // Performance messages
234
236
  optimizing: {
235
237
  id: `${scope}.optimizing`,
236
- defaultMessage: 'Optimizing performance...',
238
+ defaultMessage: 'Optimizing performance...'
237
239
  },
238
240
  performanceWarning: {
239
241
  id: `${scope}.performanceWarning`,
240
- defaultMessage: 'Large content detected. Performance may be affected.',
242
+ defaultMessage: 'Large content detected. Performance may be affected.'
241
243
  },
242
244
 
243
245
  // Feature messages
244
246
  autoSave: {
245
247
  id: `${scope}.autoSave`,
246
- defaultMessage: 'Auto-save',
248
+ defaultMessage: 'Auto-save'
247
249
  },
248
250
  lastSaved: {
249
251
  id: `${scope}.lastSaved`,
250
- defaultMessage: 'Last saved: {time}',
252
+ defaultMessage: 'Last saved: {time}'
251
253
  },
252
254
  unsavedChanges: {
253
255
  id: `${scope}.unsavedChanges`,
254
- defaultMessage: 'You have unsaved changes',
256
+ defaultMessage: 'You have unsaved changes'
255
257
  },
256
258
 
257
259
  // Content Sanitizer messages
258
260
  sanitizer: {
259
261
  invalidInput: {
260
262
  id: `${scope}.sanitizer.invalidInput`,
261
- defaultMessage: 'Invalid input: HTML content must be a string',
263
+ defaultMessage: 'Invalid input: HTML content must be a string'
262
264
  },
263
265
  invalidInputNonEmpty: {
264
266
  id: `${scope}.sanitizer.invalidInputNonEmpty`,
265
- defaultMessage: 'Invalid input: HTML content must be a non-empty string',
267
+ defaultMessage: 'Invalid input: HTML content must be a non-empty string'
266
268
  },
267
269
  sanitizationFailed: {
268
270
  id: `${scope}.sanitizer.sanitizationFailed`,
269
- defaultMessage: 'Sanitization failed: {error}',
271
+ defaultMessage: 'Sanitization failed: {error}'
270
272
  },
271
273
  dangerousProtocolDetected: {
272
274
  id: `${scope}.sanitizer.dangerousProtocolDetected`,
273
- defaultMessage: 'Dangerous protocol detected',
275
+ defaultMessage: 'Dangerous protocol detected'
274
276
  },
275
277
 
276
278
  // Email compatibility warnings
277
279
  emailMultimediaNotSupported: {
278
280
  id: `${scope}.sanitizer.emailMultimediaNotSupported`,
279
- defaultMessage: 'Video/audio/canvas elements may not be supported in email clients',
281
+ defaultMessage: 'Video/audio/canvas elements may not be supported in email clients'
280
282
  },
281
283
  emailPositioningNotSupported: {
282
284
  id: `${scope}.sanitizer.emailPositioningNotSupported`,
283
- defaultMessage: 'Fixed/sticky positioning may not work in email clients',
285
+ defaultMessage: 'Fixed/sticky positioning may not work in email clients'
284
286
  },
285
287
  emailModernCssLimited: {
286
288
  id: `${scope}.sanitizer.emailModernCssLimited`,
287
- defaultMessage: 'CSS Grid and Flexbox have limited support in email clients',
289
+ defaultMessage: 'CSS Grid and Flexbox have limited support in email clients'
288
290
  },
289
291
  emailViewportUnitsNotSupported: {
290
292
  id: `${scope}.sanitizer.emailViewportUnitsNotSupported`,
291
- defaultMessage: 'Viewport units and rem may not be supported in all email clients',
293
+ defaultMessage: 'Viewport units and rem may not be supported in all email clients'
292
294
  },
293
295
 
294
296
  // Mobile optimization warnings
295
297
  mobileTablesNotFriendly: {
296
298
  id: `${scope}.sanitizer.mobileTablesNotFriendly`,
297
- defaultMessage: 'Tables may not be mobile-friendly - consider using flexbox or grid',
299
+ defaultMessage: 'Tables may not be mobile-friendly - consider using flexbox or grid'
298
300
  },
299
301
  mobileRelativeFontSizes: {
300
302
  id: `${scope}.sanitizer.mobileRelativeFontSizes`,
301
- defaultMessage: 'Consider using relative font sizes (em, rem, %) for better mobile scaling',
303
+ defaultMessage: 'Consider using relative font sizes (em, rem, %) for better mobile scaling'
302
304
  },
303
305
  mobileFixedWidthsProblematic: {
304
306
  id: `${scope}.sanitizer.mobileFixedWidthsProblematic`,
305
- defaultMessage: 'Large fixed widths may not work well on mobile devices',
307
+ defaultMessage: 'Large fixed widths may not work well on mobile devices'
306
308
  },
307
309
  mobileRelativeUnits: {
308
310
  id: `${scope}.sanitizer.mobileRelativeUnits`,
309
- defaultMessage: 'Consider using relative units (rem, em, %) for better mobile responsiveness',
311
+ defaultMessage: 'Consider using relative units (rem, em, %) for better mobile responsiveness'
310
312
  },
311
313
 
312
314
  // Production recommendations
313
315
  productionValidHtml: {
314
316
  id: `${scope}.sanitizer.productionValidHtml`,
315
- defaultMessage: 'Provide valid HTML content before deploying to production',
317
+ defaultMessage: 'Provide valid HTML content before deploying to production'
316
318
  },
317
319
  productionSanitized: {
318
320
  id: `${scope}.sanitizer.productionSanitized`,
319
- defaultMessage: 'Content has been sanitized for security - review changes before deploying',
321
+ defaultMessage: 'Content has been sanitized for security - review changes before deploying'
320
322
  },
321
323
  productionInlineCss: {
322
324
  id: `${scope}.sanitizer.productionInlineCss`,
323
- defaultMessage: 'Consider inlining CSS for better email client compatibility',
325
+ defaultMessage: 'Consider inlining CSS for better email client compatibility'
324
326
  },
325
327
  productionLargeContent: {
326
328
  id: `${scope}.sanitizer.productionLargeContent`,
327
- defaultMessage: 'Content is large ({size} characters) - consider optimizing for mobile performance',
328
- },
329
- },
330
-
331
- htmlEditorTooltip: {
332
- id: `${scope}.htmlEditorTooltip`,
333
- defaultMessage: 'This editor supports standard HTML for emails. Avoid CSS frameworks, external stylesheets, and scripts. {docLink}',
334
- },
335
-
336
- viewDocumentation: {
337
- id: `${scope}.viewDocumentation`,
338
- defaultMessage: 'View documentation',
329
+ defaultMessage: 'Content is large ({size} characters) - consider optimizing for mobile performance'
330
+ }
339
331
  },
340
332
 
341
333
  // HTML Validator messages
@@ -343,55 +335,55 @@ export default defineMessages({
343
335
  // General validation messages
344
336
  validationFailed: {
345
337
  id: `${scope}.validator.validationFailed`,
346
- defaultMessage: 'Validation failed: {error}',
338
+ defaultMessage: 'Validation failed: {error}'
347
339
  },
348
340
  liquidValidationFailed: {
349
341
  id: `${scope}.validator.liquidValidationFailed`,
350
- defaultMessage: 'Liquid validation failed',
342
+ defaultMessage: 'Liquid validation failed'
351
343
  },
352
344
 
353
345
  // Security validation messages
354
346
  unsafeProtocolDetected: {
355
347
  id: `${scope}.validator.unsafeProtocolDetected`,
356
- defaultMessage: 'Potentially unsafe protocol detected: {protocol}',
348
+ defaultMessage: 'Potentially unsafe protocol detected: {protocol}'
357
349
  },
358
350
  scriptTagsDetected: {
359
351
  id: `${scope}.validator.scriptTagsDetected`,
360
- defaultMessage: 'Script tags detected - may be filtered in production',
352
+ defaultMessage: 'Script tags detected - may be filtered in production'
361
353
  },
362
354
 
363
355
  // Email-specific validation messages
364
356
  outlookIncompatible: {
365
357
  id: `${scope}.validator.outlookIncompatible`,
366
- defaultMessage: 'Element may not be supported in Outlook: {element}',
358
+ defaultMessage: 'Element may not be supported in Outlook: {element}'
367
359
  },
368
360
  emailCssUnsupported: {
369
361
  id: `${scope}.validator.emailCssUnsupported`,
370
- defaultMessage: 'CSS feature may not be supported in email clients',
362
+ defaultMessage: 'CSS feature may not be supported in email clients'
371
363
  },
372
364
 
373
365
  // Mobile/InApp validation messages
374
366
  mobileIncompatible: {
375
367
  id: `${scope}.validator.mobileIncompatible`,
376
- defaultMessage: 'Element may not be supported on mobile: {element}',
368
+ defaultMessage: 'Element may not be supported on mobile: {element}'
377
369
  },
378
370
  largeImageDetected: {
379
371
  id: `${scope}.validator.largeImageDetected`,
380
- defaultMessage: 'Large image dimensions detected - consider mobile optimization',
372
+ defaultMessage: 'Large image dimensions detected - consider mobile optimization'
381
373
  },
382
374
 
383
375
  // CSS validation messages
384
376
  unclosedCssRule: {
385
377
  id: `${scope}.validator.unclosedCssRule`,
386
- defaultMessage: 'Unclosed CSS rule detected',
378
+ defaultMessage: 'Unclosed CSS rule detected'
387
379
  },
388
380
  emptyCssRule: {
389
381
  id: `${scope}.validator.emptyCssRule`,
390
- defaultMessage: 'Empty CSS rule detected',
382
+ defaultMessage: 'Empty CSS rule detected'
391
383
  },
392
384
  cssValidationFailed: {
393
385
  id: `${scope}.validator.cssValidationFailed`,
394
- defaultMessage: 'CSS validation failed: {error}',
395
- },
396
- },
386
+ defaultMessage: 'CSS validation failed: {error}'
387
+ }
388
+ }
397
389
  });