@designcrowd/library.brand-page 5.19.1-error-html2canvas-3 → 5.19.1-id-based-items-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 (377) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-BPP1Wtpt.js → CreatedOnBrandCrowd-de-de-Ruu5Az32.js} +3 -3
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-BlfpQiIg.js → CreatedOnBrandCrowd-en-us-DGUJtvld.js} +3 -3
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-Tldy_pIo.js → CreatedOnBrandCrowd-es-es-Dg-1uOfV.js} +3 -3
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-CHmb3VQE.js → CreatedOnBrandCrowd-fr-ca-CRKraZl8.js} +3 -3
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-CHmb3VQE.js → CreatedOnBrandCrowd-fr-fr-CRKraZl8.js} +3 -3
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-XbU3eK3Z.js → CreatedOnBrandCrowd-pt-br-bZ9VlEAu.js} +3 -3
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-XbU3eK3Z.js → CreatedOnBrandCrowd-pt-pt-bZ9VlEAu.js} +3 -3
  8. package/lib/src/{CreatedOnDcom-de-de-BVMFbVbI.js → CreatedOnDcom-de-de-CJYfwZx8.js} +3 -3
  9. package/lib/src/{CreatedOnDcom-en-us--kaKb1kI.js → CreatedOnDcom-en-us-rzA1lVxH.js} +3 -3
  10. package/lib/src/{CreatedOnDcom-es-es-XXVLpF2I.js → CreatedOnDcom-es-es-CNwGPjik.js} +3 -3
  11. package/lib/src/{CreatedOnDcom-fr-ca-D-7vtMZ5.js → CreatedOnDcom-fr-ca-DKw7OGIz.js} +3 -3
  12. package/lib/src/{CreatedOnDcom-fr-fr-CM9oQk77.js → CreatedOnDcom-fr-fr-WzOEaAZG.js} +3 -3
  13. package/lib/src/{CreatedOnDcom-pt-br-VVgu3BEa.js → CreatedOnDcom-pt-br-DkualVhm.js} +3 -3
  14. package/lib/src/{CreatedOnDcom-pt-pt-CWhA8Vla.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-logo-settings/AdminLogoSettings.mixin.d.ts +3 -3
  35. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +170 -181
  36. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.js +0 -3
  37. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.js +0 -1
  38. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.mixin.d.ts +12 -12
  39. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.stories.js +2 -2
  40. package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-payment.js +7 -0
  41. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +149 -148
  42. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.d.ts +21 -21
  43. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.js +1 -1
  44. package/lib/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.d.ts +2 -4
  45. package/lib/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.js +0 -1
  46. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.d.ts +2 -4
  47. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.js +0 -1
  48. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.d.ts +2 -5
  49. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.js +0 -1
  50. package/lib/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.d.ts +2 -4
  51. package/lib/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.js +0 -1
  52. package/lib/src/brand-page-maker/components/device/Device.mixin.d.ts +2 -4
  53. package/lib/src/brand-page-maker/components/device/Device.mixin.js +0 -1
  54. package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.d.ts +2 -4
  55. package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.js +0 -1
  56. package/lib/src/brand-page-maker/components/preview/Preview.mixin.d.ts +3 -3
  57. package/lib/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.d.ts +11 -11
  58. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.d.ts +25 -27
  59. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.js +0 -1
  60. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.d.ts +27 -27
  61. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.js +1 -1
  62. package/lib/src/brand-page-maker/components/seo-settings/UseExistingDomainModal.mixin.d.ts +12 -17
  63. package/lib/src/brand-page-maker/components/social-share/SocialShare.mixin.d.ts +12 -12
  64. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.d.ts +32 -30
  65. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.js +5 -16
  66. package/lib/src/brand-page-maker/components/upgrade-to-premium-button/UpgradeToPremiumButton.mixin.d.ts +11 -11
  67. package/lib/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.js +6 -1
  68. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.d.ts +1 -1
  69. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +6 -6
  70. package/lib/src/brand-page-maker/composables/useEventTracker.d.ts +2 -2
  71. package/lib/src/brand-page-maker/constants/config-settings-constant.d.ts +6 -6
  72. package/lib/src/brand-page-maker/constants/config-settings-constant.js +1 -1
  73. package/lib/src/brand-page-maker/convertors/text-image-display-style.convertor.d.ts +1 -1
  74. package/lib/src/brand-page-maker/convertors/text-image-display-style.convertor.js +1 -1
  75. package/lib/src/brand-page-maker/models/content-settings.d.ts +1 -1
  76. package/lib/src/brand-page-maker/models/navigation-style-configs.js +1 -1
  77. package/lib/src/brand-page-maker/routing/brand-page-maker-router.d.ts +2 -1
  78. package/lib/src/brand-page-maker/stores/ai-checkpoint/ai-checkpoint-store.d.ts +378 -366
  79. package/lib/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.d.ts +4 -5
  80. package/lib/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.js +5 -8
  81. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.d.ts +1 -3
  82. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +3 -7
  83. package/lib/src/brand-page-maker/stores/history/history-store.d.ts +15 -15
  84. package/lib/src/brand-page-maker/stores/ui/ui-store.d.ts +0 -6
  85. package/lib/src/brand-page-maker/stores/ui/ui-store.js +0 -8
  86. package/lib/src/brand-page-maker/utils/content-settings.util.js +1 -1
  87. package/lib/src/brand-page-maker/utils/rich-text-editor.util.d.ts +1 -1
  88. package/lib/src/brand-page-maker/utils/rich-text-editor.util.js +4 -4
  89. package/lib/src/clients/brand-page-client.d.ts +15 -16
  90. package/lib/src/clients/design-template-client.d.ts +0 -3
  91. package/lib/src/clients/media-client.d.ts +2 -2
  92. package/lib/src/clients/models.d.ts +0 -2
  93. package/lib/src/composables/useSnapshot.js +18 -18
  94. package/lib/src/css/library.brand-page-brandCrowd.min.css +324 -342
  95. package/lib/src/css/library.brand-page-brandPage.min.css +324 -620
  96. package/lib/src/css/library.brand-page-designCom.min.css +324 -342
  97. package/lib/src/css/library.brand-page-preview.min.css +324 -598
  98. package/lib/src/index.d.ts +1 -1
  99. package/lib/src/index.mjs +15 -16
  100. package/lib/src/{lib-yEV1yYI5.js → lib-Dy7MYyqz.js} +33242 -36445
  101. package/lib/src/lib.js +1 -1
  102. package/lib/src/metadata-builder/builders/footer-builder.js +62 -105
  103. package/lib/src/metadata-builder/builders/item-id-utils.d.ts +54 -0
  104. package/lib/src/metadata-builder/builders/item-id-utils.js +96 -0
  105. package/lib/src/metadata-builder/builders/section-builders/image-gallery-builder.js +57 -68
  106. package/lib/src/metadata-builder/builders/section-builders/images-section-builder.js +58 -93
  107. package/lib/src/metadata-builder/builders/section-builders/shapes-section-builder.js +66 -99
  108. package/lib/src/metadata-builder/builders/section-builders/social-links-builder.js +57 -17
  109. package/lib/src/metadata-builder/builders/section-builders/testimonial-section-builder.js +51 -85
  110. package/lib/src/metadata-builder/builders/section-builders/text-section-builder.js +49 -74
  111. package/lib/src/metadata-builder/builders/section-field-utils.d.ts +0 -7
  112. package/lib/src/metadata-builder/builders/section-field-utils.js +1 -1
  113. package/lib/src/metadata-builder/builders/shape-color-utils.js +1 -1
  114. package/lib/src/metadata-builder/parsers/ai-toolcall-parser.d.ts +16 -7
  115. package/lib/src/metadata-builder/parsers/section-tool-arguments.d.ts +66 -48
  116. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.d.ts +1 -1
  117. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.js +8 -8
  118. package/lib/src/shared/background-settings/components/background-shapes/BackgroundShapeSettings.mixin.d.ts +13 -13
  119. package/lib/src/shared/background-settings/store/background-settings-store.d.ts +3 -3
  120. package/lib/src/shared/color-picker/components/ColorPicker.mixin.d.ts +2 -4
  121. package/lib/src/shared/color-picker/components/ColorPicker.mixin.js +2 -2
  122. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.d.ts +2 -4
  123. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.js +0 -1
  124. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.d.ts +2 -5
  125. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.js +0 -1
  126. package/lib/src/shared/content-settings/components/GenericTextInput.mixin.d.ts +1 -0
  127. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +129 -131
  128. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.js +1 -2
  129. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +110 -111
  130. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +81 -84
  131. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.js +0 -5
  132. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +109 -117
  133. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.js +14 -1
  134. package/lib/src/shared/content-settings/components/email-field/EmailField.mixin.d.ts +1 -0
  135. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +70 -72
  136. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.js +3 -4
  137. package/lib/src/shared/content-settings/components/form-fields-field/FormFieldsField.mixin.d.ts +4 -4
  138. package/lib/src/shared/content-settings/components/icon-library/IconLibrary.mixin.d.ts +1 -3
  139. package/lib/src/shared/content-settings/components/icon-library/IconLibrary.mixin.js +0 -1
  140. package/lib/src/shared/content-settings/components/images-field/ImagesField.mixin.d.ts +2 -2
  141. package/lib/src/shared/content-settings/components/items-field/ItemsField.mixin.d.ts +3 -4
  142. package/lib/src/shared/content-settings/components/items-field/ItemsField.mixin.js +1 -1
  143. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.d.ts +40 -40
  144. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigOptionField.mixin.d.ts +6 -5
  145. package/lib/src/shared/content-settings/components/shape-field/ShapeField.mixin.d.ts +1 -0
  146. package/lib/src/shared/content-settings/components/slider-field/SliderField.mixin.d.ts +2 -2
  147. package/lib/src/shared/content-settings/components/tel-field/TelField.mixin.d.ts +1 -0
  148. package/lib/src/shared/content-settings/components/testimonial-items-field/TestimonialItemsField.mixin.d.ts +2 -1
  149. package/lib/src/shared/content-settings/components/text-field/TextField.mixin.d.ts +1 -0
  150. package/lib/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.d.ts +2 -1
  151. package/lib/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.js +1 -1
  152. package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.d.ts +28 -28
  153. package/lib/src/shared/content-settings/components/textarea-field/TextareaField.mixin.d.ts +1 -0
  154. package/lib/src/shared/content-settings/components/toggle-field/ToggleField.mixin.d.ts +2 -2
  155. package/lib/src/shared/content-settings/components/url-field/UrlField.mixin.d.ts +1 -0
  156. package/lib/src/shared/content-settings/components/youtube-video-field/YoutubeVideoField.mixin.d.ts +1 -0
  157. package/lib/src/shared/content-settings/store/content-settings-store.d.ts +39 -39
  158. package/lib/src/shared/content-settings/utils.js +1 -0
  159. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.d.ts +4 -6
  160. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.js +0 -1
  161. package/lib/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.d.ts +2 -4
  162. package/lib/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.js +0 -1
  163. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.d.ts +21 -29
  164. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.js +1 -1
  165. package/lib/src/shared/logo-settings/components/LogoSettings.mixin.d.ts +51 -50
  166. package/lib/src/shared/logo-settings/components/LogoSettingsHeader.mixin.d.ts +4 -6
  167. package/lib/src/shared/logo-settings/components/LogoSettingsHeader.mixin.js +0 -1
  168. package/lib/src/shared/logo-settings/store/editable-logo-store.js +1 -1
  169. package/lib/src/shared/logo-settings/store/logo-settings-store.d.ts +1 -1
  170. package/lib/src/shared/logo-versions/LogoVersions.mixin.d.ts +5 -13
  171. package/lib/src/shared/logo-versions/LogoVersions.mixin.js +0 -1
  172. package/lib/src/shared/models.d.ts +0 -2
  173. package/lib/src/shared/my-designs/MyDesigns.mixin.d.ts +6 -14
  174. package/lib/src/shared/my-designs/MyDesigns.mixin.js +0 -1
  175. package/lib/src/shared/my-uploads/MyMedia.mixin.d.ts +5 -14
  176. package/lib/src/shared/my-uploads/MyMedia.mixin.js +0 -1
  177. package/lib/src/shared/my-uploads/MyUploads.mixin.d.ts +5 -14
  178. package/lib/src/shared/my-uploads/MyUploads.mixin.js +0 -1
  179. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.d.ts +3 -5
  180. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.js +0 -1
  181. package/lib/src/shared/navigation-style-settings/store/index.d.ts +2 -2
  182. package/lib/src/shared/page-navigation/store/page-navigation-store.d.ts +2 -2
  183. package/lib/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.d.ts +28 -27
  184. package/lib/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.js +2 -0
  185. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +179 -188
  186. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +177 -181
  187. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.js +1 -1
  188. package/lib/src/shared/page-settings/store/page-settings-store.d.ts +9 -9
  189. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.d.ts +39 -39
  190. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.js +1 -0
  191. package/lib/src/shared/side-bar/components/SideBar.mixin.d.ts +18 -18
  192. package/lib/src/shared/side-bar/components/SideBarTabButton.mixin.d.ts +6 -6
  193. package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +60 -66
  194. package/lib/src/shared/style-settings/store/style-settings-store.d.ts +1 -1
  195. package/lib/src/shared/style-settings/store/style-settings-store.js +1 -1
  196. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.d.ts +450 -20
  197. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.js +2 -2
  198. package/lib/src/shared/template-settings/models.d.ts +0 -1
  199. package/lib/src/shared/template-settings/store/template-settings-store.d.ts +0 -4
  200. package/lib/src/shared/template-settings/store/template-settings-store.js +11 -79
  201. package/lib/src/shared/unsplash-library/UnsplashLibrary.mixin.d.ts +4 -9
  202. package/lib/src/utils/minify-brand-page-metadata.d.ts +2 -0
  203. package/lib/src/utils/minify-brand-page-metadata.js +8 -1
  204. package/package.json +57 -61
  205. package/src/brand-page/components/about-section/AboutSection.vue.test.ts +5 -7
  206. package/src/brand-page/components/brand-page-footer/BrandPageFooter.vue +1 -1
  207. package/src/brand-page/components/image/Image.mixin.ts +1 -1
  208. package/src/brand-page/components/image/Image.test.ts +1 -1
  209. package/src/brand-page/components/image-gallery/masonry/MasonryGallery.mixin.ts +2 -1
  210. package/src/brand-page/components/images-section/ImagesSection.vue +1 -0
  211. package/src/brand-page/components/logo/LogoRender.vue +188 -188
  212. package/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.ts +0 -1
  213. package/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.ts +6 -15
  214. package/src/brand-page/components/page-footer/PageFooter.vue +0 -1
  215. package/src/brand-page/components/page-header/HeaderLayout.vue +6 -12
  216. package/src/brand-page/components/page-header/PageHeader.vue +0 -1
  217. package/src/brand-page/components/shapes-section/ShapesSection.vue +1 -1
  218. package/src/brand-page/components/shop/CartModal.vue +3 -1
  219. package/src/brand-page/components/shop/FeaturedDisplay.vue +2 -2
  220. package/src/brand-page/components/shop/PaymentModal.vue +5 -1
  221. package/src/brand-page/components/shop/ProductDetailModal.vue +1 -1
  222. package/src/brand-page/components/shop/Shop.vue +1 -1
  223. package/src/brand-page/components/shop/TextDisplay.vue +1 -1
  224. package/src/brand-page/components/shop/ThumbnailDisplay.vue +2 -2
  225. package/src/brand-page/components/testimonial-section/TestimonialSection.vue +3 -3
  226. package/src/brand-page/components/text-wrapper/TextWrapper.vue +1 -3
  227. package/src/brand-page/constants/sections/footer-display.constants.ts +1 -1
  228. package/src/brand-page/models/index.ts +12 -4
  229. package/src/brand-page/models/payment.model.ts +1 -2
  230. package/src/brand-page/models/shop.model.ts +2 -0
  231. package/src/brand-page/models/user-personalisation.model.ts +2 -1
  232. package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +0 -3
  233. package/src/brand-page/utils/__snapshots__/migration2.util.test.ts.snap +0 -1
  234. package/src/brand-page/utils/__snapshots__/model.util.test.ts.snap +0 -2
  235. package/src/brand-page/utils/migration/migration-01_1.ts +1 -1
  236. package/src/brand-page/utils/migration/migration-02.ts +1 -0
  237. package/src/brand-page/utils/migration/migration-03.ts +1 -0
  238. package/src/brand-page/utils/migration/migration-04.ts +1 -0
  239. package/src/brand-page/utils/migration/migration-05.ts +5 -1
  240. package/src/brand-page/utils/migration/migration-05_2.ts +1 -1
  241. package/src/brand-page/utils/migration/migration-08.test.ts +1 -1
  242. package/src/brand-page/utils/personalisation.util.test.ts +0 -35
  243. package/src/brand-page/utils/personalisation.util.ts +23 -119
  244. package/src/brand-page/view-models.ts +56 -38
  245. package/src/brand-page-maker/assessors/banner-section-description-visibility.assessor.ts +6 -6
  246. package/src/brand-page-maker/assessors/color-replacement-icon-visibility.assessor.ts +2 -2
  247. package/src/brand-page-maker/assessors/color-replacement-profile-visibility.assessor.ts +2 -2
  248. package/src/brand-page-maker/assessors/color-replacement-visibility.assessor.ts +2 -2
  249. package/src/brand-page-maker/assessors/contact-form-visibility.assessor.ts +14 -14
  250. package/src/brand-page-maker/components/action-bar/ActionBar.mixin.ts +0 -1
  251. package/src/brand-page-maker/components/ai-text-edit/TextBubble.vue +0 -1
  252. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.ts +1 -5
  253. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.ts +0 -1
  254. package/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.stories.ts +5 -2
  255. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.ts +5 -0
  256. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-payment.ts +8 -0
  257. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-site-template.examples.ts +2 -0
  258. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.vue +0 -1
  259. package/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.ts +1 -1
  260. package/src/brand-page-maker/components/color-palette/BpColorPalette.vue +2 -1
  261. package/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.ts +0 -1
  262. package/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.ts +0 -1
  263. package/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.ts +0 -1
  264. package/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.ts +0 -1
  265. package/src/brand-page-maker/components/device/Device.mixin.ts +0 -1
  266. package/src/brand-page-maker/components/navigation/Navigation.mixin.ts +0 -1
  267. package/src/brand-page-maker/components/rich-text-editor/RichTextEditor.vue +1 -3
  268. package/src/brand-page-maker/components/sensitive-content/SensitiveContent.vue +4 -1
  269. package/src/brand-page-maker/components/seo-settings/DeleteDomainModal.vue +1 -1
  270. package/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.ts +0 -1
  271. package/src/brand-page-maker/components/seo-settings/SeoPageSettings.vue +1 -1
  272. package/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.ts +1 -0
  273. package/src/brand-page-maker/components/seo-settings/UrlSettings.vue +1 -0
  274. package/src/brand-page-maker/components/seo-settings/UseExistingDomainModal.vue +5 -1
  275. package/src/brand-page-maker/components/shop/AddOrEditProductContainer.vue +1 -1
  276. package/src/brand-page-maker/components/shop/ReplaceImageSettingsForShop.vue +1 -1
  277. package/src/brand-page-maker/components/social-share/SocialShare.vue +1 -1
  278. package/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.ts +8 -22
  279. package/src/brand-page-maker/components/template-preview/TemplatePreview.vue +10 -5
  280. package/src/brand-page-maker/components/video-play/VideoPlayButton.vue +1 -1
  281. package/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.ts +7 -1
  282. package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +6 -6
  283. package/src/brand-page-maker/constants/config-settings-constant.ts +3 -3
  284. package/src/brand-page-maker/convertors/text-image-display-style.convertor.ts +1 -1
  285. package/src/brand-page-maker/models/button-styles-config.ts +2 -4
  286. package/src/brand-page-maker/models/content-settings-configs.ts +2 -4
  287. package/src/brand-page-maker/models/navigation-style-configs.ts +6 -5
  288. package/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store.ts +1 -0
  289. package/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.ts +5 -8
  290. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.test.ts +3 -1
  291. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +4 -12
  292. package/src/brand-page-maker/stores/ui/ui-store.ts +0 -16
  293. package/src/brand-page-maker/utils/content-settings.util.ts +1 -1
  294. package/src/brand-page-maker/utils/rich-text-editor.util.ts +4 -4
  295. package/src/clients/design-template-client.ts +0 -3
  296. package/src/clients/models.ts +0 -2
  297. package/src/composables/useSnapshot.ts +22 -19
  298. package/src/lib.ts +0 -1
  299. package/src/metadata-builder/builders/footer-builder.test.ts +229 -130
  300. package/src/metadata-builder/builders/footer-builder.ts +90 -155
  301. package/src/metadata-builder/builders/item-id-utils.test.ts +184 -0
  302. package/src/metadata-builder/builders/item-id-utils.ts +117 -0
  303. package/src/metadata-builder/builders/section-builders/image-gallery-builder.ts +62 -88
  304. package/src/metadata-builder/builders/section-builders/images-section-builder.ts +66 -129
  305. package/src/metadata-builder/builders/section-builders/shapes-section-builder.ts +105 -160
  306. package/src/metadata-builder/builders/section-builders/social-links-builder.ts +65 -20
  307. package/src/metadata-builder/builders/section-builders/testimonial-section-builder.ts +83 -146
  308. package/src/metadata-builder/builders/section-builders/text-section-builder.ts +70 -122
  309. package/src/metadata-builder/builders/section-field-utils.ts +1 -1
  310. package/src/metadata-builder/builders/shape-color-utils.ts +2 -2
  311. package/src/metadata-builder/parsers/ai-toolcall-parser.ts +16 -7
  312. package/src/metadata-builder/parsers/section-tool-arguments.ts +66 -48
  313. package/src/plugins/google-maps-plugin/google-maps-plugin.ts +8 -8
  314. package/src/shared/background-settings/components/BackgroundSettings.vue +1 -1
  315. package/src/shared/background-settings/components/background-color/BackgroundColorSettings.vue +1 -1
  316. package/src/shared/color-picker/components/ColorPicker.mixin.ts +7 -2
  317. package/src/shared/color-picker/components/ColorPickerSwatch.mixin.ts +0 -1
  318. package/src/shared/common/NumberInput.vue +0 -1
  319. package/src/shared/common/SideBarSettingsHeader.vue +2 -2
  320. package/src/shared/confirm-modal/ConfirmModal.mixin.ts +0 -1
  321. package/src/shared/content-settings/components/booking-url-field/BookingUrlField.vue +0 -1
  322. package/src/shared/content-settings/components/button-configuration-field/ButtonConfigurationField.vue +0 -1
  323. package/src/shared/content-settings/components/color-field/ColorField.vue +10 -3
  324. package/src/shared/content-settings/components/content-settings/ContentSettings.mixin.ts +1 -1
  325. package/src/shared/content-settings/components/content-settings/ContentSettingsLockedButton.vue +0 -1
  326. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.ts +0 -5
  327. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.ts +14 -1
  328. package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.ts +6 -4
  329. package/src/shared/content-settings/components/icon-library/IconLibrary.mixin.ts +0 -1
  330. package/src/shared/content-settings/components/items-field/ItemsField.mixin.ts +1 -1
  331. package/src/shared/content-settings/components/logo-selection-field/LogoSelectionField.vue +1 -1
  332. package/src/shared/content-settings/components/logo-size-field/LogoSizeSliderField.vue +1 -1
  333. package/src/shared/content-settings/components/page-dropdown-field/PageDropdownField.vue +1 -1
  334. package/src/shared/content-settings/components/personalisation-role-field/PersonalisationRoleField.vue +4 -4
  335. package/src/shared/content-settings/components/text-image-field/TextImageField.vue +8 -2
  336. package/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.ts +1 -1
  337. package/src/shared/content-settings/models.ts +2 -3
  338. package/src/shared/content-settings/utils.ts +1 -0
  339. package/src/shared/dropzone-image-uploader/components/DropzoneImageUploader.vue +0 -1
  340. package/src/shared/ecommerce-settings/store/cart-store.test.ts +1 -1
  341. package/src/shared/font-family-selector/FontFamilySelector.mixin.ts +0 -1
  342. package/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.ts +0 -1
  343. package/src/shared/logo-settings/components/EditLogoSettings.mixin.ts +1 -1
  344. package/src/shared/logo-settings/components/LogoSettings.mixin.ts +1 -0
  345. package/src/shared/logo-settings/components/LogoSettingsHeader.mixin.ts +0 -1
  346. package/src/shared/logo-settings/components/LogoStyleSettingsWithState.vue +2 -2
  347. package/src/shared/logo-settings/components/LogoTemplateSearch.vue +1 -1
  348. package/src/shared/logo-settings/store/editable-logo-store.ts +1 -1
  349. package/src/shared/logo-settings/store/logo-settings-store.test.ts +4 -4
  350. package/src/shared/logo-versions/LogoVersions.mixin.ts +0 -1
  351. package/src/shared/models.ts +0 -6
  352. package/src/shared/my-designs/MyDesigns.mixin.ts +0 -1
  353. package/src/shared/my-uploads/MyMedia.mixin.ts +0 -1
  354. package/src/shared/my-uploads/MyMediaSelectionItem.vue +1 -2
  355. package/src/shared/my-uploads/MyUploads.mixin.ts +0 -1
  356. package/src/shared/my-uploads/models.ts +2 -1
  357. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.ts +0 -1
  358. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.vue +1 -1
  359. package/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.ts +3 -0
  360. package/src/shared/page-settings/components/page-settings/NestedDraggable.vue +1 -1
  361. package/src/shared/page-settings/components/page-settings/PageSettings.vue +2 -1
  362. package/src/shared/page-settings/components/page-settings-section-styles/HeaderDisplayStyle.vue +1 -1
  363. package/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.ts +1 -1
  364. package/src/shared/page-settings/store/page-settings-store.test.ts +8 -4
  365. package/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.ts +1 -0
  366. package/src/shared/shape-library/ShapeLibrary.vue +2 -2
  367. package/src/shared/style-settings/store/style-settings-store.ts +1 -1
  368. package/src/shared/template-settings/components/TemplatesSettings.mixin.ts +2 -2
  369. package/src/shared/template-settings/models.ts +0 -1
  370. package/src/shared/template-settings/store/template-settings-store.ts +18 -105
  371. package/src/shared/unsplash-library/UnsplashLibrary.vue +6 -2
  372. package/src/shared/video-library/VideoLibrary.vue +1 -1
  373. package/src/utils/minify-brand-page-metadata.ts +14 -2
  374. package/lib/src/brand-page/components/banner-section/BannerSection.mixin.d.ts +0 -103
  375. package/lib/src/brand-page/components/banner-section/BannerSection.mixin.js +0 -178
  376. package/src/brand-page/components/banner-section/BannerSection.mixin.ts +0 -210
  377. package/src/brand-page-maker/components/template-preview/TemplatePreviewAiBadge.vue +0 -12
@@ -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;
@@ -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
@@ -96,7 +96,6 @@ export {
96
96
  useEventManagerStore,
97
97
  useLocalisedRouteStore,
98
98
  useVideoStore,
99
- useRouteStore,
100
99
  } from './brand-page-maker/stores';
101
100
  export { useShopConfigStore } from './shared/ecommerce-settings/store/shop-settings-store';
102
101