@designcrowd/library.brand-page 5.18.3-undo-38 → 5.18.3

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 (112) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-ydEGYl5O.js → CreatedOnBrandCrowd-de-de-CkuAAwKQ.js} +1 -1
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-BiJ8RmwM.js → CreatedOnBrandCrowd-en-us-Coln5kSU.js} +1 -1
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-C8CyL1ny.js → CreatedOnBrandCrowd-es-es-raGyXChm.js} +1 -1
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-BMh0yIJJ.js → CreatedOnBrandCrowd-fr-ca-BT_WYYxW.js} +1 -1
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-BMh0yIJJ.js → CreatedOnBrandCrowd-fr-fr-BT_WYYxW.js} +1 -1
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-C0DghlQk.js → CreatedOnBrandCrowd-pt-br-BRbD_kiI.js} +1 -1
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-C0DghlQk.js → CreatedOnBrandCrowd-pt-pt-BRbD_kiI.js} +1 -1
  8. package/lib/src/{CreatedOnDcom-de-de-CZEnW0qm.js → CreatedOnDcom-de-de-DetCIFxa.js} +1 -1
  9. package/lib/src/{CreatedOnDcom-en-us-DPpRkfrD.js → CreatedOnDcom-en-us-D0LeF_V2.js} +1 -1
  10. package/lib/src/{CreatedOnDcom-es-es-8yTtB23v.js → CreatedOnDcom-es-es-CHa4stWS.js} +1 -1
  11. package/lib/src/{CreatedOnDcom-fr-ca-DdGwSBLy.js → CreatedOnDcom-fr-ca-ntW7A335.js} +1 -1
  12. package/lib/src/{CreatedOnDcom-fr-fr-DRGbffC4.js → CreatedOnDcom-fr-fr-C6rQcclc.js} +1 -1
  13. package/lib/src/{CreatedOnDcom-pt-br-CWm_1vbQ.js → CreatedOnDcom-pt-br-Cn07ZK_m.js} +1 -1
  14. package/lib/src/{CreatedOnDcom-pt-pt-DZBR79tn.js → CreatedOnDcom-pt-pt-CewmqYVY.js} +1 -1
  15. package/lib/src/brand-page-maker/components/action-bar/ActionBar.mixin.d.ts +2 -7
  16. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +2 -7
  17. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.js +0 -10
  18. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMakerTemplateSettings.mixin.d.ts +2 -7
  19. package/lib/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.js +0 -1
  20. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +2 -87
  21. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.js +0 -5
  22. package/lib/src/brand-page-maker/components/brandpage-settings/ReplaceImageSettingsForBrandPageSettings.mixin.d.ts +2 -7
  23. package/lib/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.d.ts +0 -3
  24. package/lib/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.js +0 -11
  25. package/lib/src/brand-page-maker/components/seo-settings/SeoPageSettings.mixin.d.ts +2 -7
  26. package/lib/src/brand-page-maker/components/seo-settings/UrlSettings.mixin.d.ts +2 -7
  27. package/lib/src/brand-page-maker/components/social-share/SocialShare.mixin.d.ts +2 -7
  28. package/lib/src/brand-page-maker/components/template-preview/TemplatePreview.mixin.d.ts +2 -7
  29. package/lib/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.js +0 -9
  30. package/lib/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.js +1 -20
  31. package/lib/src/brand-page-maker/composables/useEventTracker.d.ts +0 -20
  32. package/lib/src/brand-page-maker/composables/useEventTracker.js +0 -17
  33. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.d.ts +2 -41
  34. package/lib/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.js +5 -307
  35. package/lib/src/brand-page-maker/stores/logo-store/logo-store.d.ts +0 -1
  36. package/lib/src/brand-page-maker/stores/user/user-store.js +0 -1
  37. package/lib/src/bundled-translations-B5Fkt3qd.js +175 -0
  38. package/lib/src/bundles/bundled-translations.json +1 -3
  39. package/lib/src/constants/ui.d.ts +0 -1
  40. package/lib/src/css/library.brand-page-brandCrowd.min.css +15 -20
  41. package/lib/src/css/library.brand-page-brandPage.min.css +16 -20
  42. package/lib/src/css/library.brand-page-designCom.min.css +15 -20
  43. package/lib/src/css/library.brand-page-preview.min.css +15 -20
  44. package/lib/src/index.mjs +1 -1
  45. package/lib/src/{lib-BZlXQjdd.js → lib-CGfmcIBb.js} +29373 -29970
  46. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +2 -87
  47. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.js +0 -5
  48. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.stories.js +0 -1
  49. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +2 -23
  50. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +0 -16
  51. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.d.ts +2 -7
  52. package/lib/src/shared/content-settings/components/draggable-item-list/DraggableItemList.mixin.d.ts +0 -3
  53. package/lib/src/shared/content-settings/components/draggable-item-list/DraggableItemList.mixin.js +2 -19
  54. package/lib/src/shared/content-settings/components/form-fields-field/FormFieldsField.mixin.js +8 -18
  55. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.d.ts +0 -64
  56. package/lib/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.js +0 -6
  57. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.d.ts +0 -19
  58. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.js +0 -11
  59. package/lib/src/shared/logo-settings/components/LogoSettings.mixin.d.ts +2 -10
  60. package/lib/src/shared/logo-settings/store/editable-logo-store.d.ts +1 -5
  61. package/lib/src/shared/logo-settings/store/editable-logo-store.js +0 -31
  62. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +2 -24
  63. package/lib/src/shared/page-settings/components/page-settings-section-styles/PageSettingsSectionStyles.mixin.d.ts +2 -10
  64. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.d.ts +2 -23
  65. package/lib/src/shared/side-bar/components/SideBarTabButton.mixin.d.ts +0 -16
  66. package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +2 -23
  67. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.d.ts +0 -16
  68. package/package.json +1 -1
  69. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.ts +0 -11
  70. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.vue +3 -2
  71. package/src/brand-page-maker/components/brand-page-maker/__fixtures__/brand-page-examples.ts +0 -1
  72. package/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.ts +0 -5
  73. package/src/brand-page-maker/components/cookie-collection/CookieSettings.vue +17 -18
  74. package/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.mixin.ts +0 -13
  75. package/src/brand-page-maker/components/quick-link-bar/QuickLinkBar.vue +3 -26
  76. package/src/brand-page-maker/components/quick-link-bar/i18n/quick-link-bar.json +1 -3
  77. package/src/brand-page-maker/components/save-contact/SaveContact.vue +19 -12
  78. package/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.ts +0 -10
  79. package/src/brand-page-maker/composables/rich-text-editor/useRichTextEditor.ts +1 -24
  80. package/src/brand-page-maker/composables/useEventTracker.ts +0 -29
  81. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.test.ts +0 -335
  82. package/src/brand-page-maker/stores/brandpage-maker/brandpage-maker-store.ts +4 -371
  83. package/src/brand-page-maker/stores/logo-store/logo-store.ts +0 -5
  84. package/src/brand-page-maker/stores/user/user-store.ts +0 -1
  85. package/src/bundles/bundled-translations.json +1 -3
  86. package/src/constants/ui.ts +0 -1
  87. package/src/shared/content-settings/components/content-settings/ContentSettings.mixin.ts +0 -5
  88. package/src/shared/content-settings/components/content-settings/ContentSettings.stories.ts +0 -1
  89. package/src/shared/content-settings/components/draggable-item-list/DraggableItemList.mixin.ts +2 -19
  90. package/src/shared/content-settings/components/draggable-item-list/DraggableItemList.vue +1 -1
  91. package/src/shared/content-settings/components/form-fields-field/FormFieldsField.mixin.ts +10 -26
  92. package/src/shared/content-settings/components/logo-selection-field/LogoSelection.vue +48 -63
  93. package/src/shared/content-settings/components/page-dropdown-field/PageDropdownField.vue +0 -4
  94. package/src/shared/content-settings/components/payment-config-field/PaymentConfigField.mixin.ts +0 -7
  95. package/src/shared/content-settings/components/text-field/TextField.vue +0 -1
  96. package/src/shared/content-settings/components/text-image-field/TextImageField.vue +4 -33
  97. package/src/shared/logo-settings/components/EditLogoSettings.mixin.ts +0 -11
  98. package/src/shared/logo-settings/store/editable-logo-store.ts +1 -42
  99. package/lib/src/brand-page-maker/composables/useUndoRedoFlag.d.ts +0 -16
  100. package/lib/src/brand-page-maker/composables/useUndoRedoFlag.js +0 -22
  101. package/lib/src/brand-page-maker/stores/history/history-store.d.ts +0 -83
  102. package/lib/src/brand-page-maker/stores/history/history-store.js +0 -495
  103. package/lib/src/bundled-translations-D1q3rSEz.js +0 -175
  104. package/lib/src/metadata-builder/builders/reorder-pages-builder.d.ts +0 -13
  105. package/lib/src/metadata-builder/builders/reorder-pages-builder.js +0 -49
  106. package/src/brand-page-maker/components/quick-link-bar/RedoButton.vue +0 -66
  107. package/src/brand-page-maker/components/quick-link-bar/UndoButton.vue +0 -66
  108. package/src/brand-page-maker/components/quick-link-bar/undo-redo-buttons.test.ts +0 -116
  109. package/src/brand-page-maker/composables/useUndoRedoFlag.ts +0 -26
  110. package/src/brand-page-maker/stores/history/history-store.test.ts +0 -1120
  111. package/src/brand-page-maker/stores/history/history-store.ts +0 -660
  112. package/src/metadata-builder/builders/reorder-pages-builder.ts +0 -80
@@ -134,21 +134,16 @@ declare const _default: import("vue").DefineComponent<{}, {
134
134
  hideChangeTemplateConfirmModal(): void;
135
135
  onBackgroundChanged(): void;
136
136
  onChangeTemplateConfirmModalCancel(): void;
137
- onChangeTemplateConfirmModalConfirm(): Promise<void>;
137
+ onChangeTemplateConfirmModalConfirm(): void;
138
138
  onContentChanged(): void;
139
139
  onStyleChanged(): void;
140
- onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): Promise<void>;
140
+ onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): void;
141
141
  setSelectedTabName(payload: any): void;
142
142
  showNextNotificationMessage(): Promise<void>;
143
143
  updateContent<TContent extends Content, P extends {
144
144
  id: string;
145
145
  content: TContent;
146
146
  }>(payload: P): Promise<void>;
147
- _captureTemplateSwitchIfEnabled(): void;
148
- applyHistorySnapshot(snapshot: import("@brand-page").BrandPageModel, activePageId?: string | undefined, logoEditsStr?: string | undefined): Promise<void>;
149
- _syncLogoSettingsFromSnapshot(snapshot: import("@brand-page").BrandPageModel, logoEditsStr?: string | undefined): Promise<void>;
150
- _navigateToActivePage(activePageId?: string | undefined): void;
151
- _fallbackSidebarIfSelectedContentMissing(snapshot: import("@brand-page").BrandPageModel): void;
152
147
  export(): import("@brand-page").BrandPageModel;
153
148
  setBrandPageType({ brandPageType }: {
154
149
  brandPageType: "default" | "brandSite" | "brandContact";
@@ -789,22 +784,6 @@ declare const _default: import("vue").DefineComponent<{}, {
789
784
  }>;
790
785
  eventTracker: {
791
786
  sendShippingToggleEvent: (isEnabled: boolean) => void;
792
- sendUndoEvent: (props: {
793
- entries_count: number;
794
- actor: string | undefined;
795
- }) => void;
796
- sendRedoEvent: (props: {
797
- entries_count: number;
798
- actor: string | undefined;
799
- }) => void;
800
- sendHistoryCappedEvent: (props: {
801
- entries_count: number;
802
- size_bytes: number;
803
- }) => void;
804
- sendHistoryOversizedEvent: (props: {
805
- attempted_bytes: number;
806
- source: string;
807
- }) => void;
808
787
  sendSaveContactEvent: () => void;
809
788
  sendStartForFreeEvent: () => void;
810
789
  sendFooterLinkClickEvent: (linkType: "watermark_logo" | "create_your_website") => void;
@@ -844,70 +823,6 @@ declare const _default: import("vue").DefineComponent<{}, {
844
823
  sendAiSendPromptEvent: (ctaLocation: string) => void;
845
824
  sendAiStopGenerationEvent: (ctaLocation: string) => void;
846
825
  };
847
- historyStore: import("pinia").Store<"history", Pick<{
848
- entries: import("vue").ShallowRef<import("@brand-page-maker/stores/history/history-store").HistoryEntry[], import("@brand-page-maker/stores/history/history-store").HistoryEntry[]>;
849
- currentIndex: import("vue").Ref<number, number>;
850
- isApplyingSnapshot: import("vue").Ref<boolean, boolean>;
851
- baselineCaptured: import("vue").Ref<boolean, boolean>;
852
- canUndo: import("vue").ComputedRef<boolean>;
853
- canRedo: import("vue").ComputedRef<boolean>;
854
- captureBaseline: () => void;
855
- capture: (args: {
856
- source: "manual_edit" | "template_switch" | "ai_changeset" | "rich_text";
857
- actor: "user" | "ai_builder";
858
- label?: string | undefined;
859
- }) => "committed" | "oversized" | "noop" | "skipped";
860
- captureTemplateSwitch: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
861
- captureAiChangeset: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
862
- mergeNextMutation: () => void;
863
- undo: () => Promise<void>;
864
- redo: () => Promise<void>;
865
- reset: () => void;
866
- getCurrentSizeBytes: () => number;
867
- getCurrentEntryCount: () => number;
868
- }, "entries" | "currentIndex" | "isApplyingSnapshot" | "baselineCaptured">, Pick<{
869
- entries: import("vue").ShallowRef<import("@brand-page-maker/stores/history/history-store").HistoryEntry[], import("@brand-page-maker/stores/history/history-store").HistoryEntry[]>;
870
- currentIndex: import("vue").Ref<number, number>;
871
- isApplyingSnapshot: import("vue").Ref<boolean, boolean>;
872
- baselineCaptured: import("vue").Ref<boolean, boolean>;
873
- canUndo: import("vue").ComputedRef<boolean>;
874
- canRedo: import("vue").ComputedRef<boolean>;
875
- captureBaseline: () => void;
876
- capture: (args: {
877
- source: "manual_edit" | "template_switch" | "ai_changeset" | "rich_text";
878
- actor: "user" | "ai_builder";
879
- label?: string | undefined;
880
- }) => "committed" | "oversized" | "noop" | "skipped";
881
- captureTemplateSwitch: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
882
- captureAiChangeset: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
883
- mergeNextMutation: () => void;
884
- undo: () => Promise<void>;
885
- redo: () => Promise<void>;
886
- reset: () => void;
887
- getCurrentSizeBytes: () => number;
888
- getCurrentEntryCount: () => number;
889
- }, "canUndo" | "canRedo">, Pick<{
890
- entries: import("vue").ShallowRef<import("@brand-page-maker/stores/history/history-store").HistoryEntry[], import("@brand-page-maker/stores/history/history-store").HistoryEntry[]>;
891
- currentIndex: import("vue").Ref<number, number>;
892
- isApplyingSnapshot: import("vue").Ref<boolean, boolean>;
893
- baselineCaptured: import("vue").Ref<boolean, boolean>;
894
- canUndo: import("vue").ComputedRef<boolean>;
895
- canRedo: import("vue").ComputedRef<boolean>;
896
- captureBaseline: () => void;
897
- capture: (args: {
898
- source: "manual_edit" | "template_switch" | "ai_changeset" | "rich_text";
899
- actor: "user" | "ai_builder";
900
- label?: string | undefined;
901
- }) => "committed" | "oversized" | "noop" | "skipped";
902
- captureTemplateSwitch: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
903
- captureAiChangeset: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
904
- mergeNextMutation: () => void;
905
- undo: () => Promise<void>;
906
- redo: () => Promise<void>;
907
- reset: () => void;
908
- getCurrentSizeBytes: () => number;
909
- getCurrentEntryCount: () => number;
910
- }, "reset" | "undo" | "redo" | "captureBaseline" | "capture" | "captureTemplateSwitch" | "captureAiChangeset" | "mergeNextMutation" | "getCurrentSizeBytes" | "getCurrentEntryCount">>;
911
826
  externalEditor: import("@tiptap/vue-3").Editor;
912
827
  }, {
913
828
  categoryTabs: CategoryTab[];
@@ -11,7 +11,6 @@ import { useExternalRichTextEditor } from '@brand-page-maker/composables/rich-te
11
11
  import { switchAllContentToRTE, transformToRTE, RTE_ALLOWED_SECTION_TYPES, } from '@brand-page-maker/utils';
12
12
  import { useUiStyleSettingsStore } from '../../../style-settings/store';
13
13
  import { usePageNavigationStore } from '../../../../shared/page-navigation/store/page-navigation-store';
14
- import { useHistoryStore } from '@brand-page-maker/stores/history/history-store';
15
14
  export default defineComponent({
16
15
  setup() {
17
16
  const brandPageMakerStore = useBrandPageMakerStore();
@@ -21,7 +20,6 @@ export default defineComponent({
21
20
  const styleSettingsStore = useUiStyleSettingsStore();
22
21
  const userStore = useBrandPageMakerUserStore();
23
22
  const eventTracker = useEventTracker();
24
- const historyStore = useHistoryStore();
25
23
  const { externalEditor } = useExternalRichTextEditor();
26
24
  return {
27
25
  mode: computed(() => contentSettingsStore.mode),
@@ -38,7 +36,6 @@ export default defineComponent({
38
36
  pageSettingsStore,
39
37
  styleSettingsStore,
40
38
  eventTracker,
41
- historyStore,
42
39
  externalEditor,
43
40
  };
44
41
  },
@@ -55,8 +52,6 @@ export default defineComponent({
55
52
  },
56
53
  mounted() {
57
54
  if (this.canUseRichTextEditor) {
58
- // RTE rewrap on tab mount — fold into current head.
59
- this.historyStore.mergeNextMutation();
60
55
  switchAllContentToRTE(this.pageSettingsStore, this.externalEditor, this.styleSettingsStore);
61
56
  }
62
57
  },
@@ -26,7 +26,6 @@ export const Sample = () => {
26
26
  canUseGettyVideos: true,
27
27
  canUseGoogleAdsense: false,
28
28
  googleAdsenseEnabled: false,
29
- canUseUndoRedo: false,
30
29
  };
31
30
  const pinia = setupStoryPinia();
32
31
  const contentSettingsStore = useUiContentSettingsStore();
@@ -650,21 +650,16 @@ declare const _default: import("vue").DefineComponent<{}, {
650
650
  hideChangeTemplateConfirmModal(): void;
651
651
  onBackgroundChanged(): void;
652
652
  onChangeTemplateConfirmModalCancel(): void;
653
- onChangeTemplateConfirmModalConfirm(): Promise<void>;
653
+ onChangeTemplateConfirmModalConfirm(): void;
654
654
  onContentChanged(): void;
655
655
  onStyleChanged(): void;
656
- onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): Promise<void>;
656
+ onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): void;
657
657
  setSelectedTabName(payload: any): void;
658
658
  showNextNotificationMessage(): Promise<void>;
659
659
  updateContent<TContent extends import("@brand-page").Content, P extends {
660
660
  id: string;
661
661
  content: TContent;
662
662
  }>(payload: P): Promise<void>;
663
- _captureTemplateSwitchIfEnabled(): void;
664
- applyHistorySnapshot(snapshot: import("@brand-page").BrandPageModel, activePageId?: string | undefined, logoEditsStr?: string | undefined): Promise<void>;
665
- _syncLogoSettingsFromSnapshot(snapshot: import("@brand-page").BrandPageModel, logoEditsStr?: string | undefined): Promise<void>;
666
- _navigateToActivePage(activePageId?: string | undefined): void;
667
- _fallbackSidebarIfSelectedContentMissing(snapshot: import("@brand-page").BrandPageModel): void;
668
663
  export(): import("@brand-page").BrandPageModel;
669
664
  setBrandPageType({ brandPageType }: {
670
665
  brandPageType: "default" | "brandSite" | "brandContact";
@@ -737,22 +732,6 @@ declare const _default: import("vue").DefineComponent<{}, {
737
732
  }>;
738
733
  bpEventTracker: {
739
734
  sendShippingToggleEvent: (isEnabled: boolean) => void;
740
- sendUndoEvent: (props: {
741
- entries_count: number;
742
- actor: string | undefined;
743
- }) => void;
744
- sendRedoEvent: (props: {
745
- entries_count: number;
746
- actor: string | undefined;
747
- }) => void;
748
- sendHistoryCappedEvent: (props: {
749
- entries_count: number;
750
- size_bytes: number;
751
- }) => void;
752
- sendHistoryOversizedEvent: (props: {
753
- attempted_bytes: number;
754
- source: string;
755
- }) => void;
756
735
  sendSaveContactEvent: () => void;
757
736
  sendStartForFreeEvent: () => void;
758
737
  sendFooterLinkClickEvent: (linkType: "watermark_logo" | "create_your_website") => void;
@@ -474,22 +474,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
474
474
  }>;
475
475
  eventTracker: {
476
476
  sendShippingToggleEvent: (isEnabled: boolean) => void;
477
- sendUndoEvent: (props: {
478
- entries_count: number;
479
- actor: string | undefined;
480
- }) => void;
481
- sendRedoEvent: (props: {
482
- entries_count: number;
483
- actor: string | undefined;
484
- }) => void;
485
- sendHistoryCappedEvent: (props: {
486
- entries_count: number;
487
- size_bytes: number;
488
- }) => void;
489
- sendHistoryOversizedEvent: (props: {
490
- attempted_bytes: number;
491
- source: string;
492
- }) => void;
493
477
  sendSaveContactEvent: () => void;
494
478
  sendStartForFreeEvent: () => void;
495
479
  sendFooterLinkClickEvent: (linkType: "watermark_logo" | "create_your_website") => void;
@@ -597,21 +597,16 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
597
597
  hideChangeTemplateConfirmModal(): void;
598
598
  onBackgroundChanged(): void;
599
599
  onChangeTemplateConfirmModalCancel(): void;
600
- onChangeTemplateConfirmModalConfirm(): Promise<void>;
600
+ onChangeTemplateConfirmModalConfirm(): void;
601
601
  onContentChanged(): void;
602
602
  onStyleChanged(): void;
603
- onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): Promise<void>;
603
+ onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): void;
604
604
  setSelectedTabName(payload: any): void;
605
605
  showNextNotificationMessage(): Promise<void>;
606
606
  updateContent<TContent extends Content, P extends {
607
607
  id: string;
608
608
  content: TContent;
609
609
  }>(payload: P): Promise<void>;
610
- _captureTemplateSwitchIfEnabled(): void;
611
- applyHistorySnapshot(snapshot: import("@brand-page").BrandPageModel, activePageId?: string | undefined, logoEditsStr?: string | undefined): Promise<void>;
612
- _syncLogoSettingsFromSnapshot(snapshot: import("@brand-page").BrandPageModel, logoEditsStr?: string | undefined): Promise<void>;
613
- _navigateToActivePage(activePageId?: string | undefined): void;
614
- _fallbackSidebarIfSelectedContentMissing(snapshot: import("@brand-page").BrandPageModel): void;
615
610
  export(): import("@brand-page").BrandPageModel;
616
611
  setBrandPageType({ brandPageType }: {
617
612
  brandPageType: "default" | "brandSite" | "brandContact";
@@ -59,8 +59,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
59
59
  schema: string;
60
60
  textIcon: string;
61
61
  textIcons: string[];
62
- focusedIndex: number | null;
63
- focusedDisplay: string;
64
62
  }, {
65
63
  items: {
66
64
  get(): DraggableItem[];
@@ -81,7 +79,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
81
79
  setItemValue(index: number, itemValue: string): void;
82
80
  onColorReplacementsChange(payload: UpdateItemValuePayload<ColorReplacement[]>, index: number): void;
83
81
  onFocusOverride(index: number, itemValue: string): void;
84
- inputDisplayValue(index: number): string;
85
82
  onBlurOverride(index: number, itemValue: string): void;
86
83
  isImageUrl(url: string): boolean;
87
84
  }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:model-value" | "on-intent-image-replace" | "on-color-replacements-change")[], "update:model-value" | "on-intent-image-replace" | "on-color-replacements-change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -70,12 +70,6 @@ export default defineComponent({
70
70
  schema: 'https',
71
71
  textIcon: 'globe',
72
72
  textIcons: [],
73
- // Display-only override for the focused URL input. While a row is
74
- // focused we strip the schema visually but MUST NOT mutate modelValue —
75
- // doing so would land in the store and trigger a spurious undo/redo
76
- // history entry between focus and blur (BP-5506).
77
- focusedIndex: null,
78
- focusedDisplay: '',
79
73
  }),
80
74
  computed: {
81
75
  items: {
@@ -149,25 +143,14 @@ export default defineComponent({
149
143
  this.$emit('on-color-replacements-change', payload, index);
150
144
  },
151
145
  onFocusOverride(index, itemValue) {
146
+ const value = [...this.modelValue];
152
147
  const match = URL_RE.exec(itemValue);
153
148
  if (match) {
154
149
  this.schema = match[1];
155
- this.focusedIndex = index;
156
- this.focusedDisplay = match[2];
157
- }
158
- else {
159
- this.focusedIndex = index;
160
- this.focusedDisplay = itemValue;
150
+ value[index][this.valuePropName] = match[2];
161
151
  }
162
152
  },
163
- inputDisplayValue(index) {
164
- return this.focusedIndex === index
165
- ? this.focusedDisplay
166
- : this.itemValue(index);
167
- },
168
153
  onBlurOverride(index, itemValue) {
169
- this.focusedIndex = null;
170
- this.focusedDisplay = '';
171
154
  const value = [...this.modelValue];
172
155
  let isValid = true;
173
156
  if (isEmail(itemValue)) {
@@ -1,4 +1,4 @@
1
- import { defineComponent, ref, watch } from 'vue';
1
+ import { defineComponent, ref } from 'vue';
2
2
  import { formFieldsTr } from '@src/composables/useTranslate';
3
3
  export default defineComponent({
4
4
  props: {
@@ -45,26 +45,16 @@ export default defineComponent({
45
45
  type: 'phone',
46
46
  },
47
47
  ];
48
- const valueWithState = ref(props.value.map((field) => ({
49
- field,
50
- isCollapsed: true,
51
- isTypeDropdownOpen: false,
52
- })));
53
- // Re-sync when the store-bound value changes externally (e.g. undo/redo
54
- // via history-store). Preserve per-row UI flags (isCollapsed,
55
- // isTypeDropdownOpen) by index so an undo doesn't snap rows back to
56
- // collapsed state.
57
- watch(() => props.value, (newVal) => {
58
- valueWithState.value = newVal.map((field, index) => ({
59
- field,
60
- isCollapsed: valueWithState.value[index]?.isCollapsed ?? true,
61
- isTypeDropdownOpen: valueWithState.value[index]?.isTypeDropdownOpen ?? false,
62
- }));
63
- });
64
48
  return {
65
49
  formFieldsTr,
66
50
  typeList,
67
- valueWithState,
51
+ valueWithState: ref(props.value.map((field) => {
52
+ return {
53
+ field: field,
54
+ isCollapsed: true,
55
+ isTypeDropdownOpen: false,
56
+ };
57
+ })),
68
58
  };
69
59
  },
70
60
  methods: {
@@ -483,70 +483,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
483
483
  collapseAllSections(): void;
484
484
  setPreviousSelectedDisplayStyle(viewport: string, displayStyle: string): void;
485
485
  }>;
486
- historyStore: import("pinia").Store<"history", Pick<{
487
- entries: import("vue").ShallowRef<import("@brand-page-maker/stores/history/history-store").HistoryEntry[], import("@brand-page-maker/stores/history/history-store").HistoryEntry[]>;
488
- currentIndex: import("vue").Ref<number, number>;
489
- isApplyingSnapshot: import("vue").Ref<boolean, boolean>;
490
- baselineCaptured: import("vue").Ref<boolean, boolean>;
491
- canUndo: import("vue").ComputedRef<boolean>;
492
- canRedo: import("vue").ComputedRef<boolean>;
493
- captureBaseline: () => void;
494
- capture: (args: {
495
- source: "manual_edit" | "template_switch" | "ai_changeset" | "rich_text";
496
- actor: "user" | "ai_builder";
497
- label?: string | undefined;
498
- }) => "committed" | "oversized" | "noop" | "skipped";
499
- captureTemplateSwitch: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
500
- captureAiChangeset: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
501
- mergeNextMutation: () => void;
502
- undo: () => Promise<void>;
503
- redo: () => Promise<void>;
504
- reset: () => void;
505
- getCurrentSizeBytes: () => number;
506
- getCurrentEntryCount: () => number;
507
- }, "entries" | "currentIndex" | "isApplyingSnapshot" | "baselineCaptured">, Pick<{
508
- entries: import("vue").ShallowRef<import("@brand-page-maker/stores/history/history-store").HistoryEntry[], import("@brand-page-maker/stores/history/history-store").HistoryEntry[]>;
509
- currentIndex: import("vue").Ref<number, number>;
510
- isApplyingSnapshot: import("vue").Ref<boolean, boolean>;
511
- baselineCaptured: import("vue").Ref<boolean, boolean>;
512
- canUndo: import("vue").ComputedRef<boolean>;
513
- canRedo: import("vue").ComputedRef<boolean>;
514
- captureBaseline: () => void;
515
- capture: (args: {
516
- source: "manual_edit" | "template_switch" | "ai_changeset" | "rich_text";
517
- actor: "user" | "ai_builder";
518
- label?: string | undefined;
519
- }) => "committed" | "oversized" | "noop" | "skipped";
520
- captureTemplateSwitch: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
521
- captureAiChangeset: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
522
- mergeNextMutation: () => void;
523
- undo: () => Promise<void>;
524
- redo: () => Promise<void>;
525
- reset: () => void;
526
- getCurrentSizeBytes: () => number;
527
- getCurrentEntryCount: () => number;
528
- }, "canUndo" | "canRedo">, Pick<{
529
- entries: import("vue").ShallowRef<import("@brand-page-maker/stores/history/history-store").HistoryEntry[], import("@brand-page-maker/stores/history/history-store").HistoryEntry[]>;
530
- currentIndex: import("vue").Ref<number, number>;
531
- isApplyingSnapshot: import("vue").Ref<boolean, boolean>;
532
- baselineCaptured: import("vue").Ref<boolean, boolean>;
533
- canUndo: import("vue").ComputedRef<boolean>;
534
- canRedo: import("vue").ComputedRef<boolean>;
535
- captureBaseline: () => void;
536
- capture: (args: {
537
- source: "manual_edit" | "template_switch" | "ai_changeset" | "rich_text";
538
- actor: "user" | "ai_builder";
539
- label?: string | undefined;
540
- }) => "committed" | "oversized" | "noop" | "skipped";
541
- captureTemplateSwitch: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
542
- captureAiChangeset: (label?: string | undefined) => "committed" | "oversized" | "noop" | "skipped";
543
- mergeNextMutation: () => void;
544
- undo: () => Promise<void>;
545
- redo: () => Promise<void>;
546
- reset: () => void;
547
- getCurrentSizeBytes: () => number;
548
- getCurrentEntryCount: () => number;
549
- }, "reset" | "undo" | "redo" | "captureBaseline" | "capture" | "captureTemplateSwitch" | "captureAiChangeset" | "mergeNextMutation" | "getCurrentSizeBytes" | "getCurrentEntryCount">>;
550
486
  }, {
551
487
  selectedPaymentConfig: BrandPagePaymentConfig | undefined;
552
488
  isCurrencyUpdating: boolean;
@@ -4,7 +4,6 @@ import { useShopConfigStore } from '@shared/ecommerce-settings/store/shop-settin
4
4
  import { paymentConfigTr } from '@src/composables/useTranslate';
5
5
  import brandPageClient from '../../../../clients/brand-page-client';
6
6
  import { useUiPageSettingsStore } from '@shared/page-settings/store';
7
- import { useHistoryStore } from '@brand-page-maker/stores/history/history-store';
8
7
  export default defineComponent({
9
8
  props: {
10
9
  id: {
@@ -30,7 +29,6 @@ export default defineComponent({
30
29
  const uiPageSettingsStore = useUiPageSettingsStore();
31
30
  const eventManagerStore = useEventManagerStore();
32
31
  const shopConfigStore = useShopConfigStore();
33
- const historyStore = useHistoryStore();
34
32
  return {
35
33
  brandPageToken: computed(() => brandPageContainerStore.brandPageToken),
36
34
  isPaymentConfigSetupVisible: computed(() => !brandPageContainerStore.isPrePurchase),
@@ -38,7 +36,6 @@ export default defineComponent({
38
36
  eventManagerStore,
39
37
  shopConfigStore,
40
38
  uiPageSettingsStore,
41
- historyStore,
42
39
  };
43
40
  },
44
41
  emits: ['update:modelValue'],
@@ -102,9 +99,6 @@ export default defineComponent({
102
99
  name: this.name,
103
100
  value,
104
101
  };
105
- // Lazy paymentConfig hydration — fold into current head instead
106
- // of pushing a phantom entry.
107
- this.historyStore.mergeNextMutation();
108
102
  this.$emit('update:modelValue', payload);
109
103
  }
110
104
  },
@@ -93,7 +93,6 @@ declare const _default: import("vue").DefineComponent<{}, {
93
93
  logoTemplateMetadata: string;
94
94
  isLogoDraftSaved: boolean;
95
95
  isTextOnlyLogo: boolean;
96
- variationsByDraftToken: Record<string, import("../store/editable-logo-store").EditableLogoVariation[]>;
97
96
  } & import("pinia").PiniaCustomStateProperties<import("../store/editable-logo-store").EditableLogoState>) => () => string | undefined;
98
97
  }, {
99
98
  setStateAsync(payload: {
@@ -111,8 +110,6 @@ declare const _default: import("vue").DefineComponent<{}, {
111
110
  getEditableLogoVariationByVariationId(id: number): any;
112
111
  getEditableLogoVariationByBase64(base64: string): any;
113
112
  updateEditableLogoImageUrlAsync(defaultPrimaryText?: string | undefined, overrideLogoVariation?: number | undefined, layout?: string | undefined): Promise<void>;
114
- stampLogoBase64IntoBrandPageData(overrideLogoVariation?: number | undefined): void;
115
- restoreVariationsForDraftToken(logoDraftToken: string): boolean;
116
113
  updateMetadataAsync(defaultPrimaryText?: string | undefined, resetLogoTemplateMetadata?: boolean, layout?: string | undefined): Promise<void>;
117
114
  updateEditableLogoImageByVariationAsync(editableLogoVariation: import("../store/editable-logo-store").EditableLogoVariation, defaultPrimaryText?: string | undefined, layout?: string | undefined): Promise<import("../../../clients/fabric-render-client").ModifyLogoDataResponse | null>;
118
115
  getDraftMetadata(logoDraftToken: string): string | undefined;
@@ -250,22 +247,6 @@ declare const _default: import("vue").DefineComponent<{}, {
250
247
  }>;
251
248
  eventTracker: {
252
249
  sendShippingToggleEvent: (isEnabled: boolean) => void;
253
- sendUndoEvent: (props: {
254
- entries_count: number;
255
- actor: string | undefined;
256
- }) => void;
257
- sendRedoEvent: (props: {
258
- entries_count: number;
259
- actor: string | undefined;
260
- }) => void;
261
- sendHistoryCappedEvent: (props: {
262
- entries_count: number;
263
- size_bytes: number;
264
- }) => void;
265
- sendHistoryOversizedEvent: (props: {
266
- attempted_bytes: number;
267
- source: string;
268
- }) => void;
269
250
  sendSaveContactEvent: () => void;
270
251
  sendStartForFreeEvent: () => void;
271
252
  sendFooterLinkClickEvent: (linkType: "watermark_logo" | "create_your_website") => void;
@@ -65,17 +65,6 @@ export default defineComponent({
65
65
  return 'tw-font-bold tw-text-xs';
66
66
  },
67
67
  },
68
- watch: {
69
- // Keeps the design/upload tab in sync with `enableEditMode` whenever it
70
- // flips outside the user's tab clicks — undo/redo restoring a BYO upload
71
- // (mode → false) or a designed logo (mode → true). User clicks within
72
- // the same mode don't change `enableEditMode` and don't trigger this.
73
- showEditLogoSetting(enabled) {
74
- this.selectedTab = enabled
75
- ? this.tabsWithTranslations[0]
76
- : this.tabsWithTranslations[1];
77
- },
78
- },
79
68
  methods: {
80
69
  disableTextToggle(currentTextEnabled) {
81
70
  if (!this.isTextOnlyLogo || !currentTextEnabled) {
@@ -124,21 +124,16 @@ declare const _default: import("vue").DefineComponent<{}, {
124
124
  hideChangeTemplateConfirmModal(): void;
125
125
  onBackgroundChanged(): void;
126
126
  onChangeTemplateConfirmModalCancel(): void;
127
- onChangeTemplateConfirmModalConfirm(): Promise<void>;
127
+ onChangeTemplateConfirmModalConfirm(): void;
128
128
  onContentChanged(): void;
129
129
  onStyleChanged(): void;
130
- onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): Promise<void>;
130
+ onTemplateSelected(payload: import("@brand-page-maker/stores").OnTemplateSelectedPayload): void;
131
131
  setSelectedTabName(payload: any): void;
132
132
  showNextNotificationMessage(): Promise<void>;
133
133
  updateContent<TContent extends import("../../../brand-page").Content, P extends {
134
134
  id: string;
135
135
  content: TContent;
136
136
  }>(payload: P): Promise<void>;
137
- _captureTemplateSwitchIfEnabled(): void;
138
- applyHistorySnapshot(snapshot: import("../../../brand-page").BrandPageModel, activePageId?: string | undefined, logoEditsStr?: string | undefined): Promise<void>;
139
- _syncLogoSettingsFromSnapshot(snapshot: import("../../../brand-page").BrandPageModel, logoEditsStr?: string | undefined): Promise<void>;
140
- _navigateToActivePage(activePageId?: string | undefined): void;
141
- _fallbackSidebarIfSelectedContentMissing(snapshot: import("../../../brand-page").BrandPageModel): void;
142
137
  export(): import("../../../brand-page").BrandPageModel;
143
138
  setBrandPageType({ brandPageType }: {
144
139
  brandPageType: "default" | "brandSite" | "brandContact";
@@ -282,7 +277,6 @@ declare const _default: import("vue").DefineComponent<{}, {
282
277
  logoTemplateMetadata: string;
283
278
  isLogoDraftSaved: boolean;
284
279
  isTextOnlyLogo: boolean;
285
- variationsByDraftToken: Record<string, import("../store").EditableLogoVariation[]>;
286
280
  } & import("pinia").PiniaCustomStateProperties<import("../store").EditableLogoState>) => () => string | undefined;
287
281
  }, {
288
282
  setStateAsync(payload: {
@@ -300,8 +294,6 @@ declare const _default: import("vue").DefineComponent<{}, {
300
294
  getEditableLogoVariationByVariationId(id: number): any;
301
295
  getEditableLogoVariationByBase64(base64: string): any;
302
296
  updateEditableLogoImageUrlAsync(defaultPrimaryText?: string | undefined, overrideLogoVariation?: number | undefined, layout?: string | undefined): Promise<void>;
303
- stampLogoBase64IntoBrandPageData(overrideLogoVariation?: number | undefined): void;
304
- restoreVariationsForDraftToken(logoDraftToken: string): boolean;
305
297
  updateMetadataAsync(defaultPrimaryText?: string | undefined, resetLogoTemplateMetadata?: boolean, layout?: string | undefined): Promise<void>;
306
298
  updateEditableLogoImageByVariationAsync(editableLogoVariation: import("../store").EditableLogoVariation, defaultPrimaryText?: string | undefined, layout?: string | undefined): Promise<import("../../../clients/fabric-render-client").ModifyLogoDataResponse | null>;
307
299
  getDraftMetadata(logoDraftToken: string): string | undefined;
@@ -74,9 +74,8 @@ export interface EditableLogoState {
74
74
  logoTemplateMetadata: string;
75
75
  isLogoDraftSaved: boolean;
76
76
  isTextOnlyLogo: boolean;
77
- variationsByDraftToken: Record<string, EditableLogoVariation[]>;
78
77
  }
79
- export type SetStateAsyncPayload = Omit<EditableLogoState, 'enableEditMode' | 'editableLogoVariations' | 'variationsByDraftToken'>;
78
+ export type SetStateAsyncPayload = Omit<EditableLogoState, 'enableEditMode' | 'editableLogoVariations'>;
80
79
  export declare const useUiEditableLogoStore: import("pinia").StoreDefinition<"uiEditableLogo", EditableLogoState, {
81
80
  getLogoPrimaryText: (state: {
82
81
  enableEditMode: boolean;
@@ -168,7 +167,6 @@ export declare const useUiEditableLogoStore: import("pinia").StoreDefinition<"ui
168
167
  logoTemplateMetadata: string;
169
168
  isLogoDraftSaved: boolean;
170
169
  isTextOnlyLogo: boolean;
171
- variationsByDraftToken: Record<string, EditableLogoVariation[]>;
172
170
  } & import("pinia").PiniaCustomStateProperties<EditableLogoState>) => () => string | undefined;
173
171
  }, {
174
172
  setStateAsync(payload: {
@@ -186,8 +184,6 @@ export declare const useUiEditableLogoStore: import("pinia").StoreDefinition<"ui
186
184
  getEditableLogoVariationByVariationId(id: number): any;
187
185
  getEditableLogoVariationByBase64(base64: string): any;
188
186
  updateEditableLogoImageUrlAsync(defaultPrimaryText?: string, overrideLogoVariation?: number | undefined, layout?: string): Promise<void>;
189
- stampLogoBase64IntoBrandPageData(overrideLogoVariation?: number): void;
190
- restoreVariationsForDraftToken(logoDraftToken: string): boolean;
191
187
  updateMetadataAsync(defaultPrimaryText?: string, resetLogoTemplateMetadata?: boolean, layout?: string): Promise<void>;
192
188
  updateEditableLogoImageByVariationAsync(editableLogoVariation: EditableLogoVariation, defaultPrimaryText?: string, layout?: string): Promise<ModifyLogoDataResponse | null>;
193
189
  getDraftMetadata(logoDraftToken: string): string | undefined;