@designcrowd/library.brand-page 5.18.6 → 5.18.7-ast-padding-1

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 (218) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-DlYq1LAT.js → CreatedOnBrandCrowd-de-de-Cn8zNuGM.js} +1 -1
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-BssRIQqn.js → CreatedOnBrandCrowd-en-us-CP8xAFc-.js} +1 -1
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-BGF9pptH.js → CreatedOnBrandCrowd-es-es-Ds8NijwP.js} +1 -1
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-Caupqu2Z.js → CreatedOnBrandCrowd-fr-ca-BiVV_7lj.js} +1 -1
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-Caupqu2Z.js → CreatedOnBrandCrowd-fr-fr-BiVV_7lj.js} +1 -1
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-s9q4uJ4u.js → CreatedOnBrandCrowd-pt-br-CjjrYojo.js} +1 -1
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-s9q4uJ4u.js → CreatedOnBrandCrowd-pt-pt-CjjrYojo.js} +1 -1
  8. package/lib/src/{CreatedOnDcom-de-de-UnYnZbA7.js → CreatedOnDcom-de-de-ChR5jvlP.js} +1 -1
  9. package/lib/src/{CreatedOnDcom-en-us-rDv6H12L.js → CreatedOnDcom-en-us-C4rO1BMA.js} +1 -1
  10. package/lib/src/{CreatedOnDcom-es-es-DKPLaT6o.js → CreatedOnDcom-es-es-DxGMS6JK.js} +1 -1
  11. package/lib/src/{CreatedOnDcom-fr-ca-DAv34bG7.js → CreatedOnDcom-fr-ca-n31u4t7u.js} +1 -1
  12. package/lib/src/{CreatedOnDcom-fr-fr-DsOHnS8q.js → CreatedOnDcom-fr-fr-gwdsX7YV.js} +1 -1
  13. package/lib/src/{CreatedOnDcom-pt-br-DpjDBCLj.js → CreatedOnDcom-pt-br-iZjFp--s.js} +1 -1
  14. package/lib/src/{CreatedOnDcom-pt-pt-rFG0unf1.js → CreatedOnDcom-pt-pt-B3Z3-RLC.js} +1 -1
  15. package/lib/src/brand-page/components/contact-form/ContactForm.mixin.d.ts +4 -0
  16. package/lib/src/brand-page/components/contact-form/ContactForm.mixin.js +8 -4
  17. package/lib/src/brand-page/components/image-gallery/ImageGallery.mixin.d.ts +4 -0
  18. package/lib/src/brand-page/components/image-gallery/ImageGallery.mixin.js +4 -0
  19. package/lib/src/brand-page/components/mailing-list/MailingList.mixin.d.ts +4 -0
  20. package/lib/src/brand-page/components/mailing-list/MailingList.mixin.js +4 -1
  21. package/lib/src/brand-page/components/payment/request-payment/RequestPayment.mixin.d.ts +4 -0
  22. package/lib/src/brand-page/components/payment/request-payment/RequestPayment.mixin.js +4 -0
  23. package/lib/src/brand-page/components/payment/support-me/SupportMe.mixin.d.ts +4 -0
  24. package/lib/src/brand-page/components/payment/support-me/SupportMe.mixin.js +4 -1
  25. package/lib/src/brand-page/components/video/Video.mixin.d.ts +4 -0
  26. package/lib/src/brand-page/components/video/Video.mixin.js +4 -0
  27. package/lib/src/brand-page/constants/misc.constants.d.ts +26 -0
  28. package/lib/src/brand-page/constants/misc.constants.js +42 -0
  29. package/lib/src/brand-page/models/content.model.d.ts +2 -0
  30. package/lib/src/brand-page/utils/content-padding.util.d.ts +13 -0
  31. package/lib/src/brand-page/utils/content-padding.util.js +10 -0
  32. package/lib/src/brand-page/utils/index.d.ts +1 -0
  33. package/lib/src/brand-page/utils/index.js +1 -0
  34. package/lib/src/brand-page/utils/migration/migration-17.d.ts +2 -0
  35. package/lib/src/brand-page/utils/migration/migration-17.js +48 -0
  36. package/lib/src/brand-page/utils/migration.util.js +10 -0
  37. package/lib/src/brand-page-maker/components/action-bar/ActionBar.mixin.d.ts +7 -2
  38. package/lib/src/brand-page-maker/components/admin-logo-settings/AdminLogoSettings.mixin.d.ts +2 -0
  39. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +19 -2
  40. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.js +8 -0
  41. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.mixin.d.ts +7 -2
  42. package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.js +1 -0
  43. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +104 -2
  44. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.js +5 -0
  45. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.d.ts +7 -2
  46. package/lib/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.d.ts +3 -0
  47. package/lib/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.js +11 -0
  48. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.d.ts +7 -2
  49. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.d.ts +7 -2
  50. package/lib/src/brand-page-maker/components/social-share/SocialShare.mixin.d.ts +7 -2
  51. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.d.ts +7 -2
  52. package/lib/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.js +9 -0
  53. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +21 -1
  54. package/lib/src/brand-page-maker/composables/useEventTracker.d.ts +20 -0
  55. package/lib/src/brand-page-maker/composables/useEventTracker.js +17 -0
  56. package/lib/src/brand-page-maker/composables/useUndoRedoFlag.d.ts +17 -0
  57. package/lib/src/brand-page-maker/composables/useUndoRedoFlag.js +25 -0
  58. package/lib/src/brand-page-maker/constants/config-settings-constant.js +38 -0
  59. package/lib/src/brand-page-maker/convertors/about-display-style.convertor.js +9 -1
  60. package/lib/src/brand-page-maker/convertors/banner-align-display-style.convertor.js +7 -1
  61. package/lib/src/brand-page-maker/convertors/contact-layout-style.convertor.js +6 -1
  62. package/lib/src/brand-page-maker/models/content-settings.js +36 -2
  63. package/lib/src/brand-page-maker/stores/ai-checkpoint/ai-checkpoint-store.d.ts +12 -0
  64. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.d.ts +41 -2
  65. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +307 -5
  66. package/lib/src/brand-page-maker/stores/history/history-store.d.ts +86 -0
  67. package/lib/src/brand-page-maker/stores/history/history-store.js +501 -0
  68. package/lib/src/brand-page-maker/stores/logo-store/logo-store.d.ts +1 -0
  69. package/lib/src/brand-page-maker/stores/user/user-store.js +1 -0
  70. package/lib/src/bundled-translations-BUyt4scr.js +175 -0
  71. package/lib/src/bundled-translations.de-DE-DEw_OVai.js +175 -0
  72. package/lib/src/bundled-translations.es-ES-CFKWmkgY.js +175 -0
  73. package/lib/src/bundled-translations.fr-CA-DCl5LJS4.js +175 -0
  74. package/lib/src/bundled-translations.fr-FR-B5BjgllA.js +175 -0
  75. package/lib/src/bundled-translations.pt-BR-5PWpMPuM.js +175 -0
  76. package/lib/src/bundled-translations.pt-PT-B9_wN0HR.js +175 -0
  77. package/lib/src/bundles/bundled-translations.de-DE.json +5 -1
  78. package/lib/src/bundles/bundled-translations.es-ES.json +5 -1
  79. package/lib/src/bundles/bundled-translations.fr-CA.json +5 -1
  80. package/lib/src/bundles/bundled-translations.fr-FR.json +5 -1
  81. package/lib/src/bundles/bundled-translations.json +5 -1
  82. package/lib/src/bundles/bundled-translations.pt-BR.json +5 -1
  83. package/lib/src/bundles/bundled-translations.pt-PT.json +5 -1
  84. package/lib/src/constants/ui.d.ts +1 -0
  85. package/lib/src/css/library.brand-page-brandCrowd.min.css +128 -131
  86. package/lib/src/css/library.brand-page-brandPage.min.css +128 -132
  87. package/lib/src/css/library.brand-page-designCom.min.css +128 -131
  88. package/lib/src/css/library.brand-page-preview.min.css +128 -131
  89. package/lib/src/index.mjs +1 -1
  90. package/lib/src/{lib-ngdDRkSL.js → lib-CIj_C38s.js} +36378 -35591
  91. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +104 -2
  92. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.js +5 -0
  93. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.stories.js +1 -0
  94. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +37 -2
  95. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +28 -0
  96. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +19 -2
  97. package/lib/src/shared/content-settings/components/draggable-item-list/DraggableItemList.mixin.d.ts +3 -0
  98. package/lib/src/shared/content-settings/components/draggable-item-list/DraggableItemList.mixin.js +19 -2
  99. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +12 -0
  100. package/lib/src/shared/content-settings/components/form-fields-field/FormFieldsField.mixin.js +18 -8
  101. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.d.ts +67 -0
  102. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.js +6 -0
  103. package/lib/src/shared/content-settings/components/slider-field/SliderField.mixin.js +9 -0
  104. package/lib/src/shared/content-settings/store/content-settings-store.d.ts +12 -0
  105. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.d.ts +19 -0
  106. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.js +11 -0
  107. package/lib/src/shared/logo-settings/components/LogoSettings.mixin.d.ts +10 -2
  108. package/lib/src/shared/logo-settings/store/editable-logo-store.d.ts +5 -1
  109. package/lib/src/shared/logo-settings/store/editable-logo-store.js +31 -0
  110. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +40 -2
  111. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +24 -2
  112. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.d.ts +23 -2
  113. package/lib/src/shared/side-bar/components/SideBarTabButton.mixin.d.ts +16 -0
  114. package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +23 -2
  115. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.d.ts +16 -0
  116. package/lib/src/utils/minify-brand-page-metadata.js +11 -1
  117. package/package.json +1 -1
  118. package/src/brand-page/components/about-section/AboutSection.vue +10 -4
  119. package/src/brand-page/components/banner-section/BannerSection.vue +11 -4
  120. package/src/brand-page/components/booking-section/BookingSection.vue +11 -3
  121. package/src/brand-page/components/contact-form/ContactForm.mixin.ts +12 -6
  122. package/src/brand-page/components/contact-form/ContactForm.vue +105 -104
  123. package/src/brand-page/components/image-gallery/ImageGallery.mixin.ts +5 -0
  124. package/src/brand-page/components/image-gallery/ImageGallery.vue +1 -1
  125. package/src/brand-page/components/mailing-list/MailingList.mixin.ts +8 -1
  126. package/src/brand-page/components/mailing-list/MailingList.vue +1 -1
  127. package/src/brand-page/components/map/Map.vue +5 -1
  128. package/src/brand-page/components/payment/request-payment/RequestPayment.mixin.ts +5 -0
  129. package/src/brand-page/components/payment/request-payment/RequestPayment.vue +1 -0
  130. package/src/brand-page/components/payment/support-me/SupportMe.mixin.ts +8 -1
  131. package/src/brand-page/components/payment/support-me/SupportMe.vue +1 -0
  132. package/src/brand-page/components/shop/Shop.vue +7 -2
  133. package/src/brand-page/components/social-links/SocialLinks.vue +7 -3
  134. package/src/brand-page/components/text/Text.vue +12 -5
  135. package/src/brand-page/components/text-media-section/TextMediaSection.vue +11 -3
  136. package/src/brand-page/components/video/Video.mixin.ts +5 -0
  137. package/src/brand-page/components/video/Video.vue +1 -1
  138. package/src/brand-page/constants/misc.constants.ts +48 -0
  139. package/src/brand-page/models/content.model.ts +2 -0
  140. package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +9 -3
  141. package/src/brand-page/utils/content-padding.util.test.ts +29 -0
  142. package/src/brand-page/utils/content-padding.util.ts +13 -0
  143. package/src/brand-page/utils/index.ts +1 -0
  144. package/src/brand-page/utils/migration/migration-17.ts +65 -0
  145. package/src/brand-page/utils/migration.util.test.ts +195 -0
  146. package/src/brand-page/utils/migration.util.ts +11 -0
  147. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.ts +9 -0
  148. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.vue +2 -3
  149. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.ts +1 -0
  150. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.ts +5 -0
  151. package/src/brand-page-maker/components/cookie-collection/CookieSettings.vue +18 -17
  152. package/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.ts +13 -0
  153. package/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.vue +26 -3
  154. package/src/brand-page-maker/components/quick-link-bar/RedoButton.vue +66 -0
  155. package/src/brand-page-maker/components/quick-link-bar/UndoButton.vue +66 -0
  156. package/src/brand-page-maker/components/quick-link-bar/i18n/quick-link-bar.de-DE.json +6 -4
  157. package/src/brand-page-maker/components/quick-link-bar/i18n/quick-link-bar.es-ES.json +6 -4
  158. package/src/brand-page-maker/components/quick-link-bar/i18n/quick-link-bar.fr-CA.json +6 -4
  159. package/src/brand-page-maker/components/quick-link-bar/i18n/quick-link-bar.fr-FR.json +6 -4
  160. package/src/brand-page-maker/components/quick-link-bar/i18n/quick-link-bar.json +3 -1
  161. package/src/brand-page-maker/components/quick-link-bar/i18n/quick-link-bar.pt-BR.json +6 -4
  162. package/src/brand-page-maker/components/quick-link-bar/i18n/quick-link-bar.pt-PT.json +6 -4
  163. package/src/brand-page-maker/components/quick-link-bar/undo-redo-buttons.test.ts +116 -0
  164. package/src/brand-page-maker/components/save-contact/SaveContact.vue +12 -19
  165. package/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.ts +10 -0
  166. package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +28 -1
  167. package/src/brand-page-maker/composables/useEventTracker.ts +29 -0
  168. package/src/brand-page-maker/composables/useUndoRedoFlag.ts +30 -0
  169. package/src/brand-page-maker/constants/config-settings-constant.ts +44 -0
  170. package/src/brand-page-maker/convertors/about-display-style.convertor.ts +10 -0
  171. package/src/brand-page-maker/convertors/banner-align-display-style.convertor.ts +8 -0
  172. package/src/brand-page-maker/convertors/contact-layout-style.convertor.test.ts +50 -0
  173. package/src/brand-page-maker/convertors/contact-layout-style.convertor.ts +8 -0
  174. package/src/brand-page-maker/models/content-settings.ts +38 -2
  175. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.test.ts +334 -0
  176. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +371 -4
  177. package/src/brand-page-maker/stores/history/history-store.test.ts +1120 -0
  178. package/src/brand-page-maker/stores/history/history-store.ts +666 -0
  179. package/src/brand-page-maker/stores/logo-store/logo-store.ts +5 -0
  180. package/src/brand-page-maker/stores/user/user-store.ts +1 -0
  181. package/src/bundles/bundled-translations.de-DE.json +5 -1
  182. package/src/bundles/bundled-translations.es-ES.json +5 -1
  183. package/src/bundles/bundled-translations.fr-CA.json +5 -1
  184. package/src/bundles/bundled-translations.fr-FR.json +5 -1
  185. package/src/bundles/bundled-translations.json +5 -1
  186. package/src/bundles/bundled-translations.pt-BR.json +5 -1
  187. package/src/bundles/bundled-translations.pt-PT.json +5 -1
  188. package/src/constants/ui.ts +1 -0
  189. package/src/shared/content-settings/components/content-settings/ContentSettings.mixin.ts +5 -0
  190. package/src/shared/content-settings/components/content-settings/ContentSettings.stories.ts +1 -0
  191. package/src/shared/content-settings/components/content-settings/i18n/content-settings.de-DE.json +2 -0
  192. package/src/shared/content-settings/components/content-settings/i18n/content-settings.es-ES.json +2 -0
  193. package/src/shared/content-settings/components/content-settings/i18n/content-settings.fr-CA.json +2 -0
  194. package/src/shared/content-settings/components/content-settings/i18n/content-settings.fr-FR.json +2 -0
  195. package/src/shared/content-settings/components/content-settings/i18n/content-settings.json +2 -0
  196. package/src/shared/content-settings/components/content-settings/i18n/content-settings.pt-BR.json +2 -0
  197. package/src/shared/content-settings/components/content-settings/i18n/content-settings.pt-PT.json +2 -0
  198. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.vue +1 -1
  199. package/src/shared/content-settings/components/draggable-item-list/DraggableItemList.mixin.ts +19 -2
  200. package/src/shared/content-settings/components/draggable-item-list/DraggableItemList.vue +1 -1
  201. package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.vue +2 -2
  202. package/src/shared/content-settings/components/form-fields-field/FormFieldsField.mixin.ts +26 -10
  203. package/src/shared/content-settings/components/logo-selection-field/LogoSelection.vue +63 -48
  204. package/src/shared/content-settings/components/page-dropdown-field/PageDropdownField.vue +4 -0
  205. package/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.ts +7 -0
  206. package/src/shared/content-settings/components/slider-field/SliderField.mixin.ts +9 -0
  207. package/src/shared/content-settings/components/text-field/TextField.vue +1 -0
  208. package/src/shared/content-settings/components/text-image-field/TextImageField.vue +33 -4
  209. package/src/shared/logo-settings/components/EditLogoSettings.mixin.ts +11 -0
  210. package/src/shared/logo-settings/store/editable-logo-store.ts +42 -1
  211. package/src/utils/minify-brand-page-metadata.ts +11 -1
  212. package/lib/src/bundled-translations-B5Fkt3qd.js +0 -175
  213. package/lib/src/bundled-translations.de-DE-DpdVePM9.js +0 -175
  214. package/lib/src/bundled-translations.es-ES-BsIcrzZF.js +0 -175
  215. package/lib/src/bundled-translations.fr-CA-G1XCp2Qh.js +0 -175
  216. package/lib/src/bundled-translations.fr-FR-BdwLXOnB.js +0 -175
  217. package/lib/src/bundled-translations.pt-BR-Bvn5ePe7.js +0 -175
  218. package/lib/src/bundled-translations.pt-PT-CDtkb2k1.js +0 -175
@@ -3445,6 +3445,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
3445
3445
  id: string;
3446
3446
  type: "website" | "image" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "facebook" | "x" | "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";
3447
3447
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
3448
+ topPadding?: number | undefined;
3449
+ bottomPadding?: number | undefined;
3448
3450
  imageUrlOverride?: string | undefined;
3449
3451
  imageUrlsOverride?: string | undefined;
3450
3452
  avatarImageUrlOverride?: string | undefined;
@@ -3494,6 +3496,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
3494
3496
  id: string;
3495
3497
  type: "website" | "image" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "facebook" | "x" | "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";
3496
3498
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
3499
+ topPadding?: number | undefined;
3500
+ bottomPadding?: number | undefined;
3497
3501
  imageUrlOverride?: string | undefined;
3498
3502
  imageUrlsOverride?: string | undefined;
3499
3503
  avatarImageUrlOverride?: string | undefined;
@@ -3543,6 +3547,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
3543
3547
  id: string;
3544
3548
  type: "website" | "image" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "facebook" | "x" | "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";
3545
3549
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
3550
+ topPadding?: number | undefined;
3551
+ bottomPadding?: number | undefined;
3546
3552
  imageUrlOverride?: string | undefined;
3547
3553
  imageUrlsOverride?: string | undefined;
3548
3554
  avatarImageUrlOverride?: string | undefined;
@@ -3592,6 +3598,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
3592
3598
  id: string;
3593
3599
  type: "website" | "image" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "facebook" | "x" | "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";
3594
3600
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
3601
+ topPadding?: number | undefined;
3602
+ bottomPadding?: number | undefined;
3595
3603
  imageUrlOverride?: string | undefined;
3596
3604
  imageUrlsOverride?: string | undefined;
3597
3605
  avatarImageUrlOverride?: string | undefined;
@@ -3641,6 +3649,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
3641
3649
  id: string;
3642
3650
  type: "website" | "image" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "facebook" | "x" | "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";
3643
3651
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
3652
+ topPadding?: number | undefined;
3653
+ bottomPadding?: number | undefined;
3644
3654
  imageUrlOverride?: string | undefined;
3645
3655
  imageUrlsOverride?: string | undefined;
3646
3656
  avatarImageUrlOverride?: string | undefined;
@@ -3690,6 +3700,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
3690
3700
  id: string;
3691
3701
  type: "website" | "image" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "facebook" | "x" | "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";
3692
3702
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
3703
+ topPadding?: number | undefined;
3704
+ bottomPadding?: number | undefined;
3693
3705
  imageUrlOverride?: string | undefined;
3694
3706
  imageUrlsOverride?: string | undefined;
3695
3707
  avatarImageUrlOverride?: string | undefined;
@@ -4269,6 +4281,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4269
4281
  logoTemplateMetadata: string;
4270
4282
  isLogoDraftSaved: boolean;
4271
4283
  isTextOnlyLogo: boolean;
4284
+ variationsByDraftToken: Record<string, import("@shared/logo-settings/store").EditableLogoVariation[]>;
4272
4285
  } & import("pinia").PiniaCustomStateProperties<import("@shared/logo-settings/store").EditableLogoState>) => () => string | undefined;
4273
4286
  }, {
4274
4287
  setStateAsync(payload: {
@@ -4286,6 +4299,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4286
4299
  getEditableLogoVariationByVariationId(id: number): any;
4287
4300
  getEditableLogoVariationByBase64(base64: string): any;
4288
4301
  updateEditableLogoImageUrlAsync(defaultPrimaryText?: string | undefined, overrideLogoVariation?: number | undefined, layout?: string | undefined): Promise<void>;
4302
+ stampLogoBase64IntoBrandPageData(overrideLogoVariation?: number | undefined): void;
4303
+ restoreVariationsForDraftToken(logoDraftToken: string): boolean;
4289
4304
  updateMetadataAsync(defaultPrimaryText?: string | undefined, resetLogoTemplateMetadata?: boolean, layout?: string | undefined): Promise<void>;
4290
4305
  updateEditableLogoImageByVariationAsync(editableLogoVariation: import("@shared/logo-settings/store").EditableLogoVariation, defaultPrimaryText?: string | undefined, layout?: string | undefined): Promise<import("../../../../clients/fabric-render-client").ModifyLogoDataResponse | null>;
4291
4306
  getDraftMetadata(logoDraftToken: string): string | undefined;
@@ -4393,16 +4408,21 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4393
4408
  hideChangeTemplateConfirmModal(): void;
4394
4409
  onBackgroundChanged(): void;
4395
4410
  onChangeTemplateConfirmModalCancel(): void;
4396
- onChangeTemplateConfirmModalConfirm(): void;
4411
+ onChangeTemplateConfirmModalConfirm(): Promise<void>;
4397
4412
  onContentChanged(): void;
4398
4413
  onStyleChanged(): void;
4399
- onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): void;
4414
+ onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): Promise<void>;
4400
4415
  setSelectedTabName(payload: any): void;
4401
4416
  showNextNotificationMessage(): Promise<void>;
4402
4417
  updateContent<TContent extends import("@brand-page").Content, P extends {
4403
4418
  id: string;
4404
4419
  content: TContent;
4405
4420
  }>(payload: P): Promise<void>;
4421
+ _captureTemplateSwitchIfEnabled(): void;
4422
+ applyHistorySnapshot(snapshot: import("@brand-page").BrandPageModel, activePageId?: string | undefined, logoEditsStr?: string | undefined): Promise<void>;
4423
+ _syncLogoSettingsFromSnapshot(snapshot: import("@brand-page").BrandPageModel, logoEditsStr?: string | undefined): Promise<void>;
4424
+ _navigateToActivePage(activePageId?: string | undefined): void;
4425
+ _fallbackSidebarIfSelectedContentMissing(snapshot: import("@brand-page").BrandPageModel): void;
4406
4426
  export(): import("@brand-page").BrandPageModel;
4407
4427
  setBrandPageType({ brandPageType }: {
4408
4428
  brandPageType: "default" | "brandSite" | "brandContact";
@@ -4450,6 +4470,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4450
4470
  id: string;
4451
4471
  type: "website" | "image" | "email" | "phone" | "logo" | "general-link" | "profile" | "video" | "text" | "facebook" | "x" | "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";
4452
4472
  personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
4473
+ topPadding?: number | undefined;
4474
+ bottomPadding?: number | undefined;
4453
4475
  imageUrlOverride?: string | undefined;
4454
4476
  imageUrlsOverride?: string | undefined;
4455
4477
  avatarImageUrlOverride?: string | undefined;
@@ -173,16 +173,21 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
173
173
  hideChangeTemplateConfirmModal(): void;
174
174
  onBackgroundChanged(): void;
175
175
  onChangeTemplateConfirmModalCancel(): void;
176
- onChangeTemplateConfirmModalConfirm(): void;
176
+ onChangeTemplateConfirmModalConfirm(): Promise<void>;
177
177
  onContentChanged(): void;
178
178
  onStyleChanged(): void;
179
- onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): void;
179
+ onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): Promise<void>;
180
180
  setSelectedTabName(payload: any): void;
181
181
  showNextNotificationMessage(): Promise<void>;
182
182
  updateContent<TContent extends import("@brand-page/models").Content, P extends {
183
183
  id: string;
184
184
  content: TContent;
185
185
  }>(payload: P): Promise<void>;
186
+ _captureTemplateSwitchIfEnabled(): void;
187
+ applyHistorySnapshot(snapshot: import("@brand-page/models").BrandPageModel, activePageId?: string | undefined, logoEditsStr?: string | undefined): Promise<void>;
188
+ _syncLogoSettingsFromSnapshot(snapshot: import("@brand-page/models").BrandPageModel, logoEditsStr?: string | undefined): Promise<void>;
189
+ _navigateToActivePage(activePageId?: string | undefined): void;
190
+ _fallbackSidebarIfSelectedContentMissing(snapshot: import("@brand-page/models").BrandPageModel): void;
186
191
  export(): import("@brand-page/models").BrandPageModel;
187
192
  setBrandPageType({ brandPageType }: {
188
193
  brandPageType: "default" | "brandSite" | "brandContact";
@@ -479,6 +484,22 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
479
484
  }>;
480
485
  eventTracker: {
481
486
  sendShippingToggleEvent: (isEnabled: boolean) => void;
487
+ sendUndoEvent: (props: {
488
+ entries_count: number;
489
+ actor: string | undefined;
490
+ }) => void;
491
+ sendRedoEvent: (props: {
492
+ entries_count: number;
493
+ actor: string | undefined;
494
+ }) => void;
495
+ sendHistoryCappedEvent: (props: {
496
+ entries_count: number;
497
+ size_bytes: number;
498
+ }) => void;
499
+ sendHistoryOversizedEvent: (props: {
500
+ attempted_bytes: number;
501
+ source: string;
502
+ }) => void;
482
503
  sendSaveContactEvent: () => void;
483
504
  sendStartForFreeEvent: () => void;
484
505
  sendFooterLinkClickEvent: (linkType: "watermark_logo" | "create_your_website") => void;
@@ -17,6 +17,22 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
17
17
  isDesignCom: import("vue").ComputedRef<boolean>;
18
18
  eventTracker: {
19
19
  sendShippingToggleEvent: (isEnabled: boolean) => void;
20
+ sendUndoEvent: (props: {
21
+ entries_count: number;
22
+ actor: string | undefined;
23
+ }) => void;
24
+ sendRedoEvent: (props: {
25
+ entries_count: number;
26
+ actor: string | undefined;
27
+ }) => void;
28
+ sendHistoryCappedEvent: (props: {
29
+ entries_count: number;
30
+ size_bytes: number;
31
+ }) => void;
32
+ sendHistoryOversizedEvent: (props: {
33
+ attempted_bytes: number;
34
+ source: string;
35
+ }) => void;
20
36
  sendSaveContactEvent: () => void;
21
37
  sendStartForFreeEvent: () => void;
22
38
  sendFooterLinkClickEvent: (linkType: "watermark_logo" | "create_your_website") => void;
@@ -565,16 +565,21 @@ declare const _default: import("vue").DefineComponent<{}, {
565
565
  hideChangeTemplateConfirmModal(): void;
566
566
  onBackgroundChanged(): void;
567
567
  onChangeTemplateConfirmModalCancel(): void;
568
- onChangeTemplateConfirmModalConfirm(): void;
568
+ onChangeTemplateConfirmModalConfirm(): Promise<void>;
569
569
  onContentChanged(): void;
570
570
  onStyleChanged(): void;
571
- onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): void;
571
+ onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): Promise<void>;
572
572
  setSelectedTabName(payload: any): void;
573
573
  showNextNotificationMessage(): Promise<void>;
574
574
  updateContent<TContent extends import("@brand-page").Content, P extends {
575
575
  id: string;
576
576
  content: TContent;
577
577
  }>(payload: P): Promise<void>;
578
+ _captureTemplateSwitchIfEnabled(): void;
579
+ applyHistorySnapshot(snapshot: import("@brand-page").BrandPageModel, activePageId?: string | undefined, logoEditsStr?: string | undefined): Promise<void>;
580
+ _syncLogoSettingsFromSnapshot(snapshot: import("@brand-page").BrandPageModel, logoEditsStr?: string | undefined): Promise<void>;
581
+ _navigateToActivePage(activePageId?: string | undefined): void;
582
+ _fallbackSidebarIfSelectedContentMissing(snapshot: import("@brand-page").BrandPageModel): void;
578
583
  export(): import("@brand-page").BrandPageModel;
579
584
  setBrandPageType({ brandPageType }: {
580
585
  brandPageType: "default" | "brandSite" | "brandContact";
@@ -915,6 +920,22 @@ declare const _default: import("vue").DefineComponent<{}, {
915
920
  }>;
916
921
  eventTracker: {
917
922
  sendShippingToggleEvent: (isEnabled: boolean) => void;
923
+ sendUndoEvent: (props: {
924
+ entries_count: number;
925
+ actor: string | undefined;
926
+ }) => void;
927
+ sendRedoEvent: (props: {
928
+ entries_count: number;
929
+ actor: string | undefined;
930
+ }) => void;
931
+ sendHistoryCappedEvent: (props: {
932
+ entries_count: number;
933
+ size_bytes: number;
934
+ }) => void;
935
+ sendHistoryOversizedEvent: (props: {
936
+ attempted_bytes: number;
937
+ source: string;
938
+ }) => void;
918
939
  sendSaveContactEvent: () => void;
919
940
  sendStartForFreeEvent: () => void;
920
941
  sendFooterLinkClickEvent: (linkType: "watermark_logo" | "create_your_website") => void;
@@ -565,6 +565,22 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
565
565
  isDesignCom: import("vue").ComputedRef<boolean>;
566
566
  eventTracker: {
567
567
  sendShippingToggleEvent: (isEnabled: boolean) => void;
568
+ sendUndoEvent: (props: {
569
+ entries_count: number;
570
+ actor: string | undefined;
571
+ }) => void;
572
+ sendRedoEvent: (props: {
573
+ entries_count: number;
574
+ actor: string | undefined;
575
+ }) => void;
576
+ sendHistoryCappedEvent: (props: {
577
+ entries_count: number;
578
+ size_bytes: number;
579
+ }) => void;
580
+ sendHistoryOversizedEvent: (props: {
581
+ attempted_bytes: number;
582
+ source: string;
583
+ }) => void;
568
584
  sendSaveContactEvent: () => void;
569
585
  sendStartForFreeEvent: () => void;
570
586
  sendFooterLinkClickEvent: (linkType: "watermark_logo" | "create_your_website") => void;
@@ -87,7 +87,17 @@ const findAssetKey = (assets, data) => {
87
87
  return assets.find((a) => a.data === data)?.key;
88
88
  };
89
89
  const minifyContent = (content, editor, assets) => {
90
- const base = { id: content.id, type: content.type };
90
+ const base = {
91
+ id: content.id,
92
+ type: content.type,
93
+ // Padding Control (BP-5687) — shared across every block, persist when set.
94
+ ...(typeof content.topPadding === 'number' && {
95
+ topPadding: content.topPadding,
96
+ }),
97
+ ...(typeof content.bottomPadding === 'number' && {
98
+ bottomPadding: content.bottomPadding,
99
+ }),
100
+ };
91
101
  const c = content;
92
102
  // Helper: include imageUrl and its asset key if available
93
103
  const includeImageWithKey = (url, urlField = 'imageUrl', keyField = 'imageAssetKey') => {
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.18.6",
4
+ "version": "5.18.7-ast-padding-1",
5
5
  "author": "Design.com Eng",
6
6
  "license": "UNLICENSED",
7
7
  "type": "module",
@@ -7,9 +7,10 @@
7
7
  <div
8
8
  :class="{
9
9
  'about-container': context.isBrandSite,
10
- 'about-container--padding tw-py-10': !isFullImage,
10
+ 'about-container--padding': !isFullImage,
11
11
  'mobile-about-container--padding': isFullImage,
12
12
  }"
13
+ :style="contentPaddingStyle"
13
14
  >
14
15
  <Media
15
16
  v-if="
@@ -103,7 +104,10 @@
103
104
  import { computed } from 'vue';
104
105
  import type { AboutSectionViewModel } from '@brand-page/view-models';
105
106
  import type { BrandPageContext } from '@brand-page/models';
106
- import { getRenderText } from '@brand-page/utils';
107
+ import {
108
+ getRenderText,
109
+ contentPaddingStyle as toContentPaddingStyle,
110
+ } from '@brand-page/utils';
107
111
  import { hasRTEContent } from '@brand-page-maker/utils';
108
112
  import Media from '../media/Media.vue';
109
113
  import TextWrapper from '../text-wrapper/TextWrapper.vue';
@@ -123,6 +127,10 @@ const props = withDefaults(
123
127
  },
124
128
  );
125
129
 
130
+ const contentPaddingStyle = computed(() =>
131
+ toContentPaddingStyle(props.viewModel),
132
+ );
133
+
126
134
  const isFullImage = computed(
127
135
  () =>
128
136
  props.viewModel.displayStyle === 'right-aligned-full-image' ||
@@ -201,7 +209,6 @@ const renderText = computed((): string => {
201
209
  .device-wrapper--mobile .mobile-about-container--padding {
202
210
  padding-left: var(--page-padding);
203
211
  padding-right: var(--page-padding);
204
- @apply tw-py-10;
205
212
  }
206
213
  .device-wrapper--mobile .text-grid-column {
207
214
  @apply container-grid-columns;
@@ -275,7 +282,6 @@ const renderText = computed((): string => {
275
282
  .mobile-about-container--padding {
276
283
  padding-left: var(--page-padding);
277
284
  padding-right: var(--page-padding);
278
- @apply tw-py-10;
279
285
  }
280
286
  .about-container :deep(.container-image) {
281
287
  aspect-ratio: 1/1;
@@ -7,9 +7,8 @@
7
7
  viewModel.isBigImageType,
8
8
  'c_banner--with-image-overlay tw-flex tw-flex-col': isDividedContent,
9
9
  'tw-px-6': !isDividedContent,
10
- 'tw-py-8': !isDividedContent && !isStackedFullWidth,
11
10
  }"
12
- :style="viewModel.backgroundStyle"
11
+ :style="[viewModel.backgroundStyle, contentPaddingStyle]"
13
12
  style="container-type: inline-size"
14
13
  >
15
14
  <Media
@@ -201,7 +200,7 @@
201
200
  <div
202
201
  class="!tw-text-center tw-flex tw-flex-col tw-gap-5"
203
202
  :class="{
204
- 'tw-px-6 tw-py-8': isDividedContent,
203
+ 'tw-px-6': isDividedContent,
205
204
  }"
206
205
  >
207
206
  <TextWrapper
@@ -332,7 +331,11 @@ import type {
332
331
  } from '@brand-page/view-models';
333
332
  import type { BrandPageContext } from '@brand-page/models';
334
333
  import { hasValidButton } from '../../../utils/validator.util';
335
- import { getRenderText, escapeContentText } from '@brand-page/utils';
334
+ import {
335
+ getRenderText,
336
+ escapeContentText,
337
+ contentPaddingStyle as toContentPaddingStyle,
338
+ } from '@brand-page/utils';
336
339
  import { hasRTEContent } from '@brand-page-maker/utils';
337
340
  import {
338
341
  ALIGN_CENTERED,
@@ -490,6 +493,10 @@ const layout = computed<BannerLayoutConfig>(
490
493
  () => BANNER_LAYOUTS[props.viewModel.displayStyle] ?? DEFAULT_LAYOUT,
491
494
  );
492
495
 
496
+ const contentPaddingStyle = computed(() =>
497
+ toContentPaddingStyle(props.viewModel),
498
+ );
499
+
493
500
  const displayAlignClass = computed(() => layout.value.alignClass);
494
501
  const isHorizontalAligned = computed(() => !!layout.value.hasSideImage);
495
502
  const isDividedContent = computed(() => layout.value.layout === 'divided');
@@ -1,8 +1,8 @@
1
1
  <template>
2
2
  <section data-component="booking-section">
3
3
  <div
4
- class="tw-relative tw-px-6 tw-py-8"
5
- :style="viewModel.backgroundStyle"
4
+ class="tw-relative tw-px-6"
5
+ :style="[viewModel.backgroundStyle, contentPaddingStyle]"
6
6
  style="container-type: inline-size"
7
7
  >
8
8
  <div
@@ -45,7 +45,11 @@ import type {
45
45
  ButtonViewModel,
46
46
  } from '@brand-page/view-models';
47
47
  import type { BrandPageContext } from '@brand-page/models';
48
- import { getRenderText, escapeContentText } from '@brand-page/utils';
48
+ import {
49
+ getRenderText,
50
+ escapeContentText,
51
+ contentPaddingStyle as toContentPaddingStyle,
52
+ } from '@brand-page/utils';
49
53
  import { hasRTEContent } from '@brand-page-maker/utils';
50
54
  import { hasValidButton as shouldShowButtonUtil } from '../../../utils/validator.util';
51
55
  import Button from '../button/Button.vue';
@@ -71,6 +75,10 @@ const props = defineProps({
71
75
  },
72
76
  });
73
77
 
78
+ const contentPaddingStyle = computed(() =>
79
+ toContentPaddingStyle(props.viewModel),
80
+ );
81
+
74
82
  const renderText = computed((): string => {
75
83
  if (!props.viewModel.description) {
76
84
  return '';
@@ -25,7 +25,10 @@ import {
25
25
  RECAPTCHA_ACTION_CONTACT_FORM,
26
26
  TEXT_ONLY,
27
27
  } from '../../constants';
28
- import { getRenderText } from '@brand-page/utils';
28
+ import {
29
+ getRenderText,
30
+ contentPaddingStyle as toContentPaddingStyle,
31
+ } from '@brand-page/utils';
29
32
  import { hasRTEContent } from '@brand-page-maker/utils';
30
33
  import { useReCaptcha } from '../../composables/recaptcha.composable';
31
34
 
@@ -97,6 +100,10 @@ export default defineComponent({
97
100
  return buttonTextStyle;
98
101
  },
99
102
 
103
+ contentPaddingStyle(): { paddingTop: string; paddingBottom: string } {
104
+ return toContentPaddingStyle(this.viewModel);
105
+ },
106
+
100
107
  hasCard(): boolean {
101
108
  return (
102
109
  this.viewModel.layoutStyle === ALIGN_CARD_CENTER ||
@@ -109,11 +116,10 @@ export default defineComponent({
109
116
  },
110
117
 
111
118
  hasBgColor(): boolean {
112
- return (
113
- this.viewModel.layoutStyle === ALIGN_CARD_CENTER ||
114
- this.viewModel.layoutStyle === TEXT_ONLY ||
115
- this.viewModel.layoutStyle === ALIGN_CENTERED
116
- );
119
+ // Every brandSite layout applies the background colour on the section
120
+ // root (banner-style) so the padding control reveals it; for the image
121
+ // layouts it only shows in the padding bands around the image block.
122
+ return Boolean(this.viewModel.layoutStyle);
117
123
  },
118
124
 
119
125
  isCenteredLayout(): boolean {