@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.
- package/lib/src/{CreatedOnBrandCrowd-de-de-Ky0WCRVD.js → CreatedOnBrandCrowd-de-de-VQCQvlMg.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-en-us-DBW452t1.js → CreatedOnBrandCrowd-en-us-DSf3BjCG.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-es-es-DcrvToai.js → CreatedOnBrandCrowd-es-es-DGcdM9Ec.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-fr-fr-7QxBGZxX.js → CreatedOnBrandCrowd-fr-ca-C9g1fc39.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-fr-ca-7QxBGZxX.js → CreatedOnBrandCrowd-fr-fr-C9g1fc39.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-pt-pt-Bd_WwjTS.js → CreatedOnBrandCrowd-pt-br-DSXr7Bxl.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-pt-br-Bd_WwjTS.js → CreatedOnBrandCrowd-pt-pt-DSXr7Bxl.js} +1 -1
- package/lib/src/{CreatedOnDcom-de-de-CqiMKJd-.js → CreatedOnDcom-de-de-BPdCL6wS.js} +1 -1
- package/lib/src/{CreatedOnDcom-en-us-DExbUa7d.js → CreatedOnDcom-en-us-CLkSTQRu.js} +1 -1
- package/lib/src/{CreatedOnDcom-es-es-DakflTOK.js → CreatedOnDcom-es-es-CRknMAGv.js} +1 -1
- package/lib/src/{CreatedOnDcom-fr-ca-CVIMIRrP.js → CreatedOnDcom-fr-ca-ClAY_dHI.js} +1 -1
- package/lib/src/{CreatedOnDcom-fr-fr-0hCQCkgT.js → CreatedOnDcom-fr-fr-DQtv9rR-.js} +1 -1
- package/lib/src/{CreatedOnDcom-pt-br-DOjKppRa.js → CreatedOnDcom-pt-br-BbIxvmxv.js} +1 -1
- package/lib/src/{CreatedOnDcom-pt-pt-AHZjw-V5.js → CreatedOnDcom-pt-pt-BOfOesBj.js} +1 -1
- package/lib/src/brand-page/components/page/Page.mixin.d.ts +1 -4
- package/lib/src/brand-page/components/page/Page.mixin.js +9 -26
- package/lib/src/brand-page/components/social-links/SocialLinks.stories.js +3 -0
- package/lib/src/brand-page/components/testimonial-section/__fixtures__/data.js +3 -0
- package/lib/src/brand-page/components/text/Text.stories.js +17 -0
- package/lib/src/brand-page/constants/font.constants.d.ts +0 -62
- package/lib/src/brand-page/constants/font.constants.js +0 -35
- package/lib/src/brand-page/models/index.d.ts +20 -20
- package/lib/src/brand-page/models/logo.model.js +1 -1
- package/lib/src/brand-page/models/payment.model.d.ts +6 -8
- package/lib/src/brand-page/models/styles.model.d.ts +1 -45
- package/lib/src/brand-page/models/styles.model.js +22 -106
- package/lib/src/brand-page/utils/color-palette-referencify.util.d.ts +1 -1
- package/lib/src/brand-page/utils/color-palette-referencify.util.js +1 -1
- package/lib/src/brand-page/utils/color-palette.util.d.ts +23 -43
- package/lib/src/brand-page/utils/color-palette.util.js +27 -62
- package/lib/src/brand-page/utils/color.util.d.ts +9 -12
- package/lib/src/brand-page/utils/color.util.js +15 -49
- package/lib/src/brand-page/utils/container-text-color.util.d.ts +13 -34
- package/lib/src/brand-page/utils/container-text-color.util.js +40 -243
- package/lib/src/brand-page/utils/index.d.ts +0 -1
- package/lib/src/brand-page/utils/index.js +0 -1
- package/lib/src/brand-page/utils/migration/migration-20.js +1 -4
- package/lib/src/brand-page/utils/migration/migration-21.js +6 -18
- package/lib/src/brand-page/utils/migration.util.js +0 -16
- package/lib/src/brand-page/utils/personalisation.util.js +1 -9
- package/lib/src/brand-page/utils/text-style.util.d.ts +22 -61
- package/lib/src/brand-page/utils/text-style.util.js +22 -104
- package/lib/src/brand-page/utils/view-model.util.js +19 -24
- package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +0 -1
- package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.js +10 -0
- package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/content-settings-items.fixture.js +1 -0
- package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +135 -7
- package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.js +28 -0
- package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.d.ts +1 -1
- package/lib/src/brand-page-maker/composables/rich-text-editor/font.d.ts +1 -2
- package/lib/src/brand-page-maker/composables/rich-text-editor/font.js +6 -25
- package/lib/src/brand-page-maker/composables/rich-text-editor/formatting.d.ts +3 -17
- package/lib/src/brand-page-maker/composables/rich-text-editor/formatting.js +14 -108
- package/lib/src/brand-page-maker/composables/rich-text-editor/getRteExtensions.d.ts +15 -10
- package/lib/src/brand-page-maker/composables/rich-text-editor/getRteExtensions.js +1 -46
- package/lib/src/brand-page-maker/composables/rich-text-editor/spacing.d.ts +1 -2
- package/lib/src/brand-page-maker/composables/rich-text-editor/spacing.js +6 -22
- package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.d.ts +2 -7
- package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +195 -214
- package/lib/src/brand-page-maker/default-getters/payment-text-and-border-color.default-getter.js +14 -7
- package/lib/src/brand-page-maker/default-getters/text-color.default-getter.js +13 -6
- package/lib/src/brand-page-maker/models/content-settings.js +75 -80
- package/lib/src/brand-page-maker/stores/ai-checkpoint/ai-checkpoint-store.d.ts +30 -906
- package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +9 -2
- package/lib/src/brand-page-maker/stores/history/history-store.d.ts +1 -1
- package/lib/src/brand-page-maker/utils/index.d.ts +0 -1
- package/lib/src/brand-page-maker/utils/index.js +0 -1
- package/lib/src/brand-page-maker/utils/rich-text-editor.util.d.ts +7 -52
- package/lib/src/brand-page-maker/utils/rich-text-editor.util.js +264 -212
- package/lib/src/brand-page-maker/utils/rte-render.util.d.ts +2 -46
- package/lib/src/brand-page-maker/utils/rte-render.util.js +7 -145
- package/lib/src/brand-page-maker/utils/rte-sanitize.util.js +3 -7
- package/lib/src/{bundled-translations-CQ8dZIIe.js → bundled-translations-B2q5GWTQ.js} +9 -9
- package/lib/src/{bundled-translations.de-DE-D10ohBT0.js → bundled-translations.de-DE-FhH2H_rd.js} +9 -9
- package/lib/src/{bundled-translations.es-ES-C1o3tbHg.js → bundled-translations.es-ES-_ZExxMi7.js} +5 -5
- package/lib/src/{bundled-translations.fr-CA-ClHWmoIS.js → bundled-translations.fr-CA-Tg-ODIiC.js} +9 -9
- package/lib/src/{bundled-translations.fr-FR-C_PgkOpB.js → bundled-translations.fr-FR-C0sU51Mz.js} +9 -9
- package/lib/src/{bundled-translations.pt-BR-Csr8_jy7.js → bundled-translations.pt-BR-MYFIhA4u.js} +25 -25
- package/lib/src/{bundled-translations.pt-PT-D-vjMoOD.js → bundled-translations.pt-PT-DeUBSzCB.js} +17 -17
- package/lib/src/bundles/bundled-translations.de-DE.json +1 -17
- package/lib/src/bundles/bundled-translations.es-ES.json +1 -17
- package/lib/src/bundles/bundled-translations.fr-CA.json +1 -17
- package/lib/src/bundles/bundled-translations.fr-FR.json +1 -17
- package/lib/src/bundles/bundled-translations.json +2 -18
- package/lib/src/bundles/bundled-translations.pt-BR.json +1 -17
- package/lib/src/bundles/bundled-translations.pt-PT.json +1 -17
- package/lib/src/composables/useTranslate.d.ts +1 -1
- package/lib/src/composables/useTranslate.js +1 -1
- package/lib/src/css/library.brand-page-brandCrowd.min.css +145 -232
- package/lib/src/css/library.brand-page-brandPage.min.css +146 -232
- package/lib/src/css/library.brand-page-designCom.min.css +145 -232
- package/lib/src/css/library.brand-page-preview.min.css +145 -232
- package/lib/src/index.mjs +189 -192
- package/lib/src/{lib-lqV1z8gy.js → lib-BMVF4uNy.js} +28953 -29801
- package/lib/src/metadata-builder/builders/section-builders/about-section-builder.js +3 -3
- package/lib/src/metadata-builder/builders/section-builders/banner-section-builder.js +3 -3
- package/lib/src/metadata-builder/builders/section-builders/booking-section-builder.js +3 -3
- package/lib/src/metadata-builder/builders/section-builders/contact-form-builder.js +4 -4
- package/lib/src/metadata-builder/builders/section-builders/images-section-builder.js +3 -3
- package/lib/src/metadata-builder/builders/section-builders/mailing-list-builder.js +2 -2
- package/lib/src/metadata-builder/builders/section-builders/mailing-list-section-builder.js +2 -2
- package/lib/src/metadata-builder/builders/section-builders/profile-section-builder.js +4 -4
- package/lib/src/metadata-builder/builders/section-builders/shapes-section-builder.js +3 -3
- package/lib/src/metadata-builder/builders/section-builders/testimonial-section-builder.js +2 -2
- package/lib/src/metadata-builder/builders/section-builders/text-section-builder.js +22 -32
- package/lib/src/metadata-builder/builders/section-field-utils.d.ts +1 -15
- package/lib/src/metadata-builder/builders/section-field-utils.js +2 -30
- package/lib/src/metadata-builder/builders/section-rules/global-styles.rules.d.ts +1 -1
- package/lib/src/metadata-builder/builders/section-rules/global-styles.rules.js +4 -6
- package/lib/src/metadata-builder/metadata-executor.js +1 -16
- package/lib/src/metadata-builder/parsers/ai-toolcall-parser.d.ts +18 -5
- package/lib/src/metadata-builder/parsers/section-tool-arguments.d.ts +1 -8
- package/lib/src/shared/color-palette/section-color-matches.js +24 -8
- package/lib/src/shared/color-strategies/rte-field-pairs.d.ts +0 -20
- package/lib/src/shared/color-strategies/rte-field-pairs.js +0 -25
- package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +134 -1
- package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.js +27 -1
- package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +0 -1
- package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +0 -1
- package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +1 -6
- package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.js +5 -15
- package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +1 -1
- package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.js +7 -0
- package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.d.ts +11 -1244
- package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.js +51 -194
- package/lib/src/shared/content-settings/store/content-settings-store.d.ts +0 -1
- package/lib/src/shared/content-settings/store/content-settings-store.js +7 -55
- package/lib/src/shared/ecommerce-settings/util/refreshDuplicatedMetadata.d.ts +1 -1
- package/lib/src/shared/ecommerce-settings/util/refreshDuplicatedMetadata.js +1 -1
- package/lib/src/shared/navigation-style-settings/store/index.d.ts +1 -2
- package/lib/src/shared/navigation-style-settings/store/index.js +8 -5
- package/lib/src/shared/page-settings/components/delete-page-modal/DeletePageModal.mixin.d.ts +1 -1
- package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +1 -3
- package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +2 -3
- package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.js +0 -1
- package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +5 -150
- package/lib/src/shared/style-settings/store/style-settings-store.d.ts +1 -0
- package/lib/src/shared/style-settings/store/style-settings-store.js +4 -3
- package/lib/src/tracker.js +1 -2
- package/package.json +4 -4
- package/src/brand-page/components/about-section/AboutSection.vue.test.ts +10 -0
- package/src/brand-page/components/page/Page.mixin.ts +11 -32
- package/src/brand-page/components/page/Page.vue +0 -6
- package/src/brand-page/components/social-links/SocialLinks.stories.ts +3 -0
- package/src/brand-page/components/social-links/SocialLinks.vue.test.ts +3 -0
- package/src/brand-page/components/testimonial-section/__fixtures__/data.ts +3 -0
- package/src/brand-page/components/text/Text.stories.ts +17 -0
- package/src/brand-page/components/text-wrapper/TextWrapper.vue +14 -139
- package/src/brand-page/constants/font.constants.ts +0 -37
- package/src/brand-page/models/index.ts +19 -20
- package/src/brand-page/models/logo.model.ts +1 -1
- package/src/brand-page/models/payment.model.ts +6 -12
- package/src/brand-page/models/styles.model.ts +38 -161
- package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +32 -641
- package/src/brand-page/utils/__snapshots__/migration2.util.test.ts.snap +4 -150
- package/src/brand-page/utils/__snapshots__/model.util.test.ts.snap +8 -300
- package/src/brand-page/utils/color-palette-referencify.util.test.ts +1 -1
- package/src/brand-page/utils/color-palette-referencify.util.ts +1 -1
- package/src/brand-page/utils/color-palette.util.test.ts +1 -126
- package/src/brand-page/utils/color-palette.util.ts +26 -89
- package/src/brand-page/utils/color.util.test.ts +31 -54
- package/src/brand-page/utils/color.util.ts +15 -68
- package/src/brand-page/utils/container-text-color.util.test.ts +27 -573
- package/src/brand-page/utils/container-text-color.util.ts +47 -357
- package/src/brand-page/utils/index.ts +0 -1
- package/src/brand-page/utils/migration/migration-01.ts +237 -293
- package/src/brand-page/utils/migration/migration-02.ts +1 -8
- package/src/brand-page/utils/migration/migration-20.ts +1 -4
- package/src/brand-page/utils/migration/migration-20_5.test.ts +1 -1
- package/src/brand-page/utils/migration/migration-21.ts +7 -27
- package/src/brand-page/utils/migration.util.test.ts +31 -92
- package/src/brand-page/utils/migration.util.ts +0 -17
- package/src/brand-page/utils/personalisation.util.test.ts +0 -80
- package/src/brand-page/utils/personalisation.util.ts +1 -12
- package/src/brand-page/utils/text-style.util.ts +24 -147
- package/src/brand-page/utils/view-model.util.test.ts +85 -218
- package/src/brand-page/utils/view-model.util.ts +25 -31
- package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.ts +10 -0
- package/src/brand-page-maker/components/brand-page-maker/__fixtures__/content-settings-items.fixture.ts +1 -0
- package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.ts +44 -0
- package/src/brand-page-maker/components/rich-text-editor/RichTextEditor.vue +218 -406
- package/src/brand-page-maker/composables/rich-text-editor/font.ts +5 -36
- package/src/brand-page-maker/composables/rich-text-editor/formatting.test.ts +0 -88
- package/src/brand-page-maker/composables/rich-text-editor/formatting.ts +14 -153
- package/src/brand-page-maker/composables/rich-text-editor/getRteExtensions.ts +1 -40
- package/src/brand-page-maker/composables/rich-text-editor/spacing.ts +6 -31
- package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +225 -288
- package/src/brand-page-maker/default-getters/payment-text-and-border-color.default-getter.ts +22 -7
- package/src/brand-page-maker/default-getters/text-color.default-getter.ts +21 -5
- package/src/brand-page-maker/models/content-settings.ts +75 -80
- package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +35 -0
- package/src/brand-page-maker/utils/__snapshots__/rte-render-parity.test.ts.snap +0 -9
- package/src/brand-page-maker/utils/index.ts +0 -1
- package/src/brand-page-maker/utils/rich-text-editor.util.test.ts +409 -186
- package/src/brand-page-maker/utils/rich-text-editor.util.ts +484 -249
- package/src/brand-page-maker/utils/rte-render-parity.test.ts +1 -1
- package/src/brand-page-maker/utils/rte-render.util.ts +6 -203
- package/src/brand-page-maker/utils/rte-sanitize.util.ts +3 -7
- package/src/bundles/bundled-translations.de-DE.json +1 -17
- package/src/bundles/bundled-translations.es-ES.json +1 -17
- package/src/bundles/bundled-translations.fr-CA.json +1 -17
- package/src/bundles/bundled-translations.fr-FR.json +1 -17
- package/src/bundles/bundled-translations.json +2 -18
- package/src/bundles/bundled-translations.pt-BR.json +1 -17
- package/src/bundles/bundled-translations.pt-PT.json +1 -17
- package/src/composables/useTranslate.ts +1 -2
- package/src/metadata-builder/builders/section-builders/about-section-builder.ts +3 -5
- package/src/metadata-builder/builders/section-builders/banner-section-builder.ts +3 -5
- package/src/metadata-builder/builders/section-builders/booking-section-builder.ts +3 -5
- package/src/metadata-builder/builders/section-builders/contact-form-builder.ts +4 -7
- package/src/metadata-builder/builders/section-builders/images-section-builder.ts +3 -5
- package/src/metadata-builder/builders/section-builders/mailing-list-builder.ts +2 -3
- package/src/metadata-builder/builders/section-builders/mailing-list-section-builder.ts +2 -3
- package/src/metadata-builder/builders/section-builders/profile-section-builder.ts +7 -7
- package/src/metadata-builder/builders/section-builders/shapes-section-builder.ts +3 -5
- package/src/metadata-builder/builders/section-builders/testimonial-section-builder.ts +2 -3
- package/src/metadata-builder/builders/section-builders/text-section-builder.ts +56 -47
- package/src/metadata-builder/builders/section-field-utils.ts +6 -46
- package/src/metadata-builder/builders/section-rules/global-styles.rules.ts +5 -10
- package/src/metadata-builder/metadata-executor.ts +1 -18
- package/src/metadata-builder/parsers/ai-toolcall-parser.ts +6 -10
- package/src/metadata-builder/parsers/section-tool-arguments.ts +1 -11
- package/src/shared/color-palette/section-color-matches.test.ts +11 -15
- package/src/shared/color-palette/section-color-matches.ts +27 -8
- package/src/shared/color-strategies/rte-field-pairs.test.ts +5 -26
- package/src/shared/color-strategies/rte-field-pairs.ts +0 -30
- package/src/shared/content-settings/components/color-matches-panel/ColorMatchesPanel.test.ts +66 -43
- package/src/shared/content-settings/components/color-matches-panel/ColorMatchesPanel.vue +1 -7
- package/src/shared/content-settings/components/content-settings/ContentSettings.mixin.ts +48 -1
- package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.ts +5 -26
- package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.test.ts +1 -47
- package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.ts +6 -0
- package/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.test.ts +1 -0
- package/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.test.ts +25 -258
- package/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.ts +57 -226
- package/src/shared/content-settings/components/text-style-field/TextStyleField.vue +16 -119
- package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.de-DE.json +10 -15
- package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.es-ES.json +10 -15
- package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.fr-CA.json +10 -15
- package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.fr-FR.json +10 -15
- package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.json +1 -6
- package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.pt-BR.json +10 -15
- package/src/shared/content-settings/components/text-style-field/i18n/text-style-field.pt-PT.json +10 -15
- package/src/shared/content-settings/store/content-settings-store.test.ts +5 -186
- package/src/shared/content-settings/store/content-settings-store.ts +16 -81
- package/src/shared/ecommerce-settings/util/refreshDuplicatedMetadata.ts +1 -1
- package/src/shared/navigation-style-settings/store/index.ts +8 -6
- package/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.ts +0 -1
- package/src/shared/style-settings/components/StyleSettings.vue +25 -29
- package/src/shared/style-settings/components/StyleSettingsSection.vue +8 -0
- package/src/shared/style-settings/components/i18n/style-settings.de-DE.json +20 -31
- package/src/shared/style-settings/components/i18n/style-settings.es-ES.json +20 -31
- package/src/shared/style-settings/components/i18n/style-settings.fr-CA.json +20 -31
- package/src/shared/style-settings/components/i18n/style-settings.fr-FR.json +20 -31
- package/src/shared/style-settings/components/i18n/style-settings.json +3 -12
- package/src/shared/style-settings/components/i18n/style-settings.pt-BR.json +20 -31
- package/src/shared/style-settings/components/i18n/style-settings.pt-PT.json +20 -31
- package/src/shared/style-settings/components/text-style-options-settings-with-state/TextStyleOptionsSettingsWithState.vue +34 -14
- package/src/shared/style-settings/store/style-settings-store.ts +4 -3
- package/src/tracker.ts +1 -2
- package/src/utils/minify-brand-page-metadata.test.ts +1 -1
- package/lib/src/brand-page/utils/migration/migration-22.d.ts +0 -135
- package/lib/src/brand-page/utils/migration/migration-22.js +0 -671
- package/lib/src/brand-page/utils/text-role-css.util.d.ts +0 -112
- package/lib/src/brand-page/utils/text-role-css.util.js +0 -262
- package/lib/src/brand-page-maker/composables/rich-text-editor/extensions/TextEffects.d.ts +0 -27
- package/lib/src/brand-page-maker/composables/rich-text-editor/extensions/TextEffects.js +0 -68
- package/lib/src/brand-page-maker/composables/rich-text-editor/keepMarksOnEmpty.d.ts +0 -20
- package/lib/src/brand-page-maker/composables/rich-text-editor/keepMarksOnEmpty.js +0 -60
- package/lib/src/brand-page-maker/utils/rte-authoring.util.d.ts +0 -2
- package/lib/src/brand-page-maker/utils/rte-authoring.util.js +0 -101
- package/lib/src/mockServiceWorker.js +0 -349
- package/src/brand-page/components/text-wrapper/TextWrapper.test.ts +0 -116
- package/src/brand-page/utils/migration/migration-22.test.ts +0 -1143
- package/src/brand-page/utils/migration/migration-22.ts +0 -1051
- package/src/brand-page/utils/text-role-css.util.test.ts +0 -268
- package/src/brand-page/utils/text-role-css.util.ts +0 -348
- package/src/brand-page/utils/text-style.util.test.ts +0 -200
- package/src/brand-page-maker/composables/rich-text-editor/block-typography.test.ts +0 -236
- package/src/brand-page-maker/composables/rich-text-editor/extensions/TextEffects.ts +0 -110
- package/src/brand-page-maker/composables/rich-text-editor/keepMarksOnEmpty.test.ts +0 -80
- package/src/brand-page-maker/composables/rich-text-editor/keepMarksOnEmpty.ts +0 -75
- package/src/brand-page-maker/models/content-settings.test.ts +0 -153
- package/src/brand-page-maker/utils/rte-authoring.util.test.ts +0 -244
- package/src/brand-page-maker/utils/rte-authoring.util.ts +0 -179
- package/src/brand-page-maker/utils/rte-render.util.test.ts +0 -226
- package/src/brand-page-maker/utils/rte-schema-version.test.ts +0 -102
- package/src/metadata-builder/builders/section-field-utils.test.ts +0 -54
|
@@ -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 {
|
|
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,
|
|
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
|
-
//
|
|
185
|
-
//
|
|
186
|
-
|
|
187
|
-
|
|
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];
|
|
@@ -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,
|
|
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:
|
|
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:
|
|
201
|
-
nameStyle:
|
|
202
|
-
titleStyle:
|
|
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:
|
|
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?:
|
|
274
|
-
descriptionStyle?:
|
|
273
|
+
titleStyle?: TextStyleDeclaration;
|
|
274
|
+
descriptionStyle?: TextStyleDeclaration;
|
|
275
275
|
buttonTextStyle?: TextStyleDeclaration;
|
|
276
276
|
backgroundStyle?: BrandPageCssStyle;
|
|
277
|
-
successMessageStyle?:
|
|
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:
|
|
295
|
-
descriptionStyle:
|
|
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:
|
|
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:
|
|
381
|
-
descriptionStyle:
|
|
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:
|
|
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:
|
|
424
|
-
paragraphStyle:
|
|
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:
|
|
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:
|
|
475
|
-
descriptionStyle:
|
|
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
|
|
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:
|
|
121
|
+
description: string;
|
|
124
122
|
displayStyle: string;
|
|
125
123
|
requestPaymentConfig: RequestPaymentConfig;
|
|
126
124
|
successMessage: string;
|
|
127
|
-
title:
|
|
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:
|
|
147
|
+
description: string;
|
|
150
148
|
successMessage: string;
|
|
151
149
|
products: ProductModel[];
|
|
152
150
|
displayStyle: string;
|
|
153
151
|
aspectRatio: string;
|
|
154
|
-
title:
|
|
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:
|
|
171
|
-
description:
|
|
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;
|