@designcrowd/library.brand-page 6.1.9 → 6.1.10-ai-websitev2-2

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 (520) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-B6wH_6O0.js → CreatedOnBrandCrowd-de-de-C8cQoVXf.js} +1 -1
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-Czlo0S4b.js → CreatedOnBrandCrowd-en-us-D4Ywc92e.js} +1 -1
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-DRcRhTU3.js → CreatedOnBrandCrowd-es-es-B4Qe-WKo.js} +1 -1
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-D3WCuXaP.js → CreatedOnBrandCrowd-fr-ca-icZvGaBq.js} +1 -1
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-D3WCuXaP.js → CreatedOnBrandCrowd-fr-fr-icZvGaBq.js} +1 -1
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-BiwqhgUj.js → CreatedOnBrandCrowd-pt-br-KhqDjV4i.js} +1 -1
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-BiwqhgUj.js → CreatedOnBrandCrowd-pt-pt-KhqDjV4i.js} +1 -1
  8. package/lib/src/{CreatedOnDcom-de-de-CgweWwhx.js → CreatedOnDcom-de-de-C6s6dTrH.js} +1 -1
  9. package/lib/src/{CreatedOnDcom-en-us-B72Stil9.js → CreatedOnDcom-en-us-BH4f_1yF.js} +1 -1
  10. package/lib/src/{CreatedOnDcom-es-es-B8DUEkyW.js → CreatedOnDcom-es-es-CsgDdY33.js} +1 -1
  11. package/lib/src/{CreatedOnDcom-fr-ca-BsEtFdO_.js → CreatedOnDcom-fr-ca-BNlKJJIS.js} +1 -1
  12. package/lib/src/{CreatedOnDcom-fr-fr-DP72aeo7.js → CreatedOnDcom-fr-fr-B_ATyXn6.js} +1 -1
  13. package/lib/src/{CreatedOnDcom-pt-br-D0p8i5YP.js → CreatedOnDcom-pt-br-BFScUcR9.js} +1 -1
  14. package/lib/src/{CreatedOnDcom-pt-pt-CI5q2DY1.js → CreatedOnDcom-pt-pt-k2dhotzC.js} +1 -1
  15. package/lib/src/brand-page/components/background-shape/BackgroundShape.mixin.d.ts +1 -0
  16. package/lib/src/brand-page/components/background-shape/BackgroundShape.mixin.js +11 -3
  17. package/lib/src/brand-page/components/collapsible/Collapsible.mixin.js +4 -5
  18. package/lib/src/brand-page/components/contact-form/ContactForm.mixin.d.ts +0 -1
  19. package/lib/src/brand-page/components/contact-form/ContactForm.mixin.js +1 -21
  20. package/lib/src/brand-page/components/mailing-list/MailingList.mixin.d.ts +0 -1
  21. package/lib/src/brand-page/components/mailing-list/MailingList.mixin.js +7 -16
  22. package/lib/src/brand-page/components/media/Shape.mixin.js +4 -1
  23. package/lib/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.js +2 -8
  24. package/lib/src/brand-page/components/page/Page.mixin.d.ts +12 -0
  25. package/lib/src/brand-page/components/page/Page.mixin.js +73 -8
  26. package/lib/src/brand-page/components/payment/Payment.mixin.js +6 -8
  27. package/lib/src/brand-page/components/payment/request-payment/RequestPayment.mixin.js +5 -5
  28. package/lib/src/brand-page/components/video/Video.mixin.js +4 -6
  29. package/lib/src/brand-page/constants/styles.constants.d.ts +1 -0
  30. package/lib/src/brand-page/constants/styles.constants.js +1 -0
  31. package/lib/src/brand-page/models/index.d.ts +30 -5
  32. package/lib/src/brand-page/models/index.js +39 -11
  33. package/lib/src/brand-page/models/logo.model.d.ts +2 -3
  34. package/lib/src/brand-page/models/logo.model.js +9 -5
  35. package/lib/src/brand-page/models/navigation-styles.model.d.ts +6 -0
  36. package/lib/src/brand-page/models/navigation-styles.model.js +11 -0
  37. package/lib/src/brand-page/models/styles.model.d.ts +9 -2
  38. package/lib/src/brand-page/models/styles.model.js +6 -2
  39. package/lib/src/brand-page/utils/button.util.d.ts +13 -0
  40. package/lib/src/brand-page/utils/button.util.js +55 -19
  41. package/lib/src/brand-page/utils/color-palette-referencify.util.d.ts +20 -0
  42. package/lib/src/brand-page/utils/color-palette-referencify.util.js +31 -0
  43. package/lib/src/brand-page/utils/color-palette.util.d.ts +328 -0
  44. package/lib/src/brand-page/utils/color-palette.util.js +765 -0
  45. package/lib/src/brand-page/utils/color.util.d.ts +35 -2
  46. package/lib/src/brand-page/utils/color.util.js +101 -13
  47. package/lib/src/brand-page/utils/container-text-color.util.d.ts +90 -0
  48. package/lib/src/brand-page/utils/container-text-color.util.js +261 -0
  49. package/lib/src/brand-page/utils/index.d.ts +5 -0
  50. package/lib/src/brand-page/utils/index.js +5 -0
  51. package/lib/src/brand-page/utils/migration/migration-20_5.d.ts +19 -0
  52. package/lib/src/brand-page/utils/migration/migration-20_5.js +31 -0
  53. package/lib/src/brand-page/utils/migration/migration-21.d.ts +39 -0
  54. package/lib/src/brand-page/utils/migration/migration-21.js +717 -0
  55. package/lib/src/brand-page/utils/migration.util.js +34 -0
  56. package/lib/src/brand-page/utils/shape-color-apply.util.d.ts +15 -0
  57. package/lib/src/brand-page/utils/shape-color-apply.util.js +52 -0
  58. package/lib/src/brand-page/utils/shape-color-match.util.d.ts +42 -0
  59. package/lib/src/brand-page/utils/shape-color-match.util.js +33 -0
  60. package/lib/src/brand-page/utils/shape-color-resolve.util.d.ts +16 -0
  61. package/lib/src/brand-page/utils/shape-color-resolve.util.js +142 -0
  62. package/lib/src/brand-page/utils/style.util.d.ts +34 -8
  63. package/lib/src/brand-page/utils/style.util.js +131 -71
  64. package/lib/src/brand-page/utils/text-style.util.d.ts +35 -0
  65. package/lib/src/brand-page/utils/text-style.util.js +31 -0
  66. package/lib/src/brand-page/utils/view-model.util.d.ts +6 -3
  67. package/lib/src/brand-page/utils/view-model.util.js +93 -55
  68. package/lib/src/brand-page/view-models.d.ts +7 -2
  69. package/lib/src/brand-page-maker/assessors/card-fill-visibility.assessor.d.ts +6 -0
  70. package/lib/src/brand-page-maker/assessors/card-fill-visibility.assessor.js +9 -1
  71. package/lib/src/brand-page-maker/components/action-bar/ActionBar.mixin.d.ts +1 -0
  72. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +5 -4
  73. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.mixin.d.ts +1 -0
  74. package/lib/src/brand-page-maker/components/brand-page-maker/starter-kits/background-colors.js +0 -5
  75. package/lib/src/brand-page-maker/components/brand-page-maker/starter-kits/background-gradients.js +0 -5
  76. package/lib/src/brand-page-maker/components/brand-page-maker/starter-kits/background-shapes.js +0 -5
  77. package/lib/src/brand-page-maker/components/brand-page-maker/starter-kits/styles.js +0 -3
  78. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +16 -41
  79. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.js +0 -27
  80. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.d.ts +1 -0
  81. package/lib/src/brand-page-maker/components/color-picker/BpColorPickerV2.mixin.d.ts +9 -0
  82. package/lib/src/brand-page-maker/components/color-picker/BpColorPickerV2.mixin.js +78 -0
  83. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.d.ts +1 -1
  84. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.d.ts +1 -0
  85. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.d.ts +1 -0
  86. package/lib/src/brand-page-maker/components/social-share/SocialShare.mixin.d.ts +1 -0
  87. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.d.ts +1 -0
  88. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.js +12 -12
  89. package/lib/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.js +21 -3
  90. package/lib/src/brand-page-maker/composables/rich-text-editor/extensions/AutoLink.js +1 -1
  91. package/lib/src/brand-page-maker/composables/rich-text-editor/formatting.js +5 -1
  92. package/lib/src/brand-page-maker/composables/rich-text-editor/hyperlink.js +34 -14
  93. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.d.ts +2 -7
  94. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +48 -92
  95. package/lib/src/brand-page-maker/constants/config-settings-constant.js +1 -2
  96. package/lib/src/brand-page-maker/constants/sidebar-constant.d.ts +1 -0
  97. package/lib/src/brand-page-maker/constants/sidebar-constant.js +11 -0
  98. package/lib/src/brand-page-maker/default-getters/contact-form-card-color.default-getter.d.ts +4 -4
  99. package/lib/src/brand-page-maker/default-getters/contact-form-card-color.default-getter.js +6 -6
  100. package/lib/src/brand-page-maker/default-getters/index.d.ts +0 -1
  101. package/lib/src/brand-page-maker/default-getters/index.js +0 -1
  102. package/lib/src/brand-page-maker/default-getters/payment-fill-color.default-getter.js +5 -3
  103. package/lib/src/brand-page-maker/default-getters/payment-text-and-border-color.default-getter.js +3 -3
  104. package/lib/src/brand-page-maker/default-getters/text-color.default-getter.js +3 -3
  105. package/lib/src/brand-page-maker/models/content-settings-configs.d.ts +0 -1
  106. package/lib/src/brand-page-maker/models/content-settings.js +16 -13
  107. package/lib/src/brand-page-maker/models/styles-config.d.ts +1 -1
  108. package/lib/src/brand-page-maker/models/styles-config.js +2 -4
  109. package/lib/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store-utils.d.ts +2 -2
  110. package/lib/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store-utils.js +7 -2
  111. package/lib/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store.js +10 -1
  112. package/lib/src/brand-page-maker/stores/ai-checkpoint/ai-checkpoint-store.d.ts +92 -602
  113. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.d.ts +7 -0
  114. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +96 -35
  115. package/lib/src/brand-page-maker/stores/history/history-store.d.ts +8 -2
  116. package/lib/src/brand-page-maker/stores/history/history-store.js +14 -0
  117. package/lib/src/brand-page-maker/stores/ui/ui-store.d.ts +0 -3
  118. package/lib/src/brand-page-maker/stores/ui/ui-store.js +0 -4
  119. package/lib/src/brand-page-maker/utils/apply-color-strategy.d.ts +54 -0
  120. package/lib/src/brand-page-maker/utils/apply-color-strategy.js +159 -0
  121. package/lib/src/brand-page-maker/utils/index.d.ts +0 -1
  122. package/lib/src/brand-page-maker/utils/index.js +0 -13
  123. package/lib/src/brand-page-maker/utils/rich-text-editor.util.d.ts +6 -21
  124. package/lib/src/brand-page-maker/utils/rich-text-editor.util.js +74 -77
  125. package/lib/src/brand-page-maker/utils/rte-shape.d.ts +18 -0
  126. package/lib/src/brand-page-maker/utils/rte-shape.js +21 -0
  127. package/lib/src/bundled-translations-C98dISr1.js +179 -0
  128. package/lib/src/bundled-translations.de-DE-D8ul_G4P.js +179 -0
  129. package/lib/src/bundled-translations.es-ES-BVmPyfw9.js +179 -0
  130. package/lib/src/bundled-translations.fr-CA-DmzKPhfa.js +179 -0
  131. package/lib/src/bundled-translations.fr-FR-CQRiASGY.js +179 -0
  132. package/lib/src/bundled-translations.pt-BR-guDO9Yfg.js +179 -0
  133. package/lib/src/bundled-translations.pt-PT-GFpLNo-u.js +179 -0
  134. package/lib/src/bundles/bundled-translations.de-DE.json +9 -4
  135. package/lib/src/bundles/bundled-translations.es-ES.json +9 -4
  136. package/lib/src/bundles/bundled-translations.fr-CA.json +9 -4
  137. package/lib/src/bundles/bundled-translations.fr-FR.json +9 -4
  138. package/lib/src/bundles/bundled-translations.json +9 -4
  139. package/lib/src/bundles/bundled-translations.pt-BR.json +9 -4
  140. package/lib/src/bundles/bundled-translations.pt-PT.json +9 -4
  141. package/lib/src/clients/ai-assistant-client.d.ts +1 -0
  142. package/lib/src/clients/ai-assistant-client.js +1 -0
  143. package/lib/src/constants/rich-text-editor.constants.d.ts +6 -0
  144. package/lib/src/constants/rich-text-editor.constants.js +6 -0
  145. package/lib/src/css/library.brand-page-brandCrowd.min.css +271 -133
  146. package/lib/src/css/library.brand-page-brandPage.min.css +271 -133
  147. package/lib/src/css/library.brand-page-designCom.min.css +271 -133
  148. package/lib/src/css/library.brand-page-preview.min.css +271 -133
  149. package/lib/src/index.mjs +174 -172
  150. package/lib/src/{lib-Dp6FhTMZ.js → lib-CO794EeI.js} +34078 -31908
  151. package/lib/src/metadata-builder/builders/global-font-propagation.d.ts +28 -0
  152. package/lib/src/metadata-builder/builders/global-font-propagation.js +125 -0
  153. package/lib/src/metadata-builder/builders/global-styles-builder.js +18 -4
  154. package/lib/src/metadata-builder/builders/reorder-pages-builder.d.ts +13 -0
  155. package/lib/src/metadata-builder/builders/reorder-pages-builder.js +49 -0
  156. package/lib/src/metadata-builder/builders/section-builders/index.d.ts +1 -0
  157. package/lib/src/metadata-builder/builders/section-builders/index.js +1 -0
  158. package/lib/src/metadata-builder/builders/section-builders/support-me-builder.d.ts +8 -0
  159. package/lib/src/metadata-builder/builders/section-builders/support-me-builder.js +25 -0
  160. package/lib/src/metadata-builder/builders/section-builders/text-section-builder.js +5 -2
  161. package/lib/src/metadata-builder/builders/section-field-maps.js +15 -0
  162. package/lib/src/metadata-builder/builders/section-field-utils.d.ts +6 -1
  163. package/lib/src/metadata-builder/builders/section-field-utils.js +48 -12
  164. package/lib/src/metadata-builder/builders/section-rules/support-me.rules.d.ts +2 -0
  165. package/lib/src/metadata-builder/builders/section-rules/support-me.rules.js +17 -0
  166. package/lib/src/metadata-builder/builders/shape-color-utils.d.ts +8 -8
  167. package/lib/src/metadata-builder/builders/shape-color-utils.js +8 -14
  168. package/lib/src/metadata-builder/helpers/rte.helpers.d.ts +9 -0
  169. package/lib/src/metadata-builder/helpers/rte.helpers.js +60 -1
  170. package/lib/src/metadata-builder/metadata-executor.js +11 -2
  171. package/lib/src/metadata-builder/models.d.ts +2 -0
  172. package/lib/src/metadata-builder/models.js +2 -0
  173. package/lib/src/metadata-builder/parsers/ai-toolcall-parser.d.ts +2 -0
  174. package/lib/src/metadata-builder/parsers/ai-toolcall-parser.js +4 -0
  175. package/lib/src/metadata-builder/parsers/section-tool-arguments.d.ts +14 -2
  176. package/lib/src/shared/background-settings/composables/useSingleBackgroundShape.js +5 -7
  177. package/lib/src/shared/background-settings/shape-color.util.d.ts +16 -0
  178. package/lib/src/shared/background-settings/shape-color.util.js +24 -0
  179. package/lib/src/shared/background-settings/store/background-settings-store.js +3 -4
  180. package/lib/src/shared/color-palette/color-match-copy.d.ts +31 -0
  181. package/lib/src/shared/color-palette/color-match-copy.js +112 -0
  182. package/lib/src/shared/color-palette/color-match-state.d.ts +72 -0
  183. package/lib/src/shared/color-palette/color-match-state.js +81 -0
  184. package/lib/src/shared/color-palette/palette-role-labels.d.ts +23 -0
  185. package/lib/src/shared/color-palette/palette-role-labels.js +33 -0
  186. package/lib/src/shared/color-palette/section-color-matches.d.ts +131 -0
  187. package/lib/src/shared/color-palette/section-color-matches.js +300 -0
  188. package/lib/src/shared/color-palette/store/color-palette-store.d.ts +102 -0
  189. package/lib/src/shared/color-palette/store/color-palette-store.js +157 -0
  190. package/lib/src/shared/color-palette/store/index.d.ts +1 -0
  191. package/lib/src/shared/color-palette/store/index.js +1 -0
  192. package/lib/src/shared/color-picker/components/ColorPicker.mixin.d.ts +32 -11
  193. package/lib/src/shared/color-picker/components/ColorPicker.mixin.js +166 -136
  194. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.d.ts +10 -0
  195. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.js +14 -0
  196. package/lib/src/shared/color-picker/constants.d.ts +5 -0
  197. package/lib/src/shared/color-picker/constants.js +35 -31
  198. package/lib/src/shared/color-picker/models.d.ts +13 -2
  199. package/lib/src/shared/color-strategies/color-strategies.d.ts +124 -0
  200. package/lib/src/shared/color-strategies/color-strategies.js +330 -0
  201. package/lib/src/shared/color-strategies/models.d.ts +137 -0
  202. package/lib/src/shared/color-strategies/models.js +5 -0
  203. package/lib/src/shared/color-strategies/page-anchors.d.ts +24 -0
  204. package/lib/src/shared/color-strategies/page-anchors.js +12 -0
  205. package/lib/src/shared/color-strategies/rte-color.d.ts +55 -0
  206. package/lib/src/shared/color-strategies/rte-color.js +187 -0
  207. package/lib/src/shared/color-strategies/rte-field-pairs.d.ts +23 -0
  208. package/lib/src/shared/color-strategies/rte-field-pairs.js +82 -0
  209. package/lib/src/shared/content-settings/components/color-replacements-field/shape-match-options.d.ts +29 -0
  210. package/lib/src/shared/content-settings/components/color-replacements-field/shape-match-options.js +30 -0
  211. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +12 -8
  212. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +5 -1
  213. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +9 -1
  214. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.js +39 -0
  215. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +85 -4
  216. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.js +37 -6
  217. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +20 -1
  218. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.js +50 -0
  219. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.d.ts +1 -0
  220. package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.d.ts +18 -10
  221. package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.js +66 -12
  222. package/lib/src/shared/content-settings/disable-transparent.util.d.ts +20 -0
  223. package/lib/src/shared/content-settings/disable-transparent.util.js +15 -0
  224. package/lib/src/shared/content-settings/models.d.ts +0 -1
  225. package/lib/src/shared/content-settings/store/content-settings-store.d.ts +22 -20
  226. package/lib/src/shared/content-settings/store/content-settings-store.js +33 -16
  227. package/lib/src/shared/content-settings/text-background-color.util.d.ts +11 -0
  228. package/lib/src/shared/content-settings/text-background-color.util.js +11 -0
  229. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.d.ts +0 -3
  230. package/lib/src/shared/logo-settings/components/LogoSettings.mixin.d.ts +2 -0
  231. package/lib/src/shared/logo-versions/LogoVersions.mixin.d.ts +0 -3
  232. package/lib/src/shared/models.d.ts +0 -1
  233. package/lib/src/shared/my-designs/MyDesigns.mixin.d.ts +0 -3
  234. package/lib/src/shared/my-uploads/MyMedia.mixin.d.ts +0 -3
  235. package/lib/src/shared/my-uploads/MyUploads.mixin.d.ts +0 -3
  236. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.d.ts +0 -5
  237. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.js +3 -50
  238. package/lib/src/shared/navigation-style-settings/store/index.js +8 -6
  239. package/lib/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.d.ts +1 -0
  240. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +5 -4
  241. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.js +4 -4
  242. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +5 -9
  243. package/lib/src/shared/page-settings/store/page-settings-store.d.ts +1 -0
  244. package/lib/src/shared/page-settings/store/page-settings-store.js +12 -7
  245. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.d.ts +1 -0
  246. package/lib/src/shared/side-bar/components/SideBar.mixin.js +3 -0
  247. package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +44 -155
  248. package/lib/src/shared/style-settings/components/StyleSettings.mixin.js +10 -61
  249. package/lib/src/shared/style-settings/models.d.ts +0 -1
  250. package/lib/src/shared/style-settings/store/style-settings-store.d.ts +2 -7
  251. package/lib/src/shared/style-settings/store/style-settings-store.js +28 -89
  252. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.d.ts +0 -3
  253. package/lib/src/shared/unsplash-library/UnsplashLibrary.mixin.d.ts +0 -3
  254. package/lib/src/utils/minify-brand-page-metadata.d.ts +6 -1
  255. package/lib/src/utils/minify-brand-page-metadata.js +18 -2
  256. package/package.json +2 -2
  257. package/src/brand-page/components/background-shape/BackgroundShape.mixin.ts +12 -3
  258. package/src/brand-page/components/background-shape/BackgroundShape.test.ts +82 -0
  259. package/src/brand-page/components/collapsible/Collapsible.mixin.ts +4 -6
  260. package/src/brand-page/components/contact-form/ContactForm.mixin.ts +0 -26
  261. package/src/brand-page/components/contact-form/ContactForm.vue +13 -4
  262. package/src/brand-page/components/mailing-list/MailingList.mixin.ts +6 -20
  263. package/src/brand-page/components/mailing-list/MailingList.vue +4 -1
  264. package/src/brand-page/components/media/Shape.mixin.ts +4 -1
  265. package/src/brand-page/components/media/Shape.test.ts +106 -0
  266. package/src/brand-page/components/navigation/navigation-carousel/NavigationCarousel.vue +6 -5
  267. package/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.ts +6 -11
  268. package/src/brand-page/components/page/Page.mixin.ts +90 -8
  269. package/src/brand-page/components/page/Page.vue +12 -0
  270. package/src/brand-page/components/page/Page.vue.test.ts +217 -0
  271. package/src/brand-page/components/payment/Payment.mixin.ts +6 -9
  272. package/src/brand-page/components/payment/request-payment/RequestPayment.mixin.ts +8 -5
  273. package/src/brand-page/components/section-container-inheritance.test.ts +117 -0
  274. package/src/brand-page/components/text-media-section/TextMediaSection.vue +2 -2
  275. package/src/brand-page/components/video/Video.mixin.ts +4 -8
  276. package/src/brand-page/constants/styles.constants.ts +1 -0
  277. package/src/brand-page/models/footer-icon-color.test.ts +142 -0
  278. package/src/brand-page/models/index.ts +83 -15
  279. package/src/brand-page/models/logo.model.ts +15 -6
  280. package/src/brand-page/models/navigation-styles.model.test.ts +49 -0
  281. package/src/brand-page/models/navigation-styles.model.ts +17 -0
  282. package/src/brand-page/models/styles.model.ts +17 -3
  283. package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +132 -57
  284. package/src/brand-page/utils/__snapshots__/migration2.util.test.ts.snap +11 -6
  285. package/src/brand-page/utils/__snapshots__/model.util.test.ts.snap +22 -12
  286. package/src/brand-page/utils/button.util.test.ts +137 -0
  287. package/src/brand-page/utils/button.util.ts +75 -22
  288. package/src/brand-page/utils/color-palette-referencify.util.test.ts +239 -0
  289. package/src/brand-page/utils/color-palette-referencify.util.ts +53 -0
  290. package/src/brand-page/utils/color-palette.util.test.ts +1251 -0
  291. package/src/brand-page/utils/color-palette.util.ts +1021 -0
  292. package/src/brand-page/utils/color.util.test.ts +187 -0
  293. package/src/brand-page/utils/color.util.ts +126 -20
  294. package/src/brand-page/utils/container-text-color.util.test.ts +630 -0
  295. package/src/brand-page/utils/container-text-color.util.ts +391 -0
  296. package/src/brand-page/utils/index.ts +5 -0
  297. package/src/brand-page/utils/migration/migration-20_5.test.ts +149 -0
  298. package/src/brand-page/utils/migration/migration-20_5.ts +40 -0
  299. package/src/brand-page/utils/migration/migration-21.test.ts +2596 -0
  300. package/src/brand-page/utils/migration/migration-21.ts +986 -0
  301. package/src/brand-page/utils/migration.util.ts +36 -0
  302. package/src/brand-page/utils/shape-color-apply.util.test.ts +154 -0
  303. package/src/brand-page/utils/shape-color-apply.util.ts +72 -0
  304. package/src/brand-page/utils/shape-color-match.util.test.ts +115 -0
  305. package/src/brand-page/utils/shape-color-match.util.ts +74 -0
  306. package/src/brand-page/utils/shape-color-resolve.util.test.ts +484 -0
  307. package/src/brand-page/utils/shape-color-resolve.util.ts +195 -0
  308. package/src/brand-page/utils/style.util.test.ts +380 -4
  309. package/src/brand-page/utils/style.util.ts +169 -125
  310. package/src/brand-page/utils/text-style.util.ts +41 -0
  311. package/src/brand-page/utils/view-model.util.test.ts +760 -3
  312. package/src/brand-page/utils/view-model.util.ts +137 -50
  313. package/src/brand-page/view-models.ts +11 -1
  314. package/src/brand-page-maker/assessors/card-fill-visibility.assessor.test.ts +52 -0
  315. package/src/brand-page-maker/assessors/card-fill-visibility.assessor.ts +18 -8
  316. package/src/brand-page-maker/components/admin-logo-settings/AdminLogoSettings.vue +0 -6
  317. package/src/brand-page-maker/components/admin-settings/AdminSettings.vue +21 -0
  318. package/src/brand-page-maker/components/ai-website-builder/AiWebsiteBuilder.vue +1 -1
  319. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.vue +2 -0
  320. package/src/brand-page-maker/components/brand-page-maker/starter-kits/background-colors.ts +0 -5
  321. package/src/brand-page-maker/components/brand-page-maker/starter-kits/background-gradients.ts +0 -5
  322. package/src/brand-page-maker/components/brand-page-maker/starter-kits/background-shapes.ts +0 -5
  323. package/src/brand-page-maker/components/brand-page-maker/starter-kits/styles.ts +0 -3
  324. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.ts +0 -31
  325. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.vue +0 -2
  326. package/src/brand-page-maker/components/color-palette/BpColorPalette.test.ts +138 -0
  327. package/src/brand-page-maker/components/color-palette/BpColorPalette.vue +129 -18
  328. package/src/brand-page-maker/components/color-palette/BpColorPicker.test.ts +277 -0
  329. package/src/brand-page-maker/components/color-palette/BpColorPicker.vue +120 -58
  330. package/src/brand-page-maker/components/color-palette/i18n/color-palette.de-DE.json +2 -1
  331. package/src/brand-page-maker/components/color-palette/i18n/color-palette.es-ES.json +2 -1
  332. package/src/brand-page-maker/components/color-palette/i18n/color-palette.fr-CA.json +2 -1
  333. package/src/brand-page-maker/components/color-palette/i18n/color-palette.fr-FR.json +2 -1
  334. package/src/brand-page-maker/components/color-palette/i18n/color-palette.json +2 -1
  335. package/src/brand-page-maker/components/color-palette/i18n/color-palette.pt-BR.json +2 -1
  336. package/src/brand-page-maker/components/color-palette/i18n/color-palette.pt-PT.json +2 -1
  337. package/src/brand-page-maker/components/color-picker/BpColorPickerV2.mixin.ts +88 -0
  338. package/src/brand-page-maker/components/color-picker/BpColorPickerV2.test.ts +92 -0
  339. package/src/brand-page-maker/components/color-picker/BpColorPickerV2.vue +6 -2
  340. package/src/brand-page-maker/components/rich-text-editor/RichTextEditor.vue +53 -193
  341. package/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.test.ts +29 -0
  342. package/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.ts +12 -13
  343. package/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.ts +24 -3
  344. package/src/brand-page-maker/composables/rich-text-editor/extensions/AutoLink.ts +1 -2
  345. package/src/brand-page-maker/composables/rich-text-editor/formatting.test.ts +75 -0
  346. package/src/brand-page-maker/composables/rich-text-editor/formatting.ts +7 -1
  347. package/src/brand-page-maker/composables/rich-text-editor/hyperlink.test.ts +81 -0
  348. package/src/brand-page-maker/composables/rich-text-editor/hyperlink.ts +39 -16
  349. package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +67 -117
  350. package/src/brand-page-maker/constants/config-settings-constant.ts +0 -2
  351. package/src/brand-page-maker/constants/sidebar-constant.ts +11 -0
  352. package/src/brand-page-maker/default-getters/contact-form-card-color.default-getter.ts +6 -8
  353. package/src/brand-page-maker/default-getters/index.ts +0 -1
  354. package/src/brand-page-maker/default-getters/payment-fill-color.default-getter.ts +5 -5
  355. package/src/brand-page-maker/default-getters/payment-text-and-border-color.default-getter.ts +5 -3
  356. package/src/brand-page-maker/default-getters/text-color.default-getter.ts +5 -3
  357. package/src/brand-page-maker/models/content-settings-configs.ts +0 -3
  358. package/src/brand-page-maker/models/content-settings.ts +19 -13
  359. package/src/brand-page-maker/models/styles-config.ts +2 -4
  360. package/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store-utils.test.ts +115 -0
  361. package/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store-utils.ts +8 -3
  362. package/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store.test.ts +124 -0
  363. package/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store.ts +10 -0
  364. package/src/brand-page-maker/stores/brandpage-maker/__snapshots__/brandpage-maker-store.test.ts.snap +3 -3
  365. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.test.ts +591 -11
  366. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +113 -59
  367. package/src/brand-page-maker/stores/history/history-store.test.ts +33 -0
  368. package/src/brand-page-maker/stores/history/history-store.ts +15 -0
  369. package/src/brand-page-maker/stores/ui/ui-store.ts +0 -6
  370. package/src/brand-page-maker/utils/__snapshots__/apply-color-strategy.golden.test.ts.snap +27475 -0
  371. package/src/brand-page-maker/utils/apply-color-strategy.golden.test.ts +174 -0
  372. package/src/brand-page-maker/utils/apply-color-strategy.test.ts +1663 -0
  373. package/src/brand-page-maker/utils/apply-color-strategy.ts +290 -0
  374. package/src/brand-page-maker/utils/index.ts +0 -18
  375. package/src/brand-page-maker/utils/rich-text-editor.util.test.ts +510 -0
  376. package/src/brand-page-maker/utils/rich-text-editor.util.ts +123 -91
  377. package/src/brand-page-maker/utils/rte-shape.ts +29 -0
  378. package/src/bundles/bundled-translations.de-DE.json +9 -4
  379. package/src/bundles/bundled-translations.es-ES.json +9 -4
  380. package/src/bundles/bundled-translations.fr-CA.json +9 -4
  381. package/src/bundles/bundled-translations.fr-FR.json +9 -4
  382. package/src/bundles/bundled-translations.json +9 -4
  383. package/src/bundles/bundled-translations.pt-BR.json +9 -4
  384. package/src/bundles/bundled-translations.pt-PT.json +9 -4
  385. package/src/clients/ai-assistant-client.ts +1 -0
  386. package/src/constants/rich-text-editor.constants.ts +6 -0
  387. package/src/metadata-builder/builders/global-font-propagation.test.ts +269 -0
  388. package/src/metadata-builder/builders/global-font-propagation.ts +205 -0
  389. package/src/metadata-builder/builders/global-styles-builder.ts +23 -4
  390. package/src/metadata-builder/builders/reorder-pages-builder.ts +80 -0
  391. package/src/metadata-builder/builders/section-builders/index.ts +1 -0
  392. package/src/metadata-builder/builders/section-builders/support-me-builder.test.ts +177 -0
  393. package/src/metadata-builder/builders/section-builders/support-me-builder.ts +43 -0
  394. package/src/metadata-builder/builders/section-builders/text-section-builder.ts +5 -2
  395. package/src/metadata-builder/builders/section-field-maps.ts +18 -0
  396. package/src/metadata-builder/builders/section-field-utils.test.ts +83 -0
  397. package/src/metadata-builder/builders/section-field-utils.ts +69 -18
  398. package/src/metadata-builder/builders/section-rules/support-me.rules.ts +39 -0
  399. package/src/metadata-builder/builders/shape-color-utils.ts +9 -23
  400. package/src/metadata-builder/helpers/rte.helpers.ts +82 -1
  401. package/src/metadata-builder/metadata-executor.ts +11 -1
  402. package/src/metadata-builder/models.ts +2 -0
  403. package/src/metadata-builder/parsers/ai-toolcall-parser.ts +5 -0
  404. package/src/metadata-builder/parsers/section-tool-arguments.ts +14 -1
  405. package/src/shared/background-settings/components/BackgroundSettings.vue +4 -4
  406. package/src/shared/background-settings/components/MultiBackgroundShapes.vue +10 -10
  407. package/src/shared/background-settings/components/SingleBackgroundShape.vue +6 -2
  408. package/src/shared/background-settings/components/background-color/BackgroundColorSettings.vue +6 -28
  409. package/src/shared/background-settings/composables/useSingleBackgroundShape.ts +5 -8
  410. package/src/shared/background-settings/shape-color.util.test.ts +47 -0
  411. package/src/shared/background-settings/shape-color.util.ts +26 -0
  412. package/src/shared/background-settings/store/background-settings-store.ts +7 -4
  413. package/src/shared/color-palette/color-match-copy.test.ts +202 -0
  414. package/src/shared/color-palette/color-match-copy.ts +163 -0
  415. package/src/shared/color-palette/color-match-state.test.ts +210 -0
  416. package/src/shared/color-palette/color-match-state.ts +163 -0
  417. package/src/shared/color-palette/palette-role-labels.ts +38 -0
  418. package/src/shared/color-palette/section-color-matches.test.ts +956 -0
  419. package/src/shared/color-palette/section-color-matches.ts +517 -0
  420. package/src/shared/color-palette/store/color-palette-store.test.ts +481 -0
  421. package/src/shared/color-palette/store/color-palette-store.ts +222 -0
  422. package/src/shared/color-palette/store/index.ts +1 -0
  423. package/src/shared/color-picker/components/ColorPicker.mixin.ts +191 -168
  424. package/src/shared/color-picker/components/ColorPickerSwatch.mixin.ts +14 -0
  425. package/src/shared/color-picker/components/ColorPickerSwatch.vue +1 -0
  426. package/src/shared/color-picker/constants.ts +36 -31
  427. package/src/shared/color-picker/models.ts +20 -2
  428. package/src/shared/color-strategies/color-strategies.test.ts +568 -0
  429. package/src/shared/color-strategies/color-strategies.ts +417 -0
  430. package/src/shared/color-strategies/models.ts +159 -0
  431. package/src/shared/color-strategies/page-anchors.ts +30 -0
  432. package/src/shared/color-strategies/rte-color.test.ts +438 -0
  433. package/src/shared/color-strategies/rte-color.ts +258 -0
  434. package/src/shared/color-strategies/rte-field-pairs.test.ts +50 -0
  435. package/src/shared/color-strategies/rte-field-pairs.ts +96 -0
  436. package/src/shared/content-settings/components/color-field/ColorField.test.ts +1067 -0
  437. package/src/shared/content-settings/components/color-field/ColorField.vue +406 -134
  438. package/src/shared/content-settings/components/color-field/i18n/color-field.de-DE.json +4 -1
  439. package/src/shared/content-settings/components/color-field/i18n/color-field.es-ES.json +4 -1
  440. package/src/shared/content-settings/components/color-field/i18n/color-field.fr-CA.json +4 -1
  441. package/src/shared/content-settings/components/color-field/i18n/color-field.fr-FR.json +4 -1
  442. package/src/shared/content-settings/components/color-field/i18n/color-field.json +4 -1
  443. package/src/shared/content-settings/components/color-field/i18n/color-field.pt-BR.json +4 -1
  444. package/src/shared/content-settings/components/color-field/i18n/color-field.pt-PT.json +4 -1
  445. package/src/shared/content-settings/components/color-match-indicator/ColorMatchIndicator.test.ts +109 -0
  446. package/src/shared/content-settings/components/color-match-indicator/ColorMatchIndicator.vue +72 -0
  447. package/src/shared/content-settings/components/color-matches-panel/ColorMatchSwatch.vue +98 -0
  448. package/src/shared/content-settings/components/color-matches-panel/ColorMatchesPanel.test.ts +846 -0
  449. package/src/shared/content-settings/components/color-matches-panel/ColorMatchesPanel.vue +583 -0
  450. package/src/shared/content-settings/components/color-matches-panel/color-matches-gate.test.ts +65 -0
  451. package/src/shared/content-settings/components/color-replacements-field/ColorReplacementsField.test.ts +322 -0
  452. package/src/shared/content-settings/components/color-replacements-field/ColorReplacementsField.vue +106 -90
  453. package/src/shared/content-settings/components/color-replacements-field/shape-match-options.ts +66 -0
  454. package/src/shared/content-settings/components/color-strategy-panel/ColorStrategyPanel.test.ts +152 -0
  455. package/src/shared/content-settings/components/color-strategy-panel/ColorStrategyPanel.vue +85 -0
  456. package/src/shared/content-settings/components/color-strategy-panel/color-strategy-gate.test.ts +113 -0
  457. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.ts +55 -0
  458. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.vue +28 -0
  459. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.ts +46 -9
  460. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.test.ts +134 -0
  461. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.vue +7 -3
  462. package/src/shared/content-settings/components/draggable-item-list/DraggableItemList.vue +0 -1
  463. package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.ts +68 -0
  464. package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.vue +18 -0
  465. package/src/shared/content-settings/components/page-dropdown-field/PageDropdownField.vue +1 -8
  466. package/src/shared/content-settings/components/shape-field/ShapeField.vue +0 -1
  467. package/src/shared/content-settings/components/testimonial-items-field/TestimonialItemsField.vue +0 -1
  468. package/src/shared/content-settings/components/text-image-field/TextImageField.vue +0 -1
  469. package/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.test.ts +325 -0
  470. package/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.ts +76 -13
  471. package/src/shared/content-settings/components/text-style-field/TextStyleField.vue +7 -15
  472. package/src/shared/content-settings/disable-transparent.util.ts +31 -0
  473. package/src/shared/content-settings/models.ts +0 -3
  474. package/src/shared/content-settings/store/content-settings-store.test.ts +182 -0
  475. package/src/shared/content-settings/store/content-settings-store.ts +50 -27
  476. package/src/shared/content-settings/text-background-color.util.ts +15 -0
  477. package/src/shared/logo-settings/components/EditLogoSettings.vue +2 -0
  478. package/src/shared/models.ts +0 -1
  479. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.ts +3 -64
  480. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.vue +17 -69
  481. package/src/shared/navigation-style-settings/store/index.ts +11 -13
  482. package/src/shared/page-settings/components/header-settings-panel/HeaderSettingsPanel.vue +1 -0
  483. package/src/shared/page-settings/components/page-settings/PageSettings.mixin.test.ts +125 -0
  484. package/src/shared/page-settings/components/page-settings/PageSettings.mixin.ts +5 -6
  485. package/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.vue +0 -4
  486. package/src/shared/page-settings/store/page-settings-store.test.ts +71 -0
  487. package/src/shared/page-settings/store/page-settings-store.ts +15 -9
  488. package/src/shared/side-bar/components/SideBar.mixin.ts +3 -0
  489. package/src/shared/side-bar/components/SideBar.tabs.test.ts +89 -0
  490. package/src/shared/style-settings/components/StyleSettings.mixin.ts +13 -80
  491. package/src/shared/style-settings/components/StyleSettings.vue +26 -220
  492. package/src/shared/style-settings/components/color-palette-settings-with-state/ColorPaletteSettingsWithState.test.ts +226 -0
  493. package/src/shared/style-settings/components/color-palette-settings-with-state/ColorPaletteSettingsWithState.vue +135 -0
  494. package/src/shared/style-settings/components/i18n/style-settings.de-DE.json +3 -2
  495. package/src/shared/style-settings/components/i18n/style-settings.es-ES.json +3 -2
  496. package/src/shared/style-settings/components/i18n/style-settings.fr-CA.json +3 -2
  497. package/src/shared/style-settings/components/i18n/style-settings.fr-FR.json +3 -2
  498. package/src/shared/style-settings/components/i18n/style-settings.json +3 -2
  499. package/src/shared/style-settings/components/i18n/style-settings.pt-BR.json +3 -2
  500. package/src/shared/style-settings/components/i18n/style-settings.pt-PT.json +3 -2
  501. package/src/shared/style-settings/models.ts +0 -1
  502. package/src/shared/style-settings/store/style-settings-store.test.ts +87 -3
  503. package/src/shared/style-settings/store/style-settings-store.ts +34 -155
  504. package/src/utils/minify-brand-page-metadata.test.ts +160 -0
  505. package/src/utils/minify-brand-page-metadata.ts +27 -3
  506. package/lib/src/brand-page-maker/default-getters/logo-background-fill.default-getter.d.ts +0 -2
  507. package/lib/src/brand-page-maker/default-getters/logo-background-fill.default-getter.js +0 -3
  508. package/lib/src/bundled-translations-CBgHUH3L.js +0 -179
  509. package/lib/src/bundled-translations.de-DE-BejTOhXt.js +0 -179
  510. package/lib/src/bundled-translations.es-ES-9pAxYFXf.js +0 -179
  511. package/lib/src/bundled-translations.fr-CA-D3HXgE7j.js +0 -179
  512. package/lib/src/bundled-translations.fr-FR-CgaoFbXt.js +0 -179
  513. package/lib/src/bundled-translations.pt-BR-B08fUxuV.js +0 -179
  514. package/lib/src/bundled-translations.pt-PT-DBYuSl3T.js +0 -179
  515. package/lib/src/shared/background-settings/components/background-shapes/BackgroundShapeSettings.mixin.d.ts +0 -286
  516. package/lib/src/shared/background-settings/components/background-shapes/BackgroundShapeSettings.mixin.js +0 -61
  517. package/src/brand-page/components/contact-form/ContactForm.mixin.test.ts +0 -77
  518. package/src/brand-page-maker/default-getters/logo-background-fill.default-getter.ts +0 -7
  519. package/src/shared/background-settings/components/background-shapes/BackgroundShapeSettings.mixin.ts +0 -70
  520. package/src/shared/background-settings/components/background-shapes/BackgroundShapeSettings.vue +0 -28
@@ -1,5 +1,5 @@
1
1
  import { openBlock as e, createElementBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-Dp6FhTMZ.js";
2
+ import { _ as t } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as t } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as t } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as t } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as t } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as t } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as t } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as e } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as e } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as e } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as e } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as e } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as M } from "./lib-CO794EeI.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-Dp6FhTMZ.js";
2
+ import { _ as M } from "./lib-CO794EeI.js";
3
3
  const Z = {}, e = {
4
4
  width: "232",
5
5
  height: "36",
@@ -16,6 +16,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
16
16
  backgroundShapesStyle(): BrandPageCssStyle;
17
17
  isFullBackground(): boolean;
18
18
  objectUrl(): string;
19
+ shapeColor(): string;
19
20
  }, {
20
21
  isValidSvgUrl(url: string): boolean;
21
22
  applySvgAttributes(svgData: string): string;
@@ -48,9 +48,17 @@ export default defineComponent({
48
48
  }
49
49
  return this.viewModel.name;
50
50
  },
51
+ // A background shape's colour is stored as a palette REFERENCE (one colour per shape,
52
+ // so referencify includes it — unlike section-shape `replacementColor`, which stays
53
+ // raw). `Page.mixin.backgroundShapes` resolves it to a concrete value before it reaches
54
+ // this component, because the `<img>`-embedded SVG can't resolve `var()` itself — so by
55
+ // the time we read it here it is already concrete.
56
+ shapeColor() {
57
+ return this.viewModel?.style?.color;
58
+ },
51
59
  },
52
60
  watch: {
53
- 'viewModel.style.color': {
61
+ shapeColor: {
54
62
  handler() {
55
63
  this.render();
56
64
  },
@@ -146,8 +154,8 @@ export default defineComponent({
146
154
  else {
147
155
  this.originalSvgData = this.viewModel.name;
148
156
  }
149
- if (this.viewModel.style.color) {
150
- this.svgData = applyColorToSvgString(this.originalSvgData, this.viewModel.style.color);
157
+ if (this.shapeColor) {
158
+ this.svgData = applyColorToSvgString(this.originalSvgData, this.shapeColor);
151
159
  }
152
160
  else {
153
161
  this.svgData = this.originalSvgData;
@@ -1,4 +1,5 @@
1
1
  import { defineComponent } from 'vue';
2
+ import { sectionFrameStyle } from '@brand-page/utils/button.util';
2
3
  export default defineComponent({
3
4
  props: {
4
5
  canCollapse: {
@@ -40,11 +41,9 @@ export default defineComponent({
40
41
  }),
41
42
  computed: {
42
43
  containerStyle() {
43
- const containerStyle = { ...this.buttonStyles };
44
- const borderRadius = containerStyle.borderRadius;
45
- if (borderRadius === '9999px') {
46
- containerStyle.borderRadius = '26px';
47
- }
44
+ const containerStyle = sectionFrameStyle(this.buttonStyles, {
45
+ pillRadius: '26px',
46
+ });
48
47
  // Guarded on backgroundColor so an empty {} never blanks the container
49
48
  // (BP/BC contact-form card colour defaults to the button fill).
50
49
  if (this.cardStyle?.backgroundColor) {
@@ -67,7 +67,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
67
67
  renderText(): string;
68
68
  renderSuccessText(): string;
69
69
  successMessageColorStyle(): BrandPageCssStyle;
70
- disclosureColor(): string | undefined;
71
70
  }, {
72
71
  submitContactForm(): Promise<void>;
73
72
  validateFormValues(): void;
@@ -5,7 +5,7 @@ import { isDecorativeButtonStyle } from '../../utils/button.util';
5
5
  import brandPageClient from '../../clients/brand-page.client';
6
6
  import { isEmail } from '../../../utils/validator.util';
7
7
  import { ALIGN_CARD_CENTER, ALIGN_CARD_CENTER_IMAGE, ALIGN_CENTERED, ALIGN_LEFT_FULL_IMAGE, ALIGN_RIGHT_FULL_IMAGE, DISPLAY_STYLE_COLLAPSED, RECAPTCHA_ACTION_CONTACT_FORM, TEXT_ONLY, } from '../../constants';
8
- import { getRenderText, contentPaddingStyle as toContentPaddingStyle, mutedTextForBackground, backgroundColorFromStyle, } from '@brand-page/utils';
8
+ import { getRenderText, contentPaddingStyle as toContentPaddingStyle, } from '@brand-page/utils';
9
9
  import { hasRTEContent } from '@brand-page-maker/utils';
10
10
  import { useReCaptcha } from '../../composables/recaptcha.composable';
11
11
  export default defineComponent({
@@ -158,26 +158,6 @@ export default defineComponent({
158
158
  }
159
159
  return {};
160
160
  },
161
- disclosureColor() {
162
- // Anchor the reCAPTCHA footnote to the surface it visually sits on, which
163
- // differs by website type:
164
- // - brandSite: the card style (card + divided layouts) or the section
165
- // background (other layouts).
166
- // - brand.page / brand.contact: the container is the collapsible, whose
167
- // colour is the card colour (defaulting to the global button fill).
168
- // Falls back to the title colour when there's no solid colour to anchor to.
169
- const style = this.context.isBrandSite
170
- ? this.hasCard || this.isDividedContent
171
- ? this.viewModel.cardStyle
172
- : this.hasBgColor
173
- ? this.viewModel.backgroundStyle
174
- : undefined
175
- : this.viewModel.cardStyle?.backgroundColor
176
- ? this.viewModel.cardStyle
177
- : this.viewModel.buttonStyles?.style;
178
- return (mutedTextForBackground(backgroundColorFromStyle(style)) ??
179
- this.viewModel.titleStyle?.color);
180
- },
181
161
  },
182
162
  watch: {
183
163
  fields(fields) {
@@ -48,7 +48,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
48
48
  hasFormError(): boolean;
49
49
  isNameRequired(): boolean;
50
50
  hasSubmitError(): boolean;
51
- disclosureColor(): string | undefined;
52
51
  buttonStyle(): BrandPageCssStyle;
53
52
  buttonText(): string;
54
53
  containerStyle(): BrandPageCssStyle;
@@ -1,6 +1,7 @@
1
1
  import { defineComponent } from 'vue';
2
2
  import brandPageClient from '../../clients/brand-page.client';
3
- import { getEmailValidationError, contentPaddingStyle as toContentPaddingStyle, isPreviewMode, mutedTextForBackground, backgroundColorFromStyle, } from '@brand-page/utils';
3
+ import { getEmailValidationError, contentPaddingStyle as toContentPaddingStyle, isPreviewMode, } from '@brand-page/utils';
4
+ import { sectionFrameStyle } from '@brand-page/utils/button.util';
4
5
  import { contentSettingsTr, mailingListTr, } from '@src/composables/useTranslate';
5
6
  import { useReCaptcha } from '../../composables/recaptcha.composable';
6
7
  import { RECAPTCHA_ACTION_MAILING_LIST } from '../../constants';
@@ -71,13 +72,6 @@ export default defineComponent({
71
72
  hasSubmitError() {
72
73
  return Boolean(this.submitError);
73
74
  },
74
- disclosureColor() {
75
- // The mailing-list box uses the button style as its background, so anchor
76
- // the reCAPTCHA footnote to that. Falls back to the title colour when the
77
- // background isn't a solid colour.
78
- const bg = backgroundColorFromStyle(this.viewModel.styles?.style);
79
- return mutedTextForBackground(bg) ?? this.viewModel.titleStyle?.color;
80
- },
81
75
  buttonStyle() {
82
76
  const buttonStyle = { ...this.viewModel.styles?.style };
83
77
  if (buttonStyle.borderStyle !== 'solid') {
@@ -91,17 +85,14 @@ export default defineComponent({
91
85
  return (this.viewModel?.buttonText || contentSettingsTr('subscribePlaceholder'));
92
86
  },
93
87
  containerStyle() {
94
- const buttonStyle = { ...this.viewModel.styles?.style };
95
- const borderRadius = buttonStyle.borderRadius;
96
- if (borderRadius === '9999px') {
97
- buttonStyle.borderRadius = '24px';
98
- }
88
+ const style = sectionFrameStyle(this.viewModel.styles?.style, {
89
+ pillRadius: '24px',
90
+ });
99
91
  // Own background colour decouples the container from the button fill (BP-5800).
100
92
  if (this.viewModel.backgroundStyle?.backgroundColor) {
101
- buttonStyle.backgroundColor =
102
- this.viewModel.backgroundStyle.backgroundColor;
93
+ style.backgroundColor = this.viewModel.backgroundStyle.backgroundColor;
103
94
  }
104
- return buttonStyle;
95
+ return style;
105
96
  },
106
97
  isFormDisabled() {
107
98
  return (this.hasFormError ||
@@ -60,6 +60,9 @@ export default defineComponent({
60
60
  },
61
61
  },
62
62
  watch: {
63
+ // Shape fills are raw colours, never palette references: an `<img>`-embedded SVG is
64
+ // an isolated document where `var()` never resolves, so the picker bakes each pick to
65
+ // a concrete value — nothing to resolve here, no palette to watch.
63
66
  colorReplacements: {
64
67
  handler(newVal, oldVal) {
65
68
  if (newVal &&
@@ -136,7 +139,7 @@ export default defineComponent({
136
139
  if (!this.originalSvgData) {
137
140
  return;
138
141
  }
139
- this.svgData = applyColorReplacementsToSvgString(this.originalSvgData, this.colorReplacements);
142
+ this.svgData = applyColorReplacementsToSvgString(this.originalSvgData, this.colorReplacements ?? []);
140
143
  this.svgData = this.applySvgAttributes(this.svgData);
141
144
  const blob = new Blob([this.svgData], { type: 'image/svg+xml' });
142
145
  const oldSvgDataObjectUrl = this.svgDataObjectUrl;
@@ -1,5 +1,5 @@
1
1
  import { defineComponent } from 'vue';
2
- import { isUnsetOrTransparentColor } from '../../../models';
2
+ import { resolveSubNavItemBackgroundColor } from '../../../models';
3
3
  export default defineComponent({
4
4
  props: {
5
5
  context: {
@@ -76,16 +76,10 @@ export default defineComponent({
76
76
  const baseStyle = isActive
77
77
  ? this.selectedButtonStyle
78
78
  : this.defaultButtonStyle;
79
- const subNavBackgroundColor = this.styles.hamburgerMenuStyle.subNavBackgroundColor ?? '#ffffff';
80
- // An active sub-page uses the selected button colour, but when that colour
81
- // is transparent/unset it must keep the sub-nav background colour rather
82
- // than rendering transparent (BP-5751).
83
79
  return {
84
80
  ...baseStyle,
85
81
  paddingLeft: '32px',
86
- backgroundColor: isActive && !isUnsetOrTransparentColor(baseStyle.backgroundColor)
87
- ? baseStyle.backgroundColor
88
- : subNavBackgroundColor,
82
+ backgroundColor: resolveSubNavItemBackgroundColor(isActive, baseStyle.backgroundColor, this.styles.hamburgerMenuStyle.subNavBackgroundColor),
89
83
  };
90
84
  },
91
85
  closeSideMenu() {
@@ -50,9 +50,21 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
50
50
  }, {
51
51
  isSideMenuOpen: boolean;
52
52
  styles: {};
53
+ pageScopeId: string;
53
54
  }, {
54
55
  brandPageToken(): string | null;
56
+ paletteStyleHtml(): string;
57
+ pageScopeAttrs(): Record<string, string | undefined>;
55
58
  contents(): ContentViewModel[];
59
+ /**
60
+ * Where background-shape colours stop being palette references: a shape is
61
+ * painted as an object-URL SVG, an isolated document where the page's `:root`
62
+ * custom properties do not apply and `var(--id)` resolves to nothing.
63
+ * Resolved here rather than inside `BackgroundShape`, keeping that component a
64
+ * pure painter free of the `provide('getPaletteColors')` coupling its tests
65
+ * exist to prevent. `resolveColorReference` passes non-references through
66
+ * untouched, so pre- and post-migration sites render side by side.
67
+ */
56
68
  backgroundShapes(): BackgroundShape[];
57
69
  rootElementStyles(): BrandPageCssStyle;
58
70
  rootBackgroundStyles(): BrandPageCssStyle;
@@ -1,9 +1,14 @@
1
1
  import { defineComponent } from 'vue';
2
2
  import { DEFAULT_FONT_FAMILY_KEY, FALLBACK_FONT_FAMILIES, FONT_FAMILY_CONFIGS, } from '../../constants';
3
- import { getSlugFromContext, getPageHeadingText } 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';
7
+ // Per-instance id for a `Page` instance. Deliberately generic — any per-instance
8
+ // CSS/DOM anchor may target it; the scoped palette emission is just the first
9
+ // consumer. A module counter rather than Vue's `useId()`, which is only unique
10
+ // within one app instance, so two apps in a document would mint colliding ids.
11
+ let pageScopeSeq = 0;
7
12
  export default defineComponent({
8
13
  props: {
9
14
  context: {
@@ -71,16 +76,62 @@ export default defineComponent({
71
76
  return {
72
77
  isSideMenuOpen: false,
73
78
  styles: {},
79
+ pageScopeId: '',
74
80
  };
75
81
  },
76
82
  computed: {
77
83
  brandPageToken() {
78
84
  return this.viewModel?.brandPageToken || null;
79
85
  },
86
+ // The one palette emitter and scoper — every surface renders `Page`, so the
87
+ // published site and the maker preview can't disagree about a colour.
88
+ // The selector switches by surface (see the page-owned-palette-scoping ADR):
89
+ // standalone emits `:root` (SSR'd, and it must reach teleported content);
90
+ // template cards emit a per-instance scoped block because a grid holds many
91
+ // palettes in one document and they all share the fixed `--palette-N` names.
92
+ paletteStyleHtml() {
93
+ const colors = this.viewModel?.styles?.colors ?? [];
94
+ return this.context?.isTemplate
95
+ ? buildPaletteScopedCss(colors, this.pageScopeId)
96
+ : buildPaletteRootCss(colors);
97
+ },
98
+ // Spread onto EVERY top-level node of Page's fragment (template mode only).
99
+ // The root-background/overlay siblings paint values that can hold
100
+ // `var(--palette-…)`, and a custom property applies to its own node too.
101
+ pageScopeAttrs() {
102
+ return {
103
+ [PAGE_SCOPE_ID_ATTRIBUTE]: this.context?.isTemplate
104
+ ? this.pageScopeId
105
+ : undefined,
106
+ };
107
+ },
80
108
  contents() {
81
109
  return this.pageViewModel?.contents || [];
82
110
  },
111
+ /**
112
+ * Where background-shape colours stop being palette references: a shape is
113
+ * painted as an object-URL SVG, an isolated document where the page's `:root`
114
+ * custom properties do not apply and `var(--id)` resolves to nothing.
115
+ * Resolved here rather than inside `BackgroundShape`, keeping that component a
116
+ * pure painter free of the `provide('getPaletteColors')` coupling its tests
117
+ * exist to prevent. `resolveColorReference` passes non-references through
118
+ * untouched, so pre- and post-migration sites render side by side.
119
+ */
83
120
  backgroundShapes() {
121
+ const palette = this.viewModel?.styles?.colors ?? [];
122
+ // `withRoleDefaults`: a blank/absent brand role paints the same default the
123
+ // emitted `:root` substitutes.
124
+ const withResolvedColor = (shape) => shape?.style?.color
125
+ ? {
126
+ ...shape,
127
+ style: {
128
+ ...shape.style,
129
+ color: resolveColorReference(shape.style.color, palette, {
130
+ withRoleDefaults: true,
131
+ }),
132
+ },
133
+ }
134
+ : shape;
84
135
  const backgroundShapes = [
85
136
  ...(this.viewModel?.styles?.backgroundStylesViewModel
86
137
  ?.backgroundShapes || []),
@@ -99,7 +150,7 @@ export default defineComponent({
99
150
  },
100
151
  });
101
152
  }
102
- return backgroundShapes;
153
+ return backgroundShapes.map(withResolvedColor);
103
154
  },
104
155
  rootElementStyles() {
105
156
  let styles = {};
@@ -110,7 +161,13 @@ export default defineComponent({
110
161
  ...this.viewModel?.styles?.backgroundStylesViewModel?.style,
111
162
  };
112
163
  }
113
- Object.assign(styles, this.viewModel?.styles?.textStyles?.style);
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
+ }
114
171
  const textFontFamilyKey = this.viewModel.styles?.textStyles.textFontFamily ||
115
172
  DEFAULT_FONT_FAMILY_KEY;
116
173
  const textFontFamilyConfig = FONT_FAMILY_CONFIGS[textFontFamilyKey];
@@ -165,14 +222,18 @@ export default defineComponent({
165
222
  const hasMedia = bgViewModel?.mediaViewModel ||
166
223
  (bgViewModel?.backgroundImageUrl &&
167
224
  !bgViewModel.backgroundImageUrl.endsWith('.svg'));
168
- const overlayStyle = bgViewModel?.mediaOverlayStyle;
169
- const opacity = overlayStyle?.opacity ?? '0';
170
- if (!hasMedia || Number(opacity) <= 0) {
225
+ if (!hasMedia) {
226
+ return null;
227
+ }
228
+ // `hasMedia` implies `bgViewModel` is defined, and the migration gate
229
+ // guarantees `mediaOverlayStyle` is a complete { backgroundColor, opacity }.
230
+ const overlayStyle = bgViewModel.mediaOverlayStyle;
231
+ if (Number(overlayStyle.opacity) <= 0) {
171
232
  return null;
172
233
  }
173
234
  return {
174
- background: overlayStyle?.backgroundColor || 'rgb(0,0,0)',
175
- opacity: `${opacity}%`,
235
+ background: overlayStyle.backgroundColor,
236
+ opacity: `${overlayStyle.opacity}%`,
176
237
  };
177
238
  },
178
239
  showBrandCrowdLogo() {
@@ -333,6 +394,10 @@ export default defineComponent({
333
394
  },
334
395
  },
335
396
  created() {
397
+ // Minted once per instance, before first render (the scoped-mode computeds
398
+ // read it). Kept out of data() so data() stays side-effect-free.
399
+ pageScopeSeq += 1;
400
+ this.pageScopeId = `bp-page-scope-${pageScopeSeq}`;
336
401
  this.setRootStyles();
337
402
  },
338
403
  mounted() {
@@ -3,6 +3,7 @@ import brandPageClient from '../../clients/brand-page.client';
3
3
  import { DISPLAY_STYLE_COLLAPSED, DISPLAY_STYLE_PREVIEW, paymentProviders, } from '../../constants';
4
4
  import raygunUtil from '@brand-page/utils/raygun.util';
5
5
  import { isPreviewMode } from '@brand-page/utils';
6
+ import { sectionFrameStyle } from '@brand-page/utils/button.util';
6
7
  import { paymentTr } from '@src/composables/useTranslate';
7
8
  const DEFAULT_PAYMENT_SUCCESS_MESSAGE = paymentTr(`defaultPaymentSuccessMessage`);
8
9
  const PAYMENT_CONFIG_ACTIVE = 'Active';
@@ -73,17 +74,14 @@ export default defineComponent({
73
74
  return this.paymentConfig.paymentOptions.filter((o) => this.paymentRequestDetails.selectedPaymentOptionIds.some((i) => o.id === i));
74
75
  },
75
76
  containerStyle() {
76
- const buttonStyle = { ...this.viewModel.buttonStyles?.style };
77
- const borderRadius = buttonStyle.borderRadius;
78
- if (borderRadius === '9999px') {
79
- buttonStyle.borderRadius = '26px';
80
- }
77
+ const style = sectionFrameStyle(this.viewModel.buttonStyles?.style, {
78
+ pillRadius: '26px',
79
+ });
81
80
  // Own background colour decouples the container from the button fill (BP-5800).
82
81
  if (this.viewModel.backgroundStyle?.backgroundColor) {
83
- buttonStyle.backgroundColor =
84
- this.viewModel.backgroundStyle.backgroundColor;
82
+ style.backgroundColor = this.viewModel.backgroundStyle.backgroundColor;
85
83
  }
86
- return buttonStyle;
84
+ return style;
87
85
  },
88
86
  continueButtonStyle() {
89
87
  const buttonStyle = { ...this.viewModel.buttonStyles?.style };
@@ -1,9 +1,8 @@
1
1
  import { defineComponent } from 'vue';
2
2
  import { PAYMENT_OPTION_DISPLAY_TYPES, PAYMENT_OPTION_IMAGE_TYPES, } from '../../../models';
3
3
  import { DEFAULT_CURRENCY_SYMBOL } from '../../../constants';
4
- import { addOpacityToHex } from '../../../utils/color.util';
4
+ import { withColorOpacity } from '../../../utils/color.util';
5
5
  import { contentPaddingStyle as toContentPaddingStyle, isPreviewMode, } from '../../../utils';
6
- import { RGBAtoHex } from '@utils/helpers';
7
6
  const MAX_CUSTOM_REQUEST_CHARS = 500;
8
7
  export default defineComponent({
9
8
  props: {
@@ -112,10 +111,11 @@ export default defineComponent({
112
111
  const style = isSelected
113
112
  ? { ...baseButtonStyle, ...this.viewModel.selectedBorderColor }
114
113
  : { ...baseButtonStyle, ...this.viewModel.defaultBorderColor };
114
+ // Unselected options sit at 60% so the selected one reads as solid.
115
+ // `withColorOpacity`, not `addOpacityToHex`: the colour may be a `var(--palette-n)`
116
+ // reference, and the hex helper drops the opacity on those.
115
117
  const borderOpacity = isSelected ? 1 : 0.6;
116
- style.borderColor = !!style.borderColor
117
- ? addOpacityToHex(RGBAtoHex(style.borderColor), borderOpacity)
118
- : addOpacityToHex(RGBAtoHex(style.color), borderOpacity);
118
+ style.borderColor = withColorOpacity(style.borderColor || style.color, borderOpacity);
119
119
  return style;
120
120
  },
121
121
  },
@@ -1,5 +1,6 @@
1
1
  import { defineComponent } from 'vue';
2
2
  import { contentPaddingStyle as toContentPaddingStyle } from '@brand-page/utils';
3
+ import { sectionFrameStyle } from '@brand-page/utils/button.util';
3
4
  import ComponentCommonMixin from '../mixins/component-common.mixin';
4
5
  import { DISPLAY_STYLE_PREVIEW, DISPLAY_STYLE_COLLAPSED, } from '../../constants';
5
6
  export default defineComponent({
@@ -26,12 +27,9 @@ export default defineComponent({
26
27
  };
27
28
  },
28
29
  containerStyle() {
29
- const buttonStyle = { ...this.viewModel.buttonStyles?.style };
30
- const borderRadius = buttonStyle.borderRadius;
31
- if (borderRadius === '9999px') {
32
- buttonStyle.borderRadius = '26px';
33
- }
34
- return buttonStyle;
30
+ return sectionFrameStyle(this.viewModel.buttonStyles?.style, {
31
+ pillRadius: '26px',
32
+ });
35
33
  },
36
34
  videoUrl() {
37
35
  return `${this.viewModel.videoUrl}?autoplay=${this.viewModel.autoplay ? '1' : '0'}&mute=${this.viewModel.mute ? '1' : '0'}`;
@@ -32,5 +32,6 @@ export declare const CONTENT_TEXT_STYLE_PROPERTY_KEYS: {
32
32
  readonly itemTextStyle: "itemTextStyle";
33
33
  readonly buttonTextStyle: "buttonTextStyle";
34
34
  readonly copyrightStyle: "copyrightStyle";
35
+ readonly successMessageStyle: "successMessageStyle";
35
36
  };
36
37
  export type ContentTextStylePropertyKey = keyof typeof CONTENT_TEXT_STYLE_PROPERTY_KEYS;
@@ -34,4 +34,5 @@ export const CONTENT_TEXT_STYLE_PROPERTY_KEYS = {
34
34
  itemTextStyle: 'itemTextStyle',
35
35
  buttonTextStyle: 'buttonTextStyle',
36
36
  copyrightStyle: 'copyrightStyle',
37
+ successMessageStyle: 'successMessageStyle',
37
38
  };