@designcrowd/library.brand-page 6.1.0-color-v2-2 → 6.1.0-websitev2-dev-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.
- package/lib/src/{CreatedOnBrandCrowd-de-de-CTx8-T31.js → CreatedOnBrandCrowd-de-de-D_qQ0sPW.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-en-us-m_M8_GjN.js → CreatedOnBrandCrowd-en-us-CNMxavFU.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-es-es-BoOw5YO_.js → CreatedOnBrandCrowd-es-es-Cyaiw1-R.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-fr-fr-DOfx40Df.js → CreatedOnBrandCrowd-fr-ca-DbniOtuE.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-fr-ca-DOfx40Df.js → CreatedOnBrandCrowd-fr-fr-DbniOtuE.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-pt-pt-BsJ3QVZp.js → CreatedOnBrandCrowd-pt-br-DI3JfwR8.js} +1 -1
- package/lib/src/{CreatedOnBrandCrowd-pt-br-BsJ3QVZp.js → CreatedOnBrandCrowd-pt-pt-DI3JfwR8.js} +1 -1
- package/lib/src/{CreatedOnDcom-de-de-hpqlRono.js → CreatedOnDcom-de-de-DqBzJ_O9.js} +1 -1
- package/lib/src/{CreatedOnDcom-en-us-CPzihoZH.js → CreatedOnDcom-en-us-B8uZjYMi.js} +1 -1
- package/lib/src/{CreatedOnDcom-es-es-CM2YfiOe.js → CreatedOnDcom-es-es-BOLxcx3H.js} +1 -1
- package/lib/src/{CreatedOnDcom-fr-ca-DG1pvzFS.js → CreatedOnDcom-fr-ca-CbGneDvu.js} +1 -1
- package/lib/src/{CreatedOnDcom-fr-fr-DBWxVv5V.js → CreatedOnDcom-fr-fr-B-UwXpW3.js} +1 -1
- package/lib/src/{CreatedOnDcom-pt-br-mXxA3CzG.js → CreatedOnDcom-pt-br-CRPrLx5_.js} +1 -1
- package/lib/src/{CreatedOnDcom-pt-pt-13CFxCqT.js → CreatedOnDcom-pt-pt-4p2rdAnc.js} +1 -1
- package/lib/src/brand-page/components/background-shape/BackgroundShape.mixin.d.ts +0 -1
- package/lib/src/brand-page/components/background-shape/BackgroundShape.mixin.js +3 -18
- package/lib/src/brand-page/components/media/Shape.mixin.d.ts +0 -1
- package/lib/src/brand-page/components/media/Shape.mixin.js +2 -20
- package/lib/src/brand-page/components/page/Page.mixin.d.ts +0 -2
- package/lib/src/brand-page/components/page/Page.mixin.js +2 -21
- package/lib/src/brand-page/models/index.d.ts +0 -13
- package/lib/src/brand-page/models/index.js +0 -4
- package/lib/src/brand-page/utils/color.util.js +0 -18
- 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.util.d.ts +1 -2
- package/lib/src/brand-page/utils/migration.util.js +0 -10
- package/lib/src/brand-page/utils/style.util.d.ts +1 -14
- package/lib/src/brand-page/utils/style.util.js +0 -43
- package/lib/src/brand-page/utils/view-model.util.js +0 -1
- package/lib/src/brand-page/view-models.d.ts +1 -2
- package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +0 -2
- package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.js +14 -18
- package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.d.ts +1 -1
- package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.js +14 -17
- package/lib/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.js +7 -3
- package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +3 -8
- package/lib/src/brand-page-maker/constants/sidebar-constant.d.ts +0 -1
- package/lib/src/brand-page-maker/constants/sidebar-constant.js +0 -12
- package/lib/src/brand-page-maker/stores/ai-checkpoint/ai-checkpoint-store.d.ts +0 -30
- package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +35 -43
- package/lib/src/brand-page-maker/utils/index.js +9 -14
- package/lib/src/brand-page-maker/utils/rich-text-editor.util.d.ts +0 -1
- package/lib/src/brand-page-maker/utils/rich-text-editor.util.js +0 -10
- package/lib/src/bundled-translations-2HkRBbBD.js +177 -0
- package/lib/src/bundled-translations.de-DE-CL9ZEhU2.js +177 -0
- package/lib/src/bundled-translations.es-ES-uj7Sliu0.js +177 -0
- package/lib/src/bundled-translations.fr-CA-BMnBtr_w.js +177 -0
- package/lib/src/bundled-translations.fr-FR-9PEZedzq.js +177 -0
- package/lib/src/bundled-translations.pt-BR-B3oNDkoe.js +177 -0
- package/lib/src/bundled-translations.pt-PT-DM7Vsf-h.js +177 -0
- package/lib/src/bundles/bundled-translations.de-DE.json +1 -2
- package/lib/src/bundles/bundled-translations.es-ES.json +1 -2
- package/lib/src/bundles/bundled-translations.fr-CA.json +1 -2
- package/lib/src/bundles/bundled-translations.fr-FR.json +1 -2
- package/lib/src/bundles/bundled-translations.json +2 -15
- package/lib/src/bundles/bundled-translations.pt-BR.json +1 -2
- package/lib/src/bundles/bundled-translations.pt-PT.json +1 -2
- package/lib/src/clients/ai-assistant-client.d.ts +1 -0
- package/lib/src/clients/ai-assistant-client.js +1 -0
- package/lib/src/css/library.brand-page-brandCrowd.min.css +74 -132
- package/lib/src/css/library.brand-page-brandPage.min.css +74 -132
- package/lib/src/css/library.brand-page-designCom.min.css +74 -132
- package/lib/src/css/library.brand-page-preview.min.css +74 -132
- package/lib/src/index.mjs +1 -1
- package/lib/src/{lib-TaUy08cC.js → lib-DhEJMZFn.js} +24703 -25215
- package/lib/src/metadata-builder/builders/global-font-propagation.d.ts +28 -0
- package/lib/src/metadata-builder/builders/global-font-propagation.js +125 -0
- package/lib/src/metadata-builder/builders/global-styles-builder.js +16 -0
- package/lib/src/metadata-builder/builders/section-builders/index.d.ts +1 -0
- package/lib/src/metadata-builder/builders/section-builders/index.js +1 -0
- package/lib/src/metadata-builder/builders/section-builders/support-me-builder.d.ts +8 -0
- package/lib/src/metadata-builder/builders/section-builders/support-me-builder.js +25 -0
- package/lib/src/metadata-builder/builders/section-builders/text-section-builder.js +5 -2
- package/lib/src/metadata-builder/builders/section-field-maps.js +15 -0
- package/lib/src/metadata-builder/builders/section-field-utils.d.ts +6 -1
- package/lib/src/metadata-builder/builders/section-field-utils.js +48 -12
- package/lib/src/metadata-builder/builders/section-rules/support-me.rules.d.ts +2 -0
- package/lib/src/metadata-builder/builders/section-rules/support-me.rules.js +17 -0
- package/lib/src/metadata-builder/metadata-executor.js +3 -1
- package/lib/src/metadata-builder/models.d.ts +2 -0
- package/lib/src/metadata-builder/models.js +2 -0
- package/lib/src/metadata-builder/parsers/ai-toolcall-parser.d.ts +1 -0
- package/lib/src/metadata-builder/parsers/ai-toolcall-parser.js +4 -0
- package/lib/src/metadata-builder/parsers/section-tool-arguments.d.ts +14 -2
- package/lib/src/shared/color-picker/components/ColorPicker.mixin.d.ts +1 -30
- package/lib/src/shared/color-picker/components/ColorPicker.mixin.js +6 -76
- package/lib/src/shared/color-picker/models.d.ts +0 -2
- package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +0 -3
- package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.js +0 -28
- package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +0 -3
- package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.js +0 -34
- package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.d.ts +5 -0
- package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.js +50 -3
- package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +53 -44
- package/lib/src/shared/style-settings/components/StyleSettings.mixin.js +56 -11
- package/lib/src/utils/minify-brand-page-metadata.js +7 -0
- package/package.json +1 -1
- package/src/brand-page/components/background-shape/BackgroundShape.mixin.ts +3 -23
- package/src/brand-page/components/media/Shape.mixin.ts +2 -25
- package/src/brand-page/components/page/Page.mixin.ts +2 -28
- package/src/brand-page/components/page/Page.vue +0 -6
- package/src/brand-page/models/index.ts +0 -18
- package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +27 -108
- package/src/brand-page/utils/__snapshots__/migration2.util.test.ts.snap +0 -1
- package/src/brand-page/utils/__snapshots__/model.util.test.ts.snap +0 -2
- package/src/brand-page/utils/color.util.test.ts +0 -35
- package/src/brand-page/utils/color.util.ts +0 -24
- package/src/brand-page/utils/index.ts +0 -1
- package/src/brand-page/utils/migration.util.ts +1 -19
- package/src/brand-page/utils/style.util.test.ts +0 -54
- package/src/brand-page/utils/style.util.ts +0 -57
- package/src/brand-page/utils/view-model.util.ts +0 -1
- package/src/brand-page/view-models.ts +0 -2
- package/src/brand-page-maker/components/admin-logo-settings/AdminLogoSettings.vue +5 -2
- package/src/brand-page-maker/components/ai-website-builder/AiWebsiteBuilder.vue +1 -1
- package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.vue +0 -2
- package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.ts +15 -21
- package/src/brand-page-maker/components/color-palette/BpColorPalette.vue +6 -79
- package/src/brand-page-maker/components/color-palette/BpColorPicker.vue +20 -91
- package/src/brand-page-maker/components/color-palette/i18n/color-palette.de-DE.json +1 -2
- package/src/brand-page-maker/components/color-palette/i18n/color-palette.es-ES.json +1 -2
- package/src/brand-page-maker/components/color-palette/i18n/color-palette.fr-CA.json +1 -2
- package/src/brand-page-maker/components/color-palette/i18n/color-palette.fr-FR.json +1 -2
- package/src/brand-page-maker/components/color-palette/i18n/color-palette.json +1 -2
- package/src/brand-page-maker/components/color-palette/i18n/color-palette.pt-BR.json +1 -2
- package/src/brand-page-maker/components/color-palette/i18n/color-palette.pt-PT.json +1 -2
- package/src/brand-page-maker/components/rich-text-editor/RichTextEditor.vue +1 -2
- package/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.ts +14 -17
- package/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.ts +7 -3
- package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +2 -12
- package/src/brand-page-maker/constants/sidebar-constant.ts +0 -12
- package/src/brand-page-maker/stores/brandpage-maker/__snapshots__/brandpage-maker-store.test.ts.snap +3 -3
- package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.test.ts +9 -80
- package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +62 -47
- package/src/brand-page-maker/utils/index.ts +11 -15
- package/src/brand-page-maker/utils/rich-text-editor.util.test.ts +0 -26
- package/src/brand-page-maker/utils/rich-text-editor.util.ts +0 -13
- package/src/bundles/bundled-translations.de-DE.json +1 -2
- package/src/bundles/bundled-translations.es-ES.json +1 -2
- package/src/bundles/bundled-translations.fr-CA.json +1 -2
- package/src/bundles/bundled-translations.fr-FR.json +1 -2
- package/src/bundles/bundled-translations.json +2 -15
- package/src/bundles/bundled-translations.pt-BR.json +1 -2
- package/src/bundles/bundled-translations.pt-PT.json +1 -2
- package/src/clients/ai-assistant-client.ts +1 -0
- package/src/metadata-builder/builders/global-font-propagation.test.ts +269 -0
- package/src/metadata-builder/builders/global-font-propagation.ts +205 -0
- package/src/metadata-builder/builders/global-styles-builder.ts +21 -0
- package/src/metadata-builder/builders/section-builders/index.ts +1 -0
- package/src/metadata-builder/builders/section-builders/support-me-builder.test.ts +177 -0
- package/src/metadata-builder/builders/section-builders/support-me-builder.ts +43 -0
- package/src/metadata-builder/builders/section-builders/text-section-builder.ts +5 -2
- package/src/metadata-builder/builders/section-field-maps.ts +18 -0
- package/src/metadata-builder/builders/section-field-utils.test.ts +83 -0
- package/src/metadata-builder/builders/section-field-utils.ts +69 -18
- package/src/metadata-builder/builders/section-rules/support-me.rules.ts +39 -0
- package/src/metadata-builder/metadata-executor.ts +3 -0
- package/src/metadata-builder/models.ts +2 -0
- package/src/metadata-builder/parsers/ai-toolcall-parser.ts +4 -0
- package/src/metadata-builder/parsers/section-tool-arguments.ts +14 -1
- package/src/shared/background-settings/components/background-color/BackgroundColorSettings.vue +25 -6
- package/src/shared/color-picker/components/ColorPicker.mixin.ts +7 -81
- package/src/shared/color-picker/models.ts +0 -7
- package/src/shared/content-settings/components/color-field/ColorField.vue +31 -211
- package/src/shared/content-settings/components/color-field/i18n/color-field.json +1 -10
- package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.ts +0 -41
- package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.vue +0 -15
- package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.vue +0 -1
- package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.ts +0 -49
- package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.vue +0 -10
- package/src/shared/content-settings/components/text-style-field/TextStyleField.vue +0 -2
- package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.ts +64 -3
- package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.vue +38 -3
- package/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.vue +0 -2
- package/src/shared/style-settings/components/StyleSettings.mixin.ts +67 -14
- package/src/shared/style-settings/components/StyleSettings.vue +186 -18
- package/src/shared/style-settings/components/i18n/style-settings.json +0 -3
- package/src/utils/minify-brand-page-metadata.test.ts +61 -0
- package/src/utils/minify-brand-page-metadata.ts +8 -0
- package/lib/src/brand-page/utils/color-palette.util.d.ts +0 -125
- package/lib/src/brand-page/utils/color-palette.util.js +0 -292
- package/lib/src/brand-page/utils/migration/migration-20.d.ts +0 -2
- package/lib/src/brand-page/utils/migration/migration-20.js +0 -211
- package/lib/src/brand-page-maker/utils/apply-color-strategy.d.ts +0 -42
- package/lib/src/brand-page-maker/utils/apply-color-strategy.js +0 -61
- package/lib/src/bundled-translations-C0fm9DE2.js +0 -177
- package/lib/src/bundled-translations.de-DE-BACSJnIH.js +0 -177
- package/lib/src/bundled-translations.es-ES-5Y2R5haO.js +0 -177
- package/lib/src/bundled-translations.fr-CA-CQ4zMF3r.js +0 -177
- package/lib/src/bundled-translations.fr-FR-BTaChKrC.js +0 -177
- package/lib/src/bundled-translations.pt-BR-CptaTqfB.js +0 -177
- package/lib/src/bundled-translations.pt-PT-DqIvqMCh.js +0 -177
- package/lib/src/shared/color-palette/store/color-palette-store.d.ts +0 -92
- package/lib/src/shared/color-palette/store/color-palette-store.js +0 -169
- package/lib/src/shared/color-palette/store/index.d.ts +0 -1
- package/lib/src/shared/color-palette/store/index.js +0 -1
- package/lib/src/shared/color-strategies/color-strategies.d.ts +0 -30
- package/lib/src/shared/color-strategies/color-strategies.js +0 -61
- package/lib/src/shared/color-strategies/models.d.ts +0 -16
- package/lib/src/shared/color-strategies/models.js +0 -5
- package/src/brand-page/utils/color-palette.util.test.ts +0 -354
- package/src/brand-page/utils/color-palette.util.ts +0 -424
- package/src/brand-page/utils/migration/migration-20.test.ts +0 -370
- package/src/brand-page/utils/migration/migration-20.ts +0 -279
- package/src/brand-page-maker/components/admin-settings/AdminSettings.vue +0 -54
- package/src/brand-page-maker/utils/apply-color-strategy.test.ts +0 -259
- package/src/brand-page-maker/utils/apply-color-strategy.ts +0 -130
- package/src/brand-page-maker/utils/is-color-matched.test.ts +0 -44
- package/src/shared/color-palette/store/color-palette-store.test.ts +0 -325
- package/src/shared/color-palette/store/color-palette-store.ts +0 -249
- package/src/shared/color-palette/store/index.ts +0 -1
- package/src/shared/color-strategies/color-strategies.test.ts +0 -93
- package/src/shared/color-strategies/color-strategies.ts +0 -86
- package/src/shared/color-strategies/models.ts +0 -29
- package/src/shared/content-settings/components/color-strategy-panel/ColorStrategyPanel.test.ts +0 -81
- package/src/shared/content-settings/components/color-strategy-panel/ColorStrategyPanel.vue +0 -93
- package/src/shared/content-settings/components/color-strategy-panel/color-strategy-gate.test.ts +0 -113
- package/src/shared/side-bar/components/SideBar.tabs.test.ts +0 -64
- package/src/shared/style-settings/components/color-palette-settings-with-state/ColorPaletteSettingsWithState.vue +0 -85
- package/src/shared/style-settings/components/style-option-color-field-with-state/StyleOptionColorFieldWithState.test.ts +0 -104
- package/src/shared/style-settings/components/style-option-color-field-with-state/StyleOptionColorFieldWithState.vue +0 -82
|
@@ -16,7 +16,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
16
16
|
backgroundShapesStyle(): BrandPageCssStyle;
|
|
17
17
|
isFullBackground(): boolean;
|
|
18
18
|
objectUrl(): string;
|
|
19
|
-
resolvedShapeColor(): string;
|
|
20
19
|
}, {
|
|
21
20
|
isValidSvgUrl(url: string): boolean;
|
|
22
21
|
applySvgAttributes(svgData: string): string;
|
|
@@ -2,7 +2,6 @@ import { defineComponent } from 'vue';
|
|
|
2
2
|
import ComponentCommonMixin from '../mixins/component-common.mixin';
|
|
3
3
|
import axios from 'axios';
|
|
4
4
|
import { applyColorToSvgString } from '@brand-page/utils/svg-color.util';
|
|
5
|
-
import { resolveColorReference, } from '@brand-page/utils/color-palette.util';
|
|
6
5
|
import { isURL } from '../../../utils/validator.util';
|
|
7
6
|
import { PROXY_SHAPE_URL_REGEX } from '@brand-page/constants';
|
|
8
7
|
import { getRegexToMatchAttributeInSvgTag } from '@brand-page/utils/svg.util';
|
|
@@ -18,11 +17,6 @@ export default defineComponent({
|
|
|
18
17
|
required: true,
|
|
19
18
|
},
|
|
20
19
|
},
|
|
21
|
-
inject: {
|
|
22
|
-
// BP-5886: getter for the page palette (provided by <Page>) to resolve
|
|
23
|
-
// `var(--id)` fills.
|
|
24
|
-
getPaletteColors: { default: undefined },
|
|
25
|
-
},
|
|
26
20
|
data() {
|
|
27
21
|
return {
|
|
28
22
|
svgData: '',
|
|
@@ -54,18 +48,9 @@ export default defineComponent({
|
|
|
54
48
|
}
|
|
55
49
|
return this.viewModel.name;
|
|
56
50
|
},
|
|
57
|
-
// BP-5886: the shape's colour with any palette `var(--id)` resolved to its
|
|
58
|
-
// concrete value — `var()` can't resolve inside the <img>-embedded SVG.
|
|
59
|
-
resolvedShapeColor() {
|
|
60
|
-
const getColors = this.getPaletteColors;
|
|
61
|
-
const colors = getColors?.() ?? [];
|
|
62
|
-
return resolveColorReference(this.viewModel?.style?.color, colors);
|
|
63
|
-
},
|
|
64
51
|
},
|
|
65
52
|
watch: {
|
|
66
|
-
|
|
67
|
-
// colour edit and an edit to a referenced palette role.
|
|
68
|
-
resolvedShapeColor: {
|
|
53
|
+
'viewModel.style.color': {
|
|
69
54
|
handler() {
|
|
70
55
|
this.render();
|
|
71
56
|
},
|
|
@@ -161,8 +146,8 @@ export default defineComponent({
|
|
|
161
146
|
else {
|
|
162
147
|
this.originalSvgData = this.viewModel.name;
|
|
163
148
|
}
|
|
164
|
-
if (this.
|
|
165
|
-
this.svgData = applyColorToSvgString(this.originalSvgData, this.
|
|
149
|
+
if (this.viewModel.style.color) {
|
|
150
|
+
this.svgData = applyColorToSvgString(this.originalSvgData, this.viewModel.style.color);
|
|
166
151
|
}
|
|
167
152
|
else {
|
|
168
153
|
this.svgData = this.originalSvgData;
|
|
@@ -30,7 +30,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
30
30
|
originalSvgData: string;
|
|
31
31
|
}, {
|
|
32
32
|
useObjectElement(): boolean;
|
|
33
|
-
resolvedColorReplacements(): ColorReplacement[];
|
|
34
33
|
objectStyle(): {
|
|
35
34
|
width?: undefined;
|
|
36
35
|
height?: undefined;
|
|
@@ -2,7 +2,6 @@ import { defineComponent } from 'vue';
|
|
|
2
2
|
import ComponentCommonMixin from '../mixins/component-common.mixin';
|
|
3
3
|
import axios from 'axios';
|
|
4
4
|
import { applyColorReplacementsToSvgString } from '@brand-page/utils/svg-color.util';
|
|
5
|
-
import { resolveColorReference, } from '@brand-page/utils/color-palette.util';
|
|
6
5
|
import { PROXY_SHAPE_URL_REGEX } from '@brand-page/constants';
|
|
7
6
|
import { getRegexToMatchAttributeInSvgTag } from '@brand-page/utils/svg.util';
|
|
8
7
|
export default defineComponent({
|
|
@@ -32,11 +31,6 @@ export default defineComponent({
|
|
|
32
31
|
default: undefined,
|
|
33
32
|
},
|
|
34
33
|
},
|
|
35
|
-
inject: {
|
|
36
|
-
// BP-5886: getter for the page palette (provided by <Page>) — used to resolve
|
|
37
|
-
// `var(--id)` fills to concrete colours before the SVG is built.
|
|
38
|
-
getPaletteColors: { default: undefined },
|
|
39
|
-
},
|
|
40
34
|
data() {
|
|
41
35
|
return { svgData: '', svgDataObjectUrl: '', originalSvgData: '' };
|
|
42
36
|
},
|
|
@@ -44,16 +38,6 @@ export default defineComponent({
|
|
|
44
38
|
useObjectElement() {
|
|
45
39
|
return !!this.imageUrl.match(PROXY_SHAPE_URL_REGEX);
|
|
46
40
|
},
|
|
47
|
-
// BP-5886: colour replacements with any palette `var(--id)` resolved to its
|
|
48
|
-
// concrete value — `var()` can't resolve inside the <img>-embedded SVG.
|
|
49
|
-
resolvedColorReplacements() {
|
|
50
|
-
const getColors = this.getPaletteColors;
|
|
51
|
-
const colors = getColors?.() ?? [];
|
|
52
|
-
return (this.colorReplacements ?? []).map((c) => ({
|
|
53
|
-
...c,
|
|
54
|
-
replacementColor: resolveColorReference(c.replacementColor, colors),
|
|
55
|
-
}));
|
|
56
|
-
},
|
|
57
41
|
objectStyle() {
|
|
58
42
|
if (!this.size) {
|
|
59
43
|
return {};
|
|
@@ -76,9 +60,7 @@ export default defineComponent({
|
|
|
76
60
|
},
|
|
77
61
|
},
|
|
78
62
|
watch: {
|
|
79
|
-
|
|
80
|
-
// its own colours change and when a referenced palette colour is edited.
|
|
81
|
-
resolvedColorReplacements: {
|
|
63
|
+
colorReplacements: {
|
|
82
64
|
handler(newVal, oldVal) {
|
|
83
65
|
if (newVal &&
|
|
84
66
|
oldVal &&
|
|
@@ -154,7 +136,7 @@ export default defineComponent({
|
|
|
154
136
|
if (!this.originalSvgData) {
|
|
155
137
|
return;
|
|
156
138
|
}
|
|
157
|
-
this.svgData = applyColorReplacementsToSvgString(this.originalSvgData, this.
|
|
139
|
+
this.svgData = applyColorReplacementsToSvgString(this.originalSvgData, this.colorReplacements);
|
|
158
140
|
this.svgData = this.applySvgAttributes(this.svgData);
|
|
159
141
|
const blob = new Blob([this.svgData], { type: 'image/svg+xml' });
|
|
160
142
|
const oldSvgDataObjectUrl = this.svgDataObjectUrl;
|
|
@@ -52,8 +52,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
52
52
|
styles: {};
|
|
53
53
|
}, {
|
|
54
54
|
brandPageToken(): string | null;
|
|
55
|
-
shouldEmitPaletteRoot(): boolean;
|
|
56
|
-
paletteRootStyleHtml(): string;
|
|
57
55
|
contents(): ContentViewModel[];
|
|
58
56
|
backgroundShapes(): BackgroundShape[];
|
|
59
57
|
rootElementStyles(): BrandPageCssStyle;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { defineComponent
|
|
1
|
+
import { defineComponent } from 'vue';
|
|
2
2
|
import { DEFAULT_FONT_FAMILY_KEY, FALLBACK_FONT_FAMILIES, FONT_FAMILY_CONFIGS, } from '../../constants';
|
|
3
|
-
import { getSlugFromContext, getPageHeadingText
|
|
3
|
+
import { getSlugFromContext, getPageHeadingText } 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';
|
|
@@ -59,14 +59,6 @@ export default defineComponent({
|
|
|
59
59
|
'save-contact-widget-click',
|
|
60
60
|
],
|
|
61
61
|
setup(props) {
|
|
62
|
-
// BP-5886: shapes render as <img>-embedded SVG, an isolated document the
|
|
63
|
-
// `:root` palette block can't reach, so a `var(--id)` fill won't resolve.
|
|
64
|
-
// Provide the palette as a getter so the shape mixins can resolve their refs
|
|
65
|
-
// to concrete colours before building the SVG. A getter (not a provided ref)
|
|
66
|
-
// sidesteps Options-API inject ref-unwrapping ambiguity and stays reactive:
|
|
67
|
-
// calling it inside a shape's computed tracks `viewModel.styles.colors`, so
|
|
68
|
-
// shapes recolour when a referenced palette colour is edited.
|
|
69
|
-
provide('getPaletteColors', () => props.viewModel?.styles?.colors ?? []);
|
|
70
62
|
return {
|
|
71
63
|
fluidText: JSON.stringify({
|
|
72
64
|
default: props.context.brandPageType === BRAND_PAGE_TYPES.brandSite
|
|
@@ -85,17 +77,6 @@ export default defineComponent({
|
|
|
85
77
|
brandPageToken() {
|
|
86
78
|
return this.viewModel?.brandPageToken || null;
|
|
87
79
|
},
|
|
88
|
-
// BP-5886 — global colour palette emitted as a single `:root` block.
|
|
89
|
-
// Only the published single-document surfaces emit the global block:
|
|
90
|
-
// template-grid cards get scoped vars (TemplatePreview) and the maker main
|
|
91
|
-
// preview emits from BrandPageMakerPage, so guard those out to avoid a
|
|
92
|
-
// duplicate / colliding `:root`.
|
|
93
|
-
shouldEmitPaletteRoot() {
|
|
94
|
-
return !this.context?.isTemplate && !this.context?.isPreview;
|
|
95
|
-
},
|
|
96
|
-
paletteRootStyleHtml() {
|
|
97
|
-
return buildPaletteRootCss(this.viewModel?.styles?.colors ?? []);
|
|
98
|
-
},
|
|
99
80
|
contents() {
|
|
100
81
|
return this.pageViewModel?.contents || [];
|
|
101
82
|
},
|
|
@@ -53,7 +53,6 @@ export declare class PageStyles {
|
|
|
53
53
|
logoStyles: LogoStyles;
|
|
54
54
|
textStyles: TextStyles;
|
|
55
55
|
galleryStyles: GalleryStyles;
|
|
56
|
-
colors: ColorItem[];
|
|
57
56
|
constructor(option?: Partial<Omit<PageStyles, 'logoStyles' | 'buttonStyles' | 'backgroundStyles' | 'textStyles'>> & {
|
|
58
57
|
logoStyles?: Partial<LogoStyles>;
|
|
59
58
|
buttonStyles?: Partial<ButtonStyles>;
|
|
@@ -371,18 +370,6 @@ export interface ColorReplacement {
|
|
|
371
370
|
originalColor: string;
|
|
372
371
|
replacementColor: string;
|
|
373
372
|
}
|
|
374
|
-
/**
|
|
375
|
-
* A single entry in the global colour palette (BP-5886).
|
|
376
|
-
* `id` is the CSS-variable name emitted at :root (`--<id>`); elements reference
|
|
377
|
-
* the colour via `var(--<id>)`. `value` is a concrete literal (rgb/#hex or a
|
|
378
|
-
* gradient string). `palette` = the 4 static brand roles (`palette-0`…`palette-3`);
|
|
379
|
-
* `custom` = one-off colours chosen on elements (`palette-custom-<uuid>`).
|
|
380
|
-
*/
|
|
381
|
-
export interface ColorItem {
|
|
382
|
-
id: string;
|
|
383
|
-
value: string;
|
|
384
|
-
type: 'palette' | 'custom';
|
|
385
|
-
}
|
|
386
373
|
export interface TestimonialSectionContent extends Content {
|
|
387
374
|
type: 'testimonial-section';
|
|
388
375
|
title: string;
|
|
@@ -85,9 +85,6 @@ export class PageStyles {
|
|
|
85
85
|
logoStyles;
|
|
86
86
|
textStyles;
|
|
87
87
|
galleryStyles;
|
|
88
|
-
// BP-5886 global colour palette. Non-nullable (default []) per the model
|
|
89
|
-
// reactivity rule; old persisted `styles` that omit it hydrate to [].
|
|
90
|
-
colors;
|
|
91
88
|
constructor(option = {}) {
|
|
92
89
|
this.backgroundStyles = new BackgroundStyles(option.backgroundStyles || {
|
|
93
90
|
backgroundImageUrl: '',
|
|
@@ -112,7 +109,6 @@ export class PageStyles {
|
|
|
112
109
|
? new TextStyles(option.textStyles)
|
|
113
110
|
: TextStyles.GetDefaultTextStyle();
|
|
114
111
|
this.galleryStyles = new GalleryStyles(option.galleryStyles);
|
|
115
|
-
this.colors = option.colors ? option.colors.map((c) => ({ ...c })) : [];
|
|
116
112
|
}
|
|
117
113
|
}
|
|
118
114
|
export const ASPECT_RATIOS = {
|
|
@@ -25,34 +25,16 @@ export const calculateLuminanceRatio = (color1, color2) => {
|
|
|
25
25
|
: (color1luminance + 0.05) / (color2luminance + 0.05);
|
|
26
26
|
return ratio;
|
|
27
27
|
};
|
|
28
|
-
// BP-5886: these helpers assume a `#rrggbb[aa]` hex. Under the palette model a
|
|
29
|
-
// colour value may instead be a `var(--id)` reference (or a named colour /
|
|
30
|
-
// gradient), and blindly substringing those yields garbage (e.g. `var(--p`),
|
|
31
|
-
// which corrupts the picker swatch. Guard so a non-hex value passes through
|
|
32
|
-
// untouched rather than being mangled.
|
|
33
|
-
const isHashPrefixedHex = (value) => typeof value === 'string' && value.trim().startsWith('#');
|
|
34
28
|
export const isHexTransparent = (hex) => {
|
|
35
|
-
if (!isHashPrefixedHex(hex)) {
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
29
|
return hex.trim().substring(7, 9) === '00';
|
|
39
30
|
};
|
|
40
31
|
export const removeAlphaFromHex = (hex) => {
|
|
41
|
-
if (!isHashPrefixedHex(hex)) {
|
|
42
|
-
return hex;
|
|
43
|
-
}
|
|
44
32
|
return hex.trim().substring(0, 7);
|
|
45
33
|
};
|
|
46
34
|
export const addTransparentAlphaChannelToHex = (hex) => {
|
|
47
|
-
if (!isHashPrefixedHex(hex)) {
|
|
48
|
-
return hex;
|
|
49
|
-
}
|
|
50
35
|
return `${removeAlphaFromHex(hex)}00`;
|
|
51
36
|
};
|
|
52
37
|
export const addOpacityToHex = (hex, opacity) => {
|
|
53
|
-
if (!isHashPrefixedHex(hex)) {
|
|
54
|
-
return hex;
|
|
55
|
-
}
|
|
56
38
|
return `${removeAlphaFromHex(hex)}${Math.round(opacity * 255).toString(16)}`;
|
|
57
39
|
};
|
|
58
40
|
export const setRgbAlpha = (rgb, alpha) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type BrandPageModel, type LogoImageModel
|
|
1
|
+
import { type BrandPageModel, type LogoImageModel } from '../models';
|
|
2
2
|
export interface MigrationData {
|
|
3
3
|
brandPageModel: BrandPageModel;
|
|
4
4
|
useOldLogoRenderSize: boolean;
|
|
@@ -8,7 +8,6 @@ export interface MigrationOptions {
|
|
|
8
8
|
isUserDraft: boolean;
|
|
9
9
|
isServerRender: boolean;
|
|
10
10
|
disableLogoSizeMigration?: boolean;
|
|
11
|
-
logoTheme?: LogoTheme;
|
|
12
11
|
}
|
|
13
12
|
export declare const GetLatestModelVersion: () => number;
|
|
14
13
|
export declare const migrateBrandPageModel: (brandPageModel: BrandPageModel, options: MigrationOptions) => Promise<MigrationData>;
|
|
@@ -22,7 +22,6 @@ import { migration16 } from './migration/migration-16';
|
|
|
22
22
|
import { migration17 } from './migration/migration-17';
|
|
23
23
|
import { migration18 } from './migration/migration-18';
|
|
24
24
|
import { migration19 } from './migration/migration-19';
|
|
25
|
-
import { migration20 } from './migration/migration-20';
|
|
26
25
|
const MIGRATION_TABLE = [
|
|
27
26
|
{
|
|
28
27
|
version: 1,
|
|
@@ -150,15 +149,6 @@ const MIGRATION_TABLE = [
|
|
|
150
149
|
runAlways: true,
|
|
151
150
|
description: 'BP-5800: seed the button fill colour as each block’s own container colour so it is independent of the site button (existing sites render unchanged) — backgroundStyle for mailing-list, request-payment and support-me (all types); cardStyle for the BP/BC contact form (skipped on brand-site)',
|
|
152
151
|
},
|
|
153
|
-
{
|
|
154
|
-
version: 20,
|
|
155
|
-
migrateFn: migration20,
|
|
156
|
-
// Version-gated (runs once, when modelVersion < 20): builds the palette + 4
|
|
157
|
-
// palette roles and referencifies every colour, then the model is stamped v20
|
|
158
|
-
// and never re-migrated. Idempotent if it ever re-runs (existing palette + only
|
|
159
|
-
// var() values). Ordered after migration19 so its seeded colours extract too.
|
|
160
|
-
description: 'BP-5886 Global Color V2: extract every colour into a central styles.colors palette (4 palette roles + palette-custom-<uuid>) and rewrite references to var(--id) — RTE, shapes, box-shadow, gradients included (lossless, once)',
|
|
161
|
-
},
|
|
162
152
|
];
|
|
163
153
|
export const GetLatestModelVersion = () => Math.max(...MIGRATION_TABLE.map((x) => x.version));
|
|
164
154
|
export const migrateBrandPageModel = async (brandPageModel, options) => {
|
|
@@ -1,19 +1,6 @@
|
|
|
1
|
-
import type { BrandPageModel, LogoTheme, ThemeColor, FabricLogoTheme, ButtonStyles, PageModel
|
|
1
|
+
import type { BrandPageModel, LogoTheme, ThemeColor, FabricLogoTheme, ButtonStyles, PageModel } from '../models';
|
|
2
2
|
import { NavigationDesktop, NavigationMobile } from '../models';
|
|
3
3
|
import { PageStyles, PageHeaderMobile, PageHeaderDesktop, PageFooterMobile, PageFooterDesktop } from '../models';
|
|
4
|
-
/**
|
|
5
|
-
* BP-5886 — global colour palette emission.
|
|
6
|
-
*
|
|
7
|
-
* A `ColorItem` already holds one resolved value, so emission is a straight
|
|
8
|
-
* `--id: value` map (no gradient/solid gating here — that's an authoring-time
|
|
9
|
-
* concern). These are the single source of truth for the `:root` block across
|
|
10
|
-
* the maker preview, the published `<Page>` (SSR), and template-grid cards.
|
|
11
|
-
*/
|
|
12
|
-
export declare const paletteToCssVarDeclarations: (colors: ColorItem[]) => string;
|
|
13
|
-
/** Full `<style>:root{…}</style>` block for `v-html` consumers (Page.vue, maker). */
|
|
14
|
-
export declare const buildPaletteRootCss: (colors: ColorItem[]) => string;
|
|
15
|
-
/** `{ '--id': 'value' }` for scoped inline `:style` consumers (template grid). */
|
|
16
|
-
export declare const buildPaletteVarStyle: (colors: ColorItem[]) => Record<string, string>;
|
|
17
4
|
/**
|
|
18
5
|
* Simple utility to convert any color format to hex for consistent comparison
|
|
19
6
|
*/
|
|
@@ -6,34 +6,6 @@ import { addTransparentAlphaChannelToHex, calculateLuminanceRatio, getNewColorBa
|
|
|
6
6
|
import { isRgbColor } from '@src/utils/helpers';
|
|
7
7
|
import chroma from 'chroma-js';
|
|
8
8
|
import { hasRTEContent, RTE_ALLOWED_SECTION_TYPES, } from '@brand-page-maker/utils';
|
|
9
|
-
import { isColorVarReference } from './color-palette.util';
|
|
10
|
-
/**
|
|
11
|
-
* BP-5886 — global colour palette emission.
|
|
12
|
-
*
|
|
13
|
-
* A `ColorItem` already holds one resolved value, so emission is a straight
|
|
14
|
-
* `--id: value` map (no gradient/solid gating here — that's an authoring-time
|
|
15
|
-
* concern). These are the single source of truth for the `:root` block across
|
|
16
|
-
* the maker preview, the published `<Page>` (SSR), and template-grid cards.
|
|
17
|
-
*/
|
|
18
|
-
export const paletteToCssVarDeclarations = (colors) => (colors ?? [])
|
|
19
|
-
.filter((c) => c && c.id && c.value)
|
|
20
|
-
.map((c) => `--${c.id}: ${c.value};`)
|
|
21
|
-
.join('\n ');
|
|
22
|
-
/** Full `<style>:root{…}</style>` block for `v-html` consumers (Page.vue, maker). */
|
|
23
|
-
export const buildPaletteRootCss = (colors) => {
|
|
24
|
-
const declarations = paletteToCssVarDeclarations(colors);
|
|
25
|
-
return declarations
|
|
26
|
-
? `<style>
|
|
27
|
-
:root {
|
|
28
|
-
${declarations}
|
|
29
|
-
}
|
|
30
|
-
</style>`
|
|
31
|
-
: '';
|
|
32
|
-
};
|
|
33
|
-
/** `{ '--id': 'value' }` for scoped inline `:style` consumers (template grid). */
|
|
34
|
-
export const buildPaletteVarStyle = (colors) => Object.fromEntries((colors ?? [])
|
|
35
|
-
.filter((c) => c && c.id && c.value)
|
|
36
|
-
.map((c) => [`--${c.id}`, c.value]));
|
|
37
9
|
/**
|
|
38
10
|
* Simple utility to convert any color format to hex for consistent comparison
|
|
39
11
|
*/
|
|
@@ -87,13 +59,6 @@ export const getColorValueForCorrectCssProperty = (k, colorData) => {
|
|
|
87
59
|
: colorData.rgb;
|
|
88
60
|
};
|
|
89
61
|
export const colorMatchCssKeyValue = (cssKey, cssValue, logoTheme, applyColorWithMatchingLuminance) => {
|
|
90
|
-
// BP-5886: never bake a palette reference. Once a value is a `var(--id)` (from
|
|
91
|
-
// migration-20) it is resolved by the emitted :root block — the legacy logo
|
|
92
|
-
// theme bake must leave it untouched (the substring match below would otherwise
|
|
93
|
-
// rewrite `var(--logo-text-color)` back to rgb).
|
|
94
|
-
if (isColorVarReference(cssValue)) {
|
|
95
|
-
return { cssValue, isModified: false };
|
|
96
|
-
}
|
|
97
62
|
if (applyColorWithMatchingLuminance?.originalColor) {
|
|
98
63
|
let themeToApply;
|
|
99
64
|
if (cssValue === STYLE_THEME_KEYS.LogoTextMultiColor) {
|
|
@@ -351,14 +316,6 @@ export const applyLogoThemeToBrandPageStyles = (logoTheme, pageStyles) => {
|
|
|
351
316
|
let isModified = false;
|
|
352
317
|
const newStyle = new PageStyles();
|
|
353
318
|
for (const [key, value] of Object.entries(pageStyles)) {
|
|
354
|
-
// BP-5886: `colors` is the global palette (ColorItem[]), not an element
|
|
355
|
-
// style — preserve it verbatim. The logo-theme bake must never walk/rewrite
|
|
356
|
-
// the palette (the generic array branch below would collapse it to a single
|
|
357
|
-
// element and break every downstream `colors.map`).
|
|
358
|
-
if (key === 'colors') {
|
|
359
|
-
newStyle.colors = value;
|
|
360
|
-
continue;
|
|
361
|
-
}
|
|
362
319
|
if (Array.isArray(value)) {
|
|
363
320
|
for (let i = 0; i < value.length; i++) {
|
|
364
321
|
const output = applyLogoThemeToBrandPageStyleRecursive(logoTheme, `pageStyles`, value[i]);
|
|
@@ -649,7 +649,6 @@ export const mapToPageStyleViewModel = (pageStyles, options) => {
|
|
|
649
649
|
logoStyles: pageStyles.logoStyles,
|
|
650
650
|
textStyles: pageStyles.textStyles,
|
|
651
651
|
galleryStyles: pageStyles.galleryStyles,
|
|
652
|
-
colors: pageStyles.colors ?? [],
|
|
653
652
|
};
|
|
654
653
|
};
|
|
655
654
|
export const mapToPageHeaderViewModel = (pageHeader, pageStyles, pages, useOldLogoRenderSize = false) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ButtonWithModalContent, ProfileContent, TextContent, VideoContent, ImageContent, ContentType, ButtonStyles, LogoStyles, MapContent, ImageGalleryContent, GalleryStyles, MailingListContent, RequestPaymentContent, ShopContent, SupportMeContent, ContactFormContent, BannerSectionContent, BrandPageType, SocialLinksContent, TestimonialSectionContent, AboutSectionContent, DividerSectionContent, ShapesSectionContent, ButtonLinkType, PageHeaderMobile, PageHeaderDesktop, PageFooterMobile, PageFooterDesktop, TextMediaItem, TextShapeItem, TextStyleDeclaration, AspectRatio, LogoImageModel, LogoTemplateImageModel, CookieOptions, BookingSectionContent, MediaTypes, TextStyles, BackgroundStyle, BackgroundShape, PersonalisationRole, SaveContactOptions
|
|
1
|
+
import type { ButtonWithModalContent, ProfileContent, TextContent, VideoContent, ImageContent, ContentType, ButtonStyles, LogoStyles, MapContent, ImageGalleryContent, GalleryStyles, MailingListContent, RequestPaymentContent, ShopContent, SupportMeContent, ContactFormContent, BannerSectionContent, BrandPageType, SocialLinksContent, TestimonialSectionContent, AboutSectionContent, DividerSectionContent, ShapesSectionContent, ButtonLinkType, PageHeaderMobile, PageHeaderDesktop, PageFooterMobile, PageFooterDesktop, TextMediaItem, TextShapeItem, TextStyleDeclaration, AspectRatio, LogoImageModel, LogoTemplateImageModel, CookieOptions, BookingSectionContent, MediaTypes, TextStyles, BackgroundStyle, BackgroundShape, PersonalisationRole, SaveContactOptions } from './models';
|
|
2
2
|
import type { ImagesSectionContentDisplayStyle } from './constants';
|
|
3
3
|
export type ViewModelType = 'button' | 'image' | 'image-gallery' | 'logo' | 'map' | 'mailing-list' | 'profile' | 'support-me' | 'request-payment' | 'text' | 'video' | 'contact-form' | 'banner-section' | 'images-section' | 'about-section' | 'divider-section' | 'testimonial-section' | 'social-links' | 'shapes-section' | 'shop-section' | 'booking-section';
|
|
4
4
|
export interface ContentViewModel {
|
|
@@ -150,7 +150,6 @@ export interface PageStylesViewModel {
|
|
|
150
150
|
logoStyles: LogoStyles;
|
|
151
151
|
textStyles: TextStyles;
|
|
152
152
|
galleryStyles: GalleryStyles;
|
|
153
|
-
colors: ColorItem[];
|
|
154
153
|
}
|
|
155
154
|
export interface NavRouteViewModel {
|
|
156
155
|
id: string;
|
package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts
CHANGED
|
@@ -1329,8 +1329,6 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
|
1329
1329
|
styles: {};
|
|
1330
1330
|
}, {
|
|
1331
1331
|
brandPageToken(): string | null;
|
|
1332
|
-
shouldEmitPaletteRoot(): boolean;
|
|
1333
|
-
paletteRootStyleHtml(): string;
|
|
1334
1332
|
contents(): ContentViewModel[];
|
|
1335
1333
|
backgroundShapes(): import("@brand-page").BackgroundShape[];
|
|
1336
1334
|
rootElementStyles(): BrandPageCssStyle;
|
package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.js
CHANGED
|
@@ -15,7 +15,6 @@ import { transformToRTE, RTE_ALLOWED_SECTION_TYPES, } from '@brand-page-maker/ut
|
|
|
15
15
|
import { useExternalRichTextEditor } from '@brand-page-maker/composables/rich-text-editor/useRichTextEditor';
|
|
16
16
|
import { useUiStyleSettingsStore } from '@shared/style-settings/store';
|
|
17
17
|
import { STYLE_THEME_KEYS } from '@brand-page/constants';
|
|
18
|
-
import { paletteToCssVarDeclarations } from '@brand-page/utils';
|
|
19
18
|
import { useHistoryStore } from '@brand-page-maker/stores/history/history-store';
|
|
20
19
|
export default defineComponent({
|
|
21
20
|
mixins: [PageMixin],
|
|
@@ -104,23 +103,20 @@ export default defineComponent({
|
|
|
104
103
|
};
|
|
105
104
|
},
|
|
106
105
|
styleHtml() {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
// BP-5886 global colour palette → :root custom properties.
|
|
122
|
-
const paletteVars = paletteToCssVarDeclarations(this.viewModel?.styles?.colors ?? []);
|
|
123
|
-
const cssVariables = [legacyLogoVars, paletteVars]
|
|
106
|
+
if (!this.logoTheme) {
|
|
107
|
+
return '';
|
|
108
|
+
}
|
|
109
|
+
// Generate CSS variables for logo theme colors
|
|
110
|
+
const cssVariables = Object.entries(STYLE_THEME_KEYS)
|
|
111
|
+
.map(([key, value]) => {
|
|
112
|
+
const themeColor = key.includes('Background')
|
|
113
|
+
? this.logoTheme.logoBackgroundColor
|
|
114
|
+
: this.logoTheme.logoTextColor;
|
|
115
|
+
if (themeColor?.rgb) {
|
|
116
|
+
return `--${value}: ${themeColor.rgb};`;
|
|
117
|
+
}
|
|
118
|
+
return '';
|
|
119
|
+
})
|
|
124
120
|
.filter(Boolean)
|
|
125
121
|
.join('\n ');
|
|
126
122
|
return cssVariables
|
package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.d.ts
CHANGED
|
@@ -45,8 +45,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
45
45
|
}>> & Readonly<{
|
|
46
46
|
"onUpdate:activeHandlerId"?: ((...args: any[]) => any) | undefined;
|
|
47
47
|
}>, {
|
|
48
|
-
colors: unknown[];
|
|
49
48
|
activeHandlerId: number;
|
|
49
|
+
colors: unknown[];
|
|
50
50
|
maxNumberOfColors: number;
|
|
51
51
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
52
52
|
export default _default;
|