@designcrowd/library.brand-page 5.19.0 → 5.19.1-error-html2canvas-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (455) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-DsoA9hc-.js → CreatedOnBrandCrowd-de-de-DmKe7W8L.js} +3 -3
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-BP6NEQ66.js → CreatedOnBrandCrowd-en-us-D2EeiNep.js} +3 -3
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-D424uM1Z.js → CreatedOnBrandCrowd-es-es-BqVwNY1D.js} +3 -3
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-CJvuLTkB.js → CreatedOnBrandCrowd-fr-ca-C756a27-.js} +3 -3
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-CJvuLTkB.js → CreatedOnBrandCrowd-fr-fr-C756a27-.js} +3 -3
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-Cc9L314u.js → CreatedOnBrandCrowd-pt-br-FNHAnZUw.js} +3 -3
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-Cc9L314u.js → CreatedOnBrandCrowd-pt-pt-FNHAnZUw.js} +3 -3
  8. package/lib/src/{CreatedOnDcom-de-de-CX-295FH.js → CreatedOnDcom-de-de-8AZZFmDt.js} +3 -3
  9. package/lib/src/{CreatedOnDcom-en-us-UFlORUgZ.js → CreatedOnDcom-en-us-DizTP32i.js} +3 -3
  10. package/lib/src/{CreatedOnDcom-es-es-D1tRpcq9.js → CreatedOnDcom-es-es-qnp9_n_A.js} +3 -3
  11. package/lib/src/{CreatedOnDcom-fr-ca-Dz_ry9uY.js → CreatedOnDcom-fr-ca-jUs352uK.js} +3 -3
  12. package/lib/src/{CreatedOnDcom-fr-fr-8Ydu6b1T.js → CreatedOnDcom-fr-fr-CTxXtHyk.js} +3 -3
  13. package/lib/src/{CreatedOnDcom-pt-br-COwvw5k4.js → CreatedOnDcom-pt-br-nQHj8P7d.js} +3 -3
  14. package/lib/src/{CreatedOnDcom-pt-pt-CB72-eaa.js → CreatedOnDcom-pt-pt-DJmVYQuL.js} +3 -3
  15. package/lib/src/brand-page/clients/brand-page.client.d.ts +9 -9
  16. package/lib/src/brand-page/components/{testimonial-section/TestimonialSection.mixin.d.ts → banner-section/BannerSection.mixin.d.ts} +43 -37
  17. package/lib/src/brand-page/components/banner-section/BannerSection.mixin.js +178 -0
  18. package/lib/src/brand-page/components/contact-form/ContactForm.mixin.d.ts +4 -0
  19. package/lib/src/brand-page/components/contact-form/ContactForm.mixin.js +8 -4
  20. package/lib/src/brand-page/components/image-gallery/ImageGallery.mixin.d.ts +4 -0
  21. package/lib/src/brand-page/components/image-gallery/ImageGallery.mixin.js +4 -0
  22. package/lib/src/brand-page/components/image-gallery/masonry/MasonryGallery.mixin.d.ts +0 -1
  23. package/lib/src/brand-page/components/mailing-list/MailingList.mixin.d.ts +4 -0
  24. package/lib/src/brand-page/components/mailing-list/MailingList.mixin.js +4 -1
  25. package/lib/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.d.ts +4 -2
  26. package/lib/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.js +1 -0
  27. package/lib/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.d.ts +4 -2
  28. package/lib/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.js +5 -4
  29. package/lib/src/brand-page/components/page/Page.mixin.d.ts +1 -1
  30. package/lib/src/brand-page/components/page/PageComponent.mixin.d.ts +1 -1
  31. package/lib/src/brand-page/components/payment/Payment.mixin.d.ts +3 -3
  32. package/lib/src/brand-page/components/payment/__fixtures__/request-payment.d.ts +13 -13
  33. package/lib/src/brand-page/components/payment/__fixtures__/support-me.d.ts +13 -13
  34. package/lib/src/brand-page/components/payment/request-payment/RequestPayment.mixin.d.ts +4 -0
  35. package/lib/src/brand-page/components/payment/request-payment/RequestPayment.mixin.js +4 -0
  36. package/lib/src/brand-page/components/payment/support-me/SupportMe.mixin.d.ts +4 -0
  37. package/lib/src/brand-page/components/payment/support-me/SupportMe.mixin.js +4 -1
  38. package/lib/src/brand-page/components/video/Video.mixin.d.ts +4 -0
  39. package/lib/src/brand-page/components/video/Video.mixin.js +4 -0
  40. package/lib/src/brand-page/constants/font.constants.d.ts +4 -4
  41. package/lib/src/brand-page/constants/font.constants.js +4 -4
  42. package/lib/src/brand-page/constants/misc.constants.d.ts +35 -0
  43. package/lib/src/brand-page/constants/misc.constants.js +51 -0
  44. package/lib/src/brand-page/constants/sections/footer-display.constants.js +1 -1
  45. package/lib/src/brand-page/models/content.model.d.ts +2 -0
  46. package/lib/src/brand-page/models/index.d.ts +2 -1
  47. package/lib/src/brand-page/models/index.js +3 -0
  48. package/lib/src/brand-page/models/payment.model.d.ts +1 -1
  49. package/lib/src/brand-page/utils/content-padding.util.d.ts +13 -0
  50. package/lib/src/brand-page/utils/content-padding.util.js +10 -0
  51. package/lib/src/brand-page/utils/index.d.ts +1 -0
  52. package/lib/src/brand-page/utils/index.js +1 -0
  53. package/lib/src/brand-page/utils/migration/migration-17.d.ts +2 -0
  54. package/lib/src/brand-page/utils/migration/migration-17.js +60 -0
  55. package/lib/src/brand-page/utils/migration.util.js +10 -0
  56. package/lib/src/brand-page/utils/personalisation.util.js +72 -14
  57. package/lib/src/brand-page-maker/components/action-bar/ActionBar.mixin.d.ts +21 -19
  58. package/lib/src/brand-page-maker/components/action-bar/ActionBar.mixin.js +1 -0
  59. package/lib/src/brand-page-maker/components/admin-background-settings/AdminBackgroundSettings.mixin.d.ts +16 -10
  60. package/lib/src/brand-page-maker/components/admin-logo-settings/AdminLogoSettings.mixin.d.ts +5 -3
  61. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +193 -170
  62. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.js +3 -0
  63. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.js +1 -0
  64. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.mixin.d.ts +12 -12
  65. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.stories.js +2 -2
  66. package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-payment.js +0 -7
  67. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +162 -149
  68. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.d.ts +21 -21
  69. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.js +1 -1
  70. package/lib/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.d.ts +4 -2
  71. package/lib/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.js +1 -0
  72. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.d.ts +4 -2
  73. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.js +1 -0
  74. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.d.ts +5 -2
  75. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.js +1 -0
  76. package/lib/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.d.ts +4 -2
  77. package/lib/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.js +1 -0
  78. package/lib/src/brand-page-maker/components/device/Device.mixin.d.ts +4 -2
  79. package/lib/src/brand-page-maker/components/device/Device.mixin.js +1 -0
  80. package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.d.ts +4 -2
  81. package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.js +1 -0
  82. package/lib/src/brand-page-maker/components/preview/Preview.mixin.d.ts +3 -3
  83. package/lib/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.d.ts +11 -11
  84. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.d.ts +27 -25
  85. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.js +1 -0
  86. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.d.ts +27 -27
  87. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.js +1 -1
  88. package/lib/src/brand-page-maker/components/seo-settings/UseExistingDomainModal.mixin.d.ts +17 -12
  89. package/lib/src/brand-page-maker/components/social-share/SocialShare.mixin.d.ts +12 -12
  90. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.d.ts +30 -32
  91. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.js +16 -5
  92. package/lib/src/brand-page-maker/components/upgrade-to-premium-button/UpgradeToPremiumButton.mixin.d.ts +11 -11
  93. package/lib/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.js +1 -1
  94. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.d.ts +1 -1
  95. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +6 -6
  96. package/lib/src/brand-page-maker/composables/useEventTracker.d.ts +2 -2
  97. package/lib/src/brand-page-maker/constants/config-settings-constant.d.ts +6 -6
  98. package/lib/src/brand-page-maker/constants/config-settings-constant.js +40 -1
  99. package/lib/src/brand-page-maker/convertors/about-display-style.convertor.js +9 -1
  100. package/lib/src/brand-page-maker/convertors/banner-align-display-style.convertor.js +7 -1
  101. package/lib/src/brand-page-maker/convertors/contact-layout-style.convertor.js +6 -1
  102. package/lib/src/brand-page-maker/convertors/text-image-display-style.convertor.d.ts +1 -1
  103. package/lib/src/brand-page-maker/convertors/text-image-display-style.convertor.js +1 -1
  104. package/lib/src/brand-page-maker/models/content-settings.d.ts +1 -1
  105. package/lib/src/brand-page-maker/models/content-settings.js +39 -2
  106. package/lib/src/brand-page-maker/models/navigation-style-configs.js +1 -1
  107. package/lib/src/brand-page-maker/routing/brand-page-maker-router.d.ts +1 -2
  108. package/lib/src/brand-page-maker/stores/ai-checkpoint/ai-checkpoint-store.d.ts +378 -360
  109. package/lib/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.d.ts +5 -4
  110. package/lib/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.js +8 -5
  111. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.d.ts +3 -1
  112. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +7 -3
  113. package/lib/src/brand-page-maker/stores/history/history-store.d.ts +15 -15
  114. package/lib/src/brand-page-maker/stores/ui/ui-store.d.ts +6 -0
  115. package/lib/src/brand-page-maker/stores/ui/ui-store.js +8 -0
  116. package/lib/src/brand-page-maker/utils/content-settings.util.js +1 -1
  117. package/lib/src/brand-page-maker/utils/rich-text-editor.util.d.ts +1 -1
  118. package/lib/src/brand-page-maker/utils/rich-text-editor.util.js +4 -4
  119. package/lib/src/{bundled-translations-D1q3rSEz.js → bundled-translations-BUyt4scr.js} +9 -9
  120. package/lib/src/{bundled-translations.de-DE-BxqLLwbh.js → bundled-translations.de-DE-DEw_OVai.js} +1 -1
  121. package/lib/src/{bundled-translations.es-ES-uh249NlJ.js → bundled-translations.es-ES-CFKWmkgY.js} +17 -17
  122. package/lib/src/{bundled-translations.fr-CA-BEQmv2fX.js → bundled-translations.fr-CA-DCl5LJS4.js} +1 -1
  123. package/lib/src/{bundled-translations.fr-FR-BnNuCojH.js → bundled-translations.fr-FR-B5BjgllA.js} +1 -1
  124. package/lib/src/{bundled-translations.pt-BR-CJUOxVlq.js → bundled-translations.pt-BR-5PWpMPuM.js} +1 -1
  125. package/lib/src/{bundled-translations.pt-PT-Ds9cMEqK.js → bundled-translations.pt-PT-B9_wN0HR.js} +9 -9
  126. package/lib/src/bundles/bundled-translations.de-DE.json +2 -0
  127. package/lib/src/bundles/bundled-translations.es-ES.json +2 -0
  128. package/lib/src/bundles/bundled-translations.fr-CA.json +2 -0
  129. package/lib/src/bundles/bundled-translations.fr-FR.json +2 -0
  130. package/lib/src/bundles/bundled-translations.json +2 -0
  131. package/lib/src/bundles/bundled-translations.pt-BR.json +2 -0
  132. package/lib/src/bundles/bundled-translations.pt-PT.json +2 -0
  133. package/lib/src/clients/brand-page-client.d.ts +16 -15
  134. package/lib/src/clients/design-template-client.d.ts +3 -0
  135. package/lib/src/clients/media-client.d.ts +2 -2
  136. package/lib/src/clients/models.d.ts +2 -0
  137. package/lib/src/composables/useSnapshot.js +18 -18
  138. package/lib/src/css/library.brand-page-brandCrowd.min.css +441 -437
  139. package/lib/src/css/library.brand-page-brandPage.min.css +719 -437
  140. package/lib/src/css/library.brand-page-designCom.min.css +441 -437
  141. package/lib/src/css/library.brand-page-preview.min.css +697 -437
  142. package/lib/src/index.d.ts +1 -1
  143. package/lib/src/index.mjs +16 -15
  144. package/lib/src/{lib-tHPi9EKk.js → lib-DityivZa.js} +37011 -33834
  145. package/lib/src/lib.js +1 -1
  146. package/lib/src/metadata-builder/builders/footer-builder.js +90 -65
  147. package/lib/src/metadata-builder/builders/section-builders/image-gallery-builder.js +1 -1
  148. package/lib/src/metadata-builder/builders/section-builders/images-section-builder.js +1 -1
  149. package/lib/src/metadata-builder/builders/section-builders/testimonial-section-builder.js +1 -1
  150. package/lib/src/metadata-builder/builders/section-builders/text-section-builder.js +1 -1
  151. package/lib/src/metadata-builder/builders/shape-color-utils.js +1 -1
  152. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.d.ts +1 -1
  153. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.js +8 -8
  154. package/lib/src/shared/background-settings/components/background-shapes/BackgroundShapeSettings.mixin.d.ts +13 -13
  155. package/lib/src/shared/background-settings/store/background-settings-store.d.ts +3 -3
  156. package/lib/src/shared/color-picker/components/ColorPicker.mixin.d.ts +4 -2
  157. package/lib/src/shared/color-picker/components/ColorPicker.mixin.js +2 -2
  158. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.d.ts +4 -2
  159. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.js +1 -0
  160. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.d.ts +5 -2
  161. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.js +1 -0
  162. package/lib/src/shared/content-settings/components/GenericTextInput.mixin.d.ts +0 -1
  163. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +145 -129
  164. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.js +2 -1
  165. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +125 -110
  166. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +96 -81
  167. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.js +5 -0
  168. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +129 -109
  169. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.js +1 -14
  170. package/lib/src/shared/content-settings/components/email-field/EmailField.mixin.d.ts +0 -1
  171. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +84 -70
  172. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.js +4 -3
  173. package/lib/src/shared/content-settings/components/form-fields-field/FormFieldsField.mixin.d.ts +4 -4
  174. package/lib/src/shared/content-settings/components/icon-library/IconLibrary.mixin.d.ts +3 -1
  175. package/lib/src/shared/content-settings/components/icon-library/IconLibrary.mixin.js +1 -0
  176. package/lib/src/shared/content-settings/components/images-field/ImagesField.mixin.d.ts +2 -2
  177. package/lib/src/shared/content-settings/components/items-field/ItemsField.mixin.d.ts +4 -3
  178. package/lib/src/shared/content-settings/components/items-field/ItemsField.mixin.js +1 -1
  179. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.d.ts +40 -40
  180. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigOptionField.mixin.d.ts +5 -6
  181. package/lib/src/shared/content-settings/components/shape-field/ShapeField.mixin.d.ts +0 -1
  182. package/lib/src/shared/content-settings/components/slider-field/SliderField.mixin.d.ts +2 -2
  183. package/lib/src/shared/content-settings/components/slider-field/SliderField.mixin.js +9 -0
  184. package/lib/src/shared/content-settings/components/tel-field/TelField.mixin.d.ts +0 -1
  185. package/lib/src/shared/content-settings/components/testimonial-items-field/TestimonialItemsField.mixin.d.ts +1 -2
  186. package/lib/src/shared/content-settings/components/text-field/TextField.mixin.d.ts +0 -1
  187. package/lib/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.d.ts +1 -2
  188. package/lib/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.js +1 -1
  189. package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.d.ts +28 -28
  190. package/lib/src/shared/content-settings/components/textarea-field/TextareaField.mixin.d.ts +0 -1
  191. package/lib/src/shared/content-settings/components/toggle-field/ToggleField.mixin.d.ts +2 -2
  192. package/lib/src/shared/content-settings/components/url-field/UrlField.mixin.d.ts +0 -1
  193. package/lib/src/shared/content-settings/components/youtube-video-field/YoutubeVideoField.mixin.d.ts +0 -1
  194. package/lib/src/shared/content-settings/store/content-settings-store.d.ts +51 -39
  195. package/lib/src/shared/content-settings/utils.js +0 -1
  196. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.d.ts +6 -4
  197. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.js +1 -0
  198. package/lib/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.d.ts +4 -2
  199. package/lib/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.js +1 -0
  200. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.d.ts +29 -21
  201. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.js +1 -1
  202. package/lib/src/shared/logo-settings/components/LogoSettings.mixin.d.ts +50 -51
  203. package/lib/src/shared/logo-settings/components/LogoSettingsHeader.mixin.d.ts +6 -4
  204. package/lib/src/shared/logo-settings/components/LogoSettingsHeader.mixin.js +1 -0
  205. package/lib/src/shared/logo-settings/store/editable-logo-store.js +1 -1
  206. package/lib/src/shared/logo-settings/store/logo-settings-store.d.ts +1 -1
  207. package/lib/src/shared/logo-versions/LogoVersions.mixin.d.ts +13 -5
  208. package/lib/src/shared/logo-versions/LogoVersions.mixin.js +1 -0
  209. package/lib/src/shared/models.d.ts +2 -0
  210. package/lib/src/shared/my-designs/MyDesigns.mixin.d.ts +14 -6
  211. package/lib/src/shared/my-designs/MyDesigns.mixin.js +1 -0
  212. package/lib/src/shared/my-uploads/MyMedia.mixin.d.ts +14 -5
  213. package/lib/src/shared/my-uploads/MyMedia.mixin.js +1 -0
  214. package/lib/src/shared/my-uploads/MyUploads.mixin.d.ts +14 -5
  215. package/lib/src/shared/my-uploads/MyUploads.mixin.js +1 -0
  216. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.d.ts +5 -3
  217. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.js +1 -0
  218. package/lib/src/shared/navigation-style-settings/store/index.d.ts +2 -2
  219. package/lib/src/shared/page-navigation/store/page-navigation-store.d.ts +2 -2
  220. package/lib/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.d.ts +27 -28
  221. package/lib/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.js +0 -2
  222. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +204 -177
  223. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +195 -175
  224. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.js +1 -1
  225. package/lib/src/shared/page-settings/store/page-settings-store.d.ts +9 -9
  226. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.d.ts +39 -39
  227. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.js +0 -1
  228. package/lib/src/shared/side-bar/components/SideBar.mixin.d.ts +18 -18
  229. package/lib/src/shared/side-bar/components/SideBarTabButton.mixin.d.ts +6 -6
  230. package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +66 -60
  231. package/lib/src/shared/style-settings/store/style-settings-store.d.ts +1 -1
  232. package/lib/src/shared/style-settings/store/style-settings-store.js +1 -1
  233. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.d.ts +20 -450
  234. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.js +2 -2
  235. package/lib/src/shared/template-settings/models.d.ts +1 -0
  236. package/lib/src/shared/template-settings/store/template-settings-store.d.ts +4 -0
  237. package/lib/src/shared/template-settings/store/template-settings-store.js +79 -11
  238. package/lib/src/shared/unsplash-library/UnsplashLibrary.mixin.d.ts +9 -4
  239. package/lib/src/utils/minify-brand-page-metadata.js +11 -1
  240. package/package.json +61 -57
  241. package/src/brand-page/components/about-section/AboutSection.vue +10 -4
  242. package/src/brand-page/components/about-section/AboutSection.vue.test.ts +7 -5
  243. package/src/brand-page/components/banner-section/BannerSection.mixin.ts +210 -0
  244. package/src/brand-page/components/banner-section/BannerSection.vue +11 -4
  245. package/src/brand-page/components/booking-section/BookingSection.vue +11 -3
  246. package/src/brand-page/components/brand-page-footer/BrandPageFooter.vue +1 -1
  247. package/src/brand-page/components/contact-form/ContactForm.mixin.ts +12 -6
  248. package/src/brand-page/components/contact-form/ContactForm.vue +105 -104
  249. package/src/brand-page/components/image/Image.mixin.ts +1 -1
  250. package/src/brand-page/components/image/Image.test.ts +1 -1
  251. package/src/brand-page/components/image-gallery/ImageGallery.mixin.ts +5 -0
  252. package/src/brand-page/components/image-gallery/ImageGallery.vue +1 -1
  253. package/src/brand-page/components/images-section/ImagesSection.vue +0 -1
  254. package/src/brand-page/components/logo/LogoRender.vue +188 -188
  255. package/src/brand-page/components/mailing-list/MailingList.mixin.ts +8 -1
  256. package/src/brand-page/components/mailing-list/MailingList.vue +1 -1
  257. package/src/brand-page/components/map/Map.vue +5 -1
  258. package/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.ts +1 -0
  259. package/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.ts +15 -6
  260. package/src/brand-page/components/page-footer/PageFooter.vue +1 -0
  261. package/src/brand-page/components/page-header/HeaderLayout.vue +12 -6
  262. package/src/brand-page/components/page-header/PageHeader.vue +1 -0
  263. package/src/brand-page/components/payment/request-payment/RequestPayment.mixin.ts +5 -0
  264. package/src/brand-page/components/payment/request-payment/RequestPayment.vue +1 -0
  265. package/src/brand-page/components/payment/support-me/SupportMe.mixin.ts +8 -1
  266. package/src/brand-page/components/payment/support-me/SupportMe.vue +1 -0
  267. package/src/brand-page/components/shapes-section/ShapesSection.vue +1 -1
  268. package/src/brand-page/components/shop/CartModal.vue +1 -3
  269. package/src/brand-page/components/shop/FeaturedDisplay.vue +2 -2
  270. package/src/brand-page/components/shop/PaymentModal.vue +1 -5
  271. package/src/brand-page/components/shop/ProductDetailModal.vue +1 -1
  272. package/src/brand-page/components/shop/Shop.vue +8 -3
  273. package/src/brand-page/components/shop/TextDisplay.vue +1 -1
  274. package/src/brand-page/components/shop/ThumbnailDisplay.vue +2 -2
  275. package/src/brand-page/components/social-links/SocialLinks.vue +7 -3
  276. package/src/brand-page/components/testimonial-section/TestimonialSection.vue +120 -11
  277. package/src/brand-page/components/text/Text.vue +12 -5
  278. package/src/brand-page/components/text-media-section/TextMediaSection.vue +11 -3
  279. package/src/brand-page/components/text-wrapper/TextWrapper.vue +3 -1
  280. package/src/brand-page/components/video/Video.mixin.ts +5 -0
  281. package/src/brand-page/components/video/Video.vue +1 -1
  282. package/src/brand-page/constants/font.constants.ts +4 -4
  283. package/src/brand-page/constants/misc.constants.ts +58 -0
  284. package/src/brand-page/constants/sections/footer-display.constants.ts +1 -1
  285. package/src/brand-page/models/content.model.ts +2 -0
  286. package/src/brand-page/models/index.ts +4 -0
  287. package/src/brand-page/models/payment.model.ts +2 -1
  288. package/src/brand-page/models/shop.model.ts +0 -2
  289. package/src/brand-page/models/user-personalisation.model.ts +1 -2
  290. package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +12 -3
  291. package/src/brand-page/utils/__snapshots__/migration2.util.test.ts.snap +7 -6
  292. package/src/brand-page/utils/__snapshots__/model.util.test.ts.snap +14 -12
  293. package/src/brand-page/utils/content-padding.util.test.ts +29 -0
  294. package/src/brand-page/utils/content-padding.util.ts +13 -0
  295. package/src/brand-page/utils/index.ts +1 -0
  296. package/src/brand-page/utils/migration/migration-01_1.ts +1 -1
  297. package/src/brand-page/utils/migration/migration-02.ts +0 -1
  298. package/src/brand-page/utils/migration/migration-03.ts +0 -1
  299. package/src/brand-page/utils/migration/migration-04.ts +0 -1
  300. package/src/brand-page/utils/migration/migration-05.ts +1 -5
  301. package/src/brand-page/utils/migration/migration-05_2.ts +1 -1
  302. package/src/brand-page/utils/migration/migration-08.test.ts +1 -1
  303. package/src/brand-page/utils/migration/migration-17.ts +77 -0
  304. package/src/brand-page/utils/migration.util.test.ts +290 -0
  305. package/src/brand-page/utils/migration.util.ts +11 -0
  306. package/src/brand-page/utils/personalisation.util.test.ts +35 -0
  307. package/src/brand-page/utils/personalisation.util.ts +119 -23
  308. package/src/brand-page/view-models.ts +38 -56
  309. package/src/brand-page-maker/assessors/banner-section-description-visibility.assessor.ts +6 -6
  310. package/src/brand-page-maker/assessors/color-replacement-icon-visibility.assessor.ts +2 -2
  311. package/src/brand-page-maker/assessors/color-replacement-profile-visibility.assessor.ts +2 -2
  312. package/src/brand-page-maker/assessors/color-replacement-visibility.assessor.ts +2 -2
  313. package/src/brand-page-maker/assessors/contact-form-visibility.assessor.ts +14 -14
  314. package/src/brand-page-maker/components/action-bar/ActionBar.mixin.ts +1 -0
  315. package/src/brand-page-maker/components/ai-text-edit/TextBubble.vue +1 -0
  316. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.ts +5 -1
  317. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.ts +1 -0
  318. package/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.stories.ts +2 -5
  319. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.ts +0 -5
  320. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-payment.ts +0 -8
  321. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-site-template.examples.ts +0 -2
  322. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.vue +1 -0
  323. package/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.ts +1 -1
  324. package/src/brand-page-maker/components/color-palette/BpColorPalette.vue +1 -2
  325. package/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.ts +1 -0
  326. package/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.ts +1 -0
  327. package/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.ts +1 -0
  328. package/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.ts +1 -0
  329. package/src/brand-page-maker/components/device/Device.mixin.ts +1 -0
  330. package/src/brand-page-maker/components/navigation/Navigation.mixin.ts +1 -0
  331. package/src/brand-page-maker/components/rich-text-editor/RichTextEditor.vue +3 -1
  332. package/src/brand-page-maker/components/sensitive-content/SensitiveContent.vue +1 -4
  333. package/src/brand-page-maker/components/seo-settings/DeleteDomainModal.vue +1 -1
  334. package/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.ts +1 -0
  335. package/src/brand-page-maker/components/seo-settings/SeoPageSettings.vue +1 -1
  336. package/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.ts +0 -1
  337. package/src/brand-page-maker/components/seo-settings/UrlSettings.vue +0 -1
  338. package/src/brand-page-maker/components/seo-settings/UseExistingDomainModal.vue +1 -5
  339. package/src/brand-page-maker/components/shop/AddOrEditProductContainer.vue +1 -1
  340. package/src/brand-page-maker/components/shop/ReplaceImageSettingsForShop.vue +1 -1
  341. package/src/brand-page-maker/components/social-share/SocialShare.vue +1 -1
  342. package/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.ts +22 -8
  343. package/src/brand-page-maker/components/template-preview/TemplatePreview.vue +5 -10
  344. package/src/brand-page-maker/components/template-preview/TemplatePreviewAiBadge.vue +12 -0
  345. package/src/brand-page-maker/components/video-play/VideoPlayButton.vue +1 -1
  346. package/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.ts +1 -1
  347. package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +6 -6
  348. package/src/brand-page-maker/constants/config-settings-constant.ts +48 -3
  349. package/src/brand-page-maker/convertors/about-display-style.convertor.ts +10 -0
  350. package/src/brand-page-maker/convertors/banner-align-display-style.convertor.ts +8 -0
  351. package/src/brand-page-maker/convertors/contact-layout-style.convertor.test.ts +50 -0
  352. package/src/brand-page-maker/convertors/contact-layout-style.convertor.ts +8 -0
  353. package/src/brand-page-maker/convertors/text-image-display-style.convertor.ts +1 -1
  354. package/src/brand-page-maker/models/button-styles-config.ts +4 -2
  355. package/src/brand-page-maker/models/content-settings-configs.ts +4 -2
  356. package/src/brand-page-maker/models/content-settings.ts +43 -2
  357. package/src/brand-page-maker/models/navigation-style-configs.ts +5 -6
  358. package/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store.ts +0 -1
  359. package/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.ts +8 -5
  360. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.test.ts +1 -3
  361. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +12 -4
  362. package/src/brand-page-maker/stores/ui/ui-store.ts +16 -0
  363. package/src/brand-page-maker/utils/content-settings.util.ts +1 -1
  364. package/src/brand-page-maker/utils/rich-text-editor.util.ts +4 -4
  365. package/src/bundles/bundled-translations.de-DE.json +2 -0
  366. package/src/bundles/bundled-translations.es-ES.json +2 -0
  367. package/src/bundles/bundled-translations.fr-CA.json +2 -0
  368. package/src/bundles/bundled-translations.fr-FR.json +2 -0
  369. package/src/bundles/bundled-translations.json +2 -0
  370. package/src/bundles/bundled-translations.pt-BR.json +2 -0
  371. package/src/bundles/bundled-translations.pt-PT.json +2 -0
  372. package/src/clients/design-template-client.ts +3 -0
  373. package/src/clients/models.ts +2 -0
  374. package/src/composables/useSnapshot.ts +19 -22
  375. package/src/lib.ts +1 -0
  376. package/src/metadata-builder/builders/footer-builder.test.ts +137 -0
  377. package/src/metadata-builder/builders/footer-builder.ts +129 -89
  378. package/src/metadata-builder/builders/section-builders/image-gallery-builder.ts +1 -1
  379. package/src/metadata-builder/builders/section-builders/images-section-builder.ts +1 -1
  380. package/src/metadata-builder/builders/section-builders/testimonial-section-builder.ts +1 -1
  381. package/src/metadata-builder/builders/section-builders/text-section-builder.ts +1 -1
  382. package/src/metadata-builder/builders/shape-color-utils.ts +2 -2
  383. package/src/plugins/google-maps-plugin/google-maps-plugin.ts +8 -8
  384. package/src/shared/background-settings/components/BackgroundSettings.vue +1 -1
  385. package/src/shared/background-settings/components/background-color/BackgroundColorSettings.vue +1 -1
  386. package/src/shared/color-picker/components/ColorPicker.mixin.ts +2 -7
  387. package/src/shared/color-picker/components/ColorPickerSwatch.mixin.ts +1 -0
  388. package/src/shared/common/NumberInput.vue +1 -0
  389. package/src/shared/common/SideBarSettingsHeader.vue +2 -2
  390. package/src/shared/confirm-modal/ConfirmModal.mixin.ts +1 -0
  391. package/src/shared/content-settings/components/booking-url-field/BookingUrlField.vue +1 -0
  392. package/src/shared/content-settings/components/button-configuration-field/ButtonConfigurationField.vue +1 -0
  393. package/src/shared/content-settings/components/color-field/ColorField.vue +3 -10
  394. package/src/shared/content-settings/components/content-settings/ContentSettings.mixin.ts +1 -1
  395. package/src/shared/content-settings/components/content-settings/ContentSettingsLockedButton.vue +1 -0
  396. package/src/shared/content-settings/components/content-settings/i18n/content-settings.de-DE.json +2 -0
  397. package/src/shared/content-settings/components/content-settings/i18n/content-settings.es-ES.json +2 -0
  398. package/src/shared/content-settings/components/content-settings/i18n/content-settings.fr-CA.json +2 -0
  399. package/src/shared/content-settings/components/content-settings/i18n/content-settings.fr-FR.json +2 -0
  400. package/src/shared/content-settings/components/content-settings/i18n/content-settings.json +2 -0
  401. package/src/shared/content-settings/components/content-settings/i18n/content-settings.pt-BR.json +2 -0
  402. package/src/shared/content-settings/components/content-settings/i18n/content-settings.pt-PT.json +2 -0
  403. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.ts +5 -0
  404. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.vue +1 -1
  405. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.ts +1 -14
  406. package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.ts +4 -6
  407. package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.vue +2 -2
  408. package/src/shared/content-settings/components/icon-library/IconLibrary.mixin.ts +1 -0
  409. package/src/shared/content-settings/components/items-field/ItemsField.mixin.ts +1 -1
  410. package/src/shared/content-settings/components/logo-selection-field/LogoSelectionField.vue +1 -1
  411. package/src/shared/content-settings/components/logo-size-field/LogoSizeSliderField.vue +1 -1
  412. package/src/shared/content-settings/components/page-dropdown-field/PageDropdownField.vue +1 -1
  413. package/src/shared/content-settings/components/personalisation-role-field/PersonalisationRoleField.vue +4 -4
  414. package/src/shared/content-settings/components/slider-field/SliderField.mixin.ts +9 -0
  415. package/src/shared/content-settings/components/text-image-field/TextImageField.vue +2 -8
  416. package/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.ts +1 -1
  417. package/src/shared/content-settings/models.ts +3 -2
  418. package/src/shared/content-settings/utils.ts +0 -1
  419. package/src/shared/dropzone-image-uploader/components/DropzoneImageUploader.vue +1 -0
  420. package/src/shared/ecommerce-settings/store/cart-store.test.ts +1 -1
  421. package/src/shared/font-family-selector/FontFamilySelector.mixin.ts +1 -0
  422. package/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.ts +1 -0
  423. package/src/shared/logo-settings/components/EditLogoSettings.mixin.ts +1 -1
  424. package/src/shared/logo-settings/components/LogoSettings.mixin.ts +0 -1
  425. package/src/shared/logo-settings/components/LogoSettingsHeader.mixin.ts +1 -0
  426. package/src/shared/logo-settings/components/LogoStyleSettingsWithState.vue +2 -2
  427. package/src/shared/logo-settings/components/LogoTemplateSearch.vue +1 -1
  428. package/src/shared/logo-settings/store/editable-logo-store.ts +1 -1
  429. package/src/shared/logo-settings/store/logo-settings-store.test.ts +4 -4
  430. package/src/shared/logo-versions/LogoVersions.mixin.ts +1 -0
  431. package/src/shared/models.ts +6 -0
  432. package/src/shared/my-designs/MyDesigns.mixin.ts +1 -0
  433. package/src/shared/my-uploads/MyMedia.mixin.ts +1 -0
  434. package/src/shared/my-uploads/MyMediaSelectionItem.vue +2 -1
  435. package/src/shared/my-uploads/MyUploads.mixin.ts +1 -0
  436. package/src/shared/my-uploads/models.ts +1 -2
  437. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.ts +1 -0
  438. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.vue +1 -1
  439. package/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.ts +0 -3
  440. package/src/shared/page-settings/components/page-settings/NestedDraggable.vue +1 -1
  441. package/src/shared/page-settings/components/page-settings/PageSettings.vue +1 -2
  442. package/src/shared/page-settings/components/page-settings-section-styles/HeaderDisplayStyle.vue +1 -1
  443. package/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.ts +1 -1
  444. package/src/shared/page-settings/store/page-settings-store.test.ts +4 -8
  445. package/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.ts +0 -1
  446. package/src/shared/shape-library/ShapeLibrary.vue +2 -2
  447. package/src/shared/style-settings/store/style-settings-store.ts +1 -1
  448. package/src/shared/template-settings/components/TemplatesSettings.mixin.ts +2 -2
  449. package/src/shared/template-settings/models.ts +1 -0
  450. package/src/shared/template-settings/store/template-settings-store.ts +105 -18
  451. package/src/shared/unsplash-library/UnsplashLibrary.vue +2 -6
  452. package/src/shared/video-library/VideoLibrary.vue +1 -1
  453. package/src/utils/minify-brand-page-metadata.ts +11 -1
  454. package/lib/src/brand-page/components/testimonial-section/TestimonialSection.mixin.js +0 -112
  455. package/src/brand-page/components/testimonial-section/TestimonialSection.mixin.ts +0 -132
@@ -113,6 +113,8 @@
113
113
  "iconFillColorTitle": "Color de relleno del icono",
114
114
  "iconBackgroundColorTitle": "Color de fondo del icono",
115
115
  "paddingTitle": "Relleno",
116
+ "topPaddingTitle": "Relleno superior",
117
+ "bottomPaddingTitle": "Relleno inferior",
116
118
  "dividerStyleTitle": "Estilo del divisor",
117
119
  "dividerColorTitle": "Color del separador",
118
120
  "addItemTitle": "Añadir artículo",
@@ -113,6 +113,8 @@
113
113
  "iconFillColorTitle": "Couleur de remplissage de l’icône",
114
114
  "iconBackgroundColorTitle": "Couleur d’arrière-plan de l’icône",
115
115
  "paddingTitle": "Marges intérieures",
116
+ "topPaddingTitle": "Marge intérieure supérieure",
117
+ "bottomPaddingTitle": "Marges intérieures inférieures",
116
118
  "dividerStyleTitle": "Style de séparateur",
117
119
  "dividerColorTitle": "Couleur du séparateur",
118
120
  "addItemTitle": "Ajouter un article",
@@ -113,6 +113,8 @@
113
113
  "iconFillColorTitle": "Couleur de remplissage de l’icône",
114
114
  "iconBackgroundColorTitle": "Couleur d’arrière-plan de l’icône",
115
115
  "paddingTitle": "Marges intérieures",
116
+ "topPaddingTitle": "Marges intérieures supérieures",
117
+ "bottomPaddingTitle": "Marges intérieures inférieures",
116
118
  "dividerStyleTitle": "Style de séparateur",
117
119
  "dividerColorTitle": "Couleur du séparateur",
118
120
  "addItemTitle": "Ajouter un article",
@@ -113,6 +113,8 @@
113
113
  "iconFillColorTitle": "Icon fill color",
114
114
  "iconBackgroundColorTitle": "Icon background color",
115
115
  "paddingTitle": "Padding",
116
+ "topPaddingTitle": "Top padding",
117
+ "bottomPaddingTitle": "Bottom padding",
116
118
  "dividerStyleTitle": "Divider Style",
117
119
  "dividerColorTitle": "Divider color",
118
120
  "addItemTitle": "Add Item",
@@ -113,6 +113,8 @@
113
113
  "iconFillColorTitle": "Cor de preenchimento do ícone",
114
114
  "iconBackgroundColorTitle": "Cor de fundo do ícone",
115
115
  "paddingTitle": "Preenchimento",
116
+ "topPaddingTitle": "Preenchimento superior",
117
+ "bottomPaddingTitle": "Preenchimento inferior",
116
118
  "dividerStyleTitle": "Estilo do separador",
117
119
  "dividerColorTitle": "Cor do separador",
118
120
  "addItemTitle": "Adicionar item",
@@ -113,6 +113,8 @@
113
113
  "iconFillColorTitle": "Cor de preenchimento do ícone",
114
114
  "iconBackgroundColorTitle": "Cor de fundo do ícone",
115
115
  "paddingTitle": "Preenchimento",
116
+ "topPaddingTitle": "Preenchimento superior",
117
+ "bottomPaddingTitle": "Preenchimento inferior",
116
118
  "dividerStyleTitle": "Estilo do separador",
117
119
  "dividerColorTitle": "Cor do separador",
118
120
  "addItemTitle": "Adicionar Item",
@@ -49,6 +49,11 @@ export default defineComponent({
49
49
  required: true,
50
50
  },
51
51
  },
52
+ emits: [
53
+ 'on-delete',
54
+ 'capture-snapshot-before-modal',
55
+ 'capture-preview-snapshot',
56
+ ],
52
57
  setup() {
53
58
  const contentSettingsStore = useUiContentSettingsStore();
54
59
  const sideBarStore = useUiSideBarStore();
@@ -56,7 +56,7 @@
56
56
  >
57
57
  <li
58
58
  v-for="(field, index) in fields"
59
- :key="`content-settings-item-field-${id}-${index}`"
59
+ :key="`content-settings-item-field-${id}-${field.name}`"
60
60
  class="tw-cursor-pointer"
61
61
  :class="{
62
62
  'tw-mb-3': index !== fields.length - 1,
@@ -16,7 +16,6 @@ import { SIDE_BAR_TAB_NAMES } from '@brand-page-maker/constants';
16
16
  import { ITEM_FIELD_TYPES, type ItemFieldType } from '@brand-page-maker/models';
17
17
  import { useUiPageSettingsStore } from '../../../page-settings/store';
18
18
  import { PAGE_SECTIONS } from '../../../page-settings/models';
19
- import { commonTr } from '@src/composables/useTranslate';
20
19
  import {
21
20
  getPlainTextFromRTE,
22
21
  replaceTextInRTE,
@@ -26,19 +25,6 @@ import {
26
25
  import { isDefaultContentText } from '@shared/content-settings/utils';
27
26
  import { useUiLogoSettingsStore } from '../../../logo-settings/store';
28
27
 
29
- const RTE_DISALLOWED_STYLE_FIELD_NAMES = [
30
- 'descriptionStyle',
31
- 'titleStyle',
32
- 'textStyle',
33
- 'paragraphStyle',
34
- ];
35
- const AI_ALLOWED_SECTION_TYPES = [
36
- 'banner-section',
37
- 'text',
38
- 'about-section',
39
- 'testimonials-section',
40
- ];
41
- const AI_ALLOWED_FIELD_NAMES = ['description', 'title', 'text', 'paragraph'];
42
28
  const RTE_DISALLOWED_FIELD_NAMES = ['buttonText'];
43
29
 
44
30
  export default defineComponent({
@@ -62,6 +48,7 @@ export default defineComponent({
62
48
  default: undefined,
63
49
  },
64
50
  },
51
+ emits: ['capture-preview-snapshot'],
65
52
  setup() {
66
53
  const contentSettingsStore = useUiContentSettingsStore();
67
54
  const brandPageMakerStore = useBrandPageMakerStore();
@@ -25,20 +25,18 @@ import {
25
25
  type PersonalisationRole,
26
26
  } from '@brand-page';
27
27
  import { buildRelativePathFromParams } from '@brand-page/utils/route.util';
28
- import {
29
- switchAllContentToRTE,
30
- isRTEManagedStyleField,
31
- } from '@brand-page-maker/utils';
28
+ import { isRTEManagedStyleField } from '@brand-page-maker/utils';
32
29
  import { useUiPageSettingsStore } from '@shared/page-settings/store';
33
30
  import { useExternalRichTextEditor } from '@brand-page-maker/composables/rich-text-editor/useRichTextEditor';
34
31
  import { useUiStyleSettingsStore } from '@shared/style-settings/store';
35
32
 
36
33
  export default defineComponent({
34
+ emits: ['capture-preview-snapshot'],
37
35
  setup() {
38
36
  const contentSettingsStore = useUiContentSettingsStore();
39
37
  const brandPageMakerStore = useBrandPageMakerStore();
40
- const pageSettingsStore = useUiPageSettingsStore();
41
- const styleSettingsStore = useUiStyleSettingsStore();
38
+ const _pageSettingsStore = useUiPageSettingsStore();
39
+ const _styleSettingsStore = useUiStyleSettingsStore();
42
40
 
43
41
  const userStore = useBrandPageMakerUserStore();
44
42
  const uiStore = useUiStore();
@@ -25,8 +25,8 @@
25
25
  >
26
26
  <ul>
27
27
  <li
28
- v-for="(field, fieldIndex) in group.fields"
29
- :key="`content-settings-item-group-field-${id}-${group.id}-${fieldIndex}`"
28
+ v-for="field in group.fields"
29
+ :key="`content-settings-item-group-field-${id}-${group.id}-${field.name}`"
30
30
  >
31
31
  <ContentSettingsItemField
32
32
  v-if="
@@ -6,6 +6,7 @@ export default defineComponent({
6
6
  components: {
7
7
  Icon,
8
8
  },
9
+ emits: ['on-select-image'],
9
10
  data() {
10
11
  return {
11
12
  orderedIcons: BRAND_PAGE_ICONS,
@@ -30,7 +30,7 @@ export default defineComponent({
30
30
  default: false,
31
31
  },
32
32
  },
33
- emits: ['items-change', 'items-delete'],
33
+ emits: ['items-change', 'items-delete', 'itemsEdit'],
34
34
  data: () => ({
35
35
  itemStates: {} as Record<number, ItemFieldState>,
36
36
  }),
@@ -133,7 +133,7 @@ const onLogoVersionSelected = async (
133
133
  const logoDraftAsset = logoStore.getLogoDraftAssetByToken(
134
134
  selectedLogoVersion.token,
135
135
  );
136
- const brandPageMakerStore = useBrandPageMakerStore();
136
+ const _brandPageMakerStore = useBrandPageMakerStore();
137
137
  const uiStore = useUiStore();
138
138
  const pageSettingsStore = useUiPageSettingsStore();
139
139
 
@@ -27,7 +27,7 @@ const props = defineProps<Props>();
27
27
 
28
28
  const emit = defineEmits(['update:model-value']);
29
29
 
30
- const data = reactive<Data>({
30
+ const _data = reactive<Data>({
31
31
  suffix: null,
32
32
  });
33
33
 
@@ -71,7 +71,7 @@ const addPageButtonVariant = computed((): string => {
71
71
  return canAddPages.value ? 'outline' : 'primary';
72
72
  });
73
73
 
74
- const selectedPageName = computed((): string => {
74
+ const _selectedPageName = computed((): string => {
75
75
  return selectedPage.value;
76
76
  });
77
77
 
@@ -23,12 +23,12 @@
23
23
  None
24
24
  </DropdownItem>
25
25
  <DropdownItem
26
- v-for="value of data.dropdownValues"
27
- :key="value"
26
+ v-for="dValue of data.dropdownValues"
27
+ :key="dValue"
28
28
  class="tw-text-black tw-break-all tw-capitalize"
29
- @click="onSelectPersonalisationRole(value as PersonalisationRole)"
29
+ @click="onSelectPersonalisationRole(dValue as PersonalisationRole)"
30
30
  >
31
- {{ value }}
31
+ {{ dValue }}
32
32
  </DropdownItem>
33
33
  </Dropdown>
34
34
  </div>
@@ -45,6 +45,15 @@ export default defineComponent({
45
45
  sliderValue: value,
46
46
  };
47
47
  },
48
+ watch: {
49
+ // The value can change outside the slider (e.g. a layout switch
50
+ // re-applying default padding, or undo) — keep the display in sync.
51
+ value(newValue: string | undefined) {
52
+ this.sliderValue = this.valueConvertor
53
+ ? this.valueConvertor.convert(newValue as any)
54
+ : newValue;
55
+ },
56
+ },
48
57
  computed: {
49
58
  innerMinLength(): number {
50
59
  return this.minLength ?? 0;
@@ -278,14 +278,8 @@
278
278
  </div>
279
279
  </template>
280
280
  <script setup lang="ts">
281
- import { ref, computed, watch, onMounted, type PropType } from 'vue';
282
- import {
283
- Button,
284
- TextInput,
285
- Icon,
286
- ButtonGroup,
287
- Toggle,
288
- } from '@designcrowd/fe-shared-lib';
281
+ import { ref, computed, watch, onMounted } from 'vue';
282
+ import { Button, TextInput, Icon, Toggle } from '@designcrowd/fe-shared-lib';
289
283
  import ImageField from '../image-field/ImageField.vue';
290
284
  import ItemsField from '../items-field/ItemsField.vue';
291
285
  import ColorReplacementsField from '../color-replacements-field/ColorReplacementsField.vue';
@@ -19,7 +19,7 @@ import type { UpdateItemValuePayload } from '../../models';
19
19
  import cloneDeep from 'lodash.clonedeep';
20
20
  import { decodeHtmlEntities, escapeContentText } from '@brand-page/utils';
21
21
  import { useSnapshotStore } from '@brand-page-maker/stores';
22
- import { getPlainTextFromRTE, replaceTextInRTE } from '@brand-page-maker/utils';
22
+ import { getPlainTextFromRTE } from '@brand-page-maker/utils';
23
23
  import { isDefaultContentText } from '../../utils';
24
24
 
25
25
  const DEBOUNCE_IN_MS = 250;
@@ -43,8 +43,9 @@ export interface Tab {
43
43
  active: boolean;
44
44
  }
45
45
 
46
- export interface ContentReplaceImageSettings<TContent>
47
- extends ReplaceImageSettingsBase {
46
+ export interface ContentReplaceImageSettings<
47
+ TContent,
48
+ > extends ReplaceImageSettingsBase {
48
49
  setContentMedia: (
49
50
  content: TContent,
50
51
  value: SetContentMediaPayload,
@@ -1,5 +1,4 @@
1
1
  import type { Field, UpdateItemValuePayload } from './models';
2
- import { ESCAPED_NEWLINE_CHARACTER } from '../../constants/ui';
3
2
  import type {
4
3
  ContentSettingsConfig,
5
4
  ContentSettingsMultiField,
@@ -114,6 +114,7 @@ const props = defineProps({
114
114
  type: Function as PropType<() => Promise<DropzoneOptions>>,
115
115
  required: true,
116
116
  },
117
+ // eslint-disable-next-line vue/require-default-prop
117
118
  accept: {
118
119
  type: Function as PropType<
119
120
  (file: DropzoneFile, done: (error?: string | Error) => void) => void
@@ -1,5 +1,5 @@
1
1
  import { setActivePinia, createPinia } from 'pinia';
2
- import { describe, beforeEach, it, expect, vi } from 'vitest';
2
+ import { describe, beforeEach, it, expect } from 'vitest';
3
3
  import { useCartStore } from './cart-settings-store';
4
4
  import { useShopConfigStore } from './shop-settings-store';
5
5
 
@@ -15,6 +15,7 @@ export default defineComponent({
15
15
  required: true,
16
16
  },
17
17
  },
18
+ emits: ['on-select'],
18
19
  data() {
19
20
  return {
20
21
  fontFamilyCategories: Object.values(FONT_FAMILY_CATEGORIES()),
@@ -14,6 +14,7 @@ export default defineComponent({
14
14
  default: undefined,
15
15
  },
16
16
  },
17
+ emits: ['gallery-type-selected'],
17
18
  methods: {
18
19
  onGalleryTypeClick(galleryType: GalleryType) {
19
20
  this.$emit('gallery-type-selected', galleryType);
@@ -190,7 +190,7 @@ export default defineComponent({
190
190
  y1: 0,
191
191
  y2: 1,
192
192
  },
193
- colorStops: newColor.colors.map((c, i) => {
193
+ colorStops: newColor.colors.map((c, _i) => {
194
194
  return {
195
195
  color: c.color,
196
196
  offset: c.pos / 100,
@@ -6,7 +6,6 @@ import {
6
6
  useLogoStore,
7
7
  } from '@brand-page-maker/stores';
8
8
  import { useUiPageSettingsStore } from '@shared/page-settings/store';
9
- import type { ContentItem } from '@shared/content-settings/models';
10
9
  import type { CreateWebsiteByoUploadResult } from '@shared/website-byo-upload/WebsiteByoUploadModels';
11
10
 
12
11
  export interface Tab {
@@ -2,6 +2,7 @@ import { defineComponent } from 'vue';
2
2
  import { useUiLogoSettingsStore } from '../store';
3
3
 
4
4
  export default defineComponent({
5
+ emits: ['on-back'],
5
6
  setup() {
6
7
  const logoSettingsStore = useUiLogoSettingsStore();
7
8
 
@@ -69,14 +69,14 @@ const viewport = computed<ViewportsType>(() => {
69
69
  return brandPageMakerStore.viewport;
70
70
  });
71
71
 
72
- const logoSliderMin = computed(() => {
72
+ const _logoSliderMin = computed(() => {
73
73
  if (viewport.value === VIEWPORTS.mobile) {
74
74
  return LOGO_SLIDER_MOBILE_MIN;
75
75
  }
76
76
  return LOGO_SLIDER_DESKTOP_MIN;
77
77
  });
78
78
 
79
- const logoSliderMax = computed(() => {
79
+ const _logoSliderMax = computed(() => {
80
80
  if (viewport.value === VIEWPORTS.mobile) {
81
81
  return LOGO_SLIDER_MOBILE_MAX;
82
82
  }
@@ -183,7 +183,7 @@ const onNewLogoSelected = async () => {
183
183
  const client = FabricRenderClient.getInstance();
184
184
 
185
185
  // To handle parallel requests
186
- const [_, logoDesignAttributes] = await Promise.all([
186
+ const [__, logoDesignAttributes] = await Promise.all([
187
187
  updateTask(),
188
188
  client.getLogoAttributesByLogoTemplateTokenAsync(
189
189
  data.selectedTemplate.token,
@@ -311,7 +311,7 @@ export const useUiEditableLogoStore = defineStore('uiEditableLogo', {
311
311
 
312
312
  this.logoEdits.textObjects = [];
313
313
 
314
- templateMetadata.objects.forEach((o, i) => {
314
+ templateMetadata.objects.forEach((o, _i) => {
315
315
  const matchingDraftObject = draftMetadata?.objects?.find(
316
316
  (d) => d.id === o.id,
317
317
  );
@@ -2,7 +2,7 @@ import type Vue from 'vue';
2
2
  import { createApp } from 'vue';
3
3
  import { createRouter, createMemoryHistory } from 'vue-router';
4
4
  import { createPinia, setActivePinia } from 'pinia';
5
- import type { LogoContent, NavRoute, TextContent } from '@brand-page';
5
+ import type { LogoContent, TextContent } from '@brand-page';
6
6
  import type { ContentItem } from '../../content-settings/models';
7
7
  import { useBrandPageMakerStore } from '@brand-page-maker/stores';
8
8
  import { INITIALISE_PAYLOAD } from '@brand-page-maker/components/brand-page-maker/__fixtures__';
@@ -15,7 +15,7 @@ import { setLocaleAsync } from '@src/composables/useTranslate';
15
15
 
16
16
  const FABRIC_RENDER_BASE_URL = 'https://localhost:6006';
17
17
 
18
- const LOGO_VERSION_ONE_URL =
18
+ const _LOGO_VERSION_ONE_URL =
19
19
  'https://localhost:6006/asset/logodraft/brand-page/00000000-0000-0000-0000-000000000000?v=637979483674400000&outputFormat=png&dimensionsType=preview_image_transparent_no_buffer';
20
20
 
21
21
  const LOGO_VERSION_TWO_URL =
@@ -53,7 +53,7 @@ const PAGE_TWO = createPage(2);
53
53
  const PAGE_THREE = createPage(3);
54
54
 
55
55
  describe('logo store module', () => {
56
- let app: Vue.App;
56
+ let _app: Vue.App;
57
57
 
58
58
  beforeAll(async () => {
59
59
  FabricRenderClient.setInstance({ baseUrl: FABRIC_RENDER_BASE_URL });
@@ -64,7 +64,7 @@ describe('logo store module', () => {
64
64
 
65
65
  await setLocaleAsync('en-US');
66
66
 
67
- app = createApp({
67
+ _app = createApp({
68
68
  pinia,
69
69
  router: createRouter({ history: createMemoryHistory(), routes: [] }),
70
70
  });
@@ -16,6 +16,7 @@ export default defineComponent({
16
16
  required: true,
17
17
  },
18
18
  },
19
+ emits: ['on-select-logo'],
19
20
  setup() {
20
21
  const uiStore = useUiStore();
21
22
 
@@ -19,6 +19,12 @@ export interface UIRootState {
19
19
  thirdPartySettings: UIRootStateThirdPartySettings;
20
20
  personalisationData: UserPersonalisationContent[] | undefined;
21
21
  isPersonalisationEnabled: boolean;
22
+ // Pre-purchase AI content key used to personalise AI template previews when
23
+ // there is no post-purchase personalisationData (bp-5742).
24
+ userPromptContentKey: string | undefined;
25
+ // Controls visibility of the dedicated AI templates tab. Decoupled from personalisationData
26
+ // so the slug flow can personalise previews/apply without surfacing the AI tab (bp-5742).
27
+ showAiTemplatesTab: boolean;
22
28
  }
23
29
 
24
30
  export interface Endpoints {
@@ -16,6 +16,7 @@ export default defineComponent({
16
16
  TextInput,
17
17
  Loader,
18
18
  },
19
+ emits: ['on-select-image'],
19
20
  setup() {
20
21
  const uiStore = useUiStore();
21
22
  const logoSettingsStore = useUiLogoSettingsStore();
@@ -25,6 +25,7 @@ export default defineComponent({
25
25
  default: null,
26
26
  },
27
27
  },
28
+ emits: ['on-delete-image', 'on-select-image'],
28
29
  setup() {
29
30
  const uiStore = useUiStore();
30
31
 
@@ -29,7 +29,7 @@
29
29
  </template>
30
30
 
31
31
  <script setup lang="ts">
32
- import { ref, onMounted, defineProps, defineEmits } from 'vue';
32
+ import { ref, onMounted } from 'vue';
33
33
  import { Icon, Loader } from '@designcrowd/fe-shared-lib';
34
34
  import type { UserMediaClient } from 'src/clients/user-media-client';
35
35
  import type { UserMediaItemWithDimensions } from './models';
@@ -72,6 +72,7 @@ async function checkStatusAsync(): Promise<boolean> {
72
72
  }
73
73
 
74
74
  if (status === 'done') {
75
+ // eslint-disable-next-line vue/require-explicit-emits
75
76
  emit('on-media-done', data);
76
77
  previewSrc.value = data.thumbnailUrl ?? data.url ?? '';
77
78
  isDone.value = true;
@@ -54,6 +54,7 @@ export default defineComponent({
54
54
  default: undefined,
55
55
  },
56
56
  },
57
+ emits: ['on-delete-image', 'on-select-image'],
57
58
  setup() {
58
59
  const uiStore = useUiStore();
59
60
  const userStore = useBrandPageMakerUserStore();
@@ -27,8 +27,7 @@ export interface MediaBaseSelectedPayload {
27
27
  type: MediaTypes;
28
28
  }
29
29
 
30
- export interface GettyVideoMediaSelectedPayload
31
- extends MediaBaseSelectedPayload {
30
+ export interface GettyVideoMediaSelectedPayload extends MediaBaseSelectedPayload {
32
31
  assetId: string;
33
32
  token: string;
34
33
  mimeType: string;
@@ -38,6 +38,7 @@ export default defineComponent({
38
38
  required: true,
39
39
  },
40
40
  },
41
+ emits: ['option-value-change'],
41
42
  data: () => ({
42
43
  navigationStyleConfigOptionTitles:
43
44
  NAVIGATION_STYLE_CONFIG_OPTION_TITLES() as Record<
@@ -116,7 +116,7 @@ import { Toggle } from '@designcrowd/fe-shared-lib';
116
116
  import NavigationStyleSettingsMixin from './NavigationStyleSettings.mixin.ts';
117
117
  import ColorField from '../../../content-settings/components/color-field/ColorField.vue';
118
118
  import TextStyleField from '../../../content-settings/components/text-style-field/TextStyleField.vue';
119
- import { tr, commonTr } from '@src/composables/useTranslate';
119
+ import { commonTr } from '@src/composables/useTranslate';
120
120
 
121
121
  export default {
122
122
  components: {
@@ -3,9 +3,6 @@ import { getPageTitleError } from '../../utils';
3
3
  import { useUiPageSettingsStore } from '../../store';
4
4
  import { useEventTracker } from '@brand-page-maker/composables/useEventTracker';
5
5
  import { usePageNavigationStore } from '../../../page-navigation/store/page-navigation-store';
6
- import type { NavRoute } from '@brand-page';
7
- import { v4 as uuid } from 'uuid';
8
- import { getPageSlugFromPageTitle } from '@src/lib';
9
6
 
10
7
  export default defineComponent({
11
8
  setup() {
@@ -256,7 +256,7 @@ function canMoveToPosition(
256
256
  sourceParentRouteId: string | null,
257
257
  draggedRouteId: string | undefined,
258
258
  draggedHasSubPages: boolean,
259
- futureIndex: number | undefined,
259
+ _futureIndex: number | undefined,
260
260
  ): boolean {
261
261
  // Rule 1: Pages with sub-pages cannot become sub-pages themselves
262
262
  if (targetParentRouteId && draggedHasSubPages) {
@@ -115,7 +115,6 @@ import SideBarSettingsHeader from '../../../common/SideBarSettingsHeader.vue';
115
115
  import PageSettingsMixin from './PageSettings.mixin.ts';
116
116
  import SideBarSectionTitle from '../../../common/SideBarSectionTitle.vue';
117
117
  import DeletePageModal from '../delete-page-modal/DeletePageModal.vue';
118
- import PageElement from './PageElement.vue';
119
118
  import PageSettingsSectionStyles from '../page-settings-section-styles/PageSettingsSectionStyles.vue';
120
119
  import NestedDraggable from './NestedDraggable.vue';
121
120
  import { useBrandPageContainerStore } from '@brand-page-maker/stores';
@@ -133,7 +132,7 @@ export default {
133
132
  PageSettingsSectionStyles,
134
133
  },
135
134
  mixins: [PageSettingsMixin],
136
- setup(props, context) {
135
+ setup(_props, _context) {
137
136
  const brandPageContainerStore = useBrandPageContainerStore();
138
137
 
139
138
  return {
@@ -72,7 +72,7 @@ const options = computed(() => {
72
72
  }
73
73
  }
74
74
 
75
- const filteredOptions = filteredConfigs.reduce((arr, config, index) => {
75
+ const filteredOptions = filteredConfigs.reduce((arr, config, _index) => {
76
76
  config.option.isSelected = props.displayStyle === config.option.value;
77
77
 
78
78
  arr.push(config.option);
@@ -575,7 +575,7 @@ export default defineComponent({
575
575
 
576
576
  async onLogoVersionSelected(selectedLogoVersion: DisplayLogoDraftAsset) {
577
577
  const uiStore = useUiStore();
578
- const brandPageMakerStore = useBrandPageMakerStore();
578
+ const _brandPageMakerStore = useBrandPageMakerStore();
579
579
 
580
580
  this.logoDraftToken = selectedLogoVersion.token;
581
581