@g1cloud/page-builder-editor 1.0.0-alpha.29 → 1.0.0-alpha.30
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.
- package/dist/{PbPropertyEditorColor-DD1lLnyZ.js → PbPropertyEditorColor-DRZ3JPbE.js} +1 -1
- package/dist/{PbPropertyEditorHtml-DOIdxTYF.js → PbPropertyEditorHtml-Cpy0eI4_.js} +1 -1
- package/dist/{PbPropertyEditorImage-CyRHBdCX.js → PbPropertyEditorImage-DO7YS7Xn.js} +1 -1
- package/dist/{PbPropertyEditorMultilineText-BgUqY40C.js → PbPropertyEditorMultilineText-D4ONFS76.js} +1 -1
- package/dist/{PbPropertyEditorText-C01cWJn3.js → PbPropertyEditorText-BV9QDXbJ.js} +1 -1
- package/dist/{PbPropertyEditorYoutube-ybr-RA1K.js → PbPropertyEditorYoutube-C5Qzdu6N.js} +1 -1
- package/dist/{PbWidgetAddModal-axGuf3UA.js → PbWidgetAddModal-9vxg06Q_.js} +1 -1
- package/dist/{index-D0CfudH-.js → index-jGbCiM-P.js} +11 -71
- package/dist/model/model.d.ts +1 -2
- package/dist/model/page-builder-editor.d.ts +0 -4
- package/dist/model/part-definintion.d.ts +0 -2
- package/dist/page-builder-editor.js +1 -1
- package/dist/page-builder-editor.umd.cjs +4 -64
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, openBlock, createElementBlock, createElementVNode, toDisplayString, createVNode, unref } from "vue";
|
|
2
2
|
import { BSTextInput } from "@g1cloud/bluesea";
|
|
3
|
-
import { P as PbColorPicker } from "./index-
|
|
3
|
+
import { P as PbColorPicker } from "./index-jGbCiM-P.js";
|
|
4
4
|
const _hoisted_1 = { class: "property-editor property-editor-color" };
|
|
5
5
|
const _hoisted_2 = { class: "title" };
|
|
6
6
|
const _hoisted_3 = ["textContent"];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, openBlock, createElementBlock, createElementVNode, toDisplayString, defineAsyncComponent } from "vue";
|
|
2
2
|
import { useModal } from "@g1cloud/bluesea";
|
|
3
|
-
import { u as usePageBuilderEditor } from "./index-
|
|
3
|
+
import { u as usePageBuilderEditor } from "./index-jGbCiM-P.js";
|
|
4
4
|
const _hoisted_1 = { class: "property-editor property-editor-image flex-align-center" };
|
|
5
5
|
const _hoisted_2 = { class: "title" };
|
|
6
6
|
const _hoisted_3 = ["textContent"];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, openBlock, createElementBlock, createElementVNode, toDisplayString } from "vue";
|
|
2
|
-
import { u as usePageBuilderEditor } from "./index-
|
|
2
|
+
import { u as usePageBuilderEditor } from "./index-jGbCiM-P.js";
|
|
3
3
|
import { useModal } from "@g1cloud/bluesea";
|
|
4
4
|
const _hoisted_1 = { class: "property-editor property-editor-image flex-align-center" };
|
|
5
5
|
const _hoisted_2 = { class: "title" };
|
package/dist/{PbPropertyEditorMultilineText-BgUqY40C.js → PbPropertyEditorMultilineText-D4ONFS76.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createElementBlock, createElementVNode, toDisplayString, createBlock, unref } from "vue";
|
|
2
2
|
import { BSMultiLangTextArea, BSTextArea } from "@g1cloud/bluesea";
|
|
3
|
-
import { u as usePageBuilderEditor } from "./index-
|
|
3
|
+
import { u as usePageBuilderEditor } from "./index-jGbCiM-P.js";
|
|
4
4
|
const _hoisted_1 = { class: "property-editor property-editor-multiline-text" };
|
|
5
5
|
const _hoisted_2 = { class: "title" };
|
|
6
6
|
const _hoisted_3 = ["textContent"];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createElementBlock, createElementVNode, toDisplayString, createBlock, unref } from "vue";
|
|
2
2
|
import { BSMultiLangTextInput, BSTextInput } from "@g1cloud/bluesea";
|
|
3
|
-
import { u as usePageBuilderEditor } from "./index-
|
|
3
|
+
import { u as usePageBuilderEditor } from "./index-jGbCiM-P.js";
|
|
4
4
|
const _hoisted_1 = { class: "property-editor property-editor-text flex-align-center" };
|
|
5
5
|
const _hoisted_2 = { class: "title" };
|
|
6
6
|
const _hoisted_3 = ["textContent"];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, openBlock, createElementBlock, createElementVNode, toDisplayString } from "vue";
|
|
2
2
|
import { useModal } from "@g1cloud/bluesea";
|
|
3
|
-
import { s as selectYoutubeVideo } from "./index-
|
|
3
|
+
import { s as selectYoutubeVideo } from "./index-jGbCiM-P.js";
|
|
4
4
|
const _hoisted_1 = { class: "property-editor property-editor-image flex-align-center" };
|
|
5
5
|
const _hoisted_2 = { class: "title" };
|
|
6
6
|
const _hoisted_3 = ["textContent"];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createBlock, unref, withCtx, createElementVNode, createElementBlock, Fragment, renderList, toDisplayString } from "vue";
|
|
2
2
|
import { useModalHandle, BSModalFrame } from "@g1cloud/bluesea";
|
|
3
|
-
import { w as widgetPartDefinitions } from "./index-
|
|
3
|
+
import { w as widgetPartDefinitions } from "./index-jGbCiM-P.js";
|
|
4
4
|
const _hoisted_1 = { class: "bs-layout-vertical pb-part-add-modal" };
|
|
5
5
|
const _hoisted_2 = { class: "bs-layout-horizontal-wrap ml-16 mb-8 gap-8" };
|
|
6
6
|
const _hoisted_3 = ["onClick", "textContent"];
|
|
@@ -7288,20 +7288,6 @@ class PageBuilderViewerImpl {
|
|
|
7288
7288
|
}
|
|
7289
7289
|
}
|
|
7290
7290
|
}
|
|
7291
|
-
watchCustomWidgetData(part) {
|
|
7292
|
-
const def = partDefinitions$1[part.partName];
|
|
7293
|
-
if (!def || !def.dataWatcher) return false;
|
|
7294
|
-
const watcher = this.watchers[def.dataWatcher];
|
|
7295
|
-
if (!watcher) return false;
|
|
7296
|
-
return watcher(part.properties);
|
|
7297
|
-
}
|
|
7298
|
-
provideCustomWidgetData(part) {
|
|
7299
|
-
const def = partDefinitions$1[part.partName];
|
|
7300
|
-
if (!def || !def.dataProvider) return Promise.resolve();
|
|
7301
|
-
const provider = this.providers[def.dataProvider];
|
|
7302
|
-
if (!provider) return Promise.resolve();
|
|
7303
|
-
return provider(part.properties);
|
|
7304
|
-
}
|
|
7305
7291
|
render(data) {
|
|
7306
7292
|
const _data = JSON.parse(data || "{}") || {};
|
|
7307
7293
|
const rootPart = this.parsePartContent(_data);
|
|
@@ -7522,28 +7508,16 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
|
|
|
7522
7508
|
__name: "PbCustomWidget",
|
|
7523
7509
|
props: {
|
|
7524
7510
|
part: {},
|
|
7525
|
-
placeholder: { type: Boolean }
|
|
7526
|
-
dataWatcher: { type: Function },
|
|
7527
|
-
dataProvider: { type: Function }
|
|
7511
|
+
placeholder: { type: Boolean }
|
|
7528
7512
|
},
|
|
7529
7513
|
setup(__props) {
|
|
7530
7514
|
const props = __props;
|
|
7531
7515
|
const pageBuilder = usePageBuilder();
|
|
7532
7516
|
const comp = computed(() => pageBuilder.getCustomWidgetComponent(props.part));
|
|
7533
|
-
const data = ref({});
|
|
7534
7517
|
const bind = computed(() => ({
|
|
7535
7518
|
...props.part.properties || {},
|
|
7536
|
-
...data.value || {},
|
|
7537
7519
|
placeholder: props.placeholder
|
|
7538
7520
|
}));
|
|
7539
|
-
const updateData = async () => {
|
|
7540
|
-
data.value = await pageBuilder.provideCustomWidgetData(props.part);
|
|
7541
|
-
};
|
|
7542
|
-
onMounted(updateData);
|
|
7543
|
-
watch(
|
|
7544
|
-
() => pageBuilder.watchCustomWidgetData(props.part),
|
|
7545
|
-
() => updateData()
|
|
7546
|
-
);
|
|
7547
7521
|
return (_ctx, _cache) => {
|
|
7548
7522
|
return comp.value ? (openBlock(), createBlock$1(resolveDynamicComponent(comp.value), normalizeProps(mergeProps({ key: 0 }, bind.value)), null, 16)) : createCommentVNode("", true);
|
|
7549
7523
|
};
|
|
@@ -7810,14 +7784,11 @@ class Model2 {
|
|
|
7810
7784
|
});
|
|
7811
7785
|
return parts;
|
|
7812
7786
|
}
|
|
7813
|
-
serializeModel(mediaExtractor
|
|
7787
|
+
serializeModel(mediaExtractor) {
|
|
7814
7788
|
const root = partToJsonObject(this.rootPart);
|
|
7815
7789
|
if (mediaExtractor) {
|
|
7816
7790
|
root.media = mediaExtractor(this.rootPart);
|
|
7817
7791
|
}
|
|
7818
|
-
if (providerExtractor) {
|
|
7819
|
-
providerExtractor(root);
|
|
7820
|
-
}
|
|
7821
7792
|
return JSON.stringify(root);
|
|
7822
7793
|
}
|
|
7823
7794
|
parseModel(json, keepPartId = false) {
|
|
@@ -8131,13 +8102,13 @@ class PartManager {
|
|
|
8131
8102
|
const defaultPartPropertyEditors = () => {
|
|
8132
8103
|
return {
|
|
8133
8104
|
"readonly-text": () => defineAsyncComponent(() => import("./PbPropertyEditorReadonlyText-Dgp_AVOD.js")),
|
|
8134
|
-
"text": () => defineAsyncComponent(() => import("./PbPropertyEditorText-
|
|
8135
|
-
"multiline-text": () => defineAsyncComponent(() => import("./PbPropertyEditorMultilineText-
|
|
8105
|
+
"text": () => defineAsyncComponent(() => import("./PbPropertyEditorText-BV9QDXbJ.js")),
|
|
8106
|
+
"multiline-text": () => defineAsyncComponent(() => import("./PbPropertyEditorMultilineText-D4ONFS76.js")),
|
|
8136
8107
|
"select": () => defineAsyncComponent(() => import("./PbPropertyEditorSelect-CWedbXJI.js")),
|
|
8137
|
-
"color": () => defineAsyncComponent(() => import("./PbPropertyEditorColor-
|
|
8138
|
-
"image": () => defineAsyncComponent(() => import("./PbPropertyEditorImage-
|
|
8139
|
-
"html": () => defineAsyncComponent(() => import("./PbPropertyEditorHtml-
|
|
8140
|
-
"youtube": () => defineAsyncComponent(() => import("./PbPropertyEditorYoutube-
|
|
8108
|
+
"color": () => defineAsyncComponent(() => import("./PbPropertyEditorColor-DRZ3JPbE.js")),
|
|
8109
|
+
"image": () => defineAsyncComponent(() => import("./PbPropertyEditorImage-DO7YS7Xn.js")),
|
|
8110
|
+
"html": () => defineAsyncComponent(() => import("./PbPropertyEditorHtml-Cpy0eI4_.js")),
|
|
8111
|
+
"youtube": () => defineAsyncComponent(() => import("./PbPropertyEditorYoutube-C5Qzdu6N.js"))
|
|
8141
8112
|
};
|
|
8142
8113
|
};
|
|
8143
8114
|
const getPropertyValueOfParts = (parts, propertyName) => {
|
|
@@ -12415,7 +12386,7 @@ __publicField(_OpenAddWidgetModalCommand, "COMMAND_ID", "OpenAddWidgetModal");
|
|
|
12415
12386
|
let OpenAddWidgetModalCommand = _OpenAddWidgetModalCommand;
|
|
12416
12387
|
const openWidgetAddModal = (modal, args, callback) => {
|
|
12417
12388
|
modal.openModal({
|
|
12418
|
-
component: defineAsyncComponent(() => import("./PbWidgetAddModal-
|
|
12389
|
+
component: defineAsyncComponent(() => import("./PbWidgetAddModal-9vxg06Q_.js")),
|
|
12419
12390
|
style: {
|
|
12420
12391
|
width: "80%",
|
|
12421
12392
|
height: "80%",
|
|
@@ -12930,10 +12901,7 @@ const _CopyAllCommand = class _CopyAllCommand {
|
|
|
12930
12901
|
__publicField(this, "commandId", _CopyAllCommand.COMMAND_ID);
|
|
12931
12902
|
}
|
|
12932
12903
|
async execute(pageBuilder) {
|
|
12933
|
-
const json = pageBuilder.model.serializeModel(
|
|
12934
|
-
(part) => pageBuilder.extractMedia(part),
|
|
12935
|
-
(partObject) => pageBuilder.extractProvider(partObject)
|
|
12936
|
-
);
|
|
12904
|
+
const json = pageBuilder.model.serializeModel((part) => pageBuilder.extractMedia(part));
|
|
12937
12905
|
await navigator.clipboard.writeText(json);
|
|
12938
12906
|
}
|
|
12939
12907
|
};
|
|
@@ -13553,20 +13521,6 @@ class PageBuilderEditorImpl {
|
|
|
13553
13521
|
getProvider(name) {
|
|
13554
13522
|
return this.providers[name];
|
|
13555
13523
|
}
|
|
13556
|
-
watchCustomWidgetData(part) {
|
|
13557
|
-
const def = this.partManager.getPartDefinition(part.partName);
|
|
13558
|
-
if (!def || !def.dataWatcher) return false;
|
|
13559
|
-
const watcher = this.watchers[def.dataWatcher];
|
|
13560
|
-
if (!watcher) return false;
|
|
13561
|
-
return watcher(part.properties);
|
|
13562
|
-
}
|
|
13563
|
-
provideCustomWidgetData(part) {
|
|
13564
|
-
const def = this.partManager.getPartDefinition(part.partName);
|
|
13565
|
-
if (!def || !def.dataProvider) return Promise.resolve();
|
|
13566
|
-
const provider = this.providers[def.dataProvider];
|
|
13567
|
-
if (!provider) return Promise.resolve();
|
|
13568
|
-
return provider(part.properties);
|
|
13569
|
-
}
|
|
13570
13524
|
registerPlugin(plugin) {
|
|
13571
13525
|
if (plugin.partDefinitions) this.partManager.registerPartDefinitions(plugin.partDefinitions);
|
|
13572
13526
|
if (plugin.partPropertyGroupEditors) this.partManager.registerPartPropertyGroupEditors(plugin.partPropertyGroupEditors);
|
|
@@ -13714,17 +13668,6 @@ class PageBuilderEditorImpl {
|
|
|
13714
13668
|
this.extractMediaFromPart(part, urls);
|
|
13715
13669
|
return Array.from(urls);
|
|
13716
13670
|
}
|
|
13717
|
-
extractProvider(part) {
|
|
13718
|
-
const def = this.partManager.getPartDefinition(part.partName);
|
|
13719
|
-
if (def && (def == null ? void 0 : def.dataProvider)) {
|
|
13720
|
-
part.dataProvider = def.dataProvider;
|
|
13721
|
-
}
|
|
13722
|
-
if (part.children && part.children.length) {
|
|
13723
|
-
for (const child of part.children) {
|
|
13724
|
-
this.extractProvider(child);
|
|
13725
|
-
}
|
|
13726
|
-
}
|
|
13727
|
-
}
|
|
13728
13671
|
getExternalCss() {
|
|
13729
13672
|
return `${this.externalCssLinks}
|
|
13730
13673
|
<style>${this.externalCssContent}</style>`;
|
|
@@ -14556,10 +14499,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
14556
14499
|
const colorHistory = ref([]);
|
|
14557
14500
|
provide("colorHistory", colorHistory);
|
|
14558
14501
|
const getPageContent = () => {
|
|
14559
|
-
return pageBuilderEditor.model.serializeModel(
|
|
14560
|
-
(part) => pageBuilderEditor.extractMedia(part),
|
|
14561
|
-
(partObject) => pageBuilderEditor.extractProvider(partObject)
|
|
14562
|
-
);
|
|
14502
|
+
return pageBuilderEditor.model.serializeModel((part) => pageBuilderEditor.extractMedia(part));
|
|
14563
14503
|
};
|
|
14564
14504
|
__expose({
|
|
14565
14505
|
getPageContent
|
package/dist/model/model.d.ts
CHANGED
|
@@ -6,7 +6,6 @@ export declare const SECTION_TYPE = "Section";
|
|
|
6
6
|
export declare const BLOCK_TYPE = "Block";
|
|
7
7
|
export declare const WIDGET_TYPE = "Widget";
|
|
8
8
|
type MediaExtractor = (part: IPart) => string[];
|
|
9
|
-
type ProviderExtractor = (partObject: Record<string, unknown>) => void;
|
|
10
9
|
export declare const getNewPartId: () => string;
|
|
11
10
|
export declare const partsToJsonString: (parts: IPart[]) => string;
|
|
12
11
|
export declare const partFromJsonObject: (object: any, keepPartId?: boolean) => IPart | undefined;
|
|
@@ -21,7 +20,7 @@ export declare class Model {
|
|
|
21
20
|
updateModel(param: ModelUpdateParam): ModelUpdateResult;
|
|
22
21
|
findPartById(partId?: string): IPart | undefined;
|
|
23
22
|
findPartsByIds(partIds: string[]): IPart[];
|
|
24
|
-
serializeModel(mediaExtractor?: MediaExtractor
|
|
23
|
+
serializeModel(mediaExtractor?: MediaExtractor): string;
|
|
25
24
|
parseModel(json: string, keepPartId?: boolean): IPart;
|
|
26
25
|
serializeParts(partIds: string[]): string;
|
|
27
26
|
parseParts(json: string, keepPartId?: boolean): IPart[] | undefined;
|
|
@@ -39,7 +39,6 @@ export interface PageBuilderEditor extends PageBuilder {
|
|
|
39
39
|
getCustomWidgets(): PartDefinition[];
|
|
40
40
|
getProvider(name: string): (args?: any, callback?: (result?: any) => void) => unknown;
|
|
41
41
|
extractMedia(part: IPart): string[];
|
|
42
|
-
extractProvider(part: Record<string, unknown>): void;
|
|
43
42
|
}
|
|
44
43
|
export declare class PageBuilderEditorImpl implements PageBuilderEditor {
|
|
45
44
|
instanceId?: string;
|
|
@@ -66,8 +65,6 @@ export declare class PageBuilderEditorImpl implements PageBuilderEditor {
|
|
|
66
65
|
setLocales(locales?: string[]): void;
|
|
67
66
|
getCustomWidgetComponent(part: IPart): Component | undefined;
|
|
68
67
|
getProvider(name: string): (args?: any, callback?: (result?: any) => void) => unknown;
|
|
69
|
-
watchCustomWidgetData(part: IPart): unknown;
|
|
70
|
-
provideCustomWidgetData(part: IPart): Promise<unknown>;
|
|
71
68
|
registerPlugin(plugin: PageBuilderPlugin): void;
|
|
72
69
|
registerCustomPlugin(plugin: any): void;
|
|
73
70
|
initData(data?: string): void;
|
|
@@ -78,7 +75,6 @@ export declare class PageBuilderEditorImpl implements PageBuilderEditor {
|
|
|
78
75
|
makeMultipleScreen(): void;
|
|
79
76
|
getCustomWidgets(): PartDefinition[];
|
|
80
77
|
extractMedia(part: IPart): string[];
|
|
81
|
-
extractProvider(part: Record<string, unknown>): void;
|
|
82
78
|
getExternalCss(): string;
|
|
83
79
|
private extractMediaFromPart;
|
|
84
80
|
private extractMediaFromHtml;
|
|
@@ -14,8 +14,6 @@ export type PartDefinition = {
|
|
|
14
14
|
allowsChild: (partOrName?: IPart | string | undefined) => boolean;
|
|
15
15
|
creator: PartCreator;
|
|
16
16
|
component?: Component;
|
|
17
|
-
dataWatcher?: string;
|
|
18
|
-
dataProvider?: string;
|
|
19
17
|
};
|
|
20
18
|
export type PartDefinitionGroup = {
|
|
21
19
|
groupName: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B, b, M, c, d, e, _, a, f, g, h, i, j, k, l, m, n, R, o, S, p, W, q, r, t, v, x, y, z, A, C } from "./index-
|
|
1
|
+
import { B, b, M, c, d, e, _, a, f, g, h, i, j, k, l, m, n, R, o, S, p, W, q, r, t, v, x, y, z, A, C } from "./index-jGbCiM-P.js";
|
|
2
2
|
export {
|
|
3
3
|
B as BLOCK_TYPE,
|
|
4
4
|
b as Block,
|
|
@@ -7289,20 +7289,6 @@ ${_html.style}
|
|
|
7289
7289
|
}
|
|
7290
7290
|
}
|
|
7291
7291
|
}
|
|
7292
|
-
watchCustomWidgetData(part) {
|
|
7293
|
-
const def = partDefinitions$1[part.partName];
|
|
7294
|
-
if (!def || !def.dataWatcher) return false;
|
|
7295
|
-
const watcher = this.watchers[def.dataWatcher];
|
|
7296
|
-
if (!watcher) return false;
|
|
7297
|
-
return watcher(part.properties);
|
|
7298
|
-
}
|
|
7299
|
-
provideCustomWidgetData(part) {
|
|
7300
|
-
const def = partDefinitions$1[part.partName];
|
|
7301
|
-
if (!def || !def.dataProvider) return Promise.resolve();
|
|
7302
|
-
const provider = this.providers[def.dataProvider];
|
|
7303
|
-
if (!provider) return Promise.resolve();
|
|
7304
|
-
return provider(part.properties);
|
|
7305
|
-
}
|
|
7306
7292
|
render(data) {
|
|
7307
7293
|
const _data = JSON.parse(data || "{}") || {};
|
|
7308
7294
|
const rootPart = this.parsePartContent(_data);
|
|
@@ -7523,28 +7509,16 @@ ${_html.style}
|
|
|
7523
7509
|
__name: "PbCustomWidget",
|
|
7524
7510
|
props: {
|
|
7525
7511
|
part: {},
|
|
7526
|
-
placeholder: { type: Boolean }
|
|
7527
|
-
dataWatcher: { type: Function },
|
|
7528
|
-
dataProvider: { type: Function }
|
|
7512
|
+
placeholder: { type: Boolean }
|
|
7529
7513
|
},
|
|
7530
7514
|
setup(__props) {
|
|
7531
7515
|
const props = __props;
|
|
7532
7516
|
const pageBuilder = usePageBuilder();
|
|
7533
7517
|
const comp = vue.computed(() => pageBuilder.getCustomWidgetComponent(props.part));
|
|
7534
|
-
const data = vue.ref({});
|
|
7535
7518
|
const bind = vue.computed(() => ({
|
|
7536
7519
|
...props.part.properties || {},
|
|
7537
|
-
...data.value || {},
|
|
7538
7520
|
placeholder: props.placeholder
|
|
7539
7521
|
}));
|
|
7540
|
-
const updateData = async () => {
|
|
7541
|
-
data.value = await pageBuilder.provideCustomWidgetData(props.part);
|
|
7542
|
-
};
|
|
7543
|
-
vue.onMounted(updateData);
|
|
7544
|
-
vue.watch(
|
|
7545
|
-
() => pageBuilder.watchCustomWidgetData(props.part),
|
|
7546
|
-
() => updateData()
|
|
7547
|
-
);
|
|
7548
7522
|
return (_ctx, _cache) => {
|
|
7549
7523
|
return comp.value ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(comp.value), vue.normalizeProps(vue.mergeProps({ key: 0 }, bind.value)), null, 16)) : vue.createCommentVNode("", true);
|
|
7550
7524
|
};
|
|
@@ -7811,14 +7785,11 @@ ${_html.style}
|
|
|
7811
7785
|
});
|
|
7812
7786
|
return parts;
|
|
7813
7787
|
}
|
|
7814
|
-
serializeModel(mediaExtractor
|
|
7788
|
+
serializeModel(mediaExtractor) {
|
|
7815
7789
|
const root = partToJsonObject(this.rootPart);
|
|
7816
7790
|
if (mediaExtractor) {
|
|
7817
7791
|
root.media = mediaExtractor(this.rootPart);
|
|
7818
7792
|
}
|
|
7819
|
-
if (providerExtractor) {
|
|
7820
|
-
providerExtractor(root);
|
|
7821
|
-
}
|
|
7822
7793
|
return JSON.stringify(root);
|
|
7823
7794
|
}
|
|
7824
7795
|
parseModel(json, keepPartId = false) {
|
|
@@ -12931,10 +12902,7 @@ ${_html.style}
|
|
|
12931
12902
|
__publicField(this, "commandId", _CopyAllCommand.COMMAND_ID);
|
|
12932
12903
|
}
|
|
12933
12904
|
async execute(pageBuilder) {
|
|
12934
|
-
const json = pageBuilder.model.serializeModel(
|
|
12935
|
-
(part) => pageBuilder.extractMedia(part),
|
|
12936
|
-
(partObject) => pageBuilder.extractProvider(partObject)
|
|
12937
|
-
);
|
|
12905
|
+
const json = pageBuilder.model.serializeModel((part) => pageBuilder.extractMedia(part));
|
|
12938
12906
|
await navigator.clipboard.writeText(json);
|
|
12939
12907
|
}
|
|
12940
12908
|
};
|
|
@@ -13554,20 +13522,6 @@ ${_html.style}
|
|
|
13554
13522
|
getProvider(name) {
|
|
13555
13523
|
return this.providers[name];
|
|
13556
13524
|
}
|
|
13557
|
-
watchCustomWidgetData(part) {
|
|
13558
|
-
const def = this.partManager.getPartDefinition(part.partName);
|
|
13559
|
-
if (!def || !def.dataWatcher) return false;
|
|
13560
|
-
const watcher = this.watchers[def.dataWatcher];
|
|
13561
|
-
if (!watcher) return false;
|
|
13562
|
-
return watcher(part.properties);
|
|
13563
|
-
}
|
|
13564
|
-
provideCustomWidgetData(part) {
|
|
13565
|
-
const def = this.partManager.getPartDefinition(part.partName);
|
|
13566
|
-
if (!def || !def.dataProvider) return Promise.resolve();
|
|
13567
|
-
const provider = this.providers[def.dataProvider];
|
|
13568
|
-
if (!provider) return Promise.resolve();
|
|
13569
|
-
return provider(part.properties);
|
|
13570
|
-
}
|
|
13571
13525
|
registerPlugin(plugin) {
|
|
13572
13526
|
if (plugin.partDefinitions) this.partManager.registerPartDefinitions(plugin.partDefinitions);
|
|
13573
13527
|
if (plugin.partPropertyGroupEditors) this.partManager.registerPartPropertyGroupEditors(plugin.partPropertyGroupEditors);
|
|
@@ -13715,17 +13669,6 @@ ${_html.style}
|
|
|
13715
13669
|
this.extractMediaFromPart(part, urls);
|
|
13716
13670
|
return Array.from(urls);
|
|
13717
13671
|
}
|
|
13718
|
-
extractProvider(part) {
|
|
13719
|
-
const def = this.partManager.getPartDefinition(part.partName);
|
|
13720
|
-
if (def && (def == null ? void 0 : def.dataProvider)) {
|
|
13721
|
-
part.dataProvider = def.dataProvider;
|
|
13722
|
-
}
|
|
13723
|
-
if (part.children && part.children.length) {
|
|
13724
|
-
for (const child of part.children) {
|
|
13725
|
-
this.extractProvider(child);
|
|
13726
|
-
}
|
|
13727
|
-
}
|
|
13728
|
-
}
|
|
13729
13672
|
getExternalCss() {
|
|
13730
13673
|
return `${this.externalCssLinks}
|
|
13731
13674
|
<style>${this.externalCssContent}</style>`;
|
|
@@ -14557,10 +14500,7 @@ ${_html.style}
|
|
|
14557
14500
|
const colorHistory = vue.ref([]);
|
|
14558
14501
|
vue.provide("colorHistory", colorHistory);
|
|
14559
14502
|
const getPageContent = () => {
|
|
14560
|
-
return pageBuilderEditor.model.serializeModel(
|
|
14561
|
-
(part) => pageBuilderEditor.extractMedia(part),
|
|
14562
|
-
(partObject) => pageBuilderEditor.extractProvider(partObject)
|
|
14563
|
-
);
|
|
14503
|
+
return pageBuilderEditor.model.serializeModel((part) => pageBuilderEditor.extractMedia(part));
|
|
14564
14504
|
};
|
|
14565
14505
|
__expose({
|
|
14566
14506
|
getPageContent
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@g1cloud/page-builder-editor",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "1.0.0-alpha.
|
|
4
|
+
"version": "1.0.0-alpha.30",
|
|
5
5
|
"engins": {
|
|
6
6
|
"node": ">= 20.0.0"
|
|
7
7
|
},
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"vue-router": "^4.4.3",
|
|
31
31
|
"vue3-click-away": "^1.2.4",
|
|
32
32
|
"yjs": "^13.6.14",
|
|
33
|
-
"@g1cloud/page-builder-viewer": "1.0.0-alpha.
|
|
33
|
+
"@g1cloud/page-builder-viewer": "1.0.0-alpha.30"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@types/node": "^20.12.7",
|