@designcrowd/library.brand-page 6.1.18-style-v2-11 → 6.2.0

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 (288) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-Ky0WCRVD.js → CreatedOnBrandCrowd-de-de-VQCQvlMg.js} +1 -1
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-DBW452t1.js → CreatedOnBrandCrowd-en-us-DSf3BjCG.js} +1 -1
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-DcrvToai.js → CreatedOnBrandCrowd-es-es-DGcdM9Ec.js} +1 -1
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-7QxBGZxX.js → CreatedOnBrandCrowd-fr-ca-C9g1fc39.js} +1 -1
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-7QxBGZxX.js → CreatedOnBrandCrowd-fr-fr-C9g1fc39.js} +1 -1
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-Bd_WwjTS.js → CreatedOnBrandCrowd-pt-br-DSXr7Bxl.js} +1 -1
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-Bd_WwjTS.js → CreatedOnBrandCrowd-pt-pt-DSXr7Bxl.js} +1 -1
  8. package/lib/src/{CreatedOnDcom-de-de-CqiMKJd-.js → CreatedOnDcom-de-de-BPdCL6wS.js} +1 -1
  9. package/lib/src/{CreatedOnDcom-en-us-DExbUa7d.js → CreatedOnDcom-en-us-CLkSTQRu.js} +1 -1
  10. package/lib/src/{CreatedOnDcom-es-es-DakflTOK.js → CreatedOnDcom-es-es-CRknMAGv.js} +1 -1
  11. package/lib/src/{CreatedOnDcom-fr-ca-CVIMIRrP.js → CreatedOnDcom-fr-ca-ClAY_dHI.js} +1 -1
  12. package/lib/src/{CreatedOnDcom-fr-fr-0hCQCkgT.js → CreatedOnDcom-fr-fr-DQtv9rR-.js} +1 -1
  13. package/lib/src/{CreatedOnDcom-pt-br-DOjKppRa.js → CreatedOnDcom-pt-br-BbIxvmxv.js} +1 -1
  14. package/lib/src/{CreatedOnDcom-pt-pt-AHZjw-V5.js → CreatedOnDcom-pt-pt-BOfOesBj.js} +1 -1
  15. package/lib/src/brand-page/components/page/Page.mixin.d.ts +1 -4
  16. package/lib/src/brand-page/components/page/Page.mixin.js +9 -26
  17. package/lib/src/brand-page/components/social-links/SocialLinks.stories.js +3 -0
  18. package/lib/src/brand-page/components/testimonial-section/__fixtures__/data.js +3 -0
  19. package/lib/src/brand-page/components/text/Text.stories.js +17 -0
  20. package/lib/src/brand-page/constants/font.constants.d.ts +0 -62
  21. package/lib/src/brand-page/constants/font.constants.js +0 -35
  22. package/lib/src/brand-page/models/index.d.ts +20 -20
  23. package/lib/src/brand-page/models/logo.model.js +1 -1
  24. package/lib/src/brand-page/models/payment.model.d.ts +6 -8
  25. package/lib/src/brand-page/models/styles.model.d.ts +1 -45
  26. package/lib/src/brand-page/models/styles.model.js +22 -106
  27. package/lib/src/brand-page/utils/color-palette-referencify.util.d.ts +1 -1
  28. package/lib/src/brand-page/utils/color-palette-referencify.util.js +1 -1
  29. package/lib/src/brand-page/utils/color-palette.util.d.ts +23 -43
  30. package/lib/src/brand-page/utils/color-palette.util.js +27 -62
  31. package/lib/src/brand-page/utils/color.util.d.ts +9 -12
  32. package/lib/src/brand-page/utils/color.util.js +15 -49
  33. package/lib/src/brand-page/utils/container-text-color.util.d.ts +13 -34
  34. package/lib/src/brand-page/utils/container-text-color.util.js +40 -243
  35. package/lib/src/brand-page/utils/index.d.ts +0 -1
  36. package/lib/src/brand-page/utils/index.js +0 -1
  37. package/lib/src/brand-page/utils/migration/migration-20.js +1 -4
  38. package/lib/src/brand-page/utils/migration/migration-21.js +6 -18
  39. package/lib/src/brand-page/utils/migration.util.js +0 -16
  40. package/lib/src/brand-page/utils/personalisation.util.js +1 -9
  41. package/lib/src/brand-page/utils/text-style.util.d.ts +22 -61
  42. package/lib/src/brand-page/utils/text-style.util.js +22 -104
  43. package/lib/src/brand-page/utils/view-model.util.js +19 -24
  44. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +0 -1
  45. package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.js +10 -0
  46. package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/content-settings-items.fixture.js +1 -0
  47. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +135 -7
  48. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.js +28 -0
  49. package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.d.ts +1 -1
  50. package/lib/src/brand-page-maker/composables/rich-text-editor/font.d.ts +1 -2
  51. package/lib/src/brand-page-maker/composables/rich-text-editor/font.js +6 -25
  52. package/lib/src/brand-page-maker/composables/rich-text-editor/formatting.d.ts +3 -17
  53. package/lib/src/brand-page-maker/composables/rich-text-editor/formatting.js +14 -108
  54. package/lib/src/brand-page-maker/composables/rich-text-editor/getRteExtensions.d.ts +15 -10
  55. package/lib/src/brand-page-maker/composables/rich-text-editor/getRteExtensions.js +1 -46
  56. package/lib/src/brand-page-maker/composables/rich-text-editor/spacing.d.ts +1 -2
  57. package/lib/src/brand-page-maker/composables/rich-text-editor/spacing.js +6 -22
  58. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.d.ts +2 -7
  59. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +195 -214
  60. package/lib/src/brand-page-maker/default-getters/payment-text-and-border-color.default-getter.js +14 -7
  61. package/lib/src/brand-page-maker/default-getters/text-color.default-getter.js +13 -6
  62. package/lib/src/brand-page-maker/models/content-settings.js +75 -80
  63. package/lib/src/brand-page-maker/stores/ai-checkpoint/ai-checkpoint-store.d.ts +30 -906
  64. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +9 -2
  65. package/lib/src/brand-page-maker/stores/history/history-store.d.ts +1 -1
  66. package/lib/src/brand-page-maker/utils/index.d.ts +0 -1
  67. package/lib/src/brand-page-maker/utils/index.js +0 -1
  68. package/lib/src/brand-page-maker/utils/rich-text-editor.util.d.ts +7 -52
  69. package/lib/src/brand-page-maker/utils/rich-text-editor.util.js +264 -212
  70. package/lib/src/brand-page-maker/utils/rte-render.util.d.ts +2 -46
  71. package/lib/src/brand-page-maker/utils/rte-render.util.js +7 -145
  72. package/lib/src/brand-page-maker/utils/rte-sanitize.util.js +3 -7
  73. package/lib/src/{bundled-translations-CQ8dZIIe.js → bundled-translations-B2q5GWTQ.js} +9 -9
  74. package/lib/src/{bundled-translations.de-DE-D10ohBT0.js → bundled-translations.de-DE-FhH2H_rd.js} +9 -9
  75. package/lib/src/{bundled-translations.es-ES-C1o3tbHg.js → bundled-translations.es-ES-_ZExxMi7.js} +5 -5
  76. package/lib/src/{bundled-translations.fr-CA-ClHWmoIS.js → bundled-translations.fr-CA-Tg-ODIiC.js} +9 -9
  77. package/lib/src/{bundled-translations.fr-FR-C_PgkOpB.js → bundled-translations.fr-FR-C0sU51Mz.js} +9 -9
  78. package/lib/src/{bundled-translations.pt-BR-Csr8_jy7.js → bundled-translations.pt-BR-MYFIhA4u.js} +25 -25
  79. package/lib/src/{bundled-translations.pt-PT-D-vjMoOD.js → bundled-translations.pt-PT-DeUBSzCB.js} +17 -17
  80. package/lib/src/bundles/bundled-translations.de-DE.json +1 -17
  81. package/lib/src/bundles/bundled-translations.es-ES.json +1 -17
  82. package/lib/src/bundles/bundled-translations.fr-CA.json +1 -17
  83. package/lib/src/bundles/bundled-translations.fr-FR.json +1 -17
  84. package/lib/src/bundles/bundled-translations.json +2 -18
  85. package/lib/src/bundles/bundled-translations.pt-BR.json +1 -17
  86. package/lib/src/bundles/bundled-translations.pt-PT.json +1 -17
  87. package/lib/src/composables/useTranslate.d.ts +1 -1
  88. package/lib/src/composables/useTranslate.js +1 -1
  89. package/lib/src/css/library.brand-page-brandCrowd.min.css +145 -232
  90. package/lib/src/css/library.brand-page-brandPage.min.css +146 -232
  91. package/lib/src/css/library.brand-page-designCom.min.css +145 -232
  92. package/lib/src/css/library.brand-page-preview.min.css +145 -232
  93. package/lib/src/index.mjs +189 -192
  94. package/lib/src/{lib-lqV1z8gy.js → lib-BMVF4uNy.js} +28953 -29801
  95. package/lib/src/metadata-builder/builders/section-builders/about-section-builder.js +3 -3
  96. package/lib/src/metadata-builder/builders/section-builders/banner-section-builder.js +3 -3
  97. package/lib/src/metadata-builder/builders/section-builders/booking-section-builder.js +3 -3
  98. package/lib/src/metadata-builder/builders/section-builders/contact-form-builder.js +4 -4
  99. package/lib/src/metadata-builder/builders/section-builders/images-section-builder.js +3 -3
  100. package/lib/src/metadata-builder/builders/section-builders/mailing-list-builder.js +2 -2
  101. package/lib/src/metadata-builder/builders/section-builders/mailing-list-section-builder.js +2 -2
  102. package/lib/src/metadata-builder/builders/section-builders/profile-section-builder.js +4 -4
  103. package/lib/src/metadata-builder/builders/section-builders/shapes-section-builder.js +3 -3
  104. package/lib/src/metadata-builder/builders/section-builders/testimonial-section-builder.js +2 -2
  105. package/lib/src/metadata-builder/builders/section-builders/text-section-builder.js +22 -32
  106. package/lib/src/metadata-builder/builders/section-field-utils.d.ts +1 -15
  107. package/lib/src/metadata-builder/builders/section-field-utils.js +2 -30
  108. package/lib/src/metadata-builder/builders/section-rules/global-styles.rules.d.ts +1 -1
  109. package/lib/src/metadata-builder/builders/section-rules/global-styles.rules.js +4 -6
  110. package/lib/src/metadata-builder/metadata-executor.js +1 -16
  111. package/lib/src/metadata-builder/parsers/ai-toolcall-parser.d.ts +18 -5
  112. package/lib/src/metadata-builder/parsers/section-tool-arguments.d.ts +1 -8
  113. package/lib/src/shared/color-palette/section-color-matches.js +24 -8
  114. package/lib/src/shared/color-strategies/rte-field-pairs.d.ts +0 -20
  115. package/lib/src/shared/color-strategies/rte-field-pairs.js +0 -25
  116. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +134 -1
  117. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.js +27 -1
  118. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +0 -1
  119. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +0 -1
  120. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +1 -6
  121. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.js +5 -15
  122. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +1 -1
  123. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.js +7 -0
  124. package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.d.ts +11 -1244
  125. package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.js +51 -194
  126. package/lib/src/shared/content-settings/store/content-settings-store.d.ts +0 -1
  127. package/lib/src/shared/content-settings/store/content-settings-store.js +7 -55
  128. package/lib/src/shared/ecommerce-settings/util/refreshDuplicatedMetadata.d.ts +1 -1
  129. package/lib/src/shared/ecommerce-settings/util/refreshDuplicatedMetadata.js +1 -1
  130. package/lib/src/shared/navigation-style-settings/store/index.d.ts +1 -2
  131. package/lib/src/shared/navigation-style-settings/store/index.js +8 -5
  132. package/lib/src/shared/page-settings/components/delete-page-modal/DeletePageModal.mixin.d.ts +1 -1
  133. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +1 -3
  134. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +2 -3
  135. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.js +0 -1
  136. package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +5 -150
  137. package/lib/src/shared/style-settings/store/style-settings-store.d.ts +1 -0
  138. package/lib/src/shared/style-settings/store/style-settings-store.js +4 -3
  139. package/lib/src/tracker.js +1 -2
  140. package/package.json +4 -4
  141. package/src/brand-page/components/about-section/AboutSection.vue.test.ts +10 -0
  142. package/src/brand-page/components/page/Page.mixin.ts +11 -32
  143. package/src/brand-page/components/page/Page.vue +0 -6
  144. package/src/brand-page/components/social-links/SocialLinks.stories.ts +3 -0
  145. package/src/brand-page/components/social-links/SocialLinks.vue.test.ts +3 -0
  146. package/src/brand-page/components/testimonial-section/__fixtures__/data.ts +3 -0
  147. package/src/brand-page/components/text/Text.stories.ts +17 -0
  148. package/src/brand-page/components/text-wrapper/TextWrapper.vue +14 -139
  149. package/src/brand-page/constants/font.constants.ts +0 -37
  150. package/src/brand-page/models/index.ts +19 -20
  151. package/src/brand-page/models/logo.model.ts +1 -1
  152. package/src/brand-page/models/payment.model.ts +6 -12
  153. package/src/brand-page/models/styles.model.ts +38 -161
  154. package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +32 -641
  155. package/src/brand-page/utils/__snapshots__/migration2.util.test.ts.snap +4 -150
  156. package/src/brand-page/utils/__snapshots__/model.util.test.ts.snap +8 -300
  157. package/src/brand-page/utils/color-palette-referencify.util.test.ts +1 -1
  158. package/src/brand-page/utils/color-palette-referencify.util.ts +1 -1
  159. package/src/brand-page/utils/color-palette.util.test.ts +1 -126
  160. package/src/brand-page/utils/color-palette.util.ts +26 -89
  161. package/src/brand-page/utils/color.util.test.ts +31 -54
  162. package/src/brand-page/utils/color.util.ts +15 -68
  163. package/src/brand-page/utils/container-text-color.util.test.ts +27 -573
  164. package/src/brand-page/utils/container-text-color.util.ts +47 -357
  165. package/src/brand-page/utils/index.ts +0 -1
  166. package/src/brand-page/utils/migration/migration-01.ts +237 -293
  167. package/src/brand-page/utils/migration/migration-02.ts +1 -8
  168. package/src/brand-page/utils/migration/migration-20.ts +1 -4
  169. package/src/brand-page/utils/migration/migration-20_5.test.ts +1 -1
  170. package/src/brand-page/utils/migration/migration-21.ts +7 -27
  171. package/src/brand-page/utils/migration.util.test.ts +31 -92
  172. package/src/brand-page/utils/migration.util.ts +0 -17
  173. package/src/brand-page/utils/personalisation.util.test.ts +0 -80
  174. package/src/brand-page/utils/personalisation.util.ts +1 -12
  175. package/src/brand-page/utils/text-style.util.ts +24 -147
  176. package/src/brand-page/utils/view-model.util.test.ts +85 -218
  177. package/src/brand-page/utils/view-model.util.ts +25 -31
  178. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.ts +10 -0
  179. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/content-settings-items.fixture.ts +1 -0
  180. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.ts +44 -0
  181. package/src/brand-page-maker/components/rich-text-editor/RichTextEditor.vue +218 -406
  182. package/src/brand-page-maker/composables/rich-text-editor/font.ts +5 -36
  183. package/src/brand-page-maker/composables/rich-text-editor/formatting.test.ts +0 -88
  184. package/src/brand-page-maker/composables/rich-text-editor/formatting.ts +14 -153
  185. package/src/brand-page-maker/composables/rich-text-editor/getRteExtensions.ts +1 -40
  186. package/src/brand-page-maker/composables/rich-text-editor/spacing.ts +6 -31
  187. package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +225 -288
  188. package/src/brand-page-maker/default-getters/payment-text-and-border-color.default-getter.ts +22 -7
  189. package/src/brand-page-maker/default-getters/text-color.default-getter.ts +21 -5
  190. package/src/brand-page-maker/models/content-settings.ts +75 -80
  191. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +35 -0
  192. package/src/brand-page-maker/utils/__snapshots__/rte-render-parity.test.ts.snap +0 -9
  193. package/src/brand-page-maker/utils/index.ts +0 -1
  194. package/src/brand-page-maker/utils/rich-text-editor.util.test.ts +409 -186
  195. package/src/brand-page-maker/utils/rich-text-editor.util.ts +484 -249
  196. package/src/brand-page-maker/utils/rte-render-parity.test.ts +1 -1
  197. package/src/brand-page-maker/utils/rte-render.util.ts +6 -203
  198. package/src/brand-page-maker/utils/rte-sanitize.util.ts +3 -7
  199. package/src/bundles/bundled-translations.de-DE.json +1 -17
  200. package/src/bundles/bundled-translations.es-ES.json +1 -17
  201. package/src/bundles/bundled-translations.fr-CA.json +1 -17
  202. package/src/bundles/bundled-translations.fr-FR.json +1 -17
  203. package/src/bundles/bundled-translations.json +2 -18
  204. package/src/bundles/bundled-translations.pt-BR.json +1 -17
  205. package/src/bundles/bundled-translations.pt-PT.json +1 -17
  206. package/src/composables/useTranslate.ts +1 -2
  207. package/src/metadata-builder/builders/section-builders/about-section-builder.ts +3 -5
  208. package/src/metadata-builder/builders/section-builders/banner-section-builder.ts +3 -5
  209. package/src/metadata-builder/builders/section-builders/booking-section-builder.ts +3 -5
  210. package/src/metadata-builder/builders/section-builders/contact-form-builder.ts +4 -7
  211. package/src/metadata-builder/builders/section-builders/images-section-builder.ts +3 -5
  212. package/src/metadata-builder/builders/section-builders/mailing-list-builder.ts +2 -3
  213. package/src/metadata-builder/builders/section-builders/mailing-list-section-builder.ts +2 -3
  214. package/src/metadata-builder/builders/section-builders/profile-section-builder.ts +7 -7
  215. package/src/metadata-builder/builders/section-builders/shapes-section-builder.ts +3 -5
  216. package/src/metadata-builder/builders/section-builders/testimonial-section-builder.ts +2 -3
  217. package/src/metadata-builder/builders/section-builders/text-section-builder.ts +56 -47
  218. package/src/metadata-builder/builders/section-field-utils.ts +6 -46
  219. package/src/metadata-builder/builders/section-rules/global-styles.rules.ts +5 -10
  220. package/src/metadata-builder/metadata-executor.ts +1 -18
  221. package/src/metadata-builder/parsers/ai-toolcall-parser.ts +6 -10
  222. package/src/metadata-builder/parsers/section-tool-arguments.ts +1 -11
  223. package/src/shared/color-palette/section-color-matches.test.ts +11 -15
  224. package/src/shared/color-palette/section-color-matches.ts +27 -8
  225. package/src/shared/color-strategies/rte-field-pairs.test.ts +5 -26
  226. package/src/shared/color-strategies/rte-field-pairs.ts +0 -30
  227. package/src/shared/content-settings/components/color-matches-panel/ColorMatchesPanel.test.ts +66 -43
  228. package/src/shared/content-settings/components/color-matches-panel/ColorMatchesPanel.vue +1 -7
  229. package/src/shared/content-settings/components/content-settings/ContentSettings.mixin.ts +48 -1
  230. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.ts +5 -26
  231. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.test.ts +1 -47
  232. package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.ts +6 -0
  233. package/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.test.ts +1 -0
  234. package/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.test.ts +25 -258
  235. package/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.ts +57 -226
  236. package/src/shared/content-settings/components/text-style-field/TextStyleField.vue +16 -119
  237. package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.de-DE.json +10 -15
  238. package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.es-ES.json +10 -15
  239. package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.fr-CA.json +10 -15
  240. package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.fr-FR.json +10 -15
  241. package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.json +1 -6
  242. package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.pt-BR.json +10 -15
  243. package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.pt-PT.json +10 -15
  244. package/src/shared/content-settings/store/content-settings-store.test.ts +5 -186
  245. package/src/shared/content-settings/store/content-settings-store.ts +16 -81
  246. package/src/shared/ecommerce-settings/util/refreshDuplicatedMetadata.ts +1 -1
  247. package/src/shared/navigation-style-settings/store/index.ts +8 -6
  248. package/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.ts +0 -1
  249. package/src/shared/style-settings/components/StyleSettings.vue +25 -29
  250. package/src/shared/style-settings/components/StyleSettingsSection.vue +8 -0
  251. package/src/shared/style-settings/components/i18n/style-settings.de-DE.json +20 -31
  252. package/src/shared/style-settings/components/i18n/style-settings.es-ES.json +20 -31
  253. package/src/shared/style-settings/components/i18n/style-settings.fr-CA.json +20 -31
  254. package/src/shared/style-settings/components/i18n/style-settings.fr-FR.json +20 -31
  255. package/src/shared/style-settings/components/i18n/style-settings.json +3 -12
  256. package/src/shared/style-settings/components/i18n/style-settings.pt-BR.json +20 -31
  257. package/src/shared/style-settings/components/i18n/style-settings.pt-PT.json +20 -31
  258. package/src/shared/style-settings/components/text-style-options-settings-with-state/TextStyleOptionsSettingsWithState.vue +34 -14
  259. package/src/shared/style-settings/store/style-settings-store.ts +4 -3
  260. package/src/tracker.ts +1 -2
  261. package/src/utils/minify-brand-page-metadata.test.ts +1 -1
  262. package/lib/src/brand-page/utils/migration/migration-22.d.ts +0 -135
  263. package/lib/src/brand-page/utils/migration/migration-22.js +0 -671
  264. package/lib/src/brand-page/utils/text-role-css.util.d.ts +0 -112
  265. package/lib/src/brand-page/utils/text-role-css.util.js +0 -262
  266. package/lib/src/brand-page-maker/composables/rich-text-editor/extensions/TextEffects.d.ts +0 -27
  267. package/lib/src/brand-page-maker/composables/rich-text-editor/extensions/TextEffects.js +0 -68
  268. package/lib/src/brand-page-maker/composables/rich-text-editor/keepMarksOnEmpty.d.ts +0 -20
  269. package/lib/src/brand-page-maker/composables/rich-text-editor/keepMarksOnEmpty.js +0 -60
  270. package/lib/src/brand-page-maker/utils/rte-authoring.util.d.ts +0 -2
  271. package/lib/src/brand-page-maker/utils/rte-authoring.util.js +0 -101
  272. package/lib/src/mockServiceWorker.js +0 -349
  273. package/src/brand-page/components/text-wrapper/TextWrapper.test.ts +0 -116
  274. package/src/brand-page/utils/migration/migration-22.test.ts +0 -1143
  275. package/src/brand-page/utils/migration/migration-22.ts +0 -1051
  276. package/src/brand-page/utils/text-role-css.util.test.ts +0 -268
  277. package/src/brand-page/utils/text-role-css.util.ts +0 -348
  278. package/src/brand-page/utils/text-style.util.test.ts +0 -200
  279. package/src/brand-page-maker/composables/rich-text-editor/block-typography.test.ts +0 -236
  280. package/src/brand-page-maker/composables/rich-text-editor/extensions/TextEffects.ts +0 -110
  281. package/src/brand-page-maker/composables/rich-text-editor/keepMarksOnEmpty.test.ts +0 -80
  282. package/src/brand-page-maker/composables/rich-text-editor/keepMarksOnEmpty.ts +0 -75
  283. package/src/brand-page-maker/models/content-settings.test.ts +0 -153
  284. package/src/brand-page-maker/utils/rte-authoring.util.test.ts +0 -244
  285. package/src/brand-page-maker/utils/rte-authoring.util.ts +0 -179
  286. package/src/brand-page-maker/utils/rte-render.util.test.ts +0 -226
  287. package/src/brand-page-maker/utils/rte-schema-version.test.ts +0 -102
  288. package/src/metadata-builder/builders/section-field-utils.test.ts +0 -54
@@ -1,5 +1,5 @@
1
1
  import { openBlock as e, createElementBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-lqV1z8gy.js";
2
+ import { _ as t } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, h = {
4
4
  width: "275",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as e, createElementBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-lqV1z8gy.js";
2
+ import { _ as t } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, h = {
4
4
  width: "251",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as e, createElementBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-lqV1z8gy.js";
2
+ import { _ as t } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, h = {
4
4
  width: "250",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as e, createElementBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-lqV1z8gy.js";
2
+ import { _ as t } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, h = {
4
4
  width: "237",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as e, createElementBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-lqV1z8gy.js";
2
+ import { _ as t } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, h = {
4
4
  width: "237",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as e, createElementBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-lqV1z8gy.js";
2
+ import { _ as t } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, h = {
4
4
  width: "263",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as e, createElementBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-lqV1z8gy.js";
2
+ import { _ as t } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, h = {
4
4
  width: "263",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as H, createElementBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as e } from "./lib-lqV1z8gy.js";
2
+ import { _ as e } from "./lib-BMVF4uNy.js";
3
3
  const M = {}, Z = {
4
4
  width: "242",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as H, createElementBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as e } from "./lib-lqV1z8gy.js";
2
+ import { _ as e } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, M = {
4
4
  width: "231",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as H, createElementBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as e } from "./lib-lqV1z8gy.js";
2
+ import { _ as e } from "./lib-BMVF4uNy.js";
3
3
  const M = {}, Z = {
4
4
  width: "230",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as H, createElementBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as e } from "./lib-lqV1z8gy.js";
2
+ import { _ as e } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, l = {
4
4
  width: "216",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as H, createElementBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as e } from "./lib-lqV1z8gy.js";
2
+ import { _ as e } from "./lib-BMVF4uNy.js";
3
3
  const i = {}, l = {
4
4
  width: "216",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as H, createElementBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as M } from "./lib-lqV1z8gy.js";
2
+ import { _ as M } from "./lib-BMVF4uNy.js";
3
3
  const Z = {}, e = {
4
4
  width: "232",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { openBlock as H, createElementBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as M } from "./lib-lqV1z8gy.js";
2
+ import { _ as M } from "./lib-BMVF4uNy.js";
3
3
  const Z = {}, e = {
4
4
  width: "232",
5
5
  height: "36",
@@ -54,7 +54,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
54
54
  }, {
55
55
  brandPageToken(): string | null;
56
56
  paletteStyleHtml(): string;
57
- textRoleStyleHtml(): string;
58
57
  pageScopeAttrs(): Record<string, string | undefined>;
59
58
  contents(): ContentViewModel[];
60
59
  /**
@@ -168,7 +167,5 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
168
167
  isContentSelected: boolean;
169
168
  isHeaderSelected: boolean;
170
169
  isFooterSelected: boolean;
171
- }, {}, {}, {}, string, () => {
172
- [x: symbol]: import("vue").ComputedRef<any>;
173
- }, true, {}, any>;
170
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
174
171
  export default _default;
@@ -1,6 +1,6 @@
1
- import { computed, defineComponent } from 'vue';
1
+ import { defineComponent } from 'vue';
2
2
  import { DEFAULT_FONT_FAMILY_KEY, FALLBACK_FONT_FAMILIES, FONT_FAMILY_CONFIGS, } from '../../constants';
3
- import { getSlugFromContext, getPageHeadingText, buildPaletteRootCss, buildPaletteScopedCss, buildTextRoleRootCss, buildTextRoleScopedCss, TEXT_ROLE_OPTIONS_KEY, PAGE_SCOPE_ID_ATTRIBUTE, resolveColorReference, } from '@brand-page/utils';
3
+ import { getSlugFromContext, getPageHeadingText, buildPaletteRootCss, buildPaletteScopedCss, PAGE_SCOPE_ID_ATTRIBUTE, resolveColorReference, } from '@brand-page/utils';
4
4
  import { findNavItemByRelativePath } from '@brand-page/utils/route.util';
5
5
  import { BRAND_PAGE_TYPES } from '@brand-page/models';
6
6
  import { hasProfileContent as checkHasProfileContent } from '@brand-page/utils/vcard.util';
@@ -72,15 +72,6 @@ export default defineComponent({
72
72
  }),
73
73
  };
74
74
  },
75
- // BP-5969: expose the live role options to every descendant TextWrapper so it can
76
- // inline only its overrides and leave the role typography to the CSS class. A computed
77
- // keeps it reactive (a role edit repaints), and `this` is the instance in Options-API
78
- // provide(). Descendants that render outside a Page get `undefined` and bake inline.
79
- provide() {
80
- return {
81
- [TEXT_ROLE_OPTIONS_KEY]: computed(() => this.viewModel?.styles?.textStyles?.textStyleOptions),
82
- };
83
- },
84
75
  data() {
85
76
  return {
86
77
  isSideMenuOpen: false,
@@ -104,17 +95,6 @@ export default defineComponent({
104
95
  ? buildPaletteScopedCss(colors, this.pageScopeId)
105
96
  : buildPaletteRootCss(colors);
106
97
  },
107
- // BP-5969: the global text roles as a page-scoped <style> of CSS classes
108
- // (design-token render). Same root/scoped split as the palette above: a role
109
- // edit is one CSS-rule change that repaints every block carrying the role class.
110
- textRoleStyleHtml() {
111
- const options = this.viewModel?.styles?.textStyles?.textStyleOptions;
112
- if (!options)
113
- return '';
114
- return this.context?.isTemplate
115
- ? buildTextRoleScopedCss(options, this.pageScopeId)
116
- : buildTextRoleRootCss(options);
117
- },
118
98
  // Spread onto EVERY top-level node of Page's fragment (template mode only).
119
99
  // The root-background/overlay siblings paint values that can hold
120
100
  // `var(--palette-…)`, and a custom property applies to its own node too.
@@ -181,10 +161,13 @@ export default defineComponent({
181
161
  ...this.viewModel?.styles?.backgroundStylesViewModel?.style,
182
162
  };
183
163
  }
184
- // BP-5969 (ADR-0020): no page base coat. A role defines typography only, so `:root`
185
- // no longer paints a text colour — every text element carries its own contrast-derived
186
- // colour (baked at birth, or by migration-22 for existing sites). Form controls and SVG
187
- // `currentColor` fills fall back to the browser default.
164
+ // The page base coat — anything with no colour of its own inherits this
165
+ // (RTE text, form controls, SVG `currentColor` fills).
166
+ const baseTextColour = this.viewModel?.styles?.textStyles?.textStyleOptions?.paragraphs?.style
167
+ ?.color;
168
+ if (baseTextColour) {
169
+ styles.color = baseTextColour;
170
+ }
188
171
  const textFontFamilyKey = this.viewModel.styles?.textStyles.textFontFamily ||
189
172
  DEFAULT_FONT_FAMILY_KEY;
190
173
  const textFontFamilyConfig = FONT_FAMILY_CONFIGS[textFontFamilyKey];
@@ -49,6 +49,9 @@ const viewModel = {
49
49
  iconBackgroundStyles: {},
50
50
  backgroundStyles: {},
51
51
  titleStyle: {
52
+ color: '#000000',
53
+ fontSize: '2.25rem',
54
+ fontWeight: 'bold',
52
55
  textAlign: 'center',
53
56
  },
54
57
  role: 'social-links',
@@ -37,6 +37,9 @@ export const viewModel = {
37
37
  },
38
38
  ],
39
39
  titleStyle: {
40
+ color: 'rgba(0, 0, 0, 1)',
41
+ fontSize: '2.25rem',
42
+ fontWeight: 'bold',
40
43
  textAlign: 'center',
41
44
  },
42
45
  testimonialStyle: {
@@ -12,7 +12,12 @@ const BPviewModel = {
12
12
  textItems: [],
13
13
  type: 'text',
14
14
  textStyle: {
15
+ fontSize: '1rem',
16
+ lineHeight: '1.5rem',
17
+ fontFamily: 'Lato',
15
18
  textAlign: 'left',
19
+ overflowWrap: 'anywhere',
20
+ wordBreak: 'normal',
16
21
  },
17
22
  columnStyle: '1',
18
23
  backgroundColor: {},
@@ -29,6 +34,7 @@ const BSviewModel = {
29
34
  id: 'text-item-1',
30
35
  text: 'lorem ipsum',
31
36
  textStyle: {
37
+ fontSize: '1rem',
32
38
  textAlign: 'left',
33
39
  textStyleType: 'paragraphs',
34
40
  },
@@ -37,6 +43,7 @@ const BSviewModel = {
37
43
  id: 'text-item-2',
38
44
  text: 'lorem ipsum',
39
45
  textStyle: {
46
+ fontSize: '1rem',
40
47
  textAlign: 'left',
41
48
  textStyleType: 'paragraphs',
42
49
  },
@@ -44,7 +51,12 @@ const BSviewModel = {
44
51
  ],
45
52
  type: 'text',
46
53
  textStyle: {
54
+ fontSize: '1rem',
55
+ lineHeight: '1.5rem',
56
+ fontFamily: 'Lato',
47
57
  textAlign: 'left',
58
+ overflowWrap: 'anywhere',
59
+ wordBreak: 'normal',
48
60
  },
49
61
  columnStyle: '2',
50
62
  backgroundColor: {},
@@ -59,7 +71,12 @@ const BSEmptyTextItem = {
59
71
  textItems: [],
60
72
  type: 'text',
61
73
  textStyle: {
74
+ fontSize: '1rem',
75
+ lineHeight: '1.5rem',
76
+ fontFamily: 'Lato',
62
77
  textAlign: 'left',
78
+ overflowWrap: 'anywhere',
79
+ wordBreak: 'normal',
63
80
  },
64
81
  columnStyle: '1',
65
82
  backgroundColor: {},
@@ -2,16 +2,6 @@ export declare const DISPLAY_TEXT_TITLE = "Titles";
2
2
  export declare const DISPLAY_TEXT_HEADINGS = "Headings";
3
3
  export declare const DISPLAY_TEXT_BODY = "Paragraphs";
4
4
  export declare const DISPlAY_TEXT_BUTTONS = "Button Texts";
5
- export declare const DISPLAY_TEXT_HEADING_1 = "Heading 1";
6
- export declare const DISPLAY_TEXT_HEADING_2 = "Heading 2";
7
- export declare const DISPLAY_TEXT_HEADING_3 = "Heading 3";
8
- export declare const DISPLAY_TEXT_HEADING_4 = "Heading 4";
9
- export declare const DISPLAY_TEXT_HEADING_5 = "Heading 5";
10
- export declare const DISPLAY_TEXT_HEADING_6 = "Heading 6";
11
- export declare const DISPLAY_TEXT_PARAGRAPH_1 = "Paragraph 1";
12
- export declare const DISPLAY_TEXT_PARAGRAPH_2 = "Paragraph 2";
13
- export declare const DISPLAY_TEXT_PARAGRAPH_3 = "Paragraph 3";
14
- export declare const DISPLAY_TEXT_BUTTON = "Button";
15
5
  export declare const DEFAULT_TEXT_DECORATION: undefined;
16
6
  export declare const DEFAULT_FONT_STYLE: undefined;
17
7
  export declare const FONT_SIZE_TITLE = "2.25em";
@@ -23,58 +13,6 @@ export declare const FONT_WEIGHT_NORMAL = "normal";
23
13
  export declare const LINE_HEIGHT_TITLE = "1.3";
24
14
  export declare const LINE_HEIGHT_HEADINGS = "1.4";
25
15
  export declare const LINE_HEIGHT_BODY = "1.5";
26
- export declare const TEXT_ROLE_STYLE_DEFAULTS: {
27
- readonly heading1: {
28
- readonly fontSize: "6.875em";
29
- readonly fontWeight: "bold";
30
- readonly lineHeight: "1.2";
31
- };
32
- readonly heading2: {
33
- readonly fontSize: "5.25em";
34
- readonly fontWeight: "bold";
35
- readonly lineHeight: "1.2";
36
- };
37
- readonly heading3: {
38
- readonly fontSize: "3.1875em";
39
- readonly fontWeight: "bold";
40
- readonly lineHeight: "1.25";
41
- };
42
- readonly heading4: {
43
- readonly fontSize: "2.1875em";
44
- readonly fontWeight: "bold";
45
- readonly lineHeight: "1.3";
46
- };
47
- readonly heading5: {
48
- readonly fontSize: "1.4375em";
49
- readonly fontWeight: "bold";
50
- readonly lineHeight: "1.35";
51
- };
52
- readonly heading6: {
53
- readonly fontSize: "1em";
54
- readonly fontWeight: "bold";
55
- readonly lineHeight: "1.4";
56
- };
57
- readonly paragraph1: {
58
- readonly fontSize: "1.375em";
59
- readonly fontWeight: "normal";
60
- readonly lineHeight: "1.5";
61
- };
62
- readonly paragraph2: {
63
- readonly fontSize: "1.125em";
64
- readonly fontWeight: "normal";
65
- readonly lineHeight: "1.5";
66
- };
67
- readonly paragraph3: {
68
- readonly fontSize: "0.875em";
69
- readonly fontWeight: "normal";
70
- readonly lineHeight: "1.6";
71
- };
72
- readonly button: {
73
- readonly fontSize: "1em";
74
- readonly fontWeight: "normal";
75
- readonly lineHeight: "1.2";
76
- };
77
- };
78
16
  export declare const DEFAULT_FONT_SIZE = 12;
79
17
  export declare const MIN_TEXT_SIZE_PX = 12;
80
18
  export declare const MAX_TEXT_SIZE_PX = 128;
@@ -3,18 +3,6 @@ export const DISPLAY_TEXT_TITLE = 'Titles';
3
3
  export const DISPLAY_TEXT_HEADINGS = 'Headings';
4
4
  export const DISPLAY_TEXT_BODY = 'Paragraphs';
5
5
  export const DISPlAY_TEXT_BUTTONS = 'Button Texts';
6
- // BP-5969 — display names for the 10 global text roles (English fallback; the
7
- // panel/picker use i18n `styleSettingsTr(<role>)`, these back it up).
8
- export const DISPLAY_TEXT_HEADING_1 = 'Heading 1';
9
- export const DISPLAY_TEXT_HEADING_2 = 'Heading 2';
10
- export const DISPLAY_TEXT_HEADING_3 = 'Heading 3';
11
- export const DISPLAY_TEXT_HEADING_4 = 'Heading 4';
12
- export const DISPLAY_TEXT_HEADING_5 = 'Heading 5';
13
- export const DISPLAY_TEXT_HEADING_6 = 'Heading 6';
14
- export const DISPLAY_TEXT_PARAGRAPH_1 = 'Paragraph 1';
15
- export const DISPLAY_TEXT_PARAGRAPH_2 = 'Paragraph 2';
16
- export const DISPLAY_TEXT_PARAGRAPH_3 = 'Paragraph 3';
17
- export const DISPLAY_TEXT_BUTTON = 'Button';
18
6
  export const DEFAULT_TEXT_DECORATION = undefined;
19
7
  export const DEFAULT_FONT_STYLE = undefined;
20
8
  export const FONT_SIZE_TITLE = '2.25em';
@@ -26,29 +14,6 @@ export const FONT_WEIGHT_NORMAL = 'normal';
26
14
  export const LINE_HEIGHT_TITLE = '1.3';
27
15
  export const LINE_HEIGHT_HEADINGS = '1.4';
28
16
  export const LINE_HEIGHT_BODY = '1.5';
29
- // BP-5969 — §4 default typography for the 10 global text roles. Sizes in `em`
30
- // (relative to the 16px root). Weights/letter-spacing are new: the legacy 4
31
- // roles carried none, so these apply to new sites only — existing sites keep
32
- // their persisted role definitions (migration-22 preserves appearance).
33
- // Weight is strictly binary (BP-5969): headings default `bold`, body + button
34
- // `normal`. No semibold tier — the RTE exposes only a normal/bold toggle, so the
35
- // role defaults use the same `bold`/`normal` keywords that toggle (and every weight
36
- // reader) speaks, not numeric weights.
37
- //
38
- // Sizes are a display scale in em @ 16px root; the px each em resolves to is noted
39
- // inline. Headings anchor H1 110px → H6 16px; body runs 22/18/14; button stays 16px.
40
- export const TEXT_ROLE_STYLE_DEFAULTS = {
41
- heading1: { fontSize: '6.875em', fontWeight: 'bold', lineHeight: '1.2' }, // 110px
42
- heading2: { fontSize: '5.25em', fontWeight: 'bold', lineHeight: '1.2' }, // 84px
43
- heading3: { fontSize: '3.1875em', fontWeight: 'bold', lineHeight: '1.25' }, // 51px
44
- heading4: { fontSize: '2.1875em', fontWeight: 'bold', lineHeight: '1.3' }, // 35px
45
- heading5: { fontSize: '1.4375em', fontWeight: 'bold', lineHeight: '1.35' }, // 23px
46
- heading6: { fontSize: '1em', fontWeight: 'bold', lineHeight: '1.4' }, // 16px
47
- paragraph1: { fontSize: '1.375em', fontWeight: 'normal', lineHeight: '1.5' }, // 22px
48
- paragraph2: { fontSize: '1.125em', fontWeight: 'normal', lineHeight: '1.5' }, // 18px
49
- paragraph3: { fontSize: '0.875em', fontWeight: 'normal', lineHeight: '1.6' }, // 14px
50
- button: { fontSize: '1em', fontWeight: 'normal', lineHeight: '1.2' }, // 16px
51
- };
52
17
  export const DEFAULT_FONT_SIZE = 12;
53
18
  export const MIN_TEXT_SIZE_PX = 12;
54
19
  export const MAX_TEXT_SIZE_PX = 128;
@@ -2,7 +2,7 @@ import type { FontFamilyKey, ImagesSectionContentDisplayStyle, HeaderDisplayStyl
2
2
  import type { Content, PersonalisationRole } from './content.model';
3
3
  import type { BrandPageType, ViewportsType } from './brand-page-context.model';
4
4
  import { NavigationDesktop, NavigationMobile } from './navigation-styles.model';
5
- import type { TextStyleDeclaration, RteTextRole, LegacyTextStylesInput } from './styles.model';
5
+ import type { TextStyleDeclaration, LegacyTextStylesInput } from './styles.model';
6
6
  import { TextStyles } from './styles.model';
7
7
  import { LogoStyles } from './logo.model';
8
8
  import type { LogoImageModel, LogoTemplateImageModel } from './logo.model';
@@ -177,7 +177,7 @@ export interface TextContent extends Content {
177
177
  * @deprecated Use `textStyle` instead. For backward compatibility.
178
178
  */
179
179
  textSize: BrandPageCssStyle;
180
- textStyle: RteTextRole;
180
+ textStyle: TextStyleDeclaration;
181
181
  /**
182
182
  * @deprecated Use `textStyle` instead. For backward compatibility.
183
183
  */
@@ -197,9 +197,9 @@ export interface ProfileContent extends Content {
197
197
  colorReplacements: ColorReplacement[];
198
198
  mediaType?: string;
199
199
  size?: string;
200
- descriptionStyle: RteTextRole;
201
- nameStyle: RteTextRole;
202
- titleStyle: RteTextRole;
200
+ descriptionStyle: TextStyleDeclaration;
201
+ nameStyle: TextStyleDeclaration;
202
+ titleStyle: TextStyleDeclaration;
203
203
  }
204
204
  export interface Address {
205
205
  formattedAddress: string;
@@ -212,7 +212,7 @@ export interface MailingListContent extends Content {
212
212
  acceptedFields?: 'emailOnly' | 'nameAndEmail';
213
213
  title: RichTextValue;
214
214
  buttonText: string;
215
- titleStyle: RteTextRole;
215
+ titleStyle: TextStyleDeclaration;
216
216
  buttonTextStyle: TextStyleDeclaration;
217
217
  backgroundStyle?: BrandPageCssStyle;
218
218
  }
@@ -270,11 +270,11 @@ export interface ContactFormContent extends Content {
270
270
  responseEmail: string;
271
271
  imageUrl?: string;
272
272
  layoutStyle?: string | null;
273
- titleStyle?: RteTextRole;
274
- descriptionStyle?: RteTextRole;
273
+ titleStyle?: TextStyleDeclaration;
274
+ descriptionStyle?: TextStyleDeclaration;
275
275
  buttonTextStyle?: TextStyleDeclaration;
276
276
  backgroundStyle?: BrandPageCssStyle;
277
- successMessageStyle?: RteTextRole;
277
+ successMessageStyle?: TextStyleDeclaration;
278
278
  cardStyle?: BrandPageCssStyle;
279
279
  colorReplacements?: ColorReplacement[];
280
280
  mediaType?: string;
@@ -291,8 +291,8 @@ export interface BannerSectionContent extends Content {
291
291
  email?: string;
292
292
  tel?: string;
293
293
  displayStyle: string;
294
- titleStyle: RteTextRole;
295
- descriptionStyle: RteTextRole;
294
+ titleStyle: TextStyleDeclaration;
295
+ descriptionStyle: TextStyleDeclaration;
296
296
  backgroundStyle: BrandPageCssStyle;
297
297
  cardStyle: BrandPageCssStyle;
298
298
  colorReplacements: ColorReplacement[];
@@ -357,7 +357,7 @@ export interface TextItem {
357
357
  /** Stable per-item identifier. See ImageItem.id. */
358
358
  id: string;
359
359
  text: RichTextValue;
360
- textStyle: RteTextRole;
360
+ textStyle: TextStyleDeclaration;
361
361
  textOverride?: string;
362
362
  }
363
363
  export interface ShapesSectionContent extends Content, MediaSection {
@@ -377,8 +377,8 @@ export interface MediaSection extends Content {
377
377
  description: RichTextValue;
378
378
  displayStyle: ImagesSectionContentDisplayStyle;
379
379
  items: TextShapeItem[] | TextMediaItem[];
380
- titleStyle: RteTextRole;
381
- descriptionStyle: RteTextRole;
380
+ titleStyle: TextStyleDeclaration;
381
+ descriptionStyle: TextStyleDeclaration;
382
382
  headingStyle: TextStyleDeclaration;
383
383
  paragraphStyle: TextStyleDeclaration;
384
384
  backgroundStyle: BrandPageCssStyle;
@@ -406,7 +406,7 @@ export interface TestimonialSectionContent extends Content {
406
406
  title: RichTextValue;
407
407
  displayStyle: string;
408
408
  items: TestimonialItems[];
409
- titleStyle: RteTextRole;
409
+ titleStyle: TextStyleDeclaration;
410
410
  testimonialStyle: TextStyleDeclaration;
411
411
  nameStyle: TextStyleDeclaration;
412
412
  positionStyle: TextStyleDeclaration;
@@ -420,8 +420,8 @@ export interface AboutSectionContent extends Content {
420
420
  title: RichTextValue;
421
421
  paragraph: RichTextValue;
422
422
  displayStyle: string;
423
- titleStyle: RteTextRole;
424
- paragraphStyle: RteTextRole;
423
+ titleStyle: TextStyleDeclaration;
424
+ paragraphStyle: TextStyleDeclaration;
425
425
  backgroundStyle: BrandPageCssStyle;
426
426
  colorReplacements: ColorReplacement[];
427
427
  mediaType?: string;
@@ -448,7 +448,7 @@ export interface SocialLinksContent extends Content {
448
448
  iconFillStyles: BrandPageCssStyle;
449
449
  iconBackgroundStyles: BrandPageCssStyle;
450
450
  backgroundStyles: BrandPageCssStyle;
451
- titleStyle: RteTextRole;
451
+ titleStyle: TextStyleDeclaration;
452
452
  }
453
453
  export declare const DIVIDER_STYLES: {
454
454
  readonly none: "none";
@@ -471,8 +471,8 @@ export interface BookingSectionContent extends Content {
471
471
  url: string;
472
472
  email?: string;
473
473
  tel?: string;
474
- titleStyle: RteTextRole;
475
- descriptionStyle: RteTextRole;
474
+ titleStyle: TextStyleDeclaration;
475
+ descriptionStyle: TextStyleDeclaration;
476
476
  backgroundStyle: BrandPageCssStyle;
477
477
  buttonPageId: string;
478
478
  buttonLinkType: ButtonLinkType;
@@ -5,7 +5,7 @@ export class LogoStyles {
5
5
  // `backgroundStyle` is retired — the body-logo plate colour lives on the logo
6
6
  // content now. Carry a persisted raw value through untyped at this
7
7
  // deserialization boundary so migration-21 can bake it onto the content and
8
- // delete it. See docs/plans/feat-bp-5886-retire-logo-background-style.md.
8
+ // delete it. See `0011-retire-logo-background-style.md`.
9
9
  const legacyBackgroundStyle = option['backgroundStyle'];
10
10
  if (legacyBackgroundStyle !== undefined) {
11
11
  this['backgroundStyle'] =
@@ -1,8 +1,6 @@
1
1
  import type { Content } from './content.model';
2
2
  import type { ProductModel } from './shop.model';
3
3
  import type { TextStyleDeclaration } from './styles.model';
4
- import type { JSONContent } from '@tiptap/vue-3';
5
- type RteText = string | JSONContent;
6
4
  export declare const STRIPE_ADDRESS_LIMITS: {
7
5
  readonly name: {
8
6
  readonly min: 1;
@@ -120,11 +118,11 @@ export interface RequestPaymentConfig extends PaymentConfig {
120
118
  }
121
119
  export interface RequestPaymentContent extends Content {
122
120
  type: 'request-payment';
123
- description: RteText;
121
+ description: string;
124
122
  displayStyle: string;
125
123
  requestPaymentConfig: RequestPaymentConfig;
126
124
  successMessage: string;
127
- title: RteText;
125
+ title: string;
128
126
  fillColor: BrandPageCssStyle;
129
127
  defaultBorderColor: BrandPageCssStyle;
130
128
  selectedBorderColor: BrandPageCssStyle;
@@ -146,12 +144,12 @@ export interface ShopContentConfig extends PaymentConfig {
146
144
  }
147
145
  export interface ShopContent extends Content {
148
146
  type: 'shop-section';
149
- description: RteText;
147
+ description: string;
150
148
  successMessage: string;
151
149
  products: ProductModel[];
152
150
  displayStyle: string;
153
151
  aspectRatio: string;
154
- title: RteText;
152
+ title: string;
155
153
  fillColor: BrandPageCssStyle;
156
154
  defaultBorderColor: BrandPageCssStyle;
157
155
  textColor?: BrandPageCssStyle;
@@ -167,8 +165,8 @@ export interface SupportMeConfig extends PaymentConfig {
167
165
  }
168
166
  export interface SupportMeContent extends Content {
169
167
  type: 'support-me';
170
- title: RteText;
171
- description: RteText;
168
+ title: string;
169
+ description: string;
172
170
  displayStyle: string;
173
171
  successMessage: string;
174
172
  supportMeConfig: SupportMeConfig;
@@ -1,47 +1,12 @@
1
1
  import type { FontFamilyKey } from '../constants';
2
- /**
3
- * The 10 canonical global text roles (BP-5969) plus the 4 legacy roles.
4
- *
5
- * Legacy keys (`titles`/`headings`/`paragraphs`/`buttons`) are retained ONLY so
6
- * pre-migration content keeps resolving until migration-22 converts it; they are
7
- * hidden from the panel/picker (see `CANONICAL_TEXT_STYLE_TYPES`) and no new code
8
- * should write them. See ADR-0019 and docs/plans/feat-bp-5969-*.
9
- */
10
2
  export declare const TEXT_STYLE_TYPES: {
11
- readonly heading1: "heading1";
12
- readonly heading2: "heading2";
13
- readonly heading3: "heading3";
14
- readonly heading4: "heading4";
15
- readonly heading5: "heading5";
16
- readonly heading6: "heading6";
17
- readonly paragraph1: "paragraph1";
18
- readonly paragraph2: "paragraph2";
19
- readonly paragraph3: "paragraph3";
20
- readonly button: "button";
21
3
  readonly titles: "titles";
22
4
  readonly headings: "headings";
23
5
  readonly paragraphs: "paragraphs";
24
6
  readonly buttons: "buttons";
25
7
  };
26
8
  export type TextStyleType = keyof typeof TEXT_STYLE_TYPES;
27
- /** The 10 roles shown in the panel/picker, in display order. */
28
- export declare const CANONICAL_TEXT_STYLE_TYPES: readonly ["heading1", "heading2", "heading3", "heading4", "heading5", "heading6", "paragraph1", "paragraph2", "paragraph3", "button"];
29
- export type CanonicalTextStyleType = (typeof CANONICAL_TEXT_STYLE_TYPES)[number];
30
- /** Legacy roles, retained for resolution of un-migrated content only. */
31
- export declare const LEGACY_TEXT_STYLE_TYPES: readonly ["titles", "headings", "paragraphs", "buttons"];
32
- export type LegacyTextStyleType = (typeof LEGACY_TEXT_STYLE_TYPES)[number];
33
- export declare const isLegacyTextStyleType: (type: string | undefined) => type is LegacyTextStyleType;
34
9
  export declare const TEXT_STYLE_TYPES_DISPLAY_NAME_MAP: () => {
35
- heading1: any;
36
- heading2: any;
37
- heading3: any;
38
- heading4: any;
39
- heading5: any;
40
- heading6: any;
41
- paragraph1: any;
42
- paragraph2: any;
43
- paragraph3: any;
44
- button: any;
45
10
  titles: any;
46
11
  headings: any;
47
12
  paragraphs: any;
@@ -53,17 +18,8 @@ export type TextStyleDeclaration = BrandPageCssStyle & {
53
18
  applyAutoScale?: boolean;
54
19
  };
55
20
  export type TextStyleDeclarationWithoutTextAlign = Omit<TextStyleDeclaration, 'textAlign'>;
56
- /**
57
- * BP-5969 (ADR-0020): an RTE-paired section field's style, with **colour decoupled**. Colour
58
- * is the ONE thing removed from the style object — it lives in the RTE mark now (baked
59
- * contrast at birth / by migration-22), so this type has no `color` and nothing can read a
60
- * stale one off an RTE field. Everything else stays: typography here is a genuine per-block
61
- * OVERRIDE (a title set to a non-role font/size) that the renderer applies via
62
- * `overrideTypographyStyle`, and dropping it would lose that override through migration — so
63
- * only `color` goes. Non-RTE per-item styles keep the full `TextStyleDeclaration`.
64
- */
65
- export type RteTextRole = Omit<TextStyleDeclaration, 'color'>;
66
21
  export interface GlobalTextStyleDeclaration {
22
+ color: string | undefined;
67
23
  fontFamily: string | undefined;
68
24
  fontSize: string | undefined;
69
25
  fontStyle: string | undefined;