@designcrowd/library.brand-page 5.6.4-fluid-6 → 5.6.4-scroll-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 (35) hide show
  1. package/lib/src/brand-page/components/page/Page.mixin.d.ts +3 -4
  2. package/lib/src/brand-page/components/page/Page.mixin.js +22 -24
  3. package/lib/src/brand-page/components/text-wrapper/TextWrapper.mixin.d.ts +44 -0
  4. package/lib/src/brand-page/components/text-wrapper/TextWrapper.mixin.js +38 -0
  5. package/lib/src/brand-page/models/index.d.ts +0 -3
  6. package/lib/src/brand-page/utils/migration.util.js +0 -5
  7. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.js +2 -206
  8. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +3 -5
  9. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.js +0 -11
  10. package/lib/src/brand-page-maker/convertors/text-size-value.convertor.js +3 -3
  11. package/lib/src/brand-page-maker/utils/text.util.d.ts +2 -2
  12. package/lib/src/brand-page-maker/utils/text.util.js +3 -3
  13. package/lib/src/css/library.brand-page-brandCrowd.min.css +19 -19
  14. package/lib/src/css/library.brand-page-brandPage.min.css +19 -19
  15. package/lib/src/css/library.brand-page-designCom.min.css +19 -19
  16. package/lib/src/css/library.brand-page-preview.min.css +19 -19
  17. package/lib/src/index.mjs +11361 -11414
  18. package/package.json +1 -1
  19. package/src/brand-page/components/page/Page.mixin.ts +36 -30
  20. package/src/brand-page/components/page/Page.vue +3 -7
  21. package/src/brand-page/components/text/Text.vue +6 -9
  22. package/src/brand-page/components/text-wrapper/TextWrapper.mixin.ts +41 -0
  23. package/src/brand-page/components/text-wrapper/TextWrapper.vue +12 -169
  24. package/src/brand-page/models/index.ts +0 -4
  25. package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +27 -27
  26. package/src/brand-page/utils/migration.util.ts +0 -5
  27. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.ts +5 -213
  28. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.ts +0 -13
  29. package/src/brand-page-maker/components/shop/ProductConfigModal.vue +1 -1
  30. package/src/brand-page-maker/convertors/text-size-value.convertor.ts +3 -3
  31. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.test.ts +3 -12
  32. package/src/brand-page-maker/utils/text.util.ts +3 -3
  33. package/lib/src/brand-page/utils/migration/migration-03.d.ts +0 -5
  34. package/lib/src/brand-page/utils/migration/migration-03.js +0 -35
  35. package/src/brand-page/utils/migration/migration-03.ts +0 -46
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@designcrowd/library.brand-page",
3
3
  "description": "A collection of Maker/Designer applications",
4
- "version": "5.6.4-fluid-6",
4
+ "version": "5.6.4-scroll-2",
5
5
  "author": "Design.com Eng",
6
6
  "license": "UNLICENSED",
7
7
  "type": "module",
@@ -17,7 +17,6 @@ import {
17
17
  } from '../../constants';
18
18
  import { getSlugFromContext } from '../../utils';
19
19
  import type { ComponentPublicInstance } from '@vue/runtime-core';
20
- import { BRAND_PAGE_TYPES } from '../../models';
21
20
 
22
21
  export default defineComponent({
23
22
  props: {
@@ -72,16 +71,6 @@ export default defineComponent({
72
71
  'page-header-container-click',
73
72
  'page-footer-container-click',
74
73
  ],
75
- setup(props) {
76
- return {
77
- fluidText: JSON.stringify({
78
- default:
79
- props.context.brandPageType === BRAND_PAGE_TYPES.brandSite
80
- ? 1200
81
- : 768,
82
- }),
83
- };
84
- },
85
74
  data() {
86
75
  return {
87
76
  isSideMenuOpen: false,
@@ -118,7 +107,28 @@ export default defineComponent({
118
107
  return backgroundShapes;
119
108
  },
120
109
 
121
- rootStyles(): BrandPageCssStyle {
110
+ rootElementStyles(): BrandPageCssStyle {
111
+ const styles: BrandPageCssStyle = {};
112
+
113
+ Object.assign(styles, this.viewModel?.styles?.textStyles?.style);
114
+
115
+ const textFontFamilyKey =
116
+ this.viewModel.styles?.textStyles.textFontFamily ||
117
+ DEFAULT_FONT_FAMILY_KEY;
118
+
119
+ const textFontFamilyConfig = FONT_FAMILY_CONFIGS[textFontFamilyKey];
120
+
121
+ if (textFontFamilyConfig) {
122
+ styles.fontFamily = [
123
+ `"${textFontFamilyConfig.name}"`,
124
+ ...FALLBACK_FONT_FAMILIES,
125
+ ].join(', ');
126
+ }
127
+
128
+ return styles;
129
+ },
130
+
131
+ rootBackgroundStyles(): BrandPageCssStyle {
122
132
  const styles: BrandPageCssStyle = {
123
133
  ...(this.viewModel?.styles?.backgroundStyles?.style || {}),
124
134
  };
@@ -152,6 +162,7 @@ export default defineComponent({
152
162
  if (!this.context.isTemplate) {
153
163
  styles.position = 'fixed';
154
164
  styles.width = '100%';
165
+ styles.height = '100%';
155
166
  }
156
167
 
157
168
  delete styles.background;
@@ -167,21 +178,6 @@ export default defineComponent({
167
178
  styles.backgroundAttachment = 'fixed';
168
179
  }
169
180
 
170
- Object.assign(styles, this.viewModel?.styles?.textStyles?.style);
171
-
172
- const textFontFamilyKey =
173
- this.viewModel.styles?.textStyles.textFontFamily ||
174
- DEFAULT_FONT_FAMILY_KEY;
175
-
176
- const textFontFamilyConfig = FONT_FAMILY_CONFIGS[textFontFamilyKey];
177
-
178
- if (textFontFamilyConfig) {
179
- styles.fontFamily = [
180
- `"${textFontFamilyConfig.name}"`,
181
- ...FALLBACK_FONT_FAMILIES,
182
- ].join(', ');
183
- }
184
-
185
181
  return styles;
186
182
  },
187
183
 
@@ -341,7 +337,10 @@ export default defineComponent({
341
337
  },
342
338
  },
343
339
  watch: {
344
- rootStyles() {
340
+ rootElementStyles() {
341
+ this.setRootStyles();
342
+ },
343
+ rootBackgroundStyles() {
345
344
  this.setRootStyles();
346
345
  },
347
346
  },
@@ -376,12 +375,19 @@ export default defineComponent({
376
375
  */
377
376
  setRootStyles() {
378
377
  if (this.context.isPreview) {
379
- this.$emit('on-set-preview-styles', this.rootStyles);
378
+ this.$emit(
379
+ 'on-set-preview-styles',
380
+ Object.assign({}, this.rootElementStyles, this.rootBackgroundStyles),
381
+ );
380
382
 
381
383
  return;
382
384
  }
383
385
 
384
- this.styles = Object.assign(this.styles, this.rootStyles);
386
+ this.styles = Object.assign(
387
+ this.styles,
388
+ this.rootElementStyles,
389
+ this.rootBackgroundStyles,
390
+ );
385
391
  },
386
392
  scrollToLastContent() {
387
393
  if (!this.contents.length) {
@@ -1,7 +1,8 @@
1
1
  <template>
2
+ <div class="brand-page-root-background" :style="rootBackgroundStyles" />
2
3
  <div
3
4
  class="brand-page-root"
4
- :style="styles"
5
+ :style="rootElementStyles"
5
6
  :data-test-device-type="
6
7
  typeof isMobileDevice !== 'undefined'
7
8
  ? isMobileDevice
@@ -55,12 +56,12 @@
55
56
  </template>
56
57
  </MediaQuery>
57
58
  </div>
59
+
58
60
  <div
59
61
  :class="{
60
62
  'brand-page__content--default': !context.isBrandSite,
61
63
  'brand-page__content--desktop': context.isBrandSite,
62
64
  }"
63
- :data-fluid-text="fluidText"
64
65
  >
65
66
  <div
66
67
  v-if="bpShowTopNavigationDesktop || bpShowTopNavigationMobile"
@@ -280,11 +281,6 @@ export default {
280
281
  BrandSiteNavigationLayout,
281
282
  },
282
283
  mixins: [PageMixin],
283
- setup(props) {
284
- return {
285
- ...PageMixin.setup(props),
286
- };
287
- },
288
284
  };
289
285
  </script>
290
286
 
@@ -7,11 +7,10 @@
7
7
  [containerClasses]: true,
8
8
  }"
9
9
  >
10
- <TextWrapper
11
- :key="index"
12
- :text-style="viewModel.textStyle"
13
- :text="renderText"
10
+ <p
14
11
  data-test-tag="text-content-text"
12
+ :style="viewModel.textStyle"
13
+ v-html="renderText"
15
14
  />
16
15
  </div>
17
16
  <div v-else :style="containerStyle">
@@ -22,24 +21,22 @@
22
21
  [gridClass]: context.isBrandSite,
23
22
  }"
24
23
  >
25
- <TextWrapper
24
+ <p
26
25
  v-for="(item, index) in viewModel.textItems"
27
26
  :key="index"
28
- :text-style="item.textStyle"
29
- :text="renderTextItem(item.text)"
30
27
  class="tw-overflow-hidden"
31
28
  data-test-tag="text-content-text-item"
29
+ :style="item.textStyle"
30
+ v-html="renderTextItem(item.text)"
32
31
  />
33
32
  </div>
34
33
  </div>
35
34
  </div>
36
35
  </template>
37
36
  <script>
38
- import TextWrapper from '../text-wrapper/TextWrapper.vue';
39
37
  import TextMixin from './Text.mixin.ts';
40
38
 
41
39
  export default {
42
- components: { TextWrapper },
43
40
  mixins: [TextMixin],
44
41
  };
45
42
  </script>
@@ -0,0 +1,41 @@
1
+ import { defineComponent } from 'vue';
2
+ import type { PropType } from 'vue';
3
+
4
+ export default defineComponent({
5
+ props: {
6
+ textStyle: {
7
+ type: Object as PropType<BrandPageCssStyle>,
8
+ required: false,
9
+ default: undefined,
10
+ },
11
+ text: {
12
+ type: String,
13
+ required: true,
14
+ },
15
+ element: {
16
+ type: String,
17
+ required: false,
18
+ default: () => 'p',
19
+ },
20
+ },
21
+ data: () => ({
22
+ isCollapsed: false as boolean,
23
+ }),
24
+ computed: {
25
+ textStyles() {
26
+ return {
27
+ backgroundColor: this.textStyle.backgroundColor,
28
+ };
29
+ },
30
+ style() {
31
+ const { backgroundColor, ...textStyle } = this.textStyle;
32
+
33
+ return textStyle;
34
+ },
35
+ padding() {
36
+ return this.textStyle.backgroundColor ? 'tw-py-2 tw-px-4' : '';
37
+ },
38
+ },
39
+ watch: {},
40
+ methods: {},
41
+ });
@@ -1,175 +1,18 @@
1
1
  <template>
2
- <div v-if="text" class="tw-w-full" :style="data.wrapperStyle">
3
- <div class="tw-w-full" :style="style">
4
- <component
5
- :is="element"
6
- :class="padding"
7
- class="tw-box-decoration-clone tw-inline"
8
- :style="textStyles"
9
- v-html="text"
10
- />
11
- </div>
2
+ <div v-if="text" class="tw-w-full" :style="style">
3
+ <component
4
+ :is="element"
5
+ :class="padding"
6
+ class="tw-box-decoration-clone tw-inline"
7
+ :style="textStyles"
8
+ v-html="text"
9
+ />
12
10
  </div>
13
11
  </template>
14
- <script setup lang="ts">
15
- import { type FluidTextData } from '../../models';
16
- import {
17
- computed,
18
- reactive,
19
- onMounted,
20
- onUnmounted,
21
- getCurrentInstance,
22
- } from 'vue';
12
+ <script>
13
+ import TextWrapper from './TextWrapper.mixin.ts';
23
14
 
24
- interface Props {
25
- textStyle: BrandPageCssStyle;
26
- text: string;
27
- element?: string;
28
- }
29
-
30
- const props = withDefaults(defineProps<Props>(), {
31
- element: 'p',
32
- });
33
-
34
- const data = reactive<{
35
- wrapperStyle: BrandPageCssStyle;
36
- targetContainer: any;
37
- targetContainerData: FluidTextData;
38
- }>({
39
- wrapperStyle: {
40
- fontSize: '100%',
41
- },
42
- targetContainer: null as any,
43
- targetContainerData: null as any,
44
- });
45
-
46
- const textStyles = computed(() => {
47
- return {
48
- backgroundColor: props.textStyle.backgroundColor,
49
- };
50
- });
51
-
52
- const style = computed<any>(() => {
53
- const { backgroundColor, ...textStyle } = props.textStyle;
54
-
55
- return textStyle;
56
- });
57
-
58
- const currentInstance = getCurrentInstance();
59
-
60
- const padding = computed(() =>
61
- props.textStyle.backgroundColor ? 'tw-py-2 tw-px-4' : '',
62
- );
63
-
64
- onMounted(() => {
65
- setTargetContainer();
66
-
67
- applyScale();
68
-
69
- window.addEventListener('resize', applyScale);
70
- window.addEventListener('editor:viewport', applyScaleWithDelay);
71
- });
72
-
73
- onUnmounted(() => {
74
- window.removeEventListener('resize', applyScale);
75
- window.removeEventListener('editor:viewport', applyScaleWithDelay);
76
- });
77
-
78
- const applyScaleWithDelay = () => {
79
- setTimeout(() => {
80
- applyScale();
81
- }, 350);
82
- };
83
-
84
- // Traversing back up the node tree to find the correct container element
85
- // There can be more than one due to template setting side bar if we use document selector
86
- const setTargetContainer = () => {
87
- let p = (currentInstance as any).vnode.el.parentNode;
88
- while (p) {
89
- const dataFluidText = p.getAttribute('data-fluid-text');
90
- if (dataFluidText) {
91
- data.targetContainer = p;
92
- data.targetContainerData = JSON.parse(dataFluidText);
93
-
94
- return;
95
- }
96
-
97
- p = p.parentNode;
98
- }
99
- };
100
-
101
- // EM PX
102
- // 1 16
103
- // 2 32
104
- // 3 48
105
- // 4 64
106
- // 4.5 72
107
- // 5 80
108
- // 6 96
109
- // 7 112
110
- // 8 128
111
-
112
- // minimum font size that will apply the scale
113
- // MUST be bigger than `minFontSizeInPxForVariableRate`
114
- const minFontSizeInPxToDisableScale = 23;
115
-
116
- // bigger the number smaller font will take less scale effect
117
- const minFontSizeInPxForVariableRate = 22;
118
-
119
- const applyScale = () => {
120
- if (!data.targetContainer || !data.targetContainerData) {
121
- return;
122
- }
123
-
124
- const currentFontSize = props.textStyle.fontSize || '1em';
125
- const fontSizeValue = parseFloat(currentFontSize);
126
- const fontSizeValueInPx = fontSizeValue * 16;
127
- if (fontSizeValueInPx < minFontSizeInPxToDisableScale) {
128
- return;
129
- }
130
-
131
- const targetContainerWidth = data.targetContainer.clientWidth;
132
-
133
- const targetWidth = data.targetContainerData.default;
134
- console.log(
135
- 'Text >',
136
- props.text,
137
- window.innerWidth,
138
- targetContainerWidth,
139
- targetWidth,
140
- );
141
-
142
- if (targetContainerWidth < targetWidth) {
143
- let windowSizeChangeRate = targetContainerWidth / targetWidth;
144
-
145
- const windowSizeChangeRateWeakeningRate = 0.3;
146
-
147
- windowSizeChangeRate =
148
- windowSizeChangeRate +
149
- (1 - windowSizeChangeRate) * windowSizeChangeRateWeakeningRate;
150
-
151
- // VariableRate that determines the how much windowSizeChangeRate to actually apply
152
- const variableFontRate = minFontSizeInPxForVariableRate / fontSizeValueInPx;
153
- const variableRate = 1 - variableFontRate;
154
-
155
- // using math power to give variable factor
156
- const changeRate = Math.pow(windowSizeChangeRate, variableRate);
157
-
158
- const scaledPercentage = Math.min(changeRate * 100, 100);
159
- console.log(' fontSize', currentFontSize, `${fontSizeValue * 16}px`);
160
- console.log(
161
- ' fontSizeScaled',
162
- fontSizeValue * changeRate,
163
- `${fontSizeValue * 16 * changeRate}px`,
164
- );
165
- console.log(' variableFontRate', variableFontRate);
166
- console.log(' windowSizeChangeRate', windowSizeChangeRate);
167
- console.log(' variableRate', variableRate);
168
- console.log(' changeRate', changeRate);
169
-
170
- data.wrapperStyle.fontSize = `${scaledPercentage}%`;
171
- } else {
172
- data.wrapperStyle.fontSize = '100%';
173
- }
15
+ export default {
16
+ mixins: [TextWrapper],
174
17
  };
175
18
  </script>
@@ -984,7 +984,3 @@ export interface PrimaryCta {
984
984
  title: string;
985
985
  description: string;
986
986
  }
987
-
988
- export interface FluidTextData {
989
- default: number;
990
- }
@@ -147,7 +147,7 @@ BrandPageModel {
147
147
  "borderTopWidth": "0px",
148
148
  "color": undefined,
149
149
  "fontFamily": "Lato",
150
- "fontSize": "1em",
150
+ "fontSize": "1rem",
151
151
  "fontStyle": undefined,
152
152
  "fontWeight": "normal",
153
153
  "lineHeight": "1.1",
@@ -219,7 +219,7 @@ BrandPageModel {
219
219
  "borderTopWidth": "0px",
220
220
  "color": undefined,
221
221
  "fontFamily": "Lato",
222
- "fontSize": "1em",
222
+ "fontSize": "1rem",
223
223
  "fontStyle": undefined,
224
224
  "fontWeight": "normal",
225
225
  "lineHeight": "1.1",
@@ -275,7 +275,7 @@ BrandPageModel {
275
275
  "buttonText": "Get Started",
276
276
  "buttonTextStyle": {
277
277
  "fontFamily": "Lato",
278
- "fontSize": "1em",
278
+ "fontSize": "1rem",
279
279
  "lineHeight": "1.5",
280
280
  "overflowWrap": "anywhere",
281
281
  "textAlign": "center",
@@ -285,7 +285,7 @@ BrandPageModel {
285
285
  "description": "",
286
286
  "descriptionStyle": {
287
287
  "fontFamily": "Lato",
288
- "fontSize": "1em",
288
+ "fontSize": "1rem",
289
289
  "lineHeight": "1.5",
290
290
  "overflowWrap": "anywhere",
291
291
  "textAlign": "center",
@@ -300,7 +300,7 @@ BrandPageModel {
300
300
  "title": "This is a banner",
301
301
  "titleStyle": {
302
302
  "fontFamily": "Lato",
303
- "fontSize": "2.25em",
303
+ "fontSize": "2.25rem",
304
304
  "lineHeight": "1.1",
305
305
  "overflowWrap": "anywhere",
306
306
  "textAlign": "center",
@@ -361,7 +361,7 @@ BrandPageModel {
361
361
  "style": {
362
362
  "color": undefined,
363
363
  "fontFamily": "Lato",
364
- "fontSize": "1em",
364
+ "fontSize": "1rem",
365
365
  "fontStyle": undefined,
366
366
  "fontWeight": undefined,
367
367
  "letterSpacing": "0",
@@ -377,7 +377,7 @@ BrandPageModel {
377
377
  "style": {
378
378
  "color": undefined,
379
379
  "fontFamily": "Lato",
380
- "fontSize": "1.5em",
380
+ "fontSize": "1.5rem",
381
381
  "fontStyle": undefined,
382
382
  "fontWeight": undefined,
383
383
  "letterSpacing": "0",
@@ -393,7 +393,7 @@ BrandPageModel {
393
393
  "style": {
394
394
  "color": undefined,
395
395
  "fontFamily": "Lato",
396
- "fontSize": "1em",
396
+ "fontSize": "1rem",
397
397
  "fontStyle": undefined,
398
398
  "fontWeight": undefined,
399
399
  "letterSpacing": "0",
@@ -409,7 +409,7 @@ BrandPageModel {
409
409
  "style": {
410
410
  "color": undefined,
411
411
  "fontFamily": "Lato",
412
- "fontSize": "2.25em",
412
+ "fontSize": "2.25rem",
413
413
  "fontStyle": undefined,
414
414
  "fontWeight": undefined,
415
415
  "letterSpacing": "0",
@@ -423,7 +423,7 @@ BrandPageModel {
423
423
  },
424
424
  },
425
425
  },
426
- "v": 3,
426
+ "v": 2,
427
427
  }
428
428
  `;
429
429
 
@@ -574,7 +574,7 @@ BrandPageModel {
574
574
  "borderTopWidth": "0px",
575
575
  "color": undefined,
576
576
  "fontFamily": "Lato",
577
- "fontSize": "1em",
577
+ "fontSize": "1rem",
578
578
  "fontStyle": undefined,
579
579
  "fontWeight": "normal",
580
580
  "lineHeight": "1.1",
@@ -646,7 +646,7 @@ BrandPageModel {
646
646
  "borderTopWidth": "0px",
647
647
  "color": undefined,
648
648
  "fontFamily": "Lato",
649
- "fontSize": "1em",
649
+ "fontSize": "1rem",
650
650
  "fontStyle": undefined,
651
651
  "fontWeight": "normal",
652
652
  "lineHeight": "1.1",
@@ -711,7 +711,7 @@ BrandPageModel {
711
711
  },
712
712
  ],
713
713
  "textSize": {
714
- "fontSize": "1em",
714
+ "fontSize": "1rem",
715
715
  "lineHeight": "1.2",
716
716
  },
717
717
  "textStyle": {
@@ -772,7 +772,7 @@ BrandPageModel {
772
772
  "style": {
773
773
  "color": undefined,
774
774
  "fontFamily": "Lato",
775
- "fontSize": "1em",
775
+ "fontSize": "1rem",
776
776
  "fontStyle": undefined,
777
777
  "fontWeight": undefined,
778
778
  "letterSpacing": "0",
@@ -788,7 +788,7 @@ BrandPageModel {
788
788
  "style": {
789
789
  "color": undefined,
790
790
  "fontFamily": "Lato",
791
- "fontSize": "1.5em",
791
+ "fontSize": "1.5rem",
792
792
  "fontStyle": undefined,
793
793
  "fontWeight": undefined,
794
794
  "letterSpacing": "0",
@@ -804,7 +804,7 @@ BrandPageModel {
804
804
  "style": {
805
805
  "color": undefined,
806
806
  "fontFamily": "Lato",
807
- "fontSize": "1em",
807
+ "fontSize": "1rem",
808
808
  "fontStyle": undefined,
809
809
  "fontWeight": undefined,
810
810
  "letterSpacing": "0",
@@ -820,7 +820,7 @@ BrandPageModel {
820
820
  "style": {
821
821
  "color": undefined,
822
822
  "fontFamily": "Lato",
823
- "fontSize": "2.25em",
823
+ "fontSize": "2.25rem",
824
824
  "fontStyle": undefined,
825
825
  "fontWeight": undefined,
826
826
  "letterSpacing": "0",
@@ -834,7 +834,7 @@ BrandPageModel {
834
834
  },
835
835
  },
836
836
  },
837
- "v": 3,
837
+ "v": 2,
838
838
  }
839
839
  `;
840
840
 
@@ -985,7 +985,7 @@ BrandPageModel {
985
985
  "borderTopWidth": "0px",
986
986
  "color": undefined,
987
987
  "fontFamily": "Lato",
988
- "fontSize": "1em",
988
+ "fontSize": "1rem",
989
989
  "fontStyle": undefined,
990
990
  "fontWeight": "normal",
991
991
  "lineHeight": "1.1",
@@ -1057,7 +1057,7 @@ BrandPageModel {
1057
1057
  "borderTopWidth": "0px",
1058
1058
  "color": undefined,
1059
1059
  "fontFamily": "Lato",
1060
- "fontSize": "1em",
1060
+ "fontSize": "1rem",
1061
1061
  "fontStyle": undefined,
1062
1062
  "fontWeight": "normal",
1063
1063
  "lineHeight": "1.1",
@@ -1117,7 +1117,7 @@ BrandPageModel {
1117
1117
  "textStyle": {
1118
1118
  "color": undefined,
1119
1119
  "fontFamily": "Lato",
1120
- "fontSize": "1em",
1120
+ "fontSize": "1rem",
1121
1121
  "fontStyle": undefined,
1122
1122
  "fontWeight": undefined,
1123
1123
  "letterSpacing": undefined,
@@ -1129,7 +1129,7 @@ BrandPageModel {
1129
1129
  },
1130
1130
  ],
1131
1131
  "textSize": {
1132
- "fontSize": "1em",
1132
+ "fontSize": "1rem",
1133
1133
  "lineHeight": "1.2",
1134
1134
  },
1135
1135
  "textStyle": {
@@ -1190,7 +1190,7 @@ BrandPageModel {
1190
1190
  "style": {
1191
1191
  "color": undefined,
1192
1192
  "fontFamily": "Lato",
1193
- "fontSize": "1em",
1193
+ "fontSize": "1rem",
1194
1194
  "fontStyle": undefined,
1195
1195
  "fontWeight": undefined,
1196
1196
  "letterSpacing": "0",
@@ -1206,7 +1206,7 @@ BrandPageModel {
1206
1206
  "style": {
1207
1207
  "color": undefined,
1208
1208
  "fontFamily": "Lato",
1209
- "fontSize": "1.5em",
1209
+ "fontSize": "1.5rem",
1210
1210
  "fontStyle": undefined,
1211
1211
  "fontWeight": undefined,
1212
1212
  "letterSpacing": "0",
@@ -1222,7 +1222,7 @@ BrandPageModel {
1222
1222
  "style": {
1223
1223
  "color": undefined,
1224
1224
  "fontFamily": "Lato",
1225
- "fontSize": "1em",
1225
+ "fontSize": "1rem",
1226
1226
  "fontStyle": undefined,
1227
1227
  "fontWeight": undefined,
1228
1228
  "letterSpacing": "0",
@@ -1238,7 +1238,7 @@ BrandPageModel {
1238
1238
  "style": {
1239
1239
  "color": undefined,
1240
1240
  "fontFamily": "Lato",
1241
- "fontSize": "2.25em",
1241
+ "fontSize": "2.25rem",
1242
1242
  "fontStyle": undefined,
1243
1243
  "fontWeight": undefined,
1244
1244
  "letterSpacing": "0",
@@ -1252,6 +1252,6 @@ BrandPageModel {
1252
1252
  },
1253
1253
  },
1254
1254
  },
1255
- "v": 3,
1255
+ "v": 2,
1256
1256
  }
1257
1257
  `;
@@ -1,7 +1,6 @@
1
1
  import { type BrandPageModel, type LogoImageModel } from '../models';
2
2
  import { migration01 } from './migration/migration-01';
3
3
  import { migration02 } from './migration/migration-02';
4
- import { migration03 } from './migration/migration-03';
5
4
 
6
5
  interface MigrationTableItem {
7
6
  version: number;
@@ -23,10 +22,6 @@ const MIGRATION_TABLE = [
23
22
  version: 2,
24
23
  migrateFn: migration02,
25
24
  },
26
- {
27
- version: 3,
28
- migrateFn: migration03,
29
- },
30
25
  ] as MigrationTableItem[];
31
26
 
32
27
  export const GetLatestModelVersion = () =>