@designcrowd/library.brand-page 6.0.5 → 6.0.6-ast-bugs

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 (395) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-DhzvKlTS.js → CreatedOnBrandCrowd-de-de-SHCspMwS.js} +3 -3
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-DKH4lmNV.js → CreatedOnBrandCrowd-en-us-C6lITAAT.js} +3 -3
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-RloPCLuV.js → CreatedOnBrandCrowd-es-es-Uh69c4vZ.js} +3 -3
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-Cu9e2H0K.js → CreatedOnBrandCrowd-fr-ca-Bb0rp7BV.js} +3 -3
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-Cu9e2H0K.js → CreatedOnBrandCrowd-fr-fr-Bb0rp7BV.js} +3 -3
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-CiCnjxBZ.js → CreatedOnBrandCrowd-pt-br-DsrQHcjs.js} +3 -3
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-CiCnjxBZ.js → CreatedOnBrandCrowd-pt-pt-DsrQHcjs.js} +3 -3
  8. package/lib/src/{CreatedOnDcom-de-de-CwlnedFV.js → CreatedOnDcom-de-de-BshZYzSp.js} +3 -3
  9. package/lib/src/{CreatedOnDcom-en-us-DFHex61v.js → CreatedOnDcom-en-us-CLu8mKUW.js} +3 -3
  10. package/lib/src/{CreatedOnDcom-es-es-BTxH6I4V.js → CreatedOnDcom-es-es-BZYhkONd.js} +3 -3
  11. package/lib/src/{CreatedOnDcom-fr-ca-BVw0KYxu.js → CreatedOnDcom-fr-ca-CIaBEp_9.js} +3 -3
  12. package/lib/src/{CreatedOnDcom-fr-fr-DaqNz1Er.js → CreatedOnDcom-fr-fr-dyF7hioJ.js} +3 -3
  13. package/lib/src/{CreatedOnDcom-pt-br-B4KsMI8W.js → CreatedOnDcom-pt-br-CUHjk2du.js} +3 -3
  14. package/lib/src/{CreatedOnDcom-pt-pt-CWoHEtOZ.js → CreatedOnDcom-pt-pt-CWDvQidv.js} +3 -3
  15. package/lib/src/brand-page/clients/brand-page.client.d.ts +9 -9
  16. package/lib/src/brand-page/components/banner-section/BannerSection.mixin.d.ts +103 -0
  17. package/lib/src/brand-page/components/banner-section/BannerSection.mixin.js +178 -0
  18. package/lib/src/brand-page/components/image-gallery/masonry/MasonryGallery.mixin.d.ts +1 -2
  19. package/lib/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.d.ts +4 -2
  20. package/lib/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.js +1 -0
  21. package/lib/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.d.ts +4 -2
  22. package/lib/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.js +11 -5
  23. package/lib/src/brand-page/components/page/Page.mixin.d.ts +1 -1
  24. package/lib/src/brand-page/components/page/PageComponent.mixin.d.ts +1 -1
  25. package/lib/src/brand-page/components/payment/Payment.mixin.d.ts +3 -3
  26. package/lib/src/brand-page/components/payment/__fixtures__/request-payment.d.ts +13 -13
  27. package/lib/src/brand-page/components/payment/__fixtures__/support-me.d.ts +13 -13
  28. package/lib/src/brand-page/constants/sections/footer-display.constants.js +1 -1
  29. package/lib/src/brand-page/models/index.d.ts +2 -13
  30. package/lib/src/brand-page/models/index.js +3 -0
  31. package/lib/src/brand-page/models/payment.model.d.ts +1 -1
  32. package/lib/src/brand-page/utils/personalisation.util.js +72 -14
  33. package/lib/src/brand-page-maker/components/action-bar/ActionBar.mixin.d.ts +21 -19
  34. package/lib/src/brand-page-maker/components/action-bar/ActionBar.mixin.js +1 -0
  35. package/lib/src/brand-page-maker/components/admin-background-settings/AdminBackgroundSettings.mixin.d.ts +16 -10
  36. package/lib/src/brand-page-maker/components/admin-background-settings/ShapePositionSlider.mixin.d.ts +1 -1
  37. package/lib/src/brand-page-maker/components/admin-logo-settings/AdminLogoSettings.mixin.d.ts +3 -3
  38. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +181 -170
  39. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.js +3 -0
  40. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.js +1 -0
  41. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.mixin.d.ts +12 -12
  42. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.stories.js +2 -2
  43. package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-payment.js +0 -7
  44. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +148 -149
  45. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.d.ts +21 -21
  46. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.js +1 -1
  47. package/lib/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.d.ts +4 -2
  48. package/lib/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.js +1 -0
  49. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.d.ts +4 -2
  50. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.js +1 -0
  51. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.d.ts +5 -2
  52. package/lib/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.js +1 -0
  53. package/lib/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.d.ts +4 -2
  54. package/lib/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.js +1 -0
  55. package/lib/src/brand-page-maker/components/device/Device.mixin.d.ts +4 -2
  56. package/lib/src/brand-page-maker/components/device/Device.mixin.js +1 -0
  57. package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.d.ts +4 -2
  58. package/lib/src/brand-page-maker/components/navigation/Navigation.mixin.js +1 -0
  59. package/lib/src/brand-page-maker/components/preview/Preview.mixin.d.ts +3 -3
  60. package/lib/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.d.ts +11 -11
  61. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.d.ts +27 -25
  62. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.js +1 -0
  63. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.d.ts +27 -27
  64. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.js +1 -1
  65. package/lib/src/brand-page-maker/components/seo-settings/UseExistingDomainModal.mixin.d.ts +17 -12
  66. package/lib/src/brand-page-maker/components/social-share/SocialShare.mixin.d.ts +12 -12
  67. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.d.ts +30 -32
  68. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.js +16 -5
  69. package/lib/src/brand-page-maker/components/upgrade-to-premium-button/UpgradeToPremiumButton.mixin.d.ts +11 -11
  70. package/lib/src/brand-page-maker/composables/ai-chat/types.d.ts +3 -0
  71. package/lib/src/brand-page-maker/composables/ai-chat/ui-actions.d.ts +29 -0
  72. package/lib/src/brand-page-maker/composables/ai-chat/ui-actions.js +32 -0
  73. package/lib/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.js +204 -177
  74. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.d.ts +1 -1
  75. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +6 -6
  76. package/lib/src/brand-page-maker/composables/useEventTracker.d.ts +3 -2
  77. package/lib/src/brand-page-maker/composables/useEventTracker.js +1 -0
  78. package/lib/src/brand-page-maker/constants/config-settings-constant.d.ts +6 -6
  79. package/lib/src/brand-page-maker/constants/config-settings-constant.js +3 -3
  80. package/lib/src/brand-page-maker/convertors/text-image-display-style.convertor.d.ts +1 -1
  81. package/lib/src/brand-page-maker/convertors/text-image-display-style.convertor.js +1 -1
  82. package/lib/src/brand-page-maker/models/content-settings.d.ts +1 -1
  83. package/lib/src/brand-page-maker/models/navigation-style-configs.js +1 -1
  84. package/lib/src/brand-page-maker/routing/brand-page-maker-router.d.ts +1 -2
  85. package/lib/src/brand-page-maker/stores/ai-checkpoint/ai-checkpoint-store.d.ts +366 -378
  86. package/lib/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.d.ts +5 -4
  87. package/lib/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.js +8 -5
  88. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.d.ts +3 -1
  89. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +7 -3
  90. package/lib/src/brand-page-maker/stores/history/history-store.d.ts +15 -15
  91. package/lib/src/brand-page-maker/stores/ui/ui-store.d.ts +6 -0
  92. package/lib/src/brand-page-maker/stores/ui/ui-store.js +8 -0
  93. package/lib/src/brand-page-maker/utils/content-settings.util.js +1 -1
  94. package/lib/src/brand-page-maker/utils/rich-text-editor.util.d.ts +1 -1
  95. package/lib/src/brand-page-maker/utils/rich-text-editor.util.js +4 -4
  96. package/lib/src/clients/ai-assistant-client.d.ts +7 -0
  97. package/lib/src/clients/brand-page-client.d.ts +16 -15
  98. package/lib/src/clients/design-template-client.d.ts +3 -0
  99. package/lib/src/clients/media-client.d.ts +2 -2
  100. package/lib/src/clients/models.d.ts +2 -0
  101. package/lib/src/composables/useSnapshot.js +18 -18
  102. package/lib/src/css/library.brand-page-brandCrowd.min.css +371 -344
  103. package/lib/src/css/library.brand-page-brandPage.min.css +649 -344
  104. package/lib/src/css/library.brand-page-designCom.min.css +371 -344
  105. package/lib/src/css/library.brand-page-preview.min.css +627 -344
  106. package/lib/src/index.d.ts +4 -0
  107. package/lib/src/index.mjs +107 -104
  108. package/lib/src/{lib-BPI8E2Ui.js → lib-COw-Rz05.js} +37005 -33761
  109. package/lib/src/lib.js +10 -0
  110. package/lib/src/metadata-builder/builders/footer-builder.js +105 -62
  111. package/lib/src/metadata-builder/builders/section-builders/image-gallery-builder.js +68 -57
  112. package/lib/src/metadata-builder/builders/section-builders/images-section-builder.js +93 -58
  113. package/lib/src/metadata-builder/builders/section-builders/shapes-section-builder.js +99 -66
  114. package/lib/src/metadata-builder/builders/section-builders/social-links-builder.js +17 -57
  115. package/lib/src/metadata-builder/builders/section-builders/testimonial-section-builder.js +85 -51
  116. package/lib/src/metadata-builder/builders/section-builders/text-section-builder.js +74 -49
  117. package/lib/src/metadata-builder/builders/section-field-utils.d.ts +7 -0
  118. package/lib/src/metadata-builder/builders/section-field-utils.js +1 -1
  119. package/lib/src/metadata-builder/builders/shape-color-utils.js +1 -1
  120. package/lib/src/metadata-builder/parsers/ai-toolcall-parser.d.ts +7 -16
  121. package/lib/src/metadata-builder/parsers/section-tool-arguments.d.ts +48 -66
  122. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.d.ts +1 -1
  123. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.js +8 -8
  124. package/lib/src/shared/background-settings/components/background-shapes/BackgroundShapeSettings.mixin.d.ts +13 -13
  125. package/lib/src/shared/background-settings/store/background-settings-store.d.ts +3 -3
  126. package/lib/src/shared/color-picker/components/ColorPicker.mixin.d.ts +4 -2
  127. package/lib/src/shared/color-picker/components/ColorPicker.mixin.js +2 -2
  128. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.d.ts +4 -2
  129. package/lib/src/shared/color-picker/components/ColorPickerSwatch.mixin.js +1 -0
  130. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.d.ts +5 -2
  131. package/lib/src/shared/confirm-modal/ConfirmModal.mixin.js +1 -0
  132. package/lib/src/shared/content-settings/components/GenericTextInput.mixin.d.ts +0 -1
  133. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +131 -129
  134. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.js +2 -1
  135. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +111 -110
  136. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +84 -81
  137. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.js +5 -0
  138. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +117 -109
  139. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.js +1 -14
  140. package/lib/src/shared/content-settings/components/email-field/EmailField.mixin.d.ts +0 -1
  141. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.d.ts +72 -70
  142. package/lib/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.js +4 -3
  143. package/lib/src/shared/content-settings/components/form-fields-field/FormFieldsField.mixin.d.ts +4 -4
  144. package/lib/src/shared/content-settings/components/icon-library/IconLibrary.mixin.d.ts +3 -1
  145. package/lib/src/shared/content-settings/components/icon-library/IconLibrary.mixin.js +1 -0
  146. package/lib/src/shared/content-settings/components/images-field/ImagesField.mixin.d.ts +2 -2
  147. package/lib/src/shared/content-settings/components/items-field/ItemsField.mixin.d.ts +4 -3
  148. package/lib/src/shared/content-settings/components/items-field/ItemsField.mixin.js +1 -1
  149. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.d.ts +40 -40
  150. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigOptionField.mixin.d.ts +5 -6
  151. package/lib/src/shared/content-settings/components/shape-field/ShapeField.mixin.d.ts +0 -1
  152. package/lib/src/shared/content-settings/components/slider-field/SliderField.mixin.d.ts +2 -2
  153. package/lib/src/shared/content-settings/components/tel-field/TelField.mixin.d.ts +0 -1
  154. package/lib/src/shared/content-settings/components/testimonial-items-field/TestimonialItemsField.mixin.d.ts +1 -2
  155. package/lib/src/shared/content-settings/components/text-field/TextField.mixin.d.ts +0 -1
  156. package/lib/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.d.ts +1 -2
  157. package/lib/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.js +1 -1
  158. package/lib/src/shared/content-settings/components/text-style-field/TextStyleField.mixin.d.ts +28 -28
  159. package/lib/src/shared/content-settings/components/textarea-field/TextareaField.mixin.d.ts +0 -1
  160. package/lib/src/shared/content-settings/components/toggle-field/ToggleField.mixin.d.ts +2 -2
  161. package/lib/src/shared/content-settings/components/url-field/UrlField.mixin.d.ts +0 -1
  162. package/lib/src/shared/content-settings/components/youtube-video-field/YoutubeVideoField.mixin.d.ts +0 -1
  163. package/lib/src/shared/content-settings/store/content-settings-store.d.ts +39 -39
  164. package/lib/src/shared/content-settings/utils.js +0 -1
  165. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.d.ts +6 -4
  166. package/lib/src/shared/font-family-selector/FontFamilySelector.mixin.js +1 -0
  167. package/lib/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.d.ts +4 -2
  168. package/lib/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.js +1 -0
  169. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.d.ts +29 -21
  170. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.js +1 -1
  171. package/lib/src/shared/logo-settings/components/LogoSettings.mixin.d.ts +50 -51
  172. package/lib/src/shared/logo-settings/components/LogoSettingsHeader.mixin.d.ts +6 -4
  173. package/lib/src/shared/logo-settings/components/LogoSettingsHeader.mixin.js +1 -0
  174. package/lib/src/shared/logo-settings/store/editable-logo-store.js +1 -1
  175. package/lib/src/shared/logo-settings/store/logo-settings-store.d.ts +1 -1
  176. package/lib/src/shared/logo-versions/LogoVersions.mixin.d.ts +13 -5
  177. package/lib/src/shared/logo-versions/LogoVersions.mixin.js +1 -0
  178. package/lib/src/shared/models.d.ts +2 -0
  179. package/lib/src/shared/my-designs/MyDesigns.mixin.d.ts +14 -6
  180. package/lib/src/shared/my-designs/MyDesigns.mixin.js +1 -0
  181. package/lib/src/shared/my-uploads/MyMedia.mixin.d.ts +14 -5
  182. package/lib/src/shared/my-uploads/MyMedia.mixin.js +1 -0
  183. package/lib/src/shared/my-uploads/MyUploads.mixin.d.ts +14 -5
  184. package/lib/src/shared/my-uploads/MyUploads.mixin.js +1 -0
  185. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.d.ts +5 -3
  186. package/lib/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.js +1 -0
  187. package/lib/src/shared/navigation-style-settings/store/index.d.ts +2 -2
  188. package/lib/src/shared/page-navigation/store/page-navigation-store.d.ts +2 -2
  189. package/lib/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.d.ts +27 -28
  190. package/lib/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.js +0 -2
  191. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +188 -179
  192. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +181 -177
  193. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.js +1 -1
  194. package/lib/src/shared/page-settings/store/page-settings-store.d.ts +9 -9
  195. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.d.ts +39 -39
  196. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.js +0 -1
  197. package/lib/src/shared/side-bar/components/SideBar.mixin.d.ts +18 -18
  198. package/lib/src/shared/side-bar/components/SideBarTabButton.mixin.d.ts +6 -6
  199. package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +66 -60
  200. package/lib/src/shared/style-settings/store/style-settings-store.d.ts +1 -1
  201. package/lib/src/shared/style-settings/store/style-settings-store.js +1 -1
  202. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.d.ts +20 -450
  203. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.js +2 -2
  204. package/lib/src/shared/template-settings/models.d.ts +1 -0
  205. package/lib/src/shared/template-settings/store/template-settings-store.d.ts +4 -0
  206. package/lib/src/shared/template-settings/store/template-settings-store.js +79 -11
  207. package/lib/src/shared/unsplash-library/UnsplashLibrary.mixin.d.ts +9 -4
  208. package/lib/src/utils/build-asset-manifest.d.ts +4 -0
  209. package/lib/src/utils/build-asset-manifest.js +8 -0
  210. package/lib/src/utils/minify-brand-page-metadata.d.ts +0 -2
  211. package/lib/src/utils/minify-brand-page-metadata.js +2 -17
  212. package/package.json +60 -56
  213. package/src/brand-page/components/about-section/AboutSection.vue.test.ts +7 -5
  214. package/src/brand-page/components/banner-section/BannerSection.mixin.ts +210 -0
  215. package/src/brand-page/components/banner-section/BannerSection.vue +5 -1
  216. package/src/brand-page/components/brand-page-footer/BrandPageFooter.vue +1 -1
  217. package/src/brand-page/components/image/Image.mixin.ts +1 -1
  218. package/src/brand-page/components/image/Image.test.ts +1 -1
  219. package/src/brand-page/components/image-gallery/masonry/MasonryGallery.mixin.ts +1 -2
  220. package/src/brand-page/components/images-section/ImagesSection.vue +0 -1
  221. package/src/brand-page/components/logo/LogoRender.vue +188 -188
  222. package/src/brand-page/components/navigation/hamburger/HamburgerNavigation.mixin.ts +1 -0
  223. package/src/brand-page/components/navigation/navigation-side-menu/NavigationSideMenu.mixin.ts +25 -8
  224. package/src/brand-page/components/page-footer/PageFooter.vue +1 -0
  225. package/src/brand-page/components/page-header/HeaderLayout.vue +12 -6
  226. package/src/brand-page/components/page-header/PageHeader.vue +1 -0
  227. package/src/brand-page/components/shapes-section/ShapesSection.vue +1 -1
  228. package/src/brand-page/components/shop/CartModal.vue +1 -3
  229. package/src/brand-page/components/shop/FeaturedDisplay.vue +2 -2
  230. package/src/brand-page/components/shop/PaymentModal.vue +1 -5
  231. package/src/brand-page/components/shop/ProductDetailModal.vue +1 -1
  232. package/src/brand-page/components/shop/Shop.vue +1 -5
  233. package/src/brand-page/components/shop/TextDisplay.vue +1 -1
  234. package/src/brand-page/components/shop/ThumbnailDisplay.vue +2 -2
  235. package/src/brand-page/components/testimonial-section/TestimonialSection.vue +3 -3
  236. package/src/brand-page/components/text-wrapper/TextWrapper.vue +3 -1
  237. package/src/brand-page/constants/sections/footer-display.constants.ts +1 -1
  238. package/src/brand-page/models/index.ts +4 -12
  239. package/src/brand-page/models/payment.model.ts +2 -1
  240. package/src/brand-page/models/shop.model.ts +0 -2
  241. package/src/brand-page/models/user-personalisation.model.ts +1 -2
  242. package/src/brand-page/utils/__snapshots__/migration.util.test.ts.snap +3 -0
  243. package/src/brand-page/utils/__snapshots__/migration2.util.test.ts.snap +1 -0
  244. package/src/brand-page/utils/__snapshots__/model.util.test.ts.snap +2 -0
  245. package/src/brand-page/utils/migration/migration-01_1.ts +1 -1
  246. package/src/brand-page/utils/migration/migration-02.ts +0 -1
  247. package/src/brand-page/utils/migration/migration-03.ts +0 -1
  248. package/src/brand-page/utils/migration/migration-04.ts +0 -1
  249. package/src/brand-page/utils/migration/migration-05.ts +1 -5
  250. package/src/brand-page/utils/migration/migration-05_2.ts +1 -1
  251. package/src/brand-page/utils/migration/migration-08.test.ts +1 -1
  252. package/src/brand-page/utils/personalisation.util.test.ts +35 -0
  253. package/src/brand-page/utils/personalisation.util.ts +119 -23
  254. package/src/brand-page/view-models.ts +38 -56
  255. package/src/brand-page-maker/assessors/banner-section-description-visibility.assessor.ts +6 -6
  256. package/src/brand-page-maker/assessors/color-replacement-icon-visibility.assessor.ts +2 -2
  257. package/src/brand-page-maker/assessors/color-replacement-profile-visibility.assessor.ts +2 -2
  258. package/src/brand-page-maker/assessors/color-replacement-visibility.assessor.ts +2 -2
  259. package/src/brand-page-maker/assessors/contact-form-visibility.assessor.ts +14 -14
  260. package/src/brand-page-maker/components/action-bar/ActionBar.mixin.ts +1 -0
  261. package/src/brand-page-maker/components/ai-text-edit/AiActionButtons.vue +27 -12
  262. package/src/brand-page-maker/components/ai-text-edit/AiChatbox.vue +3 -2
  263. package/src/brand-page-maker/components/ai-text-edit/TextBubble.vue +8 -7
  264. package/src/brand-page-maker/components/ai-website-builder/AiWebsiteBuilder.vue +21 -1
  265. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.ts +5 -1
  266. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.stories.ts +1 -0
  267. package/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.stories.ts +2 -5
  268. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.ts +0 -5
  269. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-payment.ts +0 -8
  270. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-site-template.examples.ts +0 -2
  271. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.vue +1 -0
  272. package/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.ts +1 -1
  273. package/src/brand-page-maker/components/color-palette/BpColorPalette.vue +1 -2
  274. package/src/brand-page-maker/components/color-picker/components/ColorModeSelect.mixin.ts +1 -0
  275. package/src/brand-page-maker/components/color-picker/components/GradientColorSlider.mixin.ts +1 -0
  276. package/src/brand-page-maker/components/color-picker/components/GradientColorSliderHandler.mixin.ts +1 -0
  277. package/src/brand-page-maker/components/color-picker/components/GradientTypeSelector.mixin.ts +1 -0
  278. package/src/brand-page-maker/components/device/Device.mixin.ts +1 -0
  279. package/src/brand-page-maker/components/navigation/Navigation.mixin.ts +1 -0
  280. package/src/brand-page-maker/components/rich-text-editor/RichTextEditor.vue +3 -1
  281. package/src/brand-page-maker/components/sensitive-content/SensitiveContent.vue +1 -4
  282. package/src/brand-page-maker/components/seo-settings/DeleteDomainModal.vue +1 -1
  283. package/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.ts +1 -0
  284. package/src/brand-page-maker/components/seo-settings/SeoPageSettings.vue +1 -1
  285. package/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.ts +0 -1
  286. package/src/brand-page-maker/components/seo-settings/UrlSettings.vue +0 -1
  287. package/src/brand-page-maker/components/seo-settings/UseExistingDomainModal.vue +1 -5
  288. package/src/brand-page-maker/components/shop/AddOrEditProductContainer.vue +1 -1
  289. package/src/brand-page-maker/components/shop/ReplaceImageSettingsForShop.vue +1 -1
  290. package/src/brand-page-maker/components/social-share/SocialShare.vue +1 -1
  291. package/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.ts +22 -8
  292. package/src/brand-page-maker/components/template-preview/TemplatePreview.vue +5 -10
  293. package/src/brand-page-maker/components/template-preview/TemplatePreviewAiBadge.vue +12 -0
  294. package/src/brand-page-maker/components/video-play/VideoPlayButton.vue +1 -1
  295. package/src/brand-page-maker/composables/ai-chat/types.ts +6 -0
  296. package/src/brand-page-maker/composables/ai-chat/ui-actions.test.ts +80 -0
  297. package/src/brand-page-maker/composables/ai-chat/ui-actions.ts +58 -0
  298. package/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.ts +308 -262
  299. package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +6 -6
  300. package/src/brand-page-maker/composables/useEventTracker.ts +1 -0
  301. package/src/brand-page-maker/constants/config-settings-constant.ts +5 -5
  302. package/src/brand-page-maker/convertors/text-image-display-style.convertor.ts +1 -1
  303. package/src/brand-page-maker/models/button-styles-config.ts +4 -2
  304. package/src/brand-page-maker/models/content-settings-configs.ts +4 -2
  305. package/src/brand-page-maker/models/navigation-style-configs.ts +5 -6
  306. package/src/brand-page-maker/stores/admin-logo-settings/admin-logo-settings-store.ts +0 -1
  307. package/src/brand-page-maker/stores/brandpage-container/brand-page-container-store.ts +8 -5
  308. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.test.ts +1 -3
  309. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +12 -4
  310. package/src/brand-page-maker/stores/ui/ui-store.ts +16 -0
  311. package/src/brand-page-maker/utils/content-settings.util.ts +1 -1
  312. package/src/brand-page-maker/utils/rich-text-editor.util.ts +4 -4
  313. package/src/clients/ai-assistant-client.ts +7 -0
  314. package/src/clients/design-template-client.ts +3 -0
  315. package/src/clients/models.ts +2 -0
  316. package/src/composables/useSnapshot.ts +19 -22
  317. package/src/lib.ts +12 -0
  318. package/src/metadata-builder/builders/footer-builder.test.ts +130 -229
  319. package/src/metadata-builder/builders/footer-builder.ts +155 -90
  320. package/src/metadata-builder/builders/section-builders/image-gallery-builder.ts +88 -62
  321. package/src/metadata-builder/builders/section-builders/images-section-builder.ts +129 -66
  322. package/src/metadata-builder/builders/section-builders/shapes-section-builder.ts +160 -105
  323. package/src/metadata-builder/builders/section-builders/social-links-builder.ts +20 -65
  324. package/src/metadata-builder/builders/section-builders/testimonial-section-builder.ts +146 -83
  325. package/src/metadata-builder/builders/section-builders/text-section-builder.ts +122 -70
  326. package/src/metadata-builder/builders/section-field-utils.ts +1 -1
  327. package/src/metadata-builder/builders/shape-color-utils.ts +2 -2
  328. package/src/metadata-builder/parsers/ai-toolcall-parser.ts +7 -16
  329. package/src/metadata-builder/parsers/section-tool-arguments.ts +48 -66
  330. package/src/plugins/google-maps-plugin/google-maps-plugin.ts +8 -8
  331. package/src/shared/background-settings/components/BackgroundSettings.vue +1 -1
  332. package/src/shared/background-settings/components/background-color/BackgroundColorSettings.vue +1 -1
  333. package/src/shared/color-picker/components/ColorPicker.mixin.ts +2 -7
  334. package/src/shared/color-picker/components/ColorPickerSwatch.mixin.ts +1 -0
  335. package/src/shared/common/NumberInput.vue +1 -0
  336. package/src/shared/common/SideBarSettingsHeader.vue +2 -2
  337. package/src/shared/confirm-modal/ConfirmModal.mixin.ts +1 -0
  338. package/src/shared/content-settings/components/booking-url-field/BookingUrlField.vue +1 -0
  339. package/src/shared/content-settings/components/button-configuration-field/ButtonConfigurationField.vue +1 -0
  340. package/src/shared/content-settings/components/color-field/ColorField.vue +3 -10
  341. package/src/shared/content-settings/components/content-settings/ContentSettings.mixin.ts +1 -1
  342. package/src/shared/content-settings/components/content-settings/ContentSettingsLockedButton.vue +1 -0
  343. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.ts +5 -0
  344. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.ts +1 -14
  345. package/src/shared/content-settings/components/focused-content-item-settings/FocusedContentItemSettings.mixin.ts +4 -6
  346. package/src/shared/content-settings/components/icon-library/IconLibrary.mixin.ts +1 -0
  347. package/src/shared/content-settings/components/items-field/ItemsField.mixin.ts +1 -1
  348. package/src/shared/content-settings/components/logo-selection-field/LogoSelectionField.vue +1 -1
  349. package/src/shared/content-settings/components/logo-size-field/LogoSizeSliderField.vue +1 -1
  350. package/src/shared/content-settings/components/page-dropdown-field/PageDropdownField.vue +1 -1
  351. package/src/shared/content-settings/components/personalisation-role-field/PersonalisationRoleField.vue +4 -4
  352. package/src/shared/content-settings/components/text-image-field/TextImageField.vue +2 -8
  353. package/src/shared/content-settings/components/text-items-field/TextItemsField.mixin.ts +1 -1
  354. package/src/shared/content-settings/models.ts +3 -2
  355. package/src/shared/content-settings/utils.ts +0 -1
  356. package/src/shared/dropzone-image-uploader/components/DropzoneImageUploader.vue +1 -0
  357. package/src/shared/ecommerce-settings/store/cart-store.test.ts +1 -1
  358. package/src/shared/font-family-selector/FontFamilySelector.mixin.ts +1 -0
  359. package/src/shared/image-gallery-style-settings/ImageGalleryStyleSettings.mixin.ts +1 -0
  360. package/src/shared/logo-settings/components/EditLogoSettings.mixin.ts +1 -1
  361. package/src/shared/logo-settings/components/LogoSettings.mixin.ts +0 -1
  362. package/src/shared/logo-settings/components/LogoSettingsHeader.mixin.ts +1 -0
  363. package/src/shared/logo-settings/components/LogoStyleSettingsWithState.vue +2 -2
  364. package/src/shared/logo-settings/components/LogoTemplateSearch.vue +1 -1
  365. package/src/shared/logo-settings/store/editable-logo-store.ts +1 -1
  366. package/src/shared/logo-settings/store/logo-settings-store.test.ts +4 -4
  367. package/src/shared/logo-versions/LogoVersions.mixin.ts +1 -0
  368. package/src/shared/models.ts +6 -0
  369. package/src/shared/my-designs/MyDesigns.mixin.ts +1 -0
  370. package/src/shared/my-uploads/MyMedia.mixin.ts +1 -0
  371. package/src/shared/my-uploads/MyMediaSelectionItem.vue +2 -1
  372. package/src/shared/my-uploads/MyUploads.mixin.ts +1 -0
  373. package/src/shared/my-uploads/models.ts +1 -2
  374. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.mixin.ts +1 -0
  375. package/src/shared/navigation-style-settings/components/navigation-style-settings/NavigationStyleSettings.vue +1 -1
  376. package/src/shared/page-settings/components/new-page-modal/NewPageModal.mixin.ts +0 -3
  377. package/src/shared/page-settings/components/page-settings/NestedDraggable.vue +1 -1
  378. package/src/shared/page-settings/components/page-settings/PageSettings.vue +1 -2
  379. package/src/shared/page-settings/components/page-settings-section-styles/HeaderDisplayStyle.vue +1 -1
  380. package/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.ts +1 -1
  381. package/src/shared/page-settings/store/page-settings-store.test.ts +4 -8
  382. package/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.ts +0 -1
  383. package/src/shared/shape-library/ShapeLibrary.vue +2 -2
  384. package/src/shared/style-settings/store/style-settings-store.ts +1 -1
  385. package/src/shared/template-settings/components/TemplatesSettings.mixin.ts +2 -2
  386. package/src/shared/template-settings/models.ts +1 -0
  387. package/src/shared/template-settings/store/template-settings-store.ts +105 -18
  388. package/src/shared/unsplash-library/UnsplashLibrary.vue +2 -6
  389. package/src/shared/video-library/VideoLibrary.vue +1 -1
  390. package/src/utils/build-asset-manifest.ts +12 -0
  391. package/src/utils/minify-brand-page-metadata.ts +7 -27
  392. package/lib/src/metadata-builder/builders/item-id-utils.d.ts +0 -54
  393. package/lib/src/metadata-builder/builders/item-id-utils.js +0 -96
  394. package/src/metadata-builder/builders/item-id-utils.test.ts +0 -184
  395. package/src/metadata-builder/builders/item-id-utils.ts +0 -117
@@ -21,6 +21,13 @@ interface ButtonLinkArgs {
21
21
  */
22
22
  export declare const applyButtonLink: (content: ButtonLinkContent, args: ButtonLinkArgs) => void;
23
23
  export declare const applyScalarFields: (content: Content, args: SectionToolArguments, sectionType: string) => void;
24
+ /**
25
+ * Convert AI-sent style value to the format expected by the model.
26
+ * - letterSpacing: unitless 0-100 → em string (e.g., 50 → '0.5em')
27
+ * - null → '' (explicitly clear/reset the property)
28
+ * - everything else passes through as-is
29
+ */
30
+ export declare const normalizeStyleValue: (key: string, value: unknown) => unknown;
24
31
  /**
25
32
  * When an executor is about to mark a content-level text style "custom" by
26
33
  * clearing `textStyleType`, the resolved preset values (font, size, spacing,
@@ -58,7 +58,7 @@ export const applyScalarFields = (content, args, sectionType) => {
58
58
  * - null → '' (explicitly clear/reset the property)
59
59
  * - everything else passes through as-is
60
60
  */
61
- const normalizeStyleValue = (key, value) => {
61
+ export const normalizeStyleValue = (key, value) => {
62
62
  if (value === null)
63
63
  return '';
64
64
  if (value === undefined)
@@ -48,5 +48,5 @@ export const applyColorThemeToReplacements = (replacements, colorTheme) => repla
48
48
  ...r,
49
49
  replacementColor: replacements.length === 1
50
50
  ? colorTheme
51
- : getNewColorBasedOnTargetColorTheme(r.originalColor, colorTheme)?.toString() ?? colorTheme,
51
+ : (getNewColorBasedOnTargetColorTheme(r.originalColor, colorTheme)?.toString() ?? colorTheme),
52
52
  }));
@@ -1,6 +1,6 @@
1
1
  import type { AiAssistantToolCall } from '../../clients/ai-assistant-client';
2
2
  import type { FooterDisplayStyle, HeaderDisplayStyle, NavigationDisplayType } from '../../brand-page/constants';
3
- import type { SectionType } from './section-tool-arguments';
3
+ import type { SectionType, TextStyleArguments } from './section-tool-arguments';
4
4
  export declare const AI_ASSISTANT_TOOL_NAMES: {
5
5
  readonly UPDATE_TEXT: "updateText";
6
6
  readonly UPDATE_STYLE: "updateStyle";
@@ -99,17 +99,8 @@ export interface ReorderPagesArguments {
99
99
  export interface UndoArguments {
100
100
  }
101
101
  export interface FooterSocialLinkItem {
102
- /**
103
- * Stable id of the existing link to update or move. Omit to ADD a new link.
104
- * Mirrors the section-level item_id convention (BP-5603).
105
- */
106
- item_id?: string;
107
- /**
108
- * Id of an existing link to position this link before (insert for new links,
109
- * move for existing ones). Use "__end__" for the end of the list. Omit to
110
- * leave an existing link in place / append a new link.
111
- */
112
- move_before_item_id?: string;
102
+ item_index?: number;
103
+ insert_at?: number;
113
104
  social_link_icon?: string;
114
105
  url?: string;
115
106
  }
@@ -120,7 +111,6 @@ export interface FooterSocialLinkItem {
120
111
  export interface ViewportFooterOverrides {
121
112
  display_style?: FooterDisplayStyle;
122
113
  background_color?: string | null;
123
- copyright_text_color?: string;
124
114
  icon_color?: string;
125
115
  is_logo_visible?: boolean;
126
116
  logo_image_height?: string;
@@ -128,11 +118,12 @@ export interface ViewportFooterOverrides {
128
118
  }
129
119
  export interface UpdateFooterArguments {
130
120
  copyright_text?: string;
131
- copyright_text_font_family?: string;
121
+ /** Copyright line text-style object (typography + colour) — same shape as a section's *_style. Global: applies to both viewports. */
122
+ copyright_text_style?: TextStyleArguments;
132
123
  social_links?: FooterSocialLinkItem[];
133
124
  _replace_social_links?: boolean;
134
- /** Stable ids of social links to remove. Order-independent (replaces index-based _remove_social_link_indices). */
135
- _remove_social_link_ids?: string[];
125
+ _remove_social_link_indices?: number[];
126
+ _reorder_social_links?: number[];
136
127
  /** Desktop-only styling (display_style, background_color, icon_color, is_logo_visible, logo sizes). */
137
128
  desktop?: ViewportFooterOverrides;
138
129
  /** Mobile-only styling (display_style, background_color, icon_color, is_logo_visible, logo sizes). */
@@ -92,15 +92,10 @@ export interface ProfileSectionArguments {
92
92
  background_color?: string | null;
93
93
  }
94
94
  export interface TextSectionItem {
95
- /** Stable id of the existing item to update or move. Omit to ADD a new item. */
96
- item_id?: string;
97
- /**
98
- * Id of an existing item to position this item before (insert for new items,
99
- * move for existing ones). Use "__end__" for the end of the list. Omit to
100
- * leave an existing item in place / append a new item. Mirrors the
101
- * section-level move_before_content_id.
102
- */
103
- move_before_item_id?: string;
95
+ /** 0-based index of existing item to update in-place */
96
+ item_index?: number;
97
+ /** 0-based position to insert a new item at */
98
+ insert_at?: number;
104
99
  text?: RichTextField;
105
100
  text_style?: TextStyleArguments;
106
101
  }
@@ -113,8 +108,10 @@ export interface TextSectionArguments {
113
108
  /** Multiple text items (BrandSite) */
114
109
  items?: TextSectionItem[];
115
110
  _replace_items?: boolean;
116
- /** Stable ids of items to remove. Order-independent (no index shifting). */
117
- _remove_item_ids?: string[];
111
+ /** 0-based indices of items to remove */
112
+ _remove_item_indices?: number[];
113
+ /** New order as array of current 0-based indices */
114
+ _reorder_items?: number[];
118
115
  background_color?: string | null;
119
116
  }
120
117
  export interface ImageSectionArguments {
@@ -122,15 +119,10 @@ export interface ImageSectionArguments {
122
119
  image_title?: string;
123
120
  }
124
121
  export interface ImageGalleryItem {
125
- /** Stable id of the existing item to update or move. Omit to ADD a new item. */
126
- item_id?: string;
127
- /**
128
- * Id of an existing item to position this item before (insert for new items,
129
- * move for existing ones). Use "__end__" for the end of the list. Omit to
130
- * leave an existing item in place / append a new item. Mirrors the
131
- * section-level move_before_content_id.
132
- */
133
- move_before_item_id?: string;
122
+ /** 0-based index of existing item to update in-place */
123
+ item_index?: number;
124
+ /** 0-based position to insert a new item at */
125
+ insert_at?: number;
134
126
  image_url?: string;
135
127
  caption?: string;
136
128
  }
@@ -139,8 +131,10 @@ export interface ImageGallerySectionArguments {
139
131
  gallery_type?: 'grid' | 'carousel' | 'masonry';
140
132
  is_full_width?: boolean;
141
133
  _replace_items?: boolean;
142
- /** Stable ids of items to remove. Order-independent (no index shifting). */
143
- _remove_item_ids?: string[];
134
+ /** 0-based indices of items to remove */
135
+ _remove_item_indices?: number[];
136
+ /** New order as array of current 0-based indices */
137
+ _reorder_items?: number[];
144
138
  }
145
139
  export interface GeneralLinkSectionArguments {
146
140
  title?: string;
@@ -195,15 +189,10 @@ export interface TiktokSectionArguments {
195
189
  url?: string;
196
190
  }
197
191
  export interface SocialLink {
198
- /** Stable id of the existing item to update or move. Omit to ADD a new item. */
199
- item_id?: string;
200
- /**
201
- * Id of an existing item to position this item before (insert for new items,
202
- * move for existing ones). Use "__end__" for the end of the list. Omit to
203
- * leave an existing item in place / append a new item. Mirrors the
204
- * section-level move_before_content_id.
205
- */
206
- move_before_item_id?: string;
192
+ /** 0-based index of existing item to update in-place */
193
+ item_index?: number;
194
+ /** 0-based position to insert a new item at */
195
+ insert_at?: number;
207
196
  platform?: 'facebook' | 'x' | 'instagram' | 'youtube' | 'linkedin' | 'pinterest' | 'twitch' | 'tiktok';
208
197
  url?: string;
209
198
  }
@@ -215,8 +204,10 @@ export interface SocialLinksSectionArguments {
215
204
  /** Style for the icon container background (used when icon_style is 'square' or 'circle'). */
216
205
  icon_background_style?: TextStyleArguments;
217
206
  _replace_items?: boolean;
218
- /** Stable ids of items to remove. Order-independent (no index shifting). */
219
- _remove_item_ids?: string[];
207
+ /** 0-based indices of items to remove */
208
+ _remove_item_indices?: number[];
209
+ /** New order as array of current 0-based indices */
210
+ _reorder_items?: number[];
220
211
  }
221
212
  export interface MailingListSectionArguments {
222
213
  title?: RichTextField;
@@ -277,15 +268,10 @@ export interface AboutSectionArguments {
277
268
  background_color?: string | null;
278
269
  }
279
270
  export interface ImagesSectionItem {
280
- /** Stable id of the existing item to update or move. Omit to ADD a new item. */
281
- item_id?: string;
282
- /**
283
- * Id of an existing item to position this item before (insert for new items,
284
- * move for existing ones). Use "__end__" for the end of the list. Omit to
285
- * leave an existing item in place / append a new item. Mirrors the
286
- * section-level move_before_content_id.
287
- */
288
- move_before_item_id?: string;
271
+ /** 0-based index of existing item to update in-place */
272
+ item_index?: number;
273
+ /** 0-based position to insert a new item at */
274
+ insert_at?: number;
289
275
  image_url?: string;
290
276
  heading?: string;
291
277
  text?: string;
@@ -297,8 +283,10 @@ export interface ImagesSectionArguments {
297
283
  items?: ImagesSectionItem[];
298
284
  display_style?: 'left-aligned' | 'right-aligned' | 'centered' | 'media-only' | 'center-card-aligned-image' | 'alternate-image';
299
285
  _replace_items?: boolean;
300
- /** Stable ids of items to remove. Order-independent (no index shifting). */
301
- _remove_item_ids?: string[];
286
+ /** 0-based indices of items to remove */
287
+ _remove_item_indices?: number[];
288
+ /** New order as array of current 0-based indices */
289
+ _reorder_items?: number[];
302
290
  title_style?: TextStyleArguments;
303
291
  description_style?: TextStyleArguments;
304
292
  heading_style?: TextStyleArguments;
@@ -310,15 +298,10 @@ export interface ImagesSectionArguments {
310
298
  card_style?: CardStyleArguments;
311
299
  }
312
300
  export interface TestimonialItem {
313
- /** Stable id of the existing item to update or move. Omit to ADD a new item. */
314
- item_id?: string;
315
- /**
316
- * Id of an existing item to position this item before (insert for new items,
317
- * move for existing ones). Use "__end__" for the end of the list. Omit to
318
- * leave an existing item in place / append a new item. Mirrors the
319
- * section-level move_before_content_id.
320
- */
321
- move_before_item_id?: string;
301
+ /** 0-based index of existing item to update in-place */
302
+ item_index?: number;
303
+ /** 0-based position to insert a new item at */
304
+ insert_at?: number;
322
305
  testimonial?: string;
323
306
  name?: string;
324
307
  position?: string;
@@ -331,8 +314,10 @@ export interface TestimonialSectionArguments {
331
314
  items?: TestimonialItem[];
332
315
  display_style?: 'centered' | 'big-image' | 'columns';
333
316
  _replace_items?: boolean;
334
- /** Stable ids of items to remove. Order-independent (no index shifting). */
335
- _remove_item_ids?: string[];
317
+ /** 0-based indices of items to remove */
318
+ _remove_item_indices?: number[];
319
+ /** New order as array of current 0-based indices */
320
+ _reorder_items?: number[];
336
321
  title_style?: TextStyleArguments;
337
322
  testimonial_style?: TextStyleArguments;
338
323
  name_style?: TextStyleArguments;
@@ -341,15 +326,10 @@ export interface TestimonialSectionArguments {
341
326
  card_style?: CardStyleArguments;
342
327
  }
343
328
  export interface ShapesSectionItem {
344
- /** Stable id of the existing item to update or move. Omit to ADD a new item. */
345
- item_id?: string;
346
- /**
347
- * Id of an existing item to position this item before (insert for new items,
348
- * move for existing ones). Use "__end__" for the end of the list. Omit to
349
- * leave an existing item in place / append a new item. Mirrors the
350
- * section-level move_before_content_id.
351
- */
352
- move_before_item_id?: string;
329
+ /** 0-based index of existing item to update in-place */
330
+ item_index?: number;
331
+ /** 0-based position to insert a new item at */
332
+ insert_at?: number;
353
333
  icon_image_url?: string;
354
334
  shape_url?: string;
355
335
  color_theme?: string;
@@ -362,8 +342,10 @@ export interface ShapesSectionArguments {
362
342
  items?: ShapesSectionItem[];
363
343
  display_style?: 'left-aligned' | 'right-aligned' | 'centered' | 'media-only' | 'center-card-aligned-image' | 'alternate-image';
364
344
  _replace_items?: boolean;
365
- /** Stable ids of items to remove. Order-independent (no index shifting). */
366
- _remove_item_ids?: string[];
345
+ /** 0-based indices of items to remove */
346
+ _remove_item_indices?: number[];
347
+ /** New order as array of current 0-based indices */
348
+ _reorder_items?: number[];
367
349
  title_style?: TextStyleArguments;
368
350
  description_style?: TextStyleArguments;
369
351
  heading_style?: TextStyleArguments;
@@ -15,7 +15,7 @@ export interface AddressDetails {
15
15
  export declare class GoogleMapsPlugin {
16
16
  private initialised;
17
17
  private initialising;
18
- private readonly _options;
18
+ private readonly options;
19
19
  constructor(options: GoogleMapsPluginOptions);
20
20
  private initialise;
21
21
  private getPlacesLibrary;
@@ -12,9 +12,9 @@ export const PLACE_ID_QUERY_PREFIX = 'place_id:';
12
12
  export class GoogleMapsPlugin {
13
13
  initialised = false;
14
14
  initialising = false;
15
- _options;
15
+ options;
16
16
  constructor(options) {
17
- this._options = options;
17
+ this.options = options;
18
18
  }
19
19
  async initialise() {
20
20
  if (this.initialised || this.initialising) {
@@ -71,7 +71,7 @@ export class GoogleMapsPlugin {
71
71
  async createPlaceAutocompleteElement(options) {
72
72
  const { PlaceAutocompleteElement } = await this.getPlacesLibrary();
73
73
  return new PlaceAutocompleteElement({
74
- requestedLanguage: this._options.locale,
74
+ requestedLanguage: this.options.locale,
75
75
  ...options,
76
76
  });
77
77
  }
@@ -97,15 +97,15 @@ export class GoogleMapsPlugin {
97
97
  return scriptElement;
98
98
  }
99
99
  getGoogleScriptUrl() {
100
- const baseUrl = `https://maps.googleapis.com/maps/api/js?key=${this._options.apiKey}&libraries=places&loading=async`;
101
- return this._options.locale
102
- ? `${baseUrl}&language=${this._options.locale}`
100
+ const baseUrl = `https://maps.googleapis.com/maps/api/js?key=${this.options.apiKey}&libraries=places&loading=async`;
101
+ return this.options.locale
102
+ ? `${baseUrl}&language=${this.options.locale}`
103
103
  : baseUrl;
104
104
  }
105
105
  getEmbedGoogleMapsSrc(options) {
106
106
  const mapMode = options.mapMode || MAP_MODE_PLACE;
107
- const locale = options.locale || this._options.locale;
108
- const baseUrl = `https://www.google.com/maps/embed/v1/${mapMode}?key=${this._options.apiKey}&q=${options.query}`;
107
+ const locale = options.locale || this.options.locale;
108
+ const baseUrl = `https://www.google.com/maps/embed/v1/${mapMode}?key=${this.options.apiKey}&q=${options.query}`;
109
109
  return locale ? `${baseUrl}&language=${locale}` : baseUrl;
110
110
  }
111
111
  }
@@ -148,7 +148,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
148
148
  wordBreak?: string | undefined;
149
149
  };
150
150
  }[];
151
- personalisationRole?: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
151
+ personalisationRole?: import("../../../../brand-page").PersonalisationRole | undefined;
152
152
  media?: {
153
153
  type: import("../../../../brand-page").MediaTypes;
154
154
  } | undefined;
@@ -200,12 +200,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
200
200
  }>;
201
201
  userStore: import("pinia").Store<"brandPageMakerUser", import("@brand-page-maker/stores").UserState, {}, {
202
202
  setUserState(payload: {
203
- emailAddress?: string | undefined;
204
- userToken?: string | undefined;
205
- isAdmin?: boolean | undefined;
206
- hasPremiumSubscription?: boolean | undefined;
207
- brandPageCommissionPercentage?: number | undefined;
208
- features?: Partial<import("../../../../constants/ui").UIUserFeatures> | undefined;
203
+ emailAddress?: string;
204
+ userToken?: string;
205
+ isAdmin?: boolean;
206
+ hasPremiumSubscription?: boolean;
207
+ brandPageCommissionPercentage?: number;
208
+ features?: Partial<import("@brand-page-maker/stores").UserFeatures>;
209
209
  }): void;
210
210
  }>;
211
211
  backgroundSettingsStore: import("pinia").Store<"uiBackgroundSettings", import("../../store").BackgroundSettingsState, {
@@ -213,11 +213,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
213
213
  }, {
214
214
  onBackgroundChanged(): void;
215
215
  setBackgroundStyle({ backgroundStyle, }: {
216
- backgroundStyle: Partial<Omit<BrandPageCssStyle, "backgroundColor">>;
216
+ backgroundStyle: import("../../../../brand-page").BackgroundStyle;
217
217
  }): void;
218
218
  setBackgroundShapes(payload: import("../../../../brand-page").BackgroundShape[]): void;
219
219
  setBackgroundPersonalisationRole(payload: {
220
- personalisationRole: "website" | "email" | "phone" | "profile" | "about" | "information" | "media" | undefined;
220
+ personalisationRole: import("../../../../brand-page").PersonalisationRole | undefined;
221
221
  }): void;
222
222
  setBackgroundShapeStyle(payload: BrandPageCssStyle): void;
223
223
  setPrimaryBackgroundShapeStyle(payload: BrandPageCssStyle): void;
@@ -226,9 +226,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
226
226
  }): void;
227
227
  addBackgroundShape({ shapeUrl, width, height, aspectRatio, }: {
228
228
  shapeUrl: string;
229
- width?: number | undefined;
230
- height?: number | undefined;
231
- aspectRatio?: number | undefined;
229
+ width?: number;
230
+ height?: number;
231
+ aspectRatio?: number;
232
232
  }): void;
233
233
  deleteBackgroundShape({ shapeIndex }: {
234
234
  shapeIndex: number;
@@ -243,7 +243,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
243
243
  setBackgroundShapeSettings(payload: import("../../background-settings-models").SetBackgroundShapeSettingsPayload): void;
244
244
  setRecommendedLogoColors(payload: import("../../background-settings-models").SetRecommendedLogoColorsPayload): void;
245
245
  setBackgroundMode(payload: {
246
- backgroundMode: "images" | "edit";
246
+ backgroundMode: import("@brand-page-maker/stores").BrandPageSettingsMode;
247
247
  }): void;
248
248
  setBackgroundMedia(payload: import("../../../my-uploads/models").MediaBaseSelectedPayload): void;
249
249
  removeBackgroundVideo(): void;
@@ -29,9 +29,9 @@ export declare const useUiBackgroundSettingsStore: import("pinia").StoreDefiniti
29
29
  }): void;
30
30
  addBackgroundShape({ shapeUrl, width, height, aspectRatio, }: {
31
31
  shapeUrl: string;
32
- width?: number | undefined;
33
- height?: number | undefined;
34
- aspectRatio?: number | undefined;
32
+ width?: number;
33
+ height?: number;
34
+ aspectRatio?: number;
35
35
  }): void;
36
36
  deleteBackgroundShape({ shapeIndex }: {
37
37
  shapeIndex: number;
@@ -52,7 +52,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
52
52
  deselectAllColors(): void;
53
53
  onV2ColorPickerChanged(): void;
54
54
  dispatch(color: ColorValue): void;
55
- }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
55
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "on-color-select"[], "on-color-select", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
56
56
  customGroups: {
57
57
  type: ArrayConstructor;
58
58
  required: false;
@@ -83,7 +83,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
83
83
  required: false;
84
84
  default: () => boolean;
85
85
  };
86
- }>> & Readonly<{}>, {
86
+ }>> & Readonly<{
87
+ "onOn-color-select"?: ((...args: any[]) => any) | undefined;
88
+ }>, {
87
89
  size: string;
88
90
  customGroups: unknown[];
89
91
  isNewColor: boolean;
@@ -2,10 +2,9 @@ import { defineComponent } from 'vue';
2
2
  import { Icon } from '@designcrowd/fe-shared-lib';
3
3
  import ColorPickerSwatch from './ColorPickerSwatch.vue';
4
4
  import { DEFAULT_COLORS, DEFAULT_GRADIENT_COLORS } from '../constants';
5
- import { RGBAtoHex, hexToRGB, arrayToLinearGradient, isRgbColor, } from '@utils/helpers';
5
+ import { RGBAtoHex, arrayToLinearGradient, isRgbColor } from '@utils/helpers';
6
6
  import { normalizeColorToHex, colorsMatch } from '@brand-page/utils/style.util';
7
7
  import { colorPickerTr } from '@src/composables/useTranslate';
8
- import { useUiStyleSettingsStore } from '../../style-settings/store';
9
8
  // Simple session storage for newColors (persists during browser session, clears on refresh)
10
9
  let sessionNewColors = [];
11
10
  export default defineComponent({
@@ -45,6 +44,7 @@ export default defineComponent({
45
44
  default: () => false,
46
45
  },
47
46
  },
47
+ emits: ['on-color-select'],
48
48
  data() {
49
49
  const groups = [];
50
50
  const newColors = [];
@@ -9,10 +9,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
9
9
  isTransparent(): boolean;
10
10
  }, {
11
11
  onClick(): void;
12
- }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
12
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
13
13
  color: {
14
14
  type: ObjectConstructor;
15
15
  required: true;
16
16
  };
17
- }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
17
+ }>> & Readonly<{
18
+ onClick?: ((...args: any[]) => any) | undefined;
19
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
18
20
  export default _default;
@@ -6,6 +6,7 @@ export default defineComponent({
6
6
  required: true,
7
7
  },
8
8
  },
9
+ emits: ['click'],
9
10
  data() {
10
11
  const styles = this.color.styles;
11
12
  return {
@@ -14,7 +14,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
14
14
  }, {}, {}, {
15
15
  onCancel(): void;
16
16
  onConfirm(): void;
17
- }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
17
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("cancel" | "confirm")[], "cancel" | "confirm", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
18
18
  visible: {
19
19
  type: BooleanConstructor;
20
20
  default: boolean;
@@ -24,7 +24,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
24
24
  default: undefined;
25
25
  required: false;
26
26
  };
27
- }>> & Readonly<{}>, {
27
+ }>> & Readonly<{
28
+ onCancel?: ((...args: any[]) => any) | undefined;
29
+ onConfirm?: ((...args: any[]) => any) | undefined;
30
+ }>, {
28
31
  description: string;
29
32
  visible: boolean;
30
33
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -13,6 +13,7 @@ export default defineComponent({
13
13
  required: false,
14
14
  },
15
15
  },
16
+ emits: ['confirm', 'cancel'],
16
17
  setup() {
17
18
  const containerStore = useBrandPageContainerStore();
18
19
  return {
@@ -1,4 +1,3 @@
1
- /// <reference types="types/lodash-shims" />
2
1
  import type { DebounceHandle } from 'lodash.debounce';
3
2
  import type { PropType } from 'vue';
4
3
  import type { ContentItemFieldSettings } from '../models';