@designcrowd/library.brand-page 5.12.3 → 5.12.4-ast-booking

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 (123) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-BIS4HwLB.js → CreatedOnBrandCrowd-de-de-BQeJ_n6B.js} +1 -1
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-DxDARay8.js → CreatedOnBrandCrowd-en-us-Cj3iYC5T.js} +1 -1
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-CooG2xz7.js → CreatedOnBrandCrowd-es-es-Cl7JjVJm.js} +1 -1
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-CGfs-T2d.js → CreatedOnBrandCrowd-fr-fr-DRomv4BA.js} +1 -1
  5. package/lib/src/{CreatedOnBrandCrowd-pt-pt-CVY8SeTl.js → CreatedOnBrandCrowd-pt-pt-DZFEw5Xl.js} +1 -1
  6. package/lib/src/{CreatedOnDcom-de-de-1fdeLt5s.js → CreatedOnDcom-de-de-DZhX2bER.js} +1 -1
  7. package/lib/src/{CreatedOnDcom-en-us-0ItobO75.js → CreatedOnDcom-en-us-Bh9DHJW3.js} +1 -1
  8. package/lib/src/{CreatedOnDcom-es-es-Bss96GRx.js → CreatedOnDcom-es-es-CUkCHVmG.js} +1 -1
  9. package/lib/src/{CreatedOnDcom-fr-fr-CXmnIRMO.js → CreatedOnDcom-fr-fr-CF_tcHWx.js} +1 -1
  10. package/lib/src/{CreatedOnDcom-pt-pt-BDYYHpJa.js → CreatedOnDcom-pt-pt-gyRIp-Wi.js} +1 -1
  11. package/lib/src/brand-page/models/content.model.d.ts +1 -0
  12. package/lib/src/brand-page/models/content.model.js +1 -0
  13. package/lib/src/brand-page/models/index.d.ts +16 -0
  14. package/lib/src/brand-page/utils/style.util.js +1 -1
  15. package/lib/src/brand-page/utils/view-model.util.d.ts +3 -2
  16. package/lib/src/brand-page/utils/view-model.util.js +14 -0
  17. package/lib/src/brand-page/view-models.d.ts +6 -2
  18. package/lib/src/brand-page-maker/assessors/banner-section-description-visibility.assessor.d.ts +4 -4
  19. package/lib/src/brand-page-maker/assessors/banner-section-field.assessor.d.ts +4 -4
  20. package/lib/src/brand-page-maker/components/admin-logo-settings/AdminLogoSettings.mixin.d.ts +2 -2
  21. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +19 -18
  22. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.js +2 -0
  23. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +20 -20
  24. package/lib/src/brand-page-maker/constants/config-settings-constant.d.ts +2 -1
  25. package/lib/src/brand-page-maker/constants/config-settings-constant.js +101 -1
  26. package/lib/src/brand-page-maker/models/content-settings.d.ts +2 -1
  27. package/lib/src/brand-page-maker/models/content-settings.js +28 -0
  28. package/lib/src/brand-page-maker/validators/section-button.validator.d.ts +3 -3
  29. package/lib/src/bundled-translations-BZJKPEb9.js +155 -0
  30. package/lib/src/bundled-translations.de-DE-gxort83w.js +153 -0
  31. package/lib/src/bundled-translations.es-ES-BuDFNpDO.js +153 -0
  32. package/lib/src/bundled-translations.fr-FR-B1h4iGcU.js +153 -0
  33. package/lib/src/bundled-translations.pt-PT-DWXOT8W0.js +153 -0
  34. package/lib/src/bundles/bundled-translations.de-DE.json +10 -2
  35. package/lib/src/bundles/bundled-translations.es-ES.json +10 -2
  36. package/lib/src/bundles/bundled-translations.fr-FR.json +10 -2
  37. package/lib/src/bundles/bundled-translations.json +18 -3
  38. package/lib/src/bundles/bundled-translations.pt-PT.json +10 -2
  39. package/lib/src/composables/useTranslate.d.ts +3 -1
  40. package/lib/src/composables/useTranslate.js +3 -1
  41. package/lib/src/css/library.brand-page-brandCrowd.min.css +14 -9
  42. package/lib/src/css/library.brand-page-brandPage.min.css +14 -9
  43. package/lib/src/css/library.brand-page-designCom.min.css +14 -9
  44. package/lib/src/css/library.brand-page-preview.min.css +14 -9
  45. package/lib/src/index.mjs +176 -175
  46. package/lib/src/{lib-B3W7JSHn.js → lib-Dsso3HKV.js} +21386 -21063
  47. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.d.ts +1 -0
  48. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.js +2 -0
  49. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +20 -20
  50. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +21 -21
  51. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +20 -20
  52. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +18 -18
  53. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.js +1 -1
  54. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +18 -18
  55. package/lib/src/shared/content-settings/components/url-field/UrlField.mixin.d.ts +39 -2
  56. package/lib/src/shared/content-settings/components/url-field/UrlField.mixin.js +32 -0
  57. package/lib/src/shared/content-settings/store/content-settings-store.d.ts +18 -18
  58. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.d.ts +3 -2
  59. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.js +16 -9
  60. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +22 -22
  61. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +20 -20
  62. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.d.ts +1 -1
  63. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.js +11 -1
  64. package/package.json +1 -1
  65. package/src/brand-page/components/booking-section/BookingSection.vue +240 -0
  66. package/src/brand-page/components/map/Map.vue +17 -9
  67. package/src/brand-page/components/page/PageComponent.vue +2 -0
  68. package/src/brand-page/models/content.model.ts +1 -0
  69. package/src/brand-page/models/index.ts +17 -0
  70. package/src/brand-page/utils/style.util.ts +1 -1
  71. package/src/brand-page/utils/view-model.util.ts +27 -0
  72. package/src/brand-page/view-models.ts +10 -1
  73. package/src/brand-page-maker/assessors/banner-section-description-visibility.assessor.ts +7 -4
  74. package/src/brand-page-maker/assessors/banner-section-field.assessor.ts +7 -4
  75. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.ts +2 -0
  76. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.vue +1 -1
  77. package/src/brand-page-maker/components/google-analytics/GoogleAnalytics.vue +3 -3
  78. package/src/brand-page-maker/constants/config-settings-constant.ts +107 -0
  79. package/src/brand-page-maker/models/content-settings.ts +32 -0
  80. package/src/brand-page-maker/validators/section-button.validator.ts +7 -6
  81. package/src/bundles/bundled-translations.de-DE.json +10 -2
  82. package/src/bundles/bundled-translations.es-ES.json +10 -2
  83. package/src/bundles/bundled-translations.fr-FR.json +10 -2
  84. package/src/bundles/bundled-translations.json +18 -3
  85. package/src/bundles/bundled-translations.pt-PT.json +10 -2
  86. package/src/composables/useTranslate.ts +5 -0
  87. package/src/shared/common/i18n/common.de-DE.json +2 -1
  88. package/src/shared/common/i18n/common.es-ES.json +2 -1
  89. package/src/shared/common/i18n/common.fr-FR.json +2 -1
  90. package/src/shared/common/i18n/common.json +3 -1
  91. package/src/shared/common/i18n/common.pt-PT.json +2 -1
  92. package/src/shared/confirm-modal/ConfirmModal.mixin.ts +2 -0
  93. package/src/shared/confirm-modal/ConfirmModal.vue +5 -3
  94. package/src/shared/confirm-modal/i18n/confirm-modal.de-DE.json +7 -0
  95. package/src/shared/confirm-modal/i18n/confirm-modal.es-ES.json +7 -0
  96. package/src/shared/confirm-modal/i18n/confirm-modal.fr-FR.json +7 -0
  97. package/src/shared/confirm-modal/i18n/confirm-modal.json +7 -0
  98. package/src/shared/confirm-modal/i18n/confirm-modal.pt-PT.json +7 -0
  99. package/src/shared/content-settings/components/content-settings/i18n/content-settings.json +5 -1
  100. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.ts +1 -1
  101. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.vue +1 -1
  102. package/src/shared/content-settings/components/payment-config-field/PaymentConfigOptionField.vue +4 -1
  103. package/src/shared/content-settings/components/url-field/UrlField.mixin.ts +38 -0
  104. package/src/shared/content-settings/components/url-field/UrlField.vue +12 -0
  105. package/src/shared/content-settings/components/url-field/i18n/url-field.json +5 -0
  106. package/src/shared/font-family-selector/FontFamilySelector.mixin.ts +21 -11
  107. package/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.ts +14 -3
  108. package/src/shared/publish-brand-page-with-state/i18n/publish-brand-page-modal-with-state.de-DE.json +4 -2
  109. package/src/shared/publish-brand-page-with-state/i18n/publish-brand-page-modal-with-state.es-ES.json +4 -2
  110. package/src/shared/publish-brand-page-with-state/i18n/publish-brand-page-modal-with-state.fr-FR.json +4 -2
  111. package/src/shared/publish-brand-page-with-state/i18n/publish-brand-page-modal-with-state.json +4 -2
  112. package/src/shared/publish-brand-page-with-state/i18n/publish-brand-page-modal-with-state.pt-PT.json +4 -2
  113. package/lib/src/brand-page/components/map/Map.mixin.d.ts +0 -50
  114. package/lib/src/brand-page/components/map/Map.mixin.js +0 -20
  115. package/lib/src/bundled-translations-DE2UZ_8B.js +0 -151
  116. package/lib/src/bundled-translations.de-DE-BawsKiJ9.js +0 -151
  117. package/lib/src/bundled-translations.es-ES-BZijuSLY.js +0 -151
  118. package/lib/src/bundled-translations.fr-FR-hqcn5AfG.js +0 -151
  119. package/lib/src/bundled-translations.pt-PT-Bnt_n1_N.js +0 -151
  120. package/src/brand-page/components/logo/test.json +0 -866
  121. package/src/brand-page/components/logo/test2.json +0 -765
  122. package/src/brand-page/components/logo/test3.json +0 -749
  123. package/src/brand-page/components/map/Map.mixin.ts +0 -24
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as e, openBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-B3W7JSHn.js";
2
+ import { _ as t } from "./lib-Dsso3HKV.js";
3
3
  const i = {}, h = {
4
4
  width: "275",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as e, openBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-B3W7JSHn.js";
2
+ import { _ as t } from "./lib-Dsso3HKV.js";
3
3
  const i = {}, h = {
4
4
  width: "251",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as e, openBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-B3W7JSHn.js";
2
+ import { _ as t } from "./lib-Dsso3HKV.js";
3
3
  const i = {}, h = {
4
4
  width: "250",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as e, openBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-B3W7JSHn.js";
2
+ import { _ as t } from "./lib-Dsso3HKV.js";
3
3
  const i = {}, h = {
4
4
  width: "237",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as e, openBlock as l, createStaticVNode as a } from "vue";
2
- import { _ as t } from "./lib-B3W7JSHn.js";
2
+ import { _ as t } from "./lib-Dsso3HKV.js";
3
3
  const i = {}, h = {
4
4
  width: "263",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as H, openBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as e } from "./lib-B3W7JSHn.js";
2
+ import { _ as e } from "./lib-Dsso3HKV.js";
3
3
  const M = {}, Z = {
4
4
  width: "242",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as H, openBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as e } from "./lib-B3W7JSHn.js";
2
+ import { _ as e } from "./lib-Dsso3HKV.js";
3
3
  const i = {}, M = {
4
4
  width: "231",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as H, openBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as e } from "./lib-B3W7JSHn.js";
2
+ import { _ as e } from "./lib-Dsso3HKV.js";
3
3
  const M = {}, Z = {
4
4
  width: "230",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as H, openBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as e } from "./lib-B3W7JSHn.js";
2
+ import { _ as e } from "./lib-Dsso3HKV.js";
3
3
  const i = {}, l = {
4
4
  width: "216",
5
5
  height: "36",
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as H, openBlock as V, createStaticVNode as t } from "vue";
2
- import { _ as M } from "./lib-B3W7JSHn.js";
2
+ import { _ as M } from "./lib-Dsso3HKV.js";
3
3
  const Z = {}, e = {
4
4
  width: "232",
5
5
  height: "36",
@@ -30,6 +30,7 @@ export declare const CONTENT_TYPES: {
30
30
  readonly 'social-links': "social-links";
31
31
  readonly 'shapes-section': "shapes-section";
32
32
  readonly 'shop-section': "shop-section";
33
+ readonly 'booking-section': "booking-section";
33
34
  };
34
35
  export type ContentType = keyof typeof CONTENT_TYPES;
35
36
  export declare const PERSONALISATION_ROLES: {
@@ -30,6 +30,7 @@ export const CONTENT_TYPES = {
30
30
  'social-links': 'social-links',
31
31
  'shapes-section': 'shapes-section',
32
32
  'shop-section': 'shop-section',
33
+ 'booking-section': 'booking-section',
33
34
  };
34
35
  export const PERSONALISATION_ROLES = {
35
36
  profile: 'profile',
@@ -409,6 +409,22 @@ export interface DividerSectionContent extends Content {
409
409
  dividerColor: BrandPageCssStyle;
410
410
  backgroundStyle?: BrandPageCssStyle;
411
411
  }
412
+ export interface BookingSectionContent extends Content {
413
+ type: 'booking-section';
414
+ title: string;
415
+ description: string;
416
+ buttonText: string;
417
+ url: string;
418
+ email?: string;
419
+ tel?: string;
420
+ titleStyle: TextStyleDeclaration;
421
+ descriptionStyle: TextStyleDeclaration;
422
+ backgroundStyle: BrandPageCssStyle;
423
+ pageSlug: string;
424
+ buttonLinkType: ButtonLinkType;
425
+ buttonTextStyle: TextStyleDeclaration;
426
+ aspectRatio?: number | null;
427
+ }
412
428
  export declare class PageModel {
413
429
  title: string;
414
430
  slug: string;
@@ -199,7 +199,7 @@ const CONTENT_STYLE_PROP_NAME_SUFFIX = [
199
199
  'Color',
200
200
  'Replacements',
201
201
  ];
202
- const RTE_ALLOWED_SECTION_TYPES = ['text', 'banner-section'];
202
+ const RTE_ALLOWED_SECTION_TYPES = ['text', 'banner-section', 'booking-section'];
203
203
  const RTE_ALLOWED_FIELDS = ['title', 'description', 'text', 'textItems'];
204
204
  export const applyLogoThemeToContents = (logoTheme, pages) => {
205
205
  let isModified = false;
@@ -1,5 +1,5 @@
1
- import type { ImageContent, ProfileContent, TextContent, PageStyles, Content, BrandPageModel, ImageGalleryContent, GalleryStyles, BannerSectionContent, ImagesSectionContent, BrandPageType, PageHeaderDesktop, PageFooterDesktop, PageFooterMobile, PageHeaderMobile, LogoImageModel, LogoTemplateImageModel } from '../models';
2
- import type { ImageViewModel, LogoViewModel, ProfileViewModel, TextViewModel, ContentViewModel, BrandPageViewModel, ImageGalleryViewModel, PageViewModel, BannerSectionViewModel, PageHeaderViewModel, PageFooterViewModel, TextImageSectionViewModel } from '../view-models';
1
+ import type { ImageContent, ProfileContent, TextContent, PageStyles, Content, BrandPageModel, ImageGalleryContent, GalleryStyles, BannerSectionContent, ImagesSectionContent, BrandPageType, PageHeaderDesktop, PageFooterDesktop, PageFooterMobile, PageHeaderMobile, LogoImageModel, LogoTemplateImageModel, BookingSectionContent } from '../models';
2
+ import type { ImageViewModel, LogoViewModel, ProfileViewModel, TextViewModel, ContentViewModel, BrandPageViewModel, ImageGalleryViewModel, PageViewModel, BannerSectionViewModel, PageHeaderViewModel, PageFooterViewModel, TextImageSectionViewModel, BookingSectionViewModel } from '../view-models';
3
3
  export declare const applyViewModelTextStyles: <T extends ContentViewModel>(content: T, styles: PageStyles) => T;
4
4
  export declare const mapToImageViewModel: (content: ImageContent) => ImageViewModel;
5
5
  export declare const mapToImageGalleryViewModel: (content: ImageGalleryContent, globalStyles: GalleryStyles) => ImageGalleryViewModel;
@@ -7,6 +7,7 @@ export declare const mapToProfileViewModel: (content: ProfileContent, styles: Pa
7
7
  export declare const mapToTextViewModel: (content: TextContent, styles: PageStyles, brandPageType: BrandPageType) => TextViewModel;
8
8
  export declare const mapToBannerSectionViewModel: (content: BannerSectionContent, styles: PageStyles) => BannerSectionViewModel;
9
9
  export declare const mapToImagesSectionViewModel: (content: ImagesSectionContent, styles: PageStyles, brandPageType: BrandPageType) => TextImageSectionViewModel;
10
+ export declare const mapToBookingSectionViewModel: (content: BookingSectionContent, styles: PageStyles) => BookingSectionViewModel;
10
11
  export declare const mapToPageHeaderViewModel: (pageHeader: PageHeaderDesktop | PageHeaderMobile, pageStyles: PageStyles, pages: PageViewModel[]) => PageHeaderViewModel;
11
12
  export declare const mapToPageFooterViewModel: (pageFooter: PageFooterDesktop | PageFooterMobile, pageStyles: PageStyles) => PageFooterViewModel;
12
13
  export declare const mapToViewModel: (styles: PageStyles, brandPageType: BrandPageType) => (content: Content) => ContentViewModel | undefined;
@@ -507,6 +507,18 @@ const mapToSocialLinksViewModel = (content, styles, brandPageType) => {
507
507
  isFullWidth: brandPageType === BRAND_PAGE_TYPES.brandSite,
508
508
  }, styles);
509
509
  };
510
+ export const mapToBookingSectionViewModel = (content, styles) => {
511
+ return applyViewModelTextStyles({
512
+ ...content,
513
+ role: content.type,
514
+ type: 'booking-section',
515
+ buttonStyles: styles.buttonStyles,
516
+ buttonTextStyle: {
517
+ ...content.buttonTextStyle,
518
+ },
519
+ isFullWidth: true,
520
+ }, styles);
521
+ };
510
522
  export const mapToPageHeaderViewModel = (pageHeader, pageStyles, pages) => {
511
523
  const viewport = pageHeader.viewport;
512
524
  const logoContent = {
@@ -619,6 +631,8 @@ export const mapToViewModel = (styles, brandPageType) => (content) => {
619
631
  return mapToContactFormViewModel(content, styles, brandPageType);
620
632
  case 'banner-section':
621
633
  return mapToBannerSectionViewModel(content, styles);
634
+ case 'booking-section':
635
+ return mapToBookingSectionViewModel(content, styles);
622
636
  case 'about-section':
623
637
  return mapToAboutSectionViewModel(content, styles);
624
638
  case 'images-section':
@@ -1,6 +1,6 @@
1
- import type { PageStyles, 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, TextStyleDeclaration, AspectRatio, LogoImageModel, LogoTemplateImageModel, CookieOptions } from './models';
1
+ import type { PageStyles, 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, TextStyleDeclaration, AspectRatio, LogoImageModel, LogoTemplateImageModel, CookieOptions, BookingSectionContent } from './models';
2
2
  import type { ImagesSectionContentDisplayStyle } from './constants';
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';
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 {
5
5
  id: string;
6
6
  type: ViewModelType;
@@ -96,6 +96,10 @@ export interface SocialLinksViewModel extends ContentViewModel, Omit<SocialLinks
96
96
  export interface DividerSectionViewModel extends ContentViewModel, Omit<DividerSectionContent, 'type'> {
97
97
  isFullWidth: boolean;
98
98
  }
99
+ export interface BookingSectionViewModel extends ContentViewModel, Omit<BookingSectionContent, 'type'> {
100
+ buttonStyles: ButtonStyles;
101
+ isFullWidth: boolean;
102
+ }
99
103
  export interface PageHeaderViewModel extends Omit<PageHeaderDesktop | PageHeaderMobile, 'logoImage' | 'logoImageStyle' | 'isLogoOptional' | 'viewport' | 'isLogoVisible' | 'logoTemplateImage' | 'logoImageHeight' | 'logoImageWidth'> {
100
104
  logo: LogoViewModel;
101
105
  pages: PageViewModel[];
@@ -1,7 +1,7 @@
1
- import type { BannerSectionContent } from '../../brand-page';
1
+ import type { BannerSectionContent, BookingSectionContent } from '../../brand-page';
2
2
  import type { VisibilityAssessor } from '../models';
3
- export declare const bannerSectionUrlVisibilityAssessor: VisibilityAssessor<BannerSectionContent | undefined>;
4
- export declare const bannerSectionPageVisibilityAssessor: VisibilityAssessor<BannerSectionContent | undefined>;
5
- export declare const bannerLinkTypeVisibilityAssessor: VisibilityAssessor<BannerSectionContent | undefined>;
3
+ export declare const bannerSectionUrlVisibilityAssessor: VisibilityAssessor<BannerSectionContent | BookingSectionContent | undefined>;
4
+ export declare const bannerSectionPageVisibilityAssessor: VisibilityAssessor<BannerSectionContent | BookingSectionContent | undefined>;
5
+ export declare const bannerLinkTypeVisibilityAssessor: VisibilityAssessor<BannerSectionContent | BookingSectionContent | undefined>;
6
6
  export declare const bannerDisplayTypeVisibilityAssessor: VisibilityAssessor<BannerSectionContent | undefined>;
7
7
  export declare const bannerOverlayOptionsVisibilityAssessor: VisibilityAssessor<BannerSectionContent>;
@@ -1,5 +1,5 @@
1
- import type { BannerSectionContent } from '../../brand-page';
1
+ import type { BannerSectionContent, BookingSectionContent } from '../../brand-page';
2
2
  import type { FieldTypeAssessor, PlaceholderTypeAssessor } from '../models';
3
- export declare const bannerSectionFieldTypeAssessor: FieldTypeAssessor<BannerSectionContent | undefined>;
4
- export declare const bannerSectionRoleTypeAssessor: FieldTypeAssessor<BannerSectionContent | undefined>;
5
- export declare const bannerPlaceholderFieldTypeAssessor: PlaceholderTypeAssessor<BannerSectionContent | undefined>;
3
+ export declare const bannerSectionFieldTypeAssessor: FieldTypeAssessor<BannerSectionContent | BookingSectionContent | undefined>;
4
+ export declare const bannerSectionRoleTypeAssessor: FieldTypeAssessor<BannerSectionContent | BookingSectionContent | undefined>;
5
+ export declare const bannerPlaceholderFieldTypeAssessor: PlaceholderTypeAssessor<BannerSectionContent | BookingSectionContent | undefined>;
@@ -2,11 +2,11 @@ declare const _default: import("vue").DefineComponent<{}, {
2
2
  templates: import("vue").ComputedRef<import("../../stores/admin-logo-settings").AdminPreviewLogoTemplateTemplate[]>;
3
3
  items: import("vue").ComputedRef<{
4
4
  id: string;
5
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
5
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
6
6
  settings: {
7
7
  content: {
8
8
  id: string;
9
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
9
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
10
10
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
11
11
  imageUrlOverride?: string | undefined;
12
12
  imageUrlsOverride?: string | undefined;
@@ -28,6 +28,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
28
28
  required: true;
29
29
  };
30
30
  }>, {
31
+ commonTr: (key: any) => any;
31
32
  currentNotificationMessage: import("vue").ComputedRef<false | {
32
33
  type: "success" | "warning" | "error";
33
34
  label: string;
@@ -407,7 +408,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
407
408
  contentErrorCount(): number;
408
409
  getContent(state: {
409
410
  addContentOptions: {
410
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
411
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
411
412
  category: string;
412
413
  createInitialContent: (options: import("../../../shared/content-settings/models").CreateInitialContentOptions) => import("../../../brand-page").Content;
413
414
  displayName: string;
@@ -418,11 +419,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
418
419
  }[];
419
420
  items: {
420
421
  id: string;
421
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
422
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
422
423
  settings: {
423
424
  content: {
424
425
  id: string;
425
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
426
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
426
427
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
427
428
  imageUrlOverride?: string | undefined;
428
429
  imageUrlsOverride?: string | undefined;
@@ -456,7 +457,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
456
457
  } & import("pinia").PiniaCustomStateProperties<import("../../../shared/content-settings/store").ContentSettingsState>): (id: string) => import("../../../brand-page").Content | undefined;
457
458
  getFieldSettings(state: {
458
459
  addContentOptions: {
459
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
460
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
460
461
  category: string;
461
462
  createInitialContent: (options: import("../../../shared/content-settings/models").CreateInitialContentOptions) => import("../../../brand-page").Content;
462
463
  displayName: string;
@@ -467,11 +468,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
467
468
  }[];
468
469
  items: {
469
470
  id: string;
470
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
471
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
471
472
  settings: {
472
473
  content: {
473
474
  id: string;
474
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
475
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
475
476
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
476
477
  imageUrlOverride?: string | undefined;
477
478
  imageUrlsOverride?: string | undefined;
@@ -505,7 +506,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
505
506
  } & import("pinia").PiniaCustomStateProperties<import("../../../shared/content-settings/store").ContentSettingsState>): (id: string, fieldName: string) => import("../../../shared/content-settings/models").ContentItemFieldSettings | undefined;
506
507
  getItem(state: {
507
508
  addContentOptions: {
508
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
509
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
509
510
  category: string;
510
511
  createInitialContent: (options: import("../../../shared/content-settings/models").CreateInitialContentOptions) => import("../../../brand-page").Content;
511
512
  displayName: string;
@@ -516,11 +517,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
516
517
  }[];
517
518
  items: {
518
519
  id: string;
519
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
520
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
520
521
  settings: {
521
522
  content: {
522
523
  id: string;
523
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
524
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
524
525
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
525
526
  imageUrlOverride?: string | undefined;
526
527
  imageUrlsOverride?: string | undefined;
@@ -554,7 +555,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
554
555
  } & import("pinia").PiniaCustomStateProperties<import("../../../shared/content-settings/store").ContentSettingsState>): (id: string) => import("../../../shared/content-settings/models").ContentItem<any> | undefined;
555
556
  getValue(state: {
556
557
  addContentOptions: {
557
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
558
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
558
559
  category: string;
559
560
  createInitialContent: (options: import("../../../shared/content-settings/models").CreateInitialContentOptions) => import("../../../brand-page").Content;
560
561
  displayName: string;
@@ -565,11 +566,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
565
566
  }[];
566
567
  items: {
567
568
  id: string;
568
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
569
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
569
570
  settings: {
570
571
  content: {
571
572
  id: string;
572
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
573
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
573
574
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
574
575
  imageUrlOverride?: string | undefined;
575
576
  imageUrlsOverride?: string | undefined;
@@ -603,7 +604,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
603
604
  } & import("pinia").PiniaCustomStateProperties<import("../../../shared/content-settings/store").ContentSettingsState>): (id: string, fieldName: string) => string | import("../../../brand-page").Content | undefined;
604
605
  getItemState(state: {
605
606
  addContentOptions: {
606
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
607
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
607
608
  category: string;
608
609
  createInitialContent: (options: import("../../../shared/content-settings/models").CreateInitialContentOptions) => import("../../../brand-page").Content;
609
610
  displayName: string;
@@ -614,11 +615,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
614
615
  }[];
615
616
  items: {
616
617
  id: string;
617
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
618
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
618
619
  settings: {
619
620
  content: {
620
621
  id: string;
621
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
622
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
622
623
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
623
624
  imageUrlOverride?: string | undefined;
624
625
  imageUrlsOverride?: string | undefined;
@@ -652,7 +653,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
652
653
  } & import("pinia").PiniaCustomStateProperties<import("../../../shared/content-settings/store").ContentSettingsState>): (id: string) => import("../../../shared/content-settings/models").ContentSettingsItemState;
653
654
  getItemGroupState(state: {
654
655
  addContentOptions: {
655
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
656
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
656
657
  category: string;
657
658
  createInitialContent: (options: import("../../../shared/content-settings/models").CreateInitialContentOptions) => import("../../../brand-page").Content;
658
659
  displayName: string;
@@ -663,11 +664,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
663
664
  }[];
664
665
  items: {
665
666
  id: string;
666
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
667
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
667
668
  settings: {
668
669
  content: {
669
670
  id: string;
670
- type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section";
671
+ type: "website" | "image" | "facebook" | "twitter" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "instagram" | "youtube" | "linkedin" | "pinterest" | "twitch" | "tiktok" | "map" | "image-gallery" | "mailing-list" | "request-payment" | "support-me" | "contact-form" | "banner-section" | "about-section" | "divider-section" | "images-section" | "testimonial-section" | "social-links" | "shapes-section" | "shop-section" | "booking-section";
671
672
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
672
673
  imageUrlOverride?: string | undefined;
673
674
  imageUrlsOverride?: string | undefined;
@@ -19,6 +19,7 @@ import { FabricRenderClient } from '../../../clients/fabric-render-client';
19
19
  import { useShopConfigStore } from '../../../shared/ecommerce-settings/store/shop-settings-store';
20
20
  import { useProductConfigStore } from '../../../brand-page-maker/stores/product-config/product-config-store';
21
21
  import { UPGRADE_CTA_LOCATIONS } from '../../composables/useEventTracker';
22
+ import { commonTr } from '../../../composables/useTranslate';
22
23
  const RESIZE_DEBOUNCE_WAIT_IN_MS = 100;
23
24
  export default defineComponent({
24
25
  props: {
@@ -41,6 +42,7 @@ export default defineComponent({
41
42
  const router = useRouter();
42
43
  const localisedRouteStore = useLocalisedRouteStore();
43
44
  return {
45
+ commonTr,
44
46
  currentNotificationMessage: computed(() => brandPageMakerStore.currentNotificationMessage),
45
47
  isChangeTemplateConfirmModalVisible: computed(() => brandPageMakerStore.isChangeTemplateConfirmModalVisible),
46
48
  // the state of Mobile/Desktop tab