@designcrowd/library.brand-page 6.0.3 → 6.0.4

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 (383) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-BctSP4tp.js → CreatedOnBrandCrowd-de-de-Ruu5Az32.js} +3 -3
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-BeNytcxt.js → CreatedOnBrandCrowd-en-us-DGUJtvld.js} +3 -3
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-hY12f5TN.js → CreatedOnBrandCrowd-es-es-Dg-1uOfV.js} +3 -3
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-C4SCU39P.js → CreatedOnBrandCrowd-fr-ca-CRKraZl8.js} +3 -3
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-C4SCU39P.js → CreatedOnBrandCrowd-fr-fr-CRKraZl8.js} +3 -3
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-C5J5kWiD.js → CreatedOnBrandCrowd-pt-br-bZ9VlEAu.js} +3 -3
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-C5J5kWiD.js → CreatedOnBrandCrowd-pt-pt-bZ9VlEAu.js} +3 -3
  8. package/lib/src/{CreatedOnDcom-de-de-DXCeZZLg.js → CreatedOnDcom-de-de-CJYfwZx8.js} +3 -3
  9. package/lib/src/{CreatedOnDcom-en-us-GeBTaofv.js → CreatedOnDcom-en-us-rzA1lVxH.js} +3 -3
  10. package/lib/src/{CreatedOnDcom-es-es-BiPmv1q-.js → CreatedOnDcom-es-es-CNwGPjik.js} +3 -3
  11. package/lib/src/{CreatedOnDcom-fr-ca-Cns_iX4-.js → CreatedOnDcom-fr-ca-DKw7OGIz.js} +3 -3
  12. package/lib/src/{CreatedOnDcom-fr-fr-CC-f_hUR.js → CreatedOnDcom-fr-fr-WzOEaAZG.js} +3 -3
  13. package/lib/src/{CreatedOnDcom-pt-br-DnhSuPKo.js → CreatedOnDcom-pt-br-DkualVhm.js} +3 -3
  14. package/lib/src/{CreatedOnDcom-pt-pt-BCgbUsqY.js → CreatedOnDcom-pt-pt-w4Nnsdzq.js} +3 -3
  15. package/lib/src/brand-page/clients/brand-page.client.d.ts +9 -9
  16. package/lib/src/brand-page/components/image-gallery/masonry/MasonryGallery.mixin.d.ts +2 -1
  17. package/lib/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.d.ts +2 -4
  18. package/lib/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.js +0 -1
  19. package/lib/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.d.ts +2 -4
  20. package/lib/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.js +4 -5
  21. package/lib/src/brand-page/components/page/Page.mixin.d.ts +1 -1
  22. package/lib/src/brand-page/components/page/PageComponent.mixin.d.ts +1 -1
  23. package/lib/src/brand-page/components/payment/Payment.mixin.d.ts +3 -3
  24. package/lib/src/brand-page/components/payment/__fixtures__/request-payment.d.ts +13 -13
  25. package/lib/src/brand-page/components/payment/__fixtures__/support-me.d.ts +13 -13
  26. package/lib/src/brand-page/constants/sections/footer-display.constants.js +1 -1
  27. package/lib/src/brand-page/models/index.d.ts +13 -2
  28. package/lib/src/brand-page/models/index.js +0 -3
  29. package/lib/src/brand-page/models/payment.model.d.ts +1 -1
  30. package/lib/src/brand-page/utils/personalisation.util.js +14 -72
  31. package/lib/src/brand-page-maker/components/action-bar/ActionBar.mixin.d.ts +19 -21
  32. package/lib/src/brand-page-maker/components/action-bar/ActionBar.mixin.js +0 -1
  33. package/lib/src/brand-page-maker/components/admin-background-settings/AdminBackgroundSettings.mixin.d.ts +10 -16
  34. package/lib/src/brand-page-maker/components/admin-background-settings/ShapePositionSlider.mixin.d.ts +1 -1
  35. package/lib/src/brand-page-maker/components/admin-logo-settings/AdminLogoSettings.mixin.d.ts +3 -3
  36. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +170 -181
  37. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.js +0 -3
  38. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.js +0 -1
  39. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.mixin.d.ts +12 -12
  40. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.stories.js +2 -2
  41. package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-payment.js +7 -0
  42. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +149 -148
  43. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.d.ts +21 -21
  44. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.js +1 -1
  45. package/lib/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.d.ts +2 -4
  46. package/lib/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.js +0 -1
  47. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.d.ts +2 -4
  48. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.js +0 -1
  49. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.d.ts +2 -5
  50. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.js +0 -1
  51. package/lib/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.d.ts +2 -4
  52. package/lib/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.js +0 -1
  53. package/lib/src/brand-page-maker/components/device/Device.mixin.d.ts +2 -4
  54. package/lib/src/brand-page-maker/components/device/Device.mixin.js +0 -1
  55. package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.d.ts +2 -4
  56. package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.js +0 -1
  57. package/lib/src/brand-page-maker/components/preview/Preview.mixin.d.ts +3 -3
  58. package/lib/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.d.ts +11 -11
  59. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.d.ts +25 -27
  60. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.js +0 -1
  61. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.d.ts +27 -27
  62. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.js +1 -1
  63. package/lib/src/brand-page-maker/components/seo-settings/UseExistingDomainModal.mixin.d.ts +12 -17
  64. package/lib/src/brand-page-maker/components/social-share/SocialShare.mixin.d.ts +12 -12
  65. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.d.ts +32 -30
  66. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.js +5 -16
  67. package/lib/src/brand-page-maker/components/upgrade-to-premium-button/UpgradeToPremiumButton.mixin.d.ts +11 -11
  68. package/lib/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.js +6 -3
  69. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.d.ts +1 -1
  70. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +6 -6
  71. package/lib/src/brand-page-maker/composables/useEventTracker.d.ts +2 -2
  72. package/lib/src/brand-page-maker/constants/config-settings-constant.d.ts +6 -6
  73. package/lib/src/brand-page-maker/constants/config-settings-constant.js +3 -3
  74. package/lib/src/brand-page-maker/convertors/text-image-display-style.convertor.d.ts +1 -1
  75. package/lib/src/brand-page-maker/convertors/text-image-display-style.convertor.js +1 -1
  76. package/lib/src/brand-page-maker/models/content-settings.d.ts +1 -1
  77. package/lib/src/brand-page-maker/models/navigation-style-configs.js +1 -1
  78. package/lib/src/brand-page-maker/routing/brand-page-maker-router.d.ts +2 -1
  79. package/lib/src/brand-page-maker/stores/ai-checkpoint/ai-checkpoint-store.d.ts +378 -366
  80. package/lib/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.d.ts +4 -5
  81. package/lib/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.js +5 -8
  82. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.d.ts +1 -3
  83. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +3 -7
  84. package/lib/src/brand-page-maker/stores/history/history-store.d.ts +15 -15
  85. package/lib/src/brand-page-maker/stores/ui/ui-store.d.ts +0 -6
  86. package/lib/src/brand-page-maker/stores/ui/ui-store.js +0 -8
  87. package/lib/src/brand-page-maker/utils/content-settings.util.js +1 -1
  88. package/lib/src/brand-page-maker/utils/rich-text-editor.util.d.ts +1 -1
  89. package/lib/src/brand-page-maker/utils/rich-text-editor.util.js +4 -4
  90. package/lib/src/clients/ai-assistant-client.d.ts +0 -7
  91. package/lib/src/clients/brand-page-client.d.ts +15 -16
  92. package/lib/src/clients/design-template-client.d.ts +0 -3
  93. package/lib/src/clients/media-client.d.ts +2 -2
  94. package/lib/src/clients/models.d.ts +0 -2
  95. package/lib/src/composables/useSnapshot.js +18 -18
  96. package/lib/src/css/library.brand-page-brandCrowd.min.css +324 -342
  97. package/lib/src/css/library.brand-page-brandPage.min.css +324 -620
  98. package/lib/src/css/library.brand-page-designCom.min.css +324 -342
  99. package/lib/src/css/library.brand-page-preview.min.css +324 -598
  100. package/lib/src/index.d.ts +1 -5
  101. package/lib/src/index.mjs +106 -110
  102. package/lib/src/{lib-Cw6L6CfQ.js → lib-Dy7MYyqz.js} +33240 -36457
  103. package/lib/src/lib.js +1 -11
  104. package/lib/src/metadata-builder/builders/footer-builder.js +62 -105
  105. package/lib/src/metadata-builder/builders/item-id-utils.d.ts +54 -0
  106. package/lib/src/metadata-builder/builders/item-id-utils.js +96 -0
  107. package/lib/src/metadata-builder/builders/section-builders/image-gallery-builder.js +57 -68
  108. package/lib/src/metadata-builder/builders/section-builders/images-section-builder.js +58 -93
  109. package/lib/src/metadata-builder/builders/section-builders/shapes-section-builder.js +66 -99
  110. package/lib/src/metadata-builder/builders/section-builders/social-links-builder.js +57 -17
  111. package/lib/src/metadata-builder/builders/section-builders/testimonial-section-builder.js +51 -85
  112. package/lib/src/metadata-builder/builders/section-builders/text-section-builder.js +49 -74
  113. package/lib/src/metadata-builder/builders/section-field-utils.d.ts +0 -7
  114. package/lib/src/metadata-builder/builders/section-field-utils.js +1 -1
  115. package/lib/src/metadata-builder/builders/shape-color-utils.js +1 -1
  116. package/lib/src/metadata-builder/parsers/ai-toolcall-parser.d.ts +16 -7
  117. package/lib/src/metadata-builder/parsers/section-tool-arguments.d.ts +66 -48
  118. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.d.ts +1 -1
  119. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.js +8 -8
  120. package/lib/src/shared/background-settings/components/background-shapes/BackgroundShapeSettings.mixin.d.ts +13 -13
  121. package/lib/src/shared/background-settings/store/background-settings-store.d.ts +3 -3
  122. package/lib/src/shared/color-picker/components/ColorPicker.mixin.d.ts +2 -4
  123. package/lib/src/shared/color-picker/components/ColorPicker.mixin.js +2 -2
  124. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.d.ts +2 -4
  125. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.js +0 -1
  126. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.d.ts +2 -5
  127. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.js +0 -1
  128. package/lib/src/shared/content-settings/components/GenericTextInput.mixin.d.ts +1 -0
  129. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +129 -131
  130. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.js +1 -2
  131. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +110 -111
  132. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +81 -84
  133. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.js +0 -5
  134. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +109 -117
  135. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.js +14 -1
  136. package/lib/src/shared/content-settings/components/email-field/EmailField.mixin.d.ts +1 -0
  137. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +70 -72
  138. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.js +3 -4
  139. package/lib/src/shared/content-settings/components/form-fields-field/FormFieldsField.mixin.d.ts +4 -4
  140. package/lib/src/shared/content-settings/components/icon-library/IconLibrary.mixin.d.ts +1 -3
  141. package/lib/src/shared/content-settings/components/icon-library/IconLibrary.mixin.js +0 -1
  142. package/lib/src/shared/content-settings/components/images-field/ImagesField.mixin.d.ts +2 -2
  143. package/lib/src/shared/content-settings/components/items-field/ItemsField.mixin.d.ts +3 -4
  144. package/lib/src/shared/content-settings/components/items-field/ItemsField.mixin.js +1 -1
  145. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.d.ts +40 -40
  146. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigOptionField.mixin.d.ts +6 -5
  147. package/lib/src/shared/content-settings/components/shape-field/ShapeField.mixin.d.ts +1 -0
  148. package/lib/src/shared/content-settings/components/slider-field/SliderField.mixin.d.ts +2 -2
  149. package/lib/src/shared/content-settings/components/tel-field/TelField.mixin.d.ts +1 -0
  150. package/lib/src/shared/content-settings/components/testimonial-items-field/TestimonialItemsField.mixin.d.ts +2 -1
  151. package/lib/src/shared/content-settings/components/text-field/TextField.mixin.d.ts +1 -0
  152. package/lib/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.d.ts +2 -1
  153. package/lib/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.js +1 -1
  154. package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.d.ts +28 -28
  155. package/lib/src/shared/content-settings/components/textarea-field/TextareaField.mixin.d.ts +1 -0
  156. package/lib/src/shared/content-settings/components/toggle-field/ToggleField.mixin.d.ts +2 -2
  157. package/lib/src/shared/content-settings/components/url-field/UrlField.mixin.d.ts +1 -0
  158. package/lib/src/shared/content-settings/components/youtube-video-field/YoutubeVideoField.mixin.d.ts +1 -0
  159. package/lib/src/shared/content-settings/store/content-settings-store.d.ts +39 -39
  160. package/lib/src/shared/content-settings/utils.js +1 -0
  161. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.d.ts +4 -6
  162. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.js +0 -1
  163. package/lib/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.d.ts +2 -4
  164. package/lib/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.js +0 -1
  165. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.d.ts +21 -29
  166. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.js +1 -1
  167. package/lib/src/shared/logo-settings/components/LogoSettings.mixin.d.ts +51 -50
  168. package/lib/src/shared/logo-settings/components/LogoSettingsHeader.mixin.d.ts +4 -6
  169. package/lib/src/shared/logo-settings/components/LogoSettingsHeader.mixin.js +0 -1
  170. package/lib/src/shared/logo-settings/store/editable-logo-store.js +1 -1
  171. package/lib/src/shared/logo-settings/store/logo-settings-store.d.ts +1 -1
  172. package/lib/src/shared/logo-versions/LogoVersions.mixin.d.ts +5 -13
  173. package/lib/src/shared/logo-versions/LogoVersions.mixin.js +0 -1
  174. package/lib/src/shared/models.d.ts +0 -2
  175. package/lib/src/shared/my-designs/MyDesigns.mixin.d.ts +6 -14
  176. package/lib/src/shared/my-designs/MyDesigns.mixin.js +0 -1
  177. package/lib/src/shared/my-uploads/MyMedia.mixin.d.ts +5 -14
  178. package/lib/src/shared/my-uploads/MyMedia.mixin.js +0 -1
  179. package/lib/src/shared/my-uploads/MyUploads.mixin.d.ts +5 -14
  180. package/lib/src/shared/my-uploads/MyUploads.mixin.js +0 -1
  181. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.d.ts +3 -5
  182. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.js +0 -1
  183. package/lib/src/shared/navigation-style-settings/store/index.d.ts +2 -2
  184. package/lib/src/shared/page-navigation/store/page-navigation-store.d.ts +2 -2
  185. package/lib/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.d.ts +28 -27
  186. package/lib/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.js +2 -0
  187. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +179 -188
  188. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +177 -181
  189. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.js +1 -1
  190. package/lib/src/shared/page-settings/store/page-settings-store.d.ts +9 -9
  191. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.d.ts +39 -39
  192. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.js +1 -0
  193. package/lib/src/shared/side-bar/components/SideBar.mixin.d.ts +18 -18
  194. package/lib/src/shared/side-bar/components/SideBarTabButton.mixin.d.ts +6 -6
  195. package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +60 -66
  196. package/lib/src/shared/style-settings/store/style-settings-store.d.ts +1 -1
  197. package/lib/src/shared/style-settings/store/style-settings-store.js +1 -1
  198. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.d.ts +450 -20
  199. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.js +2 -2
  200. package/lib/src/shared/template-settings/models.d.ts +0 -1
  201. package/lib/src/shared/template-settings/store/template-settings-store.d.ts +0 -4
  202. package/lib/src/shared/template-settings/store/template-settings-store.js +11 -79
  203. package/lib/src/shared/unsplash-library/UnsplashLibrary.mixin.d.ts +4 -9
  204. package/lib/src/utils/build-asset-manifest.d.ts +0 -4
  205. package/lib/src/utils/build-asset-manifest.js +0 -8
  206. package/lib/src/utils/minify-brand-page-metadata.d.ts +2 -0
  207. package/lib/src/utils/minify-brand-page-metadata.js +17 -2
  208. package/package.json +56 -60
  209. package/src/brand-page/components/about-section/AboutSection.vue.test.ts +5 -7
  210. package/src/brand-page/components/brand-page-footer/BrandPageFooter.vue +1 -1
  211. package/src/brand-page/components/image/Image.mixin.ts +1 -1
  212. package/src/brand-page/components/image/Image.test.ts +1 -1
  213. package/src/brand-page/components/image-gallery/masonry/MasonryGallery.mixin.ts +2 -1
  214. package/src/brand-page/components/images-section/ImagesSection.vue +1 -0
  215. package/src/brand-page/components/logo/LogoRender.vue +188 -188
  216. package/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.ts +0 -1
  217. package/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.ts +6 -15
  218. package/src/brand-page/components/page-footer/PageFooter.vue +0 -1
  219. package/src/brand-page/components/page-header/HeaderLayout.vue +6 -12
  220. package/src/brand-page/components/page-header/PageHeader.vue +0 -1
  221. package/src/brand-page/components/shapes-section/ShapesSection.vue +1 -1
  222. package/src/brand-page/components/shop/CartModal.vue +3 -1
  223. package/src/brand-page/components/shop/FeaturedDisplay.vue +2 -2
  224. package/src/brand-page/components/shop/PaymentModal.vue +5 -1
  225. package/src/brand-page/components/shop/ProductDetailModal.vue +1 -1
  226. package/src/brand-page/components/shop/Shop.vue +1 -1
  227. package/src/brand-page/components/shop/TextDisplay.vue +1 -1
  228. package/src/brand-page/components/shop/ThumbnailDisplay.vue +2 -2
  229. package/src/brand-page/components/testimonial-section/TestimonialSection.vue +3 -3
  230. package/src/brand-page/components/text-wrapper/TextWrapper.vue +1 -3
  231. package/src/brand-page/constants/sections/footer-display.constants.ts +1 -1
  232. package/src/brand-page/models/index.ts +12 -4
  233. package/src/brand-page/models/payment.model.ts +1 -2
  234. package/src/brand-page/models/shop.model.ts +2 -0
  235. package/src/brand-page/models/user-personalisation.model.ts +2 -1
  236. package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +0 -3
  237. package/src/brand-page/utils/__snapshots__/migration2.util.test.ts.snap +0 -1
  238. package/src/brand-page/utils/__snapshots__/model.util.test.ts.snap +0 -2
  239. package/src/brand-page/utils/migration/migration-01_1.ts +1 -1
  240. package/src/brand-page/utils/migration/migration-02.ts +1 -0
  241. package/src/brand-page/utils/migration/migration-03.ts +1 -0
  242. package/src/brand-page/utils/migration/migration-04.ts +1 -0
  243. package/src/brand-page/utils/migration/migration-05.ts +5 -1
  244. package/src/brand-page/utils/migration/migration-05_2.ts +1 -1
  245. package/src/brand-page/utils/migration/migration-08.test.ts +1 -1
  246. package/src/brand-page/utils/personalisation.util.test.ts +0 -35
  247. package/src/brand-page/utils/personalisation.util.ts +23 -119
  248. package/src/brand-page/view-models.ts +56 -38
  249. package/src/brand-page-maker/assessors/banner-section-description-visibility.assessor.ts +6 -6
  250. package/src/brand-page-maker/assessors/color-replacement-icon-visibility.assessor.ts +2 -2
  251. package/src/brand-page-maker/assessors/color-replacement-profile-visibility.assessor.ts +2 -2
  252. package/src/brand-page-maker/assessors/color-replacement-visibility.assessor.ts +2 -2
  253. package/src/brand-page-maker/assessors/contact-form-visibility.assessor.ts +14 -14
  254. package/src/brand-page-maker/components/action-bar/ActionBar.mixin.ts +0 -1
  255. package/src/brand-page-maker/components/ai-text-edit/TextBubble.vue +0 -1
  256. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.ts +1 -5
  257. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.ts +0 -1
  258. package/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.stories.ts +5 -2
  259. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.ts +5 -0
  260. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-payment.ts +8 -0
  261. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-site-template.examples.ts +2 -0
  262. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.vue +0 -1
  263. package/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.ts +1 -1
  264. package/src/brand-page-maker/components/color-palette/BpColorPalette.vue +2 -1
  265. package/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.ts +0 -1
  266. package/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.ts +0 -1
  267. package/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.ts +0 -1
  268. package/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.ts +0 -1
  269. package/src/brand-page-maker/components/device/Device.mixin.ts +0 -1
  270. package/src/brand-page-maker/components/navigation/Navigation.mixin.ts +0 -1
  271. package/src/brand-page-maker/components/rich-text-editor/RichTextEditor.vue +1 -3
  272. package/src/brand-page-maker/components/sensitive-content/SensitiveContent.vue +4 -1
  273. package/src/brand-page-maker/components/seo-settings/DeleteDomainModal.vue +1 -1
  274. package/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.ts +0 -1
  275. package/src/brand-page-maker/components/seo-settings/SeoPageSettings.vue +1 -1
  276. package/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.ts +1 -0
  277. package/src/brand-page-maker/components/seo-settings/UrlSettings.vue +1 -0
  278. package/src/brand-page-maker/components/seo-settings/UseExistingDomainModal.vue +5 -1
  279. package/src/brand-page-maker/components/shop/AddOrEditProductContainer.vue +1 -1
  280. package/src/brand-page-maker/components/shop/ReplaceImageSettingsForShop.vue +1 -1
  281. package/src/brand-page-maker/components/social-share/SocialShare.vue +1 -1
  282. package/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.ts +8 -22
  283. package/src/brand-page-maker/components/template-preview/TemplatePreview.vue +10 -5
  284. package/src/brand-page-maker/components/video-play/VideoPlayButton.vue +1 -1
  285. package/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.ts +7 -3
  286. package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +6 -6
  287. package/src/brand-page-maker/constants/config-settings-constant.ts +5 -5
  288. package/src/brand-page-maker/convertors/text-image-display-style.convertor.ts +1 -1
  289. package/src/brand-page-maker/models/button-styles-config.ts +2 -4
  290. package/src/brand-page-maker/models/content-settings-configs.ts +2 -4
  291. package/src/brand-page-maker/models/navigation-style-configs.ts +6 -5
  292. package/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store.ts +1 -0
  293. package/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.ts +5 -8
  294. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.test.ts +3 -1
  295. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +4 -12
  296. package/src/brand-page-maker/stores/ui/ui-store.ts +0 -16
  297. package/src/brand-page-maker/utils/content-settings.util.ts +1 -1
  298. package/src/brand-page-maker/utils/rich-text-editor.util.ts +4 -4
  299. package/src/clients/ai-assistant-client.ts +0 -7
  300. package/src/clients/design-template-client.ts +0 -3
  301. package/src/clients/models.ts +0 -2
  302. package/src/composables/useSnapshot.ts +22 -19
  303. package/src/lib.ts +0 -13
  304. package/src/metadata-builder/builders/footer-builder.test.ts +229 -130
  305. package/src/metadata-builder/builders/footer-builder.ts +90 -155
  306. package/src/metadata-builder/builders/item-id-utils.test.ts +184 -0
  307. package/src/metadata-builder/builders/item-id-utils.ts +117 -0
  308. package/src/metadata-builder/builders/section-builders/image-gallery-builder.ts +62 -88
  309. package/src/metadata-builder/builders/section-builders/images-section-builder.ts +66 -129
  310. package/src/metadata-builder/builders/section-builders/shapes-section-builder.ts +105 -160
  311. package/src/metadata-builder/builders/section-builders/social-links-builder.ts +65 -20
  312. package/src/metadata-builder/builders/section-builders/testimonial-section-builder.ts +83 -146
  313. package/src/metadata-builder/builders/section-builders/text-section-builder.ts +70 -122
  314. package/src/metadata-builder/builders/section-field-utils.ts +1 -1
  315. package/src/metadata-builder/builders/shape-color-utils.ts +2 -2
  316. package/src/metadata-builder/parsers/ai-toolcall-parser.ts +16 -7
  317. package/src/metadata-builder/parsers/section-tool-arguments.ts +66 -48
  318. package/src/plugins/google-maps-plugin/google-maps-plugin.ts +8 -8
  319. package/src/shared/background-settings/components/BackgroundSettings.vue +1 -1
  320. package/src/shared/background-settings/components/background-color/BackgroundColorSettings.vue +1 -1
  321. package/src/shared/color-picker/components/ColorPicker.mixin.ts +7 -2
  322. package/src/shared/color-picker/components/ColorPickerSwatch.mixin.ts +0 -1
  323. package/src/shared/common/NumberInput.vue +0 -1
  324. package/src/shared/common/SideBarSettingsHeader.vue +2 -2
  325. package/src/shared/confirm-modal/ConfirmModal.mixin.ts +0 -1
  326. package/src/shared/content-settings/components/booking-url-field/BookingUrlField.vue +0 -1
  327. package/src/shared/content-settings/components/button-configuration-field/ButtonConfigurationField.vue +0 -1
  328. package/src/shared/content-settings/components/color-field/ColorField.vue +10 -3
  329. package/src/shared/content-settings/components/content-settings/ContentSettings.mixin.ts +1 -1
  330. package/src/shared/content-settings/components/content-settings/ContentSettingsLockedButton.vue +0 -1
  331. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.ts +0 -5
  332. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.ts +14 -1
  333. package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.ts +6 -4
  334. package/src/shared/content-settings/components/icon-library/IconLibrary.mixin.ts +0 -1
  335. package/src/shared/content-settings/components/items-field/ItemsField.mixin.ts +1 -1
  336. package/src/shared/content-settings/components/logo-selection-field/LogoSelectionField.vue +1 -1
  337. package/src/shared/content-settings/components/logo-size-field/LogoSizeSliderField.vue +1 -1
  338. package/src/shared/content-settings/components/page-dropdown-field/PageDropdownField.vue +1 -1
  339. package/src/shared/content-settings/components/personalisation-role-field/PersonalisationRoleField.vue +4 -4
  340. package/src/shared/content-settings/components/text-image-field/TextImageField.vue +8 -2
  341. package/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.ts +1 -1
  342. package/src/shared/content-settings/models.ts +2 -3
  343. package/src/shared/content-settings/utils.ts +1 -0
  344. package/src/shared/dropzone-image-uploader/components/DropzoneImageUploader.vue +0 -1
  345. package/src/shared/ecommerce-settings/store/cart-store.test.ts +1 -1
  346. package/src/shared/font-family-selector/FontFamilySelector.mixin.ts +0 -1
  347. package/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.ts +0 -1
  348. package/src/shared/logo-settings/components/EditLogoSettings.mixin.ts +1 -1
  349. package/src/shared/logo-settings/components/LogoSettings.mixin.ts +1 -0
  350. package/src/shared/logo-settings/components/LogoSettingsHeader.mixin.ts +0 -1
  351. package/src/shared/logo-settings/components/LogoStyleSettingsWithState.vue +2 -2
  352. package/src/shared/logo-settings/components/LogoTemplateSearch.vue +1 -1
  353. package/src/shared/logo-settings/store/editable-logo-store.ts +1 -1
  354. package/src/shared/logo-settings/store/logo-settings-store.test.ts +4 -4
  355. package/src/shared/logo-versions/LogoVersions.mixin.ts +0 -1
  356. package/src/shared/models.ts +0 -6
  357. package/src/shared/my-designs/MyDesigns.mixin.ts +0 -1
  358. package/src/shared/my-uploads/MyMedia.mixin.ts +0 -1
  359. package/src/shared/my-uploads/MyMediaSelectionItem.vue +1 -2
  360. package/src/shared/my-uploads/MyUploads.mixin.ts +0 -1
  361. package/src/shared/my-uploads/models.ts +2 -1
  362. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.ts +0 -1
  363. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.vue +1 -1
  364. package/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.ts +3 -0
  365. package/src/shared/page-settings/components/page-settings/NestedDraggable.vue +1 -1
  366. package/src/shared/page-settings/components/page-settings/PageSettings.vue +2 -1
  367. package/src/shared/page-settings/components/page-settings-section-styles/HeaderDisplayStyle.vue +1 -1
  368. package/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.ts +1 -1
  369. package/src/shared/page-settings/store/page-settings-store.test.ts +8 -4
  370. package/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.ts +1 -0
  371. package/src/shared/shape-library/ShapeLibrary.vue +2 -2
  372. package/src/shared/style-settings/store/style-settings-store.ts +1 -1
  373. package/src/shared/template-settings/components/TemplatesSettings.mixin.ts +2 -2
  374. package/src/shared/template-settings/models.ts +0 -1
  375. package/src/shared/template-settings/store/template-settings-store.ts +18 -105
  376. package/src/shared/unsplash-library/UnsplashLibrary.vue +6 -2
  377. package/src/shared/video-library/VideoLibrary.vue +1 -1
  378. package/src/utils/build-asset-manifest.ts +0 -12
  379. package/src/utils/minify-brand-page-metadata.ts +27 -7
  380. package/lib/src/brand-page/components/banner-section/BannerSection.mixin.d.ts +0 -103
  381. package/lib/src/brand-page/components/banner-section/BannerSection.mixin.js +0 -178
  382. package/src/brand-page/components/banner-section/BannerSection.mixin.ts +0 -210
  383. package/src/brand-page-maker/components/template-preview/TemplatePreviewAiBadge.vue +0 -12
@@ -14,7 +14,7 @@ import type {
14
14
  import type { PageSection } from '@shared/page-settings/models';
15
15
  import { PAGE_SECTIONS } from '@shared/page-settings/models';
16
16
  import type { ButtonGroupOption } from './button-group.model';
17
- import { commonTr, modelsTr } from '@src/composables/useTranslate';
17
+ import { tr, commonTr, modelsTr } from '@src/composables/useTranslate';
18
18
 
19
19
  export const NavigationStyleConfigOptions = {
20
20
  defaultBorderColor: 'defaultBorderColor',
@@ -46,10 +46,11 @@ export const NAVIGATION_STYLE_CONFIG_OPTION_TITLES = (): Record<
46
46
  subNavBackgroundColor: modelsTr('subNavBackgroundColor'),
47
47
  });
48
48
 
49
- export interface NavigationStyleConfig extends Omit<
50
- NavigationDesktop | NavigationMobile,
51
- 'isLogoVisible' | 'hamburgerMenuStyle' | 'viewport'
52
- > {
49
+ export interface NavigationStyleConfig
50
+ extends Omit<
51
+ NavigationDesktop | NavigationMobile,
52
+ 'isLogoVisible' | 'hamburgerMenuStyle' | 'viewport'
53
+ > {
53
54
  buttonGroupOption: ButtonGroupOption;
54
55
  options: NavigationStyleConfigOption[];
55
56
  }
@@ -2,6 +2,7 @@ import {
2
2
  EMPTY_LOGO_IMAGE_MODEL,
3
3
  type FabricLogoTheme,
4
4
  type LogoContent,
5
+ type LogoImageModel,
5
6
  type LogoTemplateImageModel,
6
7
  type LogoTheme,
7
8
  } from '@brand-page';
@@ -21,6 +21,7 @@ import {
21
21
  BRAND_PAGE_TYPES,
22
22
  SENSITIVE_CONTENT_TYPES,
23
23
  getAbTestResults,
24
+ getValueType,
24
25
  type AbTest,
25
26
  type LogoContent,
26
27
  } from '@brand-page';
@@ -33,6 +34,7 @@ import {
33
34
  TRIGGER_TYPE,
34
35
  UPGRADE_CTA_LOCATIONS,
35
36
  useEventTracker,
37
+ EVENTS,
36
38
  } from '@brand-page-maker/composables/useEventTracker';
37
39
  import { navigationTr } from '@src/composables/useTranslate';
38
40
  import type { WebsiteSlugCheckResponse } from '@brand-page-maker/models/api.model';
@@ -121,7 +123,6 @@ export type InitialisePayload = Omit<
121
123
  logoDraftAssets: LogoDraftAsset[];
122
124
  gettyVideos: GettyVideoEditorViewModelResponse[];
123
125
  templateSearchTerm: string | undefined;
124
- aiTemplateKeywords: string | undefined;
125
126
  onSearchTermChanged?: OnSearchTermChangedCallback;
126
127
  };
127
128
 
@@ -265,10 +266,6 @@ export const useBrandPageContainerStore = defineStore('brandPageContainer', {
265
266
  onSearchTermChanged: payload.onSearchTermChanged,
266
267
  });
267
268
 
268
- templateSettingsStore.setAiTemplateKeywords({
269
- aiTemplateKeywords: payload.aiTemplateKeywords ?? '',
270
- });
271
-
272
269
  brandPageMakerStore.setSelectedTemplateId({
273
270
  templateId: this.designTemplateToken,
274
271
  });
@@ -449,7 +446,7 @@ export const useBrandPageContainerStore = defineStore('brandPageContainer', {
449
446
 
450
447
  async publishBrandPage({ shouldPublish, slug }) {
451
448
  const brandPageMakerStore = useBrandPageMakerStore();
452
- const _eventTracker = useEventTracker();
449
+ const eventTracker = useEventTracker();
453
450
 
454
451
  if (!this.designDraftToken) {
455
452
  throw new Error(
@@ -556,7 +553,7 @@ export const useBrandPageContainerStore = defineStore('brandPageContainer', {
556
553
  isPurchasedDomain,
557
554
  }) {
558
555
  const brandPageMakerStore = useBrandPageMakerStore();
559
- const _eventTracker = useEventTracker();
556
+ const eventTracker = useEventTracker();
560
557
 
561
558
  if (!this.designDraftToken) {
562
559
  throw new Error(
@@ -890,7 +887,7 @@ export const useBrandPageContainerStore = defineStore('brandPageContainer', {
890
887
  ) {
891
888
  const userStore = useBrandPageMakerUserStore();
892
889
  const brandPageMakerStore = useBrandPageMakerStore();
893
- const _eventTracker = useEventTracker();
890
+ const eventTracker = useEventTracker();
894
891
 
895
892
  if (userStore.isAdmin) {
896
893
  throw new Error('save brand page is not allowed in admin mode');
@@ -2,6 +2,7 @@ import { vi } from 'vitest';
2
2
  import {
3
3
  BRAND_PAGE,
4
4
  INITIALISE_PAYLOAD,
5
+ USER_FEATURES,
5
6
  userFeatures,
6
7
  } from '../../components/brand-page-maker/__fixtures__';
7
8
  import {
@@ -43,7 +44,6 @@ import { useUiBackgroundSettingsStore } from '@shared/background-settings/store'
43
44
  import { useBrandPageMakerUserStore } from '../user';
44
45
  import { useBrandPageContainerStore } from '../brandpage-container';
45
46
  import { useUiTemplateSettingsStore } from '@shared/template-settings/store';
46
- import { usePageNavigationStore } from '@shared/page-navigation/store/page-navigation-store';
47
47
  import {
48
48
  CONTENT_SETTINGS_MODES,
49
49
  useUiContentSettingsStore,
@@ -54,6 +54,8 @@ import { SIDE_BAR_TAB_NAMES } from '@brand-page-maker/constants';
54
54
  import { PAGE_SECTIONS } from '@shared/page-settings/models';
55
55
  import { FabricRenderClient } from '../../../clients/fabric-render-client';
56
56
  import { setLocaleAsync } from '@src/composables/useTranslate';
57
+ import { usePageNavigationStore } from '@shared/page-navigation/store/page-navigation-store';
58
+ import type { NavModel } from '@brand-page/models';
57
59
 
58
60
  const createInitialisePayload = () => {
59
61
  const initialisePayload = {
@@ -23,12 +23,14 @@ import {
23
23
  CONTENT_TYPES,
24
24
  NavigationDesktop,
25
25
  NavigationMobile,
26
+ NavModel,
26
27
  } from '@brand-page';
27
28
  import type {
28
29
  DesignTemplateType,
29
30
  InitialCategories,
30
31
  TemplateCategory,
31
32
  } from '@shared/template-settings/models';
33
+ import type { UserFeatures } from '../user';
32
34
  import { useBrandPageMakerUserStore } from '../user';
33
35
  import { defineStore } from 'pinia';
34
36
  import { toRaw } from 'vue';
@@ -123,8 +125,6 @@ export interface InitialisePayload {
123
125
  templateCategories: TemplateCategory[];
124
126
  personalisationData?: UserPersonalisationContent[];
125
127
  isPersonalisationEnabled: boolean;
126
- userPromptContentKey?: string;
127
- showAiTemplatesTab?: boolean;
128
128
  businessName: string | undefined;
129
129
  industry: string | undefined;
130
130
  layout?: string;
@@ -1230,13 +1230,11 @@ export const useBrandPageMakerStore = defineStore('brandPageMaker', {
1230
1230
  templateCategories,
1231
1231
  personalisationData,
1232
1232
  isPersonalisationEnabled,
1233
- userPromptContentKey,
1234
- showAiTemplatesTab = false,
1235
1233
  businessName,
1236
1234
  industry,
1237
1235
  layout,
1238
1236
  logoVariationImageUrls,
1239
- shopConfigData: _shopConfigData,
1237
+ shopConfigData,
1240
1238
  isServerRenderOverride = false,
1241
1239
  }: InitialisePayload) {
1242
1240
  const brandPageContainerStore = useBrandPageContainerStore();
@@ -1248,7 +1246,7 @@ export const useBrandPageMakerStore = defineStore('brandPageMaker', {
1248
1246
  const backgroundSettingsStore = useUiBackgroundSettingsStore();
1249
1247
  const styleSettingsStore = useUiStyleSettingsStore();
1250
1248
  const navigationStyleSettingsStore = useUiNavigationStyleSettingsStore();
1251
- const _sideBarStore = useUiSideBarStore();
1249
+ const sideBarStore = useUiSideBarStore();
1252
1250
 
1253
1251
  navigationStyleSettingsStore.initialise({ reset: false });
1254
1252
 
@@ -1355,10 +1353,6 @@ export const useBrandPageMakerStore = defineStore('brandPageMaker', {
1355
1353
  });
1356
1354
  }
1357
1355
 
1358
- uiStore.setUserPromptContentKey({ userPromptContentKey });
1359
-
1360
- uiStore.setShowAiTemplatesTab({ showAiTemplatesTab });
1361
-
1362
1356
  templateSettingsStore.setTemplateCategories({
1363
1357
  categories: templateCategories,
1364
1358
  });
@@ -1806,7 +1800,6 @@ export const useBrandPageMakerStore = defineStore('brandPageMaker', {
1806
1800
  const navigationStyleSettingsStore = useUiNavigationStyleSettingsStore();
1807
1801
  const shopStore = useShopConfigStore();
1808
1802
  const pageNavigationStore = usePageNavigationStore();
1809
- const uiStore = useUiStore();
1810
1803
 
1811
1804
  const pages = pageSettingsStore.pages.map((p) => ({
1812
1805
  ...p,
@@ -1824,7 +1817,6 @@ export const useBrandPageMakerStore = defineStore('brandPageMaker', {
1824
1817
 
1825
1818
  return {
1826
1819
  v: GetLatestModelVersion(),
1827
- userPromptContentKey: uiStore.userPromptContentKey,
1828
1820
  pages,
1829
1821
  styles: {
1830
1822
  logoStyles,
@@ -48,8 +48,6 @@ export const useUiStore = defineStore('ui', {
48
48
  },
49
49
  personalisationData: undefined,
50
50
  isPersonalisationEnabled: false,
51
- userPromptContentKey: undefined,
52
- showAiTemplatesTab: false,
53
51
  }),
54
52
  actions: {
55
53
  setLogoTheme(payload: { logoTheme: LogoTheme }) {
@@ -80,20 +78,6 @@ export const useUiStore = defineStore('ui', {
80
78
  }) {
81
79
  this.personalisationData = personalisationData;
82
80
  },
83
- setUserPromptContentKey({
84
- userPromptContentKey,
85
- }: {
86
- userPromptContentKey: string | undefined;
87
- }) {
88
- this.userPromptContentKey = userPromptContentKey;
89
- },
90
- setShowAiTemplatesTab({
91
- showAiTemplatesTab,
92
- }: {
93
- showAiTemplatesTab: boolean;
94
- }) {
95
- this.showAiTemplatesTab = showAiTemplatesTab;
96
- },
97
81
  onBackgroundChanged() {
98
82
  const brandPageMakerStore = useBrandPageMakerStore();
99
83
 
@@ -7,7 +7,7 @@ import type {
7
7
  ContentSettingsConfig,
8
8
  CreateInitialContentOptions,
9
9
  } from '../models';
10
- import { type Content } from '@brand-page';
10
+ import { SENSITIVE_CONTENT_TYPES, type Content } from '@brand-page';
11
11
  import { RESERVED_FIELD_NAMES } from '@shared/content-settings/constants';
12
12
  import { CONTENT_SETTINGS_CONFIGS } from '../constants';
13
13
  import type { UIUserFeatures } from '@src/constants/ui';
@@ -431,7 +431,7 @@ const transformRTEField = (
431
431
  if (textStyleType && (textStyleType === type || uiStyleSettingsStore)) {
432
432
  let globalContentStyle = uiStyleSettingsStore
433
433
  ? uiStyleSettingsStore.textStyles.textStyleOptions[textStyleType].style
434
- : (newStyle ?? ({} as TextStyleDeclaration));
434
+ : newStyle ?? ({} as TextStyleDeclaration);
435
435
 
436
436
  globalContentStyle = {
437
437
  ...globalContentStyle,
@@ -549,7 +549,7 @@ export const transformToRTE = (
549
549
  ? uiStyleSettingsStore.textStyles.textStyleOptions[
550
550
  textItemStyleType
551
551
  ].style
552
- : (newStyle ?? ({} as TextStyleDeclaration));
552
+ : newStyle ?? ({} as TextStyleDeclaration);
553
553
 
554
554
  globalContentStyle = {
555
555
  ...globalContentStyle,
@@ -593,7 +593,7 @@ export const transformToRTE = (
593
593
  let globalContentStyle = uiStyleSettingsStore
594
594
  ? uiStyleSettingsStore.textStyles.textStyleOptions[textStyleType]
595
595
  .style
596
- : (newStyle ?? ({} as TextStyleDeclaration));
596
+ : newStyle ?? ({} as TextStyleDeclaration);
597
597
 
598
598
  globalContentStyle = {
599
599
  ...globalContentStyle,
@@ -647,7 +647,7 @@ export const switchAllContentToRTE = (
647
647
 
648
648
  if (textContent.textItems && textContent.textItems.length > 0) {
649
649
  for (const [
650
- _itemIndex,
650
+ itemIndex,
651
651
  textItemContent,
652
652
  ] of textContent.textItems.entries()) {
653
653
  const textItemStyleType = textItemContent.textStyle.textStyleType;
@@ -2,7 +2,6 @@ import axios, { type AxiosError } from 'axios';
2
2
  import { useBrandPageContainerStore } from '../brand-page-maker/stores/brandpage-container/brand-page-container-store';
3
3
  import type { MinifiedBrandPageMetadata } from '../utils/minify-brand-page-metadata';
4
4
  import type { AssetEntry } from '../utils/build-asset-manifest';
5
- import type { BrandPageModel } from '../brand-page/models';
6
5
 
7
6
  export interface ActiveContext {
8
7
  currentPageId: string;
@@ -15,12 +14,6 @@ export interface LogoContext {
15
14
 
16
15
  export interface WebsiteContext {
17
16
  metadata: MinifiedBrandPageMetadata;
18
- /**
19
- * Full structural metadata (logos externalized to `logoAssetKey`, no base64,
20
- * no field-stripping) — persisted for the preview render only. The LLM uses
21
- * `metadata` (minified); the preview renderer uses this for full fidelity.
22
- */
23
- metadataFull?: BrandPageModel;
24
17
  assets?: AssetEntry[];
25
18
  activeContext?: ActiveContext;
26
19
  businessName?: string;
@@ -11,7 +11,6 @@ interface DesignTemplateClientOptions {}
11
11
  interface GetTemplatesAsyncOptions {
12
12
  categoryName?: string;
13
13
  searchTerm?: string;
14
- keywords?: string;
15
14
  side?: string;
16
15
  logoDraftToken?: string;
17
16
  logoVariation?: number;
@@ -23,8 +22,6 @@ interface GetTemplatesAsyncOptions {
23
22
  locale?: string;
24
23
  logoS3Token?: string;
25
24
  logoTemplateToken?: string;
26
- pageSection?: string;
27
- pageName?: string;
28
25
  }
29
26
 
30
27
  export const getTemplatesEndpoint = (templateTypeName: string) =>
@@ -4,7 +4,6 @@ export interface Paginated<T> {
4
4
  pageSize: number;
5
5
  pageCount: number;
6
6
  totalResultCount: number;
7
- abTestValuesToBePushed?: Record<string, string>;
8
7
  }
9
8
 
10
9
  export interface DesignTemplate {
@@ -15,7 +14,6 @@ export interface DesignTemplate {
15
14
 
16
15
  export interface PaginatedDesignTemplateItem {
17
16
  designTemplateToken: string;
18
- isPersonalisable?: boolean;
19
17
  previewImageUrl?: string;
20
18
  }
21
19
 
@@ -180,19 +180,15 @@ export function useSnapshot() {
180
180
  const captureWidth = target.clientWidth || target.offsetWidth || 1;
181
181
  const scale = Math.min(1, SNAPSHOT_TARGET_WIDTH / captureWidth);
182
182
 
183
- // Inline every shape's blob-backed SVG as a data: URI up front. Shapes
184
- // (content + background) render their coloured SVG via an <img> whose src
185
- // is a `blob:` URL from URL.createObjectURL. The owning component revokes
186
- // that blob on re-render (colour/size/imageUrl change) and on unmount
187
- // exactly what an AI "change all my contents" run triggers right before we
188
- // capture. html2canvas fetches each <img> src ASYNCHRONOUSLY while
189
- // rendering, so a concurrent revoke leaves it fetching a dead blob URL →
190
- // the shape 404s and snapshots blank. A data: URI can't be revoked, so
191
- // swapping the blob for one in the clone removes the race.
183
+ // Pre-fetch blob-backed SVGs from content shape <object> elements so they
184
+ // can be rendered as <img> in the clone (html2canvas can't reach into the
185
+ // isolated DOM inside <object>). Background-shape blob <img>s are NOT
186
+ // converted: html2canvas renders them no differently with or without the
187
+ // conversion, so it'd just be wasted fetches.
192
188
  const blobSvgUris = new Map<string, string>();
193
189
  const blobSources = Array.from(
194
- element.querySelectorAll<HTMLImageElement>('.c-shape-object img'),
195
- ).map((img) => img.getAttribute('src'));
190
+ element.querySelectorAll<HTMLObjectElement>('.c-shape-object object'),
191
+ ).map((o) => o.getAttribute('data'));
196
192
 
197
193
  for (const src of blobSources) {
198
194
  if (src && src.startsWith('blob:') && !blobSvgUris.has(src)) {
@@ -344,16 +340,23 @@ export function useSnapshot() {
344
340
  overflow: 'visible',
345
341
  });
346
342
 
347
- // Repoint each shape <img> from its (revocable) blob: src to the
348
- // pre-fetched data: URI so html2canvas never fetches a blob that may
349
- // have been revoked mid-capture.
343
+ // Swap content shape <object>s for <img> using the pre-fetched data
344
+ // URIs (html2canvas can't render <object> SVGs directly).
350
345
  _doc
351
- .querySelectorAll<HTMLImageElement>('.c-shape-object img')
352
- .forEach((img) => {
353
- const src = img.getAttribute('src');
346
+ .querySelectorAll<HTMLObjectElement>('.c-shape-object object')
347
+ .forEach((obj) => {
348
+ const dataUrl = obj.getAttribute('data');
354
349
 
355
- if (src && blobSvgUris.has(src)) {
356
- img.src = blobSvgUris.get(src)!;
350
+ if (dataUrl && blobSvgUris.has(dataUrl)) {
351
+ const img = _doc.createElement('img');
352
+
353
+ img.src = blobSvgUris.get(dataUrl)!;
354
+
355
+ const style = obj.getAttribute('style');
356
+
357
+ if (style) img.setAttribute('style', style);
358
+
359
+ obj.parentNode?.replaceChild(img, obj);
357
360
  }
358
361
  });
359
362
 
package/src/lib.ts CHANGED
@@ -87,18 +87,6 @@ export {
87
87
  export { sanitizeRTEHtml } from './brand-page-maker/utils';
88
88
  export { getPageSlugFromPageTitle } from './brand-page-maker/utils/slug.util';
89
89
 
90
- // AI-pipeline preview (longclaw per-turn snapshots): web-renderer's
91
- // /preview/ai-pipeline render page + manifest server route apply the agent's
92
- // tool calls to a brand-page metadata snapshot server-side and resolve the
93
- // target page by slug. These three symbols are otherwise internal to the
94
- // metadata-builder / route utils.
95
- export { executeToolCallsAsync } from './metadata-builder/ai-metadata-executor';
96
- export type { ParsedToolCall } from './metadata-builder/parsers/ai-toolcall-parser';
97
- export { findNavItemByPageSlug } from './brand-page/utils/route.util';
98
- // Tiptap-JSON RTE -> HTML (same converter the metadata builders use). Lets the
99
- // preview render the agent's raw Tiptap fields, which the renderer expects as HTML.
100
- export { tiptapJsonToHtml } from './metadata-builder/helpers/rte.helpers';
101
-
102
90
  // stores
103
91
  export {
104
92
  useBrandPageMakerStore,
@@ -108,7 +96,6 @@ export {
108
96
  useEventManagerStore,
109
97
  useLocalisedRouteStore,
110
98
  useVideoStore,
111
- useRouteStore,
112
99
  } from './brand-page-maker/stores';
113
100
  export { useShopConfigStore } from './shared/ecommerce-settings/store/shop-settings-store';
114
101