@g1cloud/page-builder-editor 1.0.0-alpha.36 → 1.0.0-alpha.38
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/css/page-builder-editor.scss +4 -0
- package/css/page-page.scss +6 -2
- package/css/page.scss +8 -6
- package/dist/{PbPropertyEditorColor-BPku9nyl.js → PbPropertyEditorColor-w19UyXyL.js} +1 -1
- package/dist/{PbPropertyEditorHtml-eYbeszpS.js → PbPropertyEditorHtml-DXWHj2CD.js} +1 -1
- package/dist/{PbPropertyEditorImage-DnUH6vkj.js → PbPropertyEditorImage-C5nERuUJ.js} +1 -1
- package/dist/{PbPropertyEditorMultilineText-BaMj-tr_.js → PbPropertyEditorMultilineText-CNr5khDs.js} +1 -1
- package/dist/{PbPropertyEditorText-OLBLie3k.js → PbPropertyEditorText-Dv0fJMe9.js} +1 -1
- package/dist/{PbPropertyEditorYoutube-DRCsiJt3.js → PbPropertyEditorYoutube-DrPrai1y.js} +1 -1
- package/dist/{PbWidgetAddModal-CvBeNnPx.js → PbWidgetAddModal-D3QjBrfz.js} +25 -22
- package/dist/{index-BPKptjBm.js → index-DsIuGIwL.js} +93 -103
- package/dist/index.d.ts +2 -1
- package/dist/model/page-builder-editor.d.ts +4 -5
- package/dist/page-builder-editor.js +1 -1
- package/dist/page-builder-editor.umd.cjs +122 -129
- package/package.json +2 -2
package/css/page-page.scss
CHANGED
|
@@ -6,14 +6,18 @@
|
|
|
6
6
|
.pb-page {
|
|
7
7
|
display: flex;
|
|
8
8
|
flex-direction: column;
|
|
9
|
-
|
|
10
|
-
padding-bottom: 100px;
|
|
9
|
+
align-items: center;
|
|
11
10
|
width: 100%;
|
|
11
|
+
padding-bottom: 100px;
|
|
12
12
|
background-position: 50% 50%;
|
|
13
13
|
background-repeat: no-repeat;
|
|
14
14
|
background-size: cover;
|
|
15
15
|
|
|
16
16
|
.pb-page-content {
|
|
17
|
+
display: flex;
|
|
18
|
+
flex-direction: column;
|
|
19
|
+
width: 100%;
|
|
20
|
+
|
|
17
21
|
&.selected::before {
|
|
18
22
|
content: "";
|
|
19
23
|
position: absolute;
|
package/css/page.scss
CHANGED
|
@@ -10,11 +10,6 @@
|
|
|
10
10
|
max-width: 1em;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
html, body {
|
|
14
|
-
font-family: Noto Sans, Noto Sans KR, Noto Sans JP, Arial, sans-serif;
|
|
15
|
-
font-size: 12px;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
13
|
body {
|
|
19
14
|
margin: 0;
|
|
20
15
|
padding: 0;
|
|
@@ -22,6 +17,12 @@ body {
|
|
|
22
17
|
overflow: hidden;
|
|
23
18
|
}
|
|
24
19
|
|
|
20
|
+
.font-icon {
|
|
21
|
+
font-family: "Material Symbols Outlined", monospace;
|
|
22
|
+
font-size: 1rem;
|
|
23
|
+
max-width: 1em;
|
|
24
|
+
}
|
|
25
|
+
|
|
25
26
|
.pb-position-mark {
|
|
26
27
|
background-color: #ff3333;
|
|
27
28
|
opacity: 0.5;
|
|
@@ -54,7 +55,6 @@ body {
|
|
|
54
55
|
}
|
|
55
56
|
|
|
56
57
|
&.bottom {
|
|
57
|
-
left: 50%;
|
|
58
58
|
bottom: -32px;
|
|
59
59
|
}
|
|
60
60
|
|
|
@@ -68,6 +68,8 @@ body {
|
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
> i {
|
|
71
|
+
font-family: "Material Symbols Outlined", monospace;
|
|
72
|
+
font-style: normal;
|
|
71
73
|
vertical-align: middle;
|
|
72
74
|
position: absolute;
|
|
73
75
|
top: 50%;
|
|
@@ -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-DsIuGIwL.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-DsIuGIwL.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-DsIuGIwL.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-BaMj-tr_.js → PbPropertyEditorMultilineText-CNr5khDs.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-DsIuGIwL.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-DsIuGIwL.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-DsIuGIwL.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,12 +1,13 @@
|
|
|
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-DsIuGIwL.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"];
|
|
7
7
|
const _hoisted_4 = { class: "group mb-16" };
|
|
8
|
-
const _hoisted_5 =
|
|
9
|
-
const _hoisted_6 =
|
|
8
|
+
const _hoisted_5 = ["textContent"];
|
|
9
|
+
const _hoisted_6 = { class: "bs-layout-horizontal-wrap ml-16 mb-8 gap-8" };
|
|
10
|
+
const _hoisted_7 = ["onClick", "textContent"];
|
|
10
11
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
11
12
|
__name: "PbWidgetAddModal",
|
|
12
13
|
props: {
|
|
@@ -25,7 +26,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
25
26
|
modalHandle.close();
|
|
26
27
|
};
|
|
27
28
|
return (_ctx, _cache) => {
|
|
28
|
-
return openBlock(), createBlock(unref(BSModalFrame), { title: "Add
|
|
29
|
+
return openBlock(), createBlock(unref(BSModalFrame), { title: "Add Widget" }, {
|
|
29
30
|
default: withCtx(() => [
|
|
30
31
|
createElementVNode("div", _hoisted_1, [
|
|
31
32
|
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(widgetPartDefinitions), (group) => {
|
|
@@ -34,14 +35,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
34
35
|
class: "group mb-16"
|
|
35
36
|
}, [
|
|
36
37
|
_cache[0] || (_cache[0] = createElementVNode("div", {
|
|
37
|
-
class: "mb-8",
|
|
38
|
+
class: "mb-8 section-title",
|
|
38
39
|
textContent: "Basic Widgets"
|
|
39
40
|
}, null, -1)),
|
|
40
41
|
createElementVNode("div", _hoisted_2, [
|
|
41
42
|
(openBlock(true), createElementBlock(Fragment, null, renderList(group.partDefinitions, (part) => {
|
|
42
43
|
return openBlock(), createElementBlock("div", {
|
|
43
44
|
key: part.partName,
|
|
44
|
-
class: "part",
|
|
45
|
+
class: "part w-200",
|
|
45
46
|
onClick: ($event) => select(part),
|
|
46
47
|
textContent: toDisplayString(part.caption)
|
|
47
48
|
}, null, 8, _hoisted_3);
|
|
@@ -49,22 +50,24 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
49
50
|
])
|
|
50
51
|
]);
|
|
51
52
|
}), 128)),
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
53
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(customWidgets.value, (group) => {
|
|
54
|
+
return openBlock(), createElementBlock("div", _hoisted_4, [
|
|
55
|
+
createElementVNode("div", {
|
|
56
|
+
class: "mb-8 section-title",
|
|
57
|
+
textContent: toDisplayString(group.caption)
|
|
58
|
+
}, null, 8, _hoisted_5),
|
|
59
|
+
createElementVNode("div", _hoisted_6, [
|
|
60
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(group.partDefinitions, (part) => {
|
|
61
|
+
return openBlock(), createElementBlock("div", {
|
|
62
|
+
key: part.partName,
|
|
63
|
+
class: "part w-200",
|
|
64
|
+
onClick: ($event) => select(part),
|
|
65
|
+
textContent: toDisplayString(part.caption)
|
|
66
|
+
}, null, 8, _hoisted_7);
|
|
67
|
+
}), 128))
|
|
68
|
+
])
|
|
69
|
+
]);
|
|
70
|
+
}), 256))
|
|
68
71
|
])
|
|
69
72
|
]),
|
|
70
73
|
_: 1
|
|
@@ -6715,19 +6715,23 @@ class Part {
|
|
|
6715
6715
|
}
|
|
6716
6716
|
}
|
|
6717
6717
|
getStyles(isMobilePage) {
|
|
6718
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _L, _M, _N, _O, _P, _Q;
|
|
6718
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _L, _M, _N, _O, _P, _Q, _R;
|
|
6719
6719
|
const style = {};
|
|
6720
6720
|
if (((_a = this.properties) == null ? void 0 : _a.direction) === "horizontal") {
|
|
6721
6721
|
style.flexDirection = "row";
|
|
6722
|
-
} else {
|
|
6722
|
+
} else if (((_b = this.properties) == null ? void 0 : _b.direction) === "vertical") {
|
|
6723
|
+
style.flexDirection = "column";
|
|
6724
|
+
} else if (this.isSection()) {
|
|
6725
|
+
style.flexDirection = "row";
|
|
6726
|
+
} else if (this.isBlock()) {
|
|
6723
6727
|
style.flexDirection = "column";
|
|
6724
6728
|
}
|
|
6725
|
-
if (((
|
|
6729
|
+
if (((_c = this.properties) == null ? void 0 : _c.wrap) === "wrap") {
|
|
6726
6730
|
style.flexWrap = "wrap";
|
|
6727
6731
|
}
|
|
6728
|
-
const alignItems = this.getAlignStyleValue((
|
|
6729
|
-
const justifyContent = this.getAlignStyleValue((
|
|
6730
|
-
const alignSelf = this.getAlignStyleValue((
|
|
6732
|
+
const alignItems = this.getAlignStyleValue((_d = this.properties) == null ? void 0 : _d.alignItems);
|
|
6733
|
+
const justifyContent = this.getAlignStyleValue((_e = this.properties) == null ? void 0 : _e.justifyContent);
|
|
6734
|
+
const alignSelf = this.getAlignStyleValue((_f = this.properties) == null ? void 0 : _f.alignSelf);
|
|
6731
6735
|
if (this.isWidget()) {
|
|
6732
6736
|
if (alignSelf) style.alignSelf = alignSelf;
|
|
6733
6737
|
} else if (this.isPage()) {
|
|
@@ -6737,51 +6741,51 @@ class Part {
|
|
|
6737
6741
|
if (justifyContent) style.justifyContent = justifyContent;
|
|
6738
6742
|
if (alignSelf) style.alignSelf = alignSelf;
|
|
6739
6743
|
}
|
|
6740
|
-
if ((
|
|
6741
|
-
if ((
|
|
6742
|
-
if ((
|
|
6743
|
-
if ((
|
|
6744
|
-
if ((
|
|
6745
|
-
if ((
|
|
6746
|
-
if ((
|
|
6747
|
-
if ((
|
|
6748
|
-
if ((
|
|
6749
|
-
if ((
|
|
6750
|
-
if ((
|
|
6751
|
-
if ((
|
|
6752
|
-
if ((
|
|
6753
|
-
if ((
|
|
6754
|
-
if ((
|
|
6755
|
-
if ((
|
|
6756
|
-
if ((
|
|
6757
|
-
if ((
|
|
6758
|
-
if ((
|
|
6759
|
-
if ((
|
|
6760
|
-
if ((
|
|
6761
|
-
if ((
|
|
6762
|
-
if ((
|
|
6763
|
-
if ((
|
|
6764
|
-
if ((
|
|
6765
|
-
if ((
|
|
6766
|
-
if ((
|
|
6767
|
-
if ((
|
|
6768
|
-
if ((
|
|
6769
|
-
if ((
|
|
6770
|
-
if (((
|
|
6744
|
+
if ((_g = this.properties) == null ? void 0 : _g.margin) style.margin = this.properties.margin;
|
|
6745
|
+
if ((_h = this.properties) == null ? void 0 : _h.marginLeft) style.marginLeft = this.properties.marginLeft;
|
|
6746
|
+
if ((_i = this.properties) == null ? void 0 : _i.marginRight) style.marginRight = this.properties.marginRight;
|
|
6747
|
+
if ((_j = this.properties) == null ? void 0 : _j.marginTop) style.marginTop = this.properties.marginTop;
|
|
6748
|
+
if ((_k = this.properties) == null ? void 0 : _k.marginBottom) style.marginBottom = this.properties.marginBottom;
|
|
6749
|
+
if ((_l = this.properties) == null ? void 0 : _l.padding) style.padding = this.properties.padding;
|
|
6750
|
+
if ((_m = this.properties) == null ? void 0 : _m.paddingLeft) style.paddingLeft = this.properties.paddingLeft;
|
|
6751
|
+
if ((_n = this.properties) == null ? void 0 : _n.paddingRight) style.paddingRight = this.properties.paddingRight;
|
|
6752
|
+
if ((_o = this.properties) == null ? void 0 : _o.paddingTop) style.paddingTop = this.properties.paddingTop;
|
|
6753
|
+
if ((_p = this.properties) == null ? void 0 : _p.paddingBottom) style.paddingBottom = this.properties.paddingBottom;
|
|
6754
|
+
if ((_q = this.properties) == null ? void 0 : _q.left) style.left = this.properties.left;
|
|
6755
|
+
if ((_r = this.properties) == null ? void 0 : _r.right) style.right = this.properties.right;
|
|
6756
|
+
if ((_s = this.properties) == null ? void 0 : _s.top) style.top = this.properties.top;
|
|
6757
|
+
if ((_t = this.properties) == null ? void 0 : _t.bottom) style.bottom = this.properties.bottom;
|
|
6758
|
+
if ((_u = this.properties) == null ? void 0 : _u.width) style.width = this.properties.width;
|
|
6759
|
+
if ((_v = this.properties) == null ? void 0 : _v.height) style.height = this.properties.height;
|
|
6760
|
+
if ((_w = this.properties) == null ? void 0 : _w.maxWidth) style.maxWidth = this.properties.maxWidth;
|
|
6761
|
+
if ((_x = this.properties) == null ? void 0 : _x.maxHeight) style.maxHeight = this.properties.maxHeight;
|
|
6762
|
+
if ((_y = this.properties) == null ? void 0 : _y.minWidth) style.minWidth = this.properties.minWidth;
|
|
6763
|
+
if ((_z = this.properties) == null ? void 0 : _z.minHeight) style.minHeight = this.properties.minHeight;
|
|
6764
|
+
if ((_A = this.properties) == null ? void 0 : _A.textAlign) style.textAlign = this.properties.textAlign;
|
|
6765
|
+
if ((_B = this.properties) == null ? void 0 : _B.backgroundColor) style.backgroundColor = this.properties.backgroundColor;
|
|
6766
|
+
if ((_C = this.properties) == null ? void 0 : _C.borderLeftWidth) style.borderLeftWidth = this.properties.borderLeftWidth;
|
|
6767
|
+
if ((_D = this.properties) == null ? void 0 : _D.borderRightWidth) style.borderRightWidth = this.properties.borderRightWidth;
|
|
6768
|
+
if ((_E = this.properties) == null ? void 0 : _E.borderTopWidth) style.borderTopWidth = this.properties.borderTopWidth;
|
|
6769
|
+
if ((_F = this.properties) == null ? void 0 : _F.borderBottomWidth) style.borderBottomWidth = this.properties.borderBottomWidth;
|
|
6770
|
+
if ((_G = this.properties) == null ? void 0 : _G.borderTopLeftRadius) style.borderTopLeftRadius = this.properties.borderTopLeftRadius;
|
|
6771
|
+
if ((_H = this.properties) == null ? void 0 : _H.borderTopRightRadius) style.borderTopRightRadius = this.properties.borderTopRightRadius;
|
|
6772
|
+
if ((_I = this.properties) == null ? void 0 : _I.borderBottomLeftRadius) style.borderBottomLeftRadius = this.properties.borderBottomLeftRadius;
|
|
6773
|
+
if ((_J = this.properties) == null ? void 0 : _J.borderBottomRightRadius) style.borderBottomRightRadius = this.properties.borderBottomRightRadius;
|
|
6774
|
+
if (((_K = this.properties) == null ? void 0 : _K.borderColor) && style.borderLeftWidth) {
|
|
6771
6775
|
style.borderLeftStyle = "solid";
|
|
6772
|
-
style.borderLeftColor = (
|
|
6776
|
+
style.borderLeftColor = (_L = this.properties) == null ? void 0 : _L.borderColor;
|
|
6773
6777
|
}
|
|
6774
|
-
if (((
|
|
6778
|
+
if (((_M = this.properties) == null ? void 0 : _M.borderColor) && style.borderRightWidth) {
|
|
6775
6779
|
style.borderRightStyle = "solid";
|
|
6776
|
-
style.borderRightColor = (
|
|
6780
|
+
style.borderRightColor = (_N = this.properties) == null ? void 0 : _N.borderColor;
|
|
6777
6781
|
}
|
|
6778
|
-
if (((
|
|
6782
|
+
if (((_O = this.properties) == null ? void 0 : _O.borderColor) && style.borderTopWidth) {
|
|
6779
6783
|
style.borderTopStyle = "solid";
|
|
6780
|
-
style.borderTopColor = (
|
|
6784
|
+
style.borderTopColor = (_P = this.properties) == null ? void 0 : _P.borderColor;
|
|
6781
6785
|
}
|
|
6782
|
-
if (((
|
|
6786
|
+
if (((_Q = this.properties) == null ? void 0 : _Q.borderColor) && style.borderBottomWidth) {
|
|
6783
6787
|
style.borderBottomStyle = "solid";
|
|
6784
|
-
style.borderBottomColor = (
|
|
6788
|
+
style.borderBottomColor = (_R = this.properties) == null ? void 0 : _R.borderColor;
|
|
6785
6789
|
}
|
|
6786
6790
|
return style;
|
|
6787
6791
|
}
|
|
@@ -7454,17 +7458,13 @@ const _sfc_main$3$1 = /* @__PURE__ */ defineComponent({
|
|
|
7454
7458
|
"data-part-id": _ctx.part.partId,
|
|
7455
7459
|
style: normalizeStyle(style.value)
|
|
7456
7460
|
}, [
|
|
7457
|
-
|
|
7458
|
-
|
|
7459
|
-
|
|
7460
|
-
|
|
7461
|
-
|
|
7462
|
-
|
|
7463
|
-
|
|
7464
|
-
part: section
|
|
7465
|
-
}, null, 8, ["is-mobile-page", "part"]);
|
|
7466
|
-
}), 128))
|
|
7467
|
-
], 2)
|
|
7461
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.part.children, (section) => {
|
|
7462
|
+
return openBlock(), createBlock$1(_sfc_main$9$1, {
|
|
7463
|
+
key: section.partId,
|
|
7464
|
+
"is-mobile-page": _ctx.isMobilePage,
|
|
7465
|
+
part: section
|
|
7466
|
+
}, null, 8, ["is-mobile-page", "part"]);
|
|
7467
|
+
}), 128))
|
|
7468
7468
|
], 14, _hoisted_1$2$1)
|
|
7469
7469
|
], 64);
|
|
7470
7470
|
};
|
|
@@ -8145,15 +8145,15 @@ class PartManager {
|
|
|
8145
8145
|
const defaultPartPropertyEditors = () => {
|
|
8146
8146
|
return {
|
|
8147
8147
|
"readonly-text": () => defineAsyncComponent(() => import("./PbPropertyEditorReadonlyText-Dgp_AVOD.js")),
|
|
8148
|
-
"text": () => defineAsyncComponent(() => import("./PbPropertyEditorText-
|
|
8148
|
+
"text": () => defineAsyncComponent(() => import("./PbPropertyEditorText-Dv0fJMe9.js")),
|
|
8149
8149
|
"number": () => defineAsyncComponent(() => import("./PbPropertyEditorNumber-TTgo0zbQ.js")),
|
|
8150
8150
|
"boolean": () => defineAsyncComponent(() => import("./PbPropertyEditorBoolean-C7-iSAtn.js")),
|
|
8151
|
-
"multiline-text": () => defineAsyncComponent(() => import("./PbPropertyEditorMultilineText-
|
|
8151
|
+
"multiline-text": () => defineAsyncComponent(() => import("./PbPropertyEditorMultilineText-CNr5khDs.js")),
|
|
8152
8152
|
"select": () => defineAsyncComponent(() => import("./PbPropertyEditorSelect-CWedbXJI.js")),
|
|
8153
|
-
"color": () => defineAsyncComponent(() => import("./PbPropertyEditorColor-
|
|
8154
|
-
"image": () => defineAsyncComponent(() => import("./PbPropertyEditorImage-
|
|
8155
|
-
"html": () => defineAsyncComponent(() => import("./PbPropertyEditorHtml-
|
|
8156
|
-
"youtube": () => defineAsyncComponent(() => import("./PbPropertyEditorYoutube-
|
|
8153
|
+
"color": () => defineAsyncComponent(() => import("./PbPropertyEditorColor-w19UyXyL.js")),
|
|
8154
|
+
"image": () => defineAsyncComponent(() => import("./PbPropertyEditorImage-C5nERuUJ.js")),
|
|
8155
|
+
"html": () => defineAsyncComponent(() => import("./PbPropertyEditorHtml-DXWHj2CD.js")),
|
|
8156
|
+
"youtube": () => defineAsyncComponent(() => import("./PbPropertyEditorYoutube-DrPrai1y.js"))
|
|
8157
8157
|
};
|
|
8158
8158
|
};
|
|
8159
8159
|
const getPropertyValueOfParts = (parts, propertyName) => {
|
|
@@ -12487,7 +12487,7 @@ __publicField(_OpenAddWidgetModalCommand, "COMMAND_ID", "OpenAddWidgetModal");
|
|
|
12487
12487
|
let OpenAddWidgetModalCommand = _OpenAddWidgetModalCommand;
|
|
12488
12488
|
const openWidgetAddModal = (modal, args, callback) => {
|
|
12489
12489
|
modal.openModal({
|
|
12490
|
-
component: defineAsyncComponent(() => import("./PbWidgetAddModal-
|
|
12490
|
+
component: defineAsyncComponent(() => import("./PbWidgetAddModal-D3QjBrfz.js")),
|
|
12491
12491
|
style: {
|
|
12492
12492
|
width: "80%",
|
|
12493
12493
|
height: "80%",
|
|
@@ -13245,7 +13245,7 @@ const enableAddBlockMenu = (pageBuilder, direction, commandId, caption) => {
|
|
|
13245
13245
|
var _a, _b;
|
|
13246
13246
|
const selected = pageBuilder.context.getSelectedParts()[0];
|
|
13247
13247
|
const block = pageBuilder.partManager.findNearestBlock(selected);
|
|
13248
|
-
if (block && ((_b = (_a = block.parent) == null ? void 0 : _a.properties) == null ? void 0 : _b.direction) === direction) {
|
|
13248
|
+
if (block && (((_b = (_a = block.parent) == null ? void 0 : _a.properties) == null ? void 0 : _b.direction) || "vertical") === direction) {
|
|
13249
13249
|
return menuItemForCommand(pageBuilder, commandId, caption);
|
|
13250
13250
|
}
|
|
13251
13251
|
};
|
|
@@ -13253,7 +13253,7 @@ const enableAddWidgetMenu = (pageBuilder, direction, commandId, caption) => {
|
|
|
13253
13253
|
var _a, _b, _c;
|
|
13254
13254
|
const selected = pageBuilder.context.getSelectedParts()[0];
|
|
13255
13255
|
if (selected) {
|
|
13256
|
-
if (((_a = selected.parent) == null ? void 0 : _a.isBlock()) && ((_c = (_b = selected.parent) == null ? void 0 : _b.properties) == null ? void 0 : _c.direction) === direction || !selected.isNestedWidget() && !direction) {
|
|
13256
|
+
if (((_a = selected.parent) == null ? void 0 : _a.isBlock()) && (((_c = (_b = selected.parent) == null ? void 0 : _b.properties) == null ? void 0 : _c.direction) || "horizontal") === direction || !selected.isNestedWidget() && !direction) {
|
|
13257
13257
|
return menuItemForCommand(pageBuilder, commandId, caption);
|
|
13258
13258
|
}
|
|
13259
13259
|
}
|
|
@@ -13713,7 +13713,6 @@ class PageBuilderEditorImpl {
|
|
|
13713
13713
|
__publicField(this, "locale", ref("en"));
|
|
13714
13714
|
__publicField(this, "locales", ref(["en"]));
|
|
13715
13715
|
__publicField(this, "customWidgets", []);
|
|
13716
|
-
__publicField(this, "watchers", {});
|
|
13717
13716
|
__publicField(this, "providers", {});
|
|
13718
13717
|
__publicField(this, "externalCssLinks", []);
|
|
13719
13718
|
__publicField(this, "externalCssContent", "");
|
|
@@ -13755,22 +13754,28 @@ class PageBuilderEditorImpl {
|
|
|
13755
13754
|
registerCustomPlugin(plugin) {
|
|
13756
13755
|
if (plugin.widgets) {
|
|
13757
13756
|
const partDefinitions2 = {};
|
|
13758
|
-
plugin.widgets.forEach((
|
|
13759
|
-
|
|
13760
|
-
|
|
13761
|
-
|
|
13762
|
-
|
|
13763
|
-
|
|
13764
|
-
|
|
13765
|
-
|
|
13766
|
-
|
|
13757
|
+
plugin.widgets.forEach((group) => {
|
|
13758
|
+
if (group.partDefinitions && group.partDefinitions.length) {
|
|
13759
|
+
const g = {
|
|
13760
|
+
groupName: group.groupName,
|
|
13761
|
+
caption: group.caption,
|
|
13762
|
+
partDefinitions: []
|
|
13763
|
+
};
|
|
13764
|
+
group.partDefinitions.forEach((part) => {
|
|
13765
|
+
const p = { ...part };
|
|
13766
|
+
p.partType = "Widget";
|
|
13767
|
+
p.creator = () => _sfc_main$q;
|
|
13768
|
+
p.propertyGroups = [...p.propertyGroups, ...defaultWidgetPropertyGroups()];
|
|
13769
|
+
partDefinitions2[p.partName] = p;
|
|
13770
|
+
g.partDefinitions.push(p);
|
|
13771
|
+
});
|
|
13772
|
+
if (g.partDefinitions && g.partDefinitions.length) {
|
|
13773
|
+
this.customWidgets.push(g);
|
|
13774
|
+
}
|
|
13767
13775
|
}
|
|
13768
13776
|
});
|
|
13769
13777
|
this.partManager.registerPartDefinitions(partDefinitions2);
|
|
13770
13778
|
}
|
|
13771
|
-
if (plugin.watchers) {
|
|
13772
|
-
this.watchers = { ...this.providers, ...plugin.watchers };
|
|
13773
|
-
}
|
|
13774
13779
|
if (plugin.providers) {
|
|
13775
13780
|
this.providers = { ...this.providers, ...plugin.providers };
|
|
13776
13781
|
}
|
|
@@ -14440,13 +14445,11 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
14440
14445
|
minHeight: ((_b = (_a = props.part) == null ? void 0 : _a.children) == null ? void 0 : _b.length) ? void 0 : "200px"
|
|
14441
14446
|
};
|
|
14442
14447
|
});
|
|
14443
|
-
const
|
|
14448
|
+
const contentStyle = computed(() => {
|
|
14444
14449
|
var _a, _b;
|
|
14445
14450
|
return {
|
|
14446
|
-
|
|
14447
|
-
|
|
14448
|
-
...(_b = props.part) == null ? void 0 : _b.getInlineStyles()
|
|
14449
|
-
}
|
|
14451
|
+
...(_a = props.part) == null ? void 0 : _a.getStyles(props.isMobilePage),
|
|
14452
|
+
...(_b = props.part) == null ? void 0 : _b.getInlineStyles()
|
|
14450
14453
|
};
|
|
14451
14454
|
});
|
|
14452
14455
|
const selected = computed(() => !!props.part && editor.context.isSelected(props.part));
|
|
@@ -14487,9 +14490,10 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
14487
14490
|
onContextmenu: showContextMenu,
|
|
14488
14491
|
onMousedown: withModifiers(handleClick, ["stop"])
|
|
14489
14492
|
}, [
|
|
14490
|
-
createElementVNode("div",
|
|
14491
|
-
class: [selected.value && "selected", _ctx.isMobilePage ? "mobile" : "pc", "pb-page-content"]
|
|
14492
|
-
|
|
14493
|
+
createElementVNode("div", {
|
|
14494
|
+
class: normalizeClass([selected.value && "selected", _ctx.isMobilePage ? "mobile" : "pc", "pb-page-content"]),
|
|
14495
|
+
style: normalizeStyle(contentStyle.value)
|
|
14496
|
+
}, [
|
|
14493
14497
|
(openBlock(true), createElementBlock(Fragment, null, renderList((_b = _ctx.part) == null ? void 0 : _b.children, (section, index) => {
|
|
14494
14498
|
return openBlock(), createBlock$1(_sfc_main$l, {
|
|
14495
14499
|
key: section.partId,
|
|
@@ -14497,7 +14501,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
14497
14501
|
part: section
|
|
14498
14502
|
}, null, 8, ["is-mobile-page", "part"]);
|
|
14499
14503
|
}), 128))
|
|
14500
|
-
],
|
|
14504
|
+
], 6),
|
|
14501
14505
|
createElementVNode("div", {
|
|
14502
14506
|
class: "pb-add-section-handle bottom",
|
|
14503
14507
|
onClick: addSection
|
|
@@ -14509,7 +14513,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
14509
14513
|
};
|
|
14510
14514
|
}
|
|
14511
14515
|
});
|
|
14512
|
-
const canvasStyle = '.pb-page-wrapper {\n margin: 0 auto;\n padding: 0;\n}\n\n.pb-page {\n display: flex;\n flex-direction: column;\n
|
|
14516
|
+
const canvasStyle = '.pb-page-wrapper {\n margin: 0 auto;\n padding: 0;\n}\n\n.pb-page {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n padding-bottom: 100px;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n}\n\n.pb-page .pb-page-content {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n.pb-page .pb-page-content.selected::before {\n content: "";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 2px solid #4998f8;\n z-index: 999;\n pointer-events: none;\n}\n\n.pb-page * {\n box-sizing: border-box;\n}\n\n.pb-add-widget-button {\n width: 100%;\n height: 100%;\n min-height: 200px;\n position: relative;\n}\n\n.pb-add-widget-button button {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n padding: 8px;\n background: none;\n border: none;\n cursor: pointer;\n}\n\n.pb-add-widget-button button:hover {\n background-color: #eeeeee;\n}\n\n.pb-add-widget-button .icon {\n font-size: 1rem;\n vertical-align: middle;\n}\n\n.pb-add-widget-button .text {\n font-size: 1rem;\n vertical-align: middle;\n margin-left: 0.4rem;\n}\n\n.pb-section {\n display: flex;\n position: relative;\n width: 100%;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n outline: 1px dashed #ccc;\n background-color: #fff;\n}\n\n.pb-section:hover:not(:has(.pb-block:hover)) {\n background-color: #f0f0f0;\n}\n\n.pb-section.selected::before {\n content: "";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 2px solid #4998f8;\n z-index: 999;\n pointer-events: none;\n}\n\n.pb-section.pb-section-static {\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n pointer-events: none;\n}\n\n.pb-section.pb-section-static:after {\n content: "";\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.2);\n}\n\n.pb-section-static .pb-widget {\n outline: none;\n}\n\n.pb-block {\n display: flex;\n min-width: 1px;\n position: relative;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n width: 100%;\n outline: 1px dashed #ccc;\n}\n\n.pb-block:hover:not(:has(.pb-widget:hover)) {\n background-color: #f0f0f0;\n}\n\n.pb-block.selected::before {\n content: "";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 2px solid #4998f8;\n z-index: 999;\n pointer-events: none;\n}\n\n.pb-widget {\n position: relative;\n outline: 1px dashed #ccc;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n pointer-events: auto !important;\n}\n\n.pb-widget * {\n pointer-events: none;\n}\n\n.pb-widget.selected::before {\n content: "";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 2px solid #4998f8;\n z-index: 999;\n pointer-events: none;\n}\n\n.pb-widget .children {\n position: absolute;\n width: 100%;\n height: 100%;\n}\n\n.pb-widget .pan-handle {\n position: absolute;\n left: -6px;\n top: -6px;\n width: 12px;\n height: 12px;\n background-color: #27ae60;\n cursor: move;\n pointer-events: auto !important;\n}\n\n.pb-widget .resize-handle {\n position: absolute;\n right: -6px;\n bottom: -6px;\n width: 12px;\n height: 12px;\n background-color: #27ae60;\n cursor: nwse-resize;\n pointer-events: auto !important;\n}\n\n.pb-widget {\n position: relative;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n width: 100%;\n}\n\n.pb-widget .children {\n position: absolute;\n width: 100%;\n height: 100%;\n}\n\n.pb-text-widget {\n width: 100%;\n height: fit-content;\n}\n\n.pb-text-widget .text {\n color: #333;\n}\n\n.pb-text-widget .placeholder {\n padding: 4px 0;\n font-size: 18px;\n text-align: center;\n color: #999;\n}\n\n.pb-image-widget {\n width: 100%;\n}\n\n.pb-image-widget .image {\n width: 100%;\n}\n\n.pb-image-widget .placeholder {\n height: 100px;\n background-color: #eee;\n text-align: center;\n}\n\n.pb-image-widget .placeholder span {\n font-size: 40px;\n color: #999;\n line-height: 100px;\n vertical-align: middle;\n}\n\n.pb-html-widget {\n width: 100%;\n height: fit-content;\n}\n\n.pb-html-widget .placeholder {\n padding: 4px 0;\n font-size: 18px;\n text-align: center;\n color: #999;\n}\n\n.pb-iframe-widget {\n width: 100%;\n height: fit-content;\n}\n\n.pb-iframe-widget .placeholder {\n padding: 4px 0;\n font-size: 18px;\n text-align: center;\n color: #999;\n}\n\n.pb-youtube-widget {\n width: 100%;\n}\n\n.pb-youtube-widget .youtube {\n width: 100%;\n height: 100%;\n}\n\n.pb-youtube-widget .placeholder {\n height: 100px;\n background-color: #eee;\n text-align: center;\n}\n\n.pb-youtube-widget .placeholder span {\n font-size: 40px;\n color: #999;\n line-height: 100px;\n vertical-align: middle;\n}\n\n.pb-container-widget {\n width: 100%;\n}\n\n.pb-container-widget .placeholder {\n height: 100px;\n background-color: #eee;\n text-align: center;\n}\n\n.pb-container-widget .placeholder span {\n font-size: 40px;\n color: #999;\n line-height: 100px;\n vertical-align: middle;\n}\n\n.pb-product-list-widget {\n width: 100%;\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: flex-start;\n align-items: center;\n}\n\n.pb-product-list-widget .product-wrapper {\n width: 25%;\n}\n\n.pb-product-list-widget .product-wrapper .product {\n width: 95%;\n margin: 0 auto;\n padding-top: 8px;\n padding-bottom: 8px;\n}\n\n.pb-product-list-widget .product-wrapper img {\n width: 100%;\n}\n\n.pb-product-list-widget .product-wrapper .name {\n margin-top: 8px;\n font-size: 14px;\n}\n\n.pb-product-list-widget .product-wrapper .price {\n margin-top: 8px;\n font-size: 14px;\n font-weight: bold;\n}\n\n.pb-product-list-widget .product-wrapper .empty {\n height: 200px;\n background-color: #eee;\n text-align: center;\n}\n\n.pb-product-list-widget .product-wrapper .empty span {\n font-size: 40px;\n color: #999;\n line-height: 200px;\n vertical-align: middle;\n}\n\n@media (max-width: 768px) {\n .pb-product-list-widget .product-wrapper {\n width: 50%;\n }\n}\n\n.mobile .pb-product-list-widget .product-wrapper {\n width: 50%;\n}\n\n.pb-login-widget {\n height: 200px;\n text-align: center;\n}\n\n.pb-login-widget h3 {\n padding: 0;\n margin: 0;\n font-size: 32px;\n font-weight: bold;\n color: #ccc;\n line-height: 200px;\n vertical-align: middle;\n}\n\n.font-icon {\n font-family: Material Symbols Outlined, monospace;\n font-size: 1rem;\n max-width: 1em;\n}\n\nbody {\n margin: 0;\n padding: 0;\n background-color: #aaa;\n overflow: hidden;\n}\n\n.font-icon {\n font-family: "Material Symbols Outlined", monospace;\n font-size: 1rem;\n max-width: 1em;\n}\n\n.pb-position-mark {\n background-color: #ff3333;\n opacity: 0.5;\n border-radius: 2px;\n}\n\n.pb-add-section-handle {\n position: relative;\n text-align: center;\n cursor: pointer;\n z-index: 5;\n height: 0;\n}\n\n.pb-add-section-handle.top::before, .pb-add-section-handle.bottom::before, .pb-add-section-handle.middle::before {\n content: "";\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n opacity: 0;\n pointer-events: none;\n}\n\n.pb-add-section-handle.bottom {\n bottom: -32px;\n}\n\n.pb-add-section-handle:hover.top::before, .pb-add-section-handle:hover.bottom::before, .pb-add-section-handle:hover.middle::before,\n.pb-add-section-handle:hover > i {\n opacity: 1;\n}\n\n.pb-add-section-handle > i {\n font-family: "Material Symbols Outlined", monospace;\n font-style: normal;\n vertical-align: middle;\n position: absolute;\n top: 50%;\n left: 0;\n font-size: 2rem;\n transform: translate(-50%, -50%);\n opacity: 0.2;\n}';
|
|
14513
14517
|
const _hoisted_1$2 = ["width"];
|
|
14514
14518
|
const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
14515
14519
|
__name: "PbPageFrame",
|
|
@@ -14534,24 +14538,10 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
14534
14538
|
const head = (_e = (_d = iframeRef.value) == null ? void 0 : _d.contentWindow) == null ? void 0 : _e.document.head;
|
|
14535
14539
|
head.innerHTML = `
|
|
14536
14540
|
<meta charset="UTF-8"/>
|
|
14537
|
-
<link href="https://fonts.googleapis.com" rel="preconnect">
|
|
14538
|
-
<link crossorigin href="https://fonts.gstatic.com" rel="preconnect">
|
|
14539
|
-
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;500&display=swap" rel="stylesheet">
|
|
14540
|
-
<link
|
|
14541
|
-
href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500&family=Noto+Sans:wght@400;500&display=swap"
|
|
14542
|
-
rel="stylesheet">
|
|
14543
|
-
<link
|
|
14544
|
-
href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&family=Noto+Sans+KR:wght@400;500&family=Noto+Sans:wght@400;500&display=swap"
|
|
14545
|
-
rel="stylesheet">
|
|
14546
14541
|
<link
|
|
14547
|
-
|
|
14548
|
-
|
|
14549
|
-
<link href="https://fonts.googleapis.com/css2?family=Material+Icons+Outlined" rel="stylesheet" />
|
|
14550
|
-
|
|
14551
|
-
<link href="https://bluesea5.g1project.net/assets/index-DjQFWKLW.css" rel="stylesheet" />
|
|
14552
|
-
|
|
14542
|
+
href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=block"
|
|
14543
|
+
rel="stylesheet"/>
|
|
14553
14544
|
${externalCss}
|
|
14554
|
-
|
|
14555
14545
|
<style>${canvasStyle}</style>
|
|
14556
14546
|
`;
|
|
14557
14547
|
const script2 = (_g = (_f = iframeRef.value) == null ? void 0 : _f.contentWindow) == null ? void 0 : _g.document.createElement("script");
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { PartDefinition, PartDefinitionGroup } from './model/part-definintion.ts';
|
|
1
2
|
import { PartProperty } from './model/part-property.ts';
|
|
2
3
|
|
|
3
4
|
export { default as PageBuilderEditor } from './PageBuilderEditor.vue';
|
|
4
|
-
export type { PartProperty };
|
|
5
|
+
export type { PartProperty, PartDefinitionGroup, PartDefinition };
|
|
5
6
|
export * from './model/event';
|
|
6
7
|
export * from './model/plugin';
|
|
7
8
|
export * from '@g1cloud/page-builder-viewer';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PartDefinitionGroup } from './part-definintion.ts';
|
|
2
2
|
import { ContextMenuRegistry, ContextMenuRegistryImpl, KeyHandlers, PageBuilderContext, PageBuilderContextImpl } from './context.ts';
|
|
3
3
|
import { ToolButtonRegistry } from './toolbar.ts';
|
|
4
4
|
import { PageBuilderPlugin } from './plugin.ts';
|
|
@@ -36,7 +36,7 @@ export interface PageBuilderEditor extends PageBuilder {
|
|
|
36
36
|
setLocales(locales?: string[]): void;
|
|
37
37
|
makeSingleScreen(screenToKeep: number): void;
|
|
38
38
|
makeMultipleScreen(): void;
|
|
39
|
-
getCustomWidgets():
|
|
39
|
+
getCustomWidgets(): PartDefinitionGroup[];
|
|
40
40
|
getProvider(name: string): (args?: any, callback?: (result?: any) => void) => unknown;
|
|
41
41
|
extractMedia(part: IPart): string[];
|
|
42
42
|
}
|
|
@@ -53,8 +53,7 @@ export declare class PageBuilderEditorImpl implements PageBuilderEditor {
|
|
|
53
53
|
scale: Ref<number>;
|
|
54
54
|
locale: Ref<string>;
|
|
55
55
|
locales: Ref<string[]>;
|
|
56
|
-
customWidgets:
|
|
57
|
-
watchers: Record<string, unknown>;
|
|
56
|
+
customWidgets: PartDefinitionGroup[];
|
|
58
57
|
providers: Record<string, unknown>;
|
|
59
58
|
externalCssLinks: string[];
|
|
60
59
|
externalCssContent: string;
|
|
@@ -73,7 +72,7 @@ export declare class PageBuilderEditorImpl implements PageBuilderEditor {
|
|
|
73
72
|
zoom(scale: number): void;
|
|
74
73
|
makeSingleScreen(screenToKeep: number): void;
|
|
75
74
|
makeMultipleScreen(): void;
|
|
76
|
-
getCustomWidgets():
|
|
75
|
+
getCustomWidgets(): PartDefinitionGroup[];
|
|
77
76
|
extractMedia(part: IPart): string[];
|
|
78
77
|
getExternalCss(): string;
|
|
79
78
|
private extractMediaFromPart;
|
|
@@ -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-DsIuGIwL.js";
|
|
2
2
|
export {
|
|
3
3
|
B as BLOCK_TYPE,
|
|
4
4
|
b as Block,
|
|
@@ -6716,19 +6716,23 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
6716
6716
|
}
|
|
6717
6717
|
}
|
|
6718
6718
|
getStyles(isMobilePage) {
|
|
6719
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _L, _M, _N, _O, _P, _Q;
|
|
6719
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _L, _M, _N, _O, _P, _Q, _R;
|
|
6720
6720
|
const style = {};
|
|
6721
6721
|
if (((_a = this.properties) == null ? void 0 : _a.direction) === "horizontal") {
|
|
6722
6722
|
style.flexDirection = "row";
|
|
6723
|
-
} else {
|
|
6723
|
+
} else if (((_b = this.properties) == null ? void 0 : _b.direction) === "vertical") {
|
|
6724
|
+
style.flexDirection = "column";
|
|
6725
|
+
} else if (this.isSection()) {
|
|
6726
|
+
style.flexDirection = "row";
|
|
6727
|
+
} else if (this.isBlock()) {
|
|
6724
6728
|
style.flexDirection = "column";
|
|
6725
6729
|
}
|
|
6726
|
-
if (((
|
|
6730
|
+
if (((_c = this.properties) == null ? void 0 : _c.wrap) === "wrap") {
|
|
6727
6731
|
style.flexWrap = "wrap";
|
|
6728
6732
|
}
|
|
6729
|
-
const alignItems = this.getAlignStyleValue((
|
|
6730
|
-
const justifyContent = this.getAlignStyleValue((
|
|
6731
|
-
const alignSelf = this.getAlignStyleValue((
|
|
6733
|
+
const alignItems = this.getAlignStyleValue((_d = this.properties) == null ? void 0 : _d.alignItems);
|
|
6734
|
+
const justifyContent = this.getAlignStyleValue((_e = this.properties) == null ? void 0 : _e.justifyContent);
|
|
6735
|
+
const alignSelf = this.getAlignStyleValue((_f = this.properties) == null ? void 0 : _f.alignSelf);
|
|
6732
6736
|
if (this.isWidget()) {
|
|
6733
6737
|
if (alignSelf) style.alignSelf = alignSelf;
|
|
6734
6738
|
} else if (this.isPage()) {
|
|
@@ -6738,51 +6742,51 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
6738
6742
|
if (justifyContent) style.justifyContent = justifyContent;
|
|
6739
6743
|
if (alignSelf) style.alignSelf = alignSelf;
|
|
6740
6744
|
}
|
|
6741
|
-
if ((
|
|
6742
|
-
if ((
|
|
6743
|
-
if ((
|
|
6744
|
-
if ((
|
|
6745
|
-
if ((
|
|
6746
|
-
if ((
|
|
6747
|
-
if ((
|
|
6748
|
-
if ((
|
|
6749
|
-
if ((
|
|
6750
|
-
if ((
|
|
6751
|
-
if ((
|
|
6752
|
-
if ((
|
|
6753
|
-
if ((
|
|
6754
|
-
if ((
|
|
6755
|
-
if ((
|
|
6756
|
-
if ((
|
|
6757
|
-
if ((
|
|
6758
|
-
if ((
|
|
6759
|
-
if ((
|
|
6760
|
-
if ((
|
|
6761
|
-
if ((
|
|
6762
|
-
if ((
|
|
6763
|
-
if ((
|
|
6764
|
-
if ((
|
|
6765
|
-
if ((
|
|
6766
|
-
if ((
|
|
6767
|
-
if ((
|
|
6768
|
-
if ((
|
|
6769
|
-
if ((
|
|
6770
|
-
if ((
|
|
6771
|
-
if (((
|
|
6745
|
+
if ((_g = this.properties) == null ? void 0 : _g.margin) style.margin = this.properties.margin;
|
|
6746
|
+
if ((_h = this.properties) == null ? void 0 : _h.marginLeft) style.marginLeft = this.properties.marginLeft;
|
|
6747
|
+
if ((_i = this.properties) == null ? void 0 : _i.marginRight) style.marginRight = this.properties.marginRight;
|
|
6748
|
+
if ((_j = this.properties) == null ? void 0 : _j.marginTop) style.marginTop = this.properties.marginTop;
|
|
6749
|
+
if ((_k = this.properties) == null ? void 0 : _k.marginBottom) style.marginBottom = this.properties.marginBottom;
|
|
6750
|
+
if ((_l = this.properties) == null ? void 0 : _l.padding) style.padding = this.properties.padding;
|
|
6751
|
+
if ((_m = this.properties) == null ? void 0 : _m.paddingLeft) style.paddingLeft = this.properties.paddingLeft;
|
|
6752
|
+
if ((_n = this.properties) == null ? void 0 : _n.paddingRight) style.paddingRight = this.properties.paddingRight;
|
|
6753
|
+
if ((_o = this.properties) == null ? void 0 : _o.paddingTop) style.paddingTop = this.properties.paddingTop;
|
|
6754
|
+
if ((_p = this.properties) == null ? void 0 : _p.paddingBottom) style.paddingBottom = this.properties.paddingBottom;
|
|
6755
|
+
if ((_q = this.properties) == null ? void 0 : _q.left) style.left = this.properties.left;
|
|
6756
|
+
if ((_r = this.properties) == null ? void 0 : _r.right) style.right = this.properties.right;
|
|
6757
|
+
if ((_s = this.properties) == null ? void 0 : _s.top) style.top = this.properties.top;
|
|
6758
|
+
if ((_t = this.properties) == null ? void 0 : _t.bottom) style.bottom = this.properties.bottom;
|
|
6759
|
+
if ((_u = this.properties) == null ? void 0 : _u.width) style.width = this.properties.width;
|
|
6760
|
+
if ((_v = this.properties) == null ? void 0 : _v.height) style.height = this.properties.height;
|
|
6761
|
+
if ((_w = this.properties) == null ? void 0 : _w.maxWidth) style.maxWidth = this.properties.maxWidth;
|
|
6762
|
+
if ((_x = this.properties) == null ? void 0 : _x.maxHeight) style.maxHeight = this.properties.maxHeight;
|
|
6763
|
+
if ((_y = this.properties) == null ? void 0 : _y.minWidth) style.minWidth = this.properties.minWidth;
|
|
6764
|
+
if ((_z = this.properties) == null ? void 0 : _z.minHeight) style.minHeight = this.properties.minHeight;
|
|
6765
|
+
if ((_A = this.properties) == null ? void 0 : _A.textAlign) style.textAlign = this.properties.textAlign;
|
|
6766
|
+
if ((_B = this.properties) == null ? void 0 : _B.backgroundColor) style.backgroundColor = this.properties.backgroundColor;
|
|
6767
|
+
if ((_C = this.properties) == null ? void 0 : _C.borderLeftWidth) style.borderLeftWidth = this.properties.borderLeftWidth;
|
|
6768
|
+
if ((_D = this.properties) == null ? void 0 : _D.borderRightWidth) style.borderRightWidth = this.properties.borderRightWidth;
|
|
6769
|
+
if ((_E = this.properties) == null ? void 0 : _E.borderTopWidth) style.borderTopWidth = this.properties.borderTopWidth;
|
|
6770
|
+
if ((_F = this.properties) == null ? void 0 : _F.borderBottomWidth) style.borderBottomWidth = this.properties.borderBottomWidth;
|
|
6771
|
+
if ((_G = this.properties) == null ? void 0 : _G.borderTopLeftRadius) style.borderTopLeftRadius = this.properties.borderTopLeftRadius;
|
|
6772
|
+
if ((_H = this.properties) == null ? void 0 : _H.borderTopRightRadius) style.borderTopRightRadius = this.properties.borderTopRightRadius;
|
|
6773
|
+
if ((_I = this.properties) == null ? void 0 : _I.borderBottomLeftRadius) style.borderBottomLeftRadius = this.properties.borderBottomLeftRadius;
|
|
6774
|
+
if ((_J = this.properties) == null ? void 0 : _J.borderBottomRightRadius) style.borderBottomRightRadius = this.properties.borderBottomRightRadius;
|
|
6775
|
+
if (((_K = this.properties) == null ? void 0 : _K.borderColor) && style.borderLeftWidth) {
|
|
6772
6776
|
style.borderLeftStyle = "solid";
|
|
6773
|
-
style.borderLeftColor = (
|
|
6777
|
+
style.borderLeftColor = (_L = this.properties) == null ? void 0 : _L.borderColor;
|
|
6774
6778
|
}
|
|
6775
|
-
if (((
|
|
6779
|
+
if (((_M = this.properties) == null ? void 0 : _M.borderColor) && style.borderRightWidth) {
|
|
6776
6780
|
style.borderRightStyle = "solid";
|
|
6777
|
-
style.borderRightColor = (
|
|
6781
|
+
style.borderRightColor = (_N = this.properties) == null ? void 0 : _N.borderColor;
|
|
6778
6782
|
}
|
|
6779
|
-
if (((
|
|
6783
|
+
if (((_O = this.properties) == null ? void 0 : _O.borderColor) && style.borderTopWidth) {
|
|
6780
6784
|
style.borderTopStyle = "solid";
|
|
6781
|
-
style.borderTopColor = (
|
|
6785
|
+
style.borderTopColor = (_P = this.properties) == null ? void 0 : _P.borderColor;
|
|
6782
6786
|
}
|
|
6783
|
-
if (((
|
|
6787
|
+
if (((_Q = this.properties) == null ? void 0 : _Q.borderColor) && style.borderBottomWidth) {
|
|
6784
6788
|
style.borderBottomStyle = "solid";
|
|
6785
|
-
style.borderBottomColor = (
|
|
6789
|
+
style.borderBottomColor = (_R = this.properties) == null ? void 0 : _R.borderColor;
|
|
6786
6790
|
}
|
|
6787
6791
|
return style;
|
|
6788
6792
|
}
|
|
@@ -7455,17 +7459,13 @@ ${_html.style}
|
|
|
7455
7459
|
"data-part-id": _ctx.part.partId,
|
|
7456
7460
|
style: vue.normalizeStyle(style.value)
|
|
7457
7461
|
}, [
|
|
7458
|
-
vue.
|
|
7459
|
-
|
|
7460
|
-
|
|
7461
|
-
|
|
7462
|
-
|
|
7463
|
-
|
|
7464
|
-
|
|
7465
|
-
part: section
|
|
7466
|
-
}, null, 8, ["is-mobile-page", "part"]);
|
|
7467
|
-
}), 128))
|
|
7468
|
-
], 2)
|
|
7462
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.part.children, (section) => {
|
|
7463
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$9$1, {
|
|
7464
|
+
key: section.partId,
|
|
7465
|
+
"is-mobile-page": _ctx.isMobilePage,
|
|
7466
|
+
part: section
|
|
7467
|
+
}, null, 8, ["is-mobile-page", "part"]);
|
|
7468
|
+
}), 128))
|
|
7469
7469
|
], 14, _hoisted_1$2$1)
|
|
7470
7470
|
], 64);
|
|
7471
7471
|
};
|
|
@@ -9253,7 +9253,7 @@ ${_html.style}
|
|
|
9253
9253
|
const _hoisted_4$d = { class: "bg-gray-100 py-5 rounded-8" };
|
|
9254
9254
|
const _hoisted_5$7 = { class: "text-center" };
|
|
9255
9255
|
const _hoisted_6$7 = { class: "bs-layout-horizontal justify-content-center align-items-center" };
|
|
9256
|
-
const _hoisted_7$
|
|
9256
|
+
const _hoisted_7$7 = { class: "text-center" };
|
|
9257
9257
|
const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
|
|
9258
9258
|
__name: "PbPropertyGroupEditorPosition",
|
|
9259
9259
|
props: {
|
|
@@ -9316,7 +9316,7 @@ ${_html.style}
|
|
|
9316
9316
|
"onUpdate:modelValue": updateRight
|
|
9317
9317
|
}, null, 8, ["model-value"])
|
|
9318
9318
|
]),
|
|
9319
|
-
vue.createElementVNode("div", _hoisted_7$
|
|
9319
|
+
vue.createElementVNode("div", _hoisted_7$7, [
|
|
9320
9320
|
vue.createVNode(vue.unref(bluesea.BSTextInput), {
|
|
9321
9321
|
"model-value": bottom.value,
|
|
9322
9322
|
class: "ml-4",
|
|
@@ -9338,7 +9338,7 @@ ${_html.style}
|
|
|
9338
9338
|
const _hoisted_4$c = { class: "flex-align-center mt-12" };
|
|
9339
9339
|
const _hoisted_5$6 = { class: "flex-grow-1 bs-layout-horizontal" };
|
|
9340
9340
|
const _hoisted_6$6 = { class: "flex-align-center mt-12" };
|
|
9341
|
-
const _hoisted_7$
|
|
9341
|
+
const _hoisted_7$6 = { class: "flex-grow-1 bs-layout-horizontal" };
|
|
9342
9342
|
const _sfc_main$x = /* @__PURE__ */ vue.defineComponent({
|
|
9343
9343
|
__name: "PbPropertyGroupEditorSize",
|
|
9344
9344
|
props: {
|
|
@@ -9410,7 +9410,7 @@ ${_html.style}
|
|
|
9410
9410
|
_cache[2] || (_cache[2] = vue.createElementVNode("div", { class: "title" }, [
|
|
9411
9411
|
vue.createElementVNode("label", { textContent: "Min Size" })
|
|
9412
9412
|
], -1)),
|
|
9413
|
-
vue.createElementVNode("div", _hoisted_7$
|
|
9413
|
+
vue.createElementVNode("div", _hoisted_7$6, [
|
|
9414
9414
|
vue.createVNode(vue.unref(bluesea.BSTextInput), {
|
|
9415
9415
|
"model-value": minWidth.value,
|
|
9416
9416
|
class: "flex-grow-1 mr-2",
|
|
@@ -11133,7 +11133,7 @@ ${_html.style}
|
|
|
11133
11133
|
class: "vc-sketch-alpha-wrap"
|
|
11134
11134
|
};
|
|
11135
11135
|
const _hoisted_6$5 = { class: "vc-sketch-color-wrap" };
|
|
11136
|
-
const _hoisted_7$
|
|
11136
|
+
const _hoisted_7$5 = ["aria-label"];
|
|
11137
11137
|
const _hoisted_8$2 = {
|
|
11138
11138
|
key: 0,
|
|
11139
11139
|
class: "vc-sketch-field"
|
|
@@ -11193,7 +11193,7 @@ ${_html.style}
|
|
|
11193
11193
|
"aria-label": `Current color is ${$options.activeColor}`,
|
|
11194
11194
|
class: "vc-sketch-active-color",
|
|
11195
11195
|
style: vue.normalizeStyle({ background: $options.activeColor })
|
|
11196
|
-
}, null, 12, _hoisted_7$
|
|
11196
|
+
}, null, 12, _hoisted_7$5),
|
|
11197
11197
|
vue.createVNode(_component_Checkboard)
|
|
11198
11198
|
])
|
|
11199
11199
|
]),
|
|
@@ -11455,7 +11455,7 @@ ${_html.style}
|
|
|
11455
11455
|
const _hoisted_4$6 = { class: "color" };
|
|
11456
11456
|
const _hoisted_5$4 = { class: "mt-8" };
|
|
11457
11457
|
const _hoisted_6$4 = { class: "flex-grow-1 mt-4" };
|
|
11458
|
-
const _hoisted_7$
|
|
11458
|
+
const _hoisted_7$4 = { class: "bg-gray-100 py-5 rounded-8" };
|
|
11459
11459
|
const _hoisted_8$1 = { class: "text-center" };
|
|
11460
11460
|
const _hoisted_9 = { class: "bs-layout-horizontal justify-content-center align-items-center" };
|
|
11461
11461
|
const _hoisted_10 = { class: "text-center" };
|
|
@@ -11534,7 +11534,7 @@ ${_html.style}
|
|
|
11534
11534
|
vue.createElementVNode("label", { textContent: "Border Width" })
|
|
11535
11535
|
], -1)),
|
|
11536
11536
|
vue.createElementVNode("div", _hoisted_6$4, [
|
|
11537
|
-
vue.createElementVNode("div", _hoisted_7$
|
|
11537
|
+
vue.createElementVNode("div", _hoisted_7$4, [
|
|
11538
11538
|
vue.createElementVNode("div", _hoisted_8$1, [
|
|
11539
11539
|
vue.createVNode(vue.unref(bluesea.BSTextInput), {
|
|
11540
11540
|
"model-value": borderTopWidth.value,
|
|
@@ -11630,7 +11630,7 @@ ${_html.style}
|
|
|
11630
11630
|
const _hoisted_4$5 = { class: "bg-gray-100 py-5 rounded-8" };
|
|
11631
11631
|
const _hoisted_5$3 = { class: "text-center" };
|
|
11632
11632
|
const _hoisted_6$3 = { class: "bs-layout-horizontal justify-content-center align-items-center" };
|
|
11633
|
-
const _hoisted_7$
|
|
11633
|
+
const _hoisted_7$3 = { class: "text-center" };
|
|
11634
11634
|
const _sfc_main$t = /* @__PURE__ */ vue.defineComponent({
|
|
11635
11635
|
__name: "PbPropertyGroupEditorMargin",
|
|
11636
11636
|
props: {
|
|
@@ -11693,7 +11693,7 @@ ${_html.style}
|
|
|
11693
11693
|
"onUpdate:modelValue": updateRight
|
|
11694
11694
|
}, null, 8, ["model-value"])
|
|
11695
11695
|
]),
|
|
11696
|
-
vue.createElementVNode("div", _hoisted_7$
|
|
11696
|
+
vue.createElementVNode("div", _hoisted_7$3, [
|
|
11697
11697
|
vue.createVNode(vue.unref(bluesea.BSTextInput), {
|
|
11698
11698
|
"model-value": bottom.value,
|
|
11699
11699
|
class: "ml-4",
|
|
@@ -11715,7 +11715,7 @@ ${_html.style}
|
|
|
11715
11715
|
const _hoisted_4$4 = { class: "bg-gray-100 py-5 rounded-8" };
|
|
11716
11716
|
const _hoisted_5$2 = { class: "text-center" };
|
|
11717
11717
|
const _hoisted_6$2 = { class: "bs-layout-horizontal justify-content-center align-items-center" };
|
|
11718
|
-
const _hoisted_7$
|
|
11718
|
+
const _hoisted_7$2 = { class: "text-center" };
|
|
11719
11719
|
const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
11720
11720
|
__name: "PbPropertyGroupEditorPadding",
|
|
11721
11721
|
props: {
|
|
@@ -11778,7 +11778,7 @@ ${_html.style}
|
|
|
11778
11778
|
"onUpdate:modelValue": updateRight
|
|
11779
11779
|
}, null, 8, ["model-value"])
|
|
11780
11780
|
]),
|
|
11781
|
-
vue.createElementVNode("div", _hoisted_7$
|
|
11781
|
+
vue.createElementVNode("div", _hoisted_7$2, [
|
|
11782
11782
|
vue.createVNode(vue.unref(bluesea.BSTextInput), {
|
|
11783
11783
|
"model-value": bottom.value,
|
|
11784
11784
|
class: "ml-4",
|
|
@@ -13246,7 +13246,7 @@ ${_html.style}
|
|
|
13246
13246
|
var _a, _b;
|
|
13247
13247
|
const selected = pageBuilder.context.getSelectedParts()[0];
|
|
13248
13248
|
const block = pageBuilder.partManager.findNearestBlock(selected);
|
|
13249
|
-
if (block && ((_b = (_a = block.parent) == null ? void 0 : _a.properties) == null ? void 0 : _b.direction) === direction) {
|
|
13249
|
+
if (block && (((_b = (_a = block.parent) == null ? void 0 : _a.properties) == null ? void 0 : _b.direction) || "vertical") === direction) {
|
|
13250
13250
|
return menuItemForCommand(pageBuilder, commandId, caption);
|
|
13251
13251
|
}
|
|
13252
13252
|
};
|
|
@@ -13254,7 +13254,7 @@ ${_html.style}
|
|
|
13254
13254
|
var _a, _b, _c;
|
|
13255
13255
|
const selected = pageBuilder.context.getSelectedParts()[0];
|
|
13256
13256
|
if (selected) {
|
|
13257
|
-
if (((_a = selected.parent) == null ? void 0 : _a.isBlock()) && ((_c = (_b = selected.parent) == null ? void 0 : _b.properties) == null ? void 0 : _c.direction) === direction || !selected.isNestedWidget() && !direction) {
|
|
13257
|
+
if (((_a = selected.parent) == null ? void 0 : _a.isBlock()) && (((_c = (_b = selected.parent) == null ? void 0 : _b.properties) == null ? void 0 : _c.direction) || "horizontal") === direction || !selected.isNestedWidget() && !direction) {
|
|
13258
13258
|
return menuItemForCommand(pageBuilder, commandId, caption);
|
|
13259
13259
|
}
|
|
13260
13260
|
}
|
|
@@ -13714,7 +13714,6 @@ ${_html.style}
|
|
|
13714
13714
|
__publicField(this, "locale", vue.ref("en"));
|
|
13715
13715
|
__publicField(this, "locales", vue.ref(["en"]));
|
|
13716
13716
|
__publicField(this, "customWidgets", []);
|
|
13717
|
-
__publicField(this, "watchers", {});
|
|
13718
13717
|
__publicField(this, "providers", {});
|
|
13719
13718
|
__publicField(this, "externalCssLinks", []);
|
|
13720
13719
|
__publicField(this, "externalCssContent", "");
|
|
@@ -13756,22 +13755,28 @@ ${_html.style}
|
|
|
13756
13755
|
registerCustomPlugin(plugin) {
|
|
13757
13756
|
if (plugin.widgets) {
|
|
13758
13757
|
const partDefinitions2 = {};
|
|
13759
|
-
plugin.widgets.forEach((
|
|
13760
|
-
|
|
13761
|
-
|
|
13762
|
-
|
|
13763
|
-
|
|
13764
|
-
|
|
13765
|
-
|
|
13766
|
-
|
|
13767
|
-
|
|
13758
|
+
plugin.widgets.forEach((group) => {
|
|
13759
|
+
if (group.partDefinitions && group.partDefinitions.length) {
|
|
13760
|
+
const g = {
|
|
13761
|
+
groupName: group.groupName,
|
|
13762
|
+
caption: group.caption,
|
|
13763
|
+
partDefinitions: []
|
|
13764
|
+
};
|
|
13765
|
+
group.partDefinitions.forEach((part) => {
|
|
13766
|
+
const p = { ...part };
|
|
13767
|
+
p.partType = "Widget";
|
|
13768
|
+
p.creator = () => _sfc_main$E;
|
|
13769
|
+
p.propertyGroups = [...p.propertyGroups, ...defaultWidgetPropertyGroups()];
|
|
13770
|
+
partDefinitions2[p.partName] = p;
|
|
13771
|
+
g.partDefinitions.push(p);
|
|
13772
|
+
});
|
|
13773
|
+
if (g.partDefinitions && g.partDefinitions.length) {
|
|
13774
|
+
this.customWidgets.push(g);
|
|
13775
|
+
}
|
|
13768
13776
|
}
|
|
13769
13777
|
});
|
|
13770
13778
|
this.partManager.registerPartDefinitions(partDefinitions2);
|
|
13771
13779
|
}
|
|
13772
|
-
if (plugin.watchers) {
|
|
13773
|
-
this.watchers = { ...this.providers, ...plugin.watchers };
|
|
13774
|
-
}
|
|
13775
13780
|
if (plugin.providers) {
|
|
13776
13781
|
this.providers = { ...this.providers, ...plugin.providers };
|
|
13777
13782
|
}
|
|
@@ -14441,13 +14446,11 @@ ${_html.style}
|
|
|
14441
14446
|
minHeight: ((_b = (_a = props.part) == null ? void 0 : _a.children) == null ? void 0 : _b.length) ? void 0 : "200px"
|
|
14442
14447
|
};
|
|
14443
14448
|
});
|
|
14444
|
-
const
|
|
14449
|
+
const contentStyle = vue.computed(() => {
|
|
14445
14450
|
var _a, _b;
|
|
14446
14451
|
return {
|
|
14447
|
-
|
|
14448
|
-
|
|
14449
|
-
...(_b = props.part) == null ? void 0 : _b.getInlineStyles()
|
|
14450
|
-
}
|
|
14452
|
+
...(_a = props.part) == null ? void 0 : _a.getStyles(props.isMobilePage),
|
|
14453
|
+
...(_b = props.part) == null ? void 0 : _b.getInlineStyles()
|
|
14451
14454
|
};
|
|
14452
14455
|
});
|
|
14453
14456
|
const selected = vue.computed(() => !!props.part && editor.context.isSelected(props.part));
|
|
@@ -14488,9 +14491,10 @@ ${_html.style}
|
|
|
14488
14491
|
onContextmenu: showContextMenu,
|
|
14489
14492
|
onMousedown: vue.withModifiers(handleClick, ["stop"])
|
|
14490
14493
|
}, [
|
|
14491
|
-
vue.createElementVNode("div",
|
|
14492
|
-
class: [selected.value && "selected", _ctx.isMobilePage ? "mobile" : "pc", "pb-page-content"]
|
|
14493
|
-
|
|
14494
|
+
vue.createElementVNode("div", {
|
|
14495
|
+
class: vue.normalizeClass([selected.value && "selected", _ctx.isMobilePage ? "mobile" : "pc", "pb-page-content"]),
|
|
14496
|
+
style: vue.normalizeStyle(contentStyle.value)
|
|
14497
|
+
}, [
|
|
14494
14498
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList((_b = _ctx.part) == null ? void 0 : _b.children, (section, index) => {
|
|
14495
14499
|
return vue.openBlock(), vue.createBlock(_sfc_main$z, {
|
|
14496
14500
|
key: section.partId,
|
|
@@ -14498,7 +14502,7 @@ ${_html.style}
|
|
|
14498
14502
|
part: section
|
|
14499
14503
|
}, null, 8, ["is-mobile-page", "part"]);
|
|
14500
14504
|
}), 128))
|
|
14501
|
-
],
|
|
14505
|
+
], 6),
|
|
14502
14506
|
vue.createElementVNode("div", {
|
|
14503
14507
|
class: "pb-add-section-handle bottom",
|
|
14504
14508
|
onClick: addSection
|
|
@@ -14510,7 +14514,7 @@ ${_html.style}
|
|
|
14510
14514
|
};
|
|
14511
14515
|
}
|
|
14512
14516
|
});
|
|
14513
|
-
const canvasStyle = '.pb-page-wrapper {\n margin: 0 auto;\n padding: 0;\n}\n\n.pb-page {\n display: flex;\n flex-direction: column;\n
|
|
14517
|
+
const canvasStyle = '.pb-page-wrapper {\n margin: 0 auto;\n padding: 0;\n}\n\n.pb-page {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n padding-bottom: 100px;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n}\n\n.pb-page .pb-page-content {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n.pb-page .pb-page-content.selected::before {\n content: "";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 2px solid #4998f8;\n z-index: 999;\n pointer-events: none;\n}\n\n.pb-page * {\n box-sizing: border-box;\n}\n\n.pb-add-widget-button {\n width: 100%;\n height: 100%;\n min-height: 200px;\n position: relative;\n}\n\n.pb-add-widget-button button {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n padding: 8px;\n background: none;\n border: none;\n cursor: pointer;\n}\n\n.pb-add-widget-button button:hover {\n background-color: #eeeeee;\n}\n\n.pb-add-widget-button .icon {\n font-size: 1rem;\n vertical-align: middle;\n}\n\n.pb-add-widget-button .text {\n font-size: 1rem;\n vertical-align: middle;\n margin-left: 0.4rem;\n}\n\n.pb-section {\n display: flex;\n position: relative;\n width: 100%;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n outline: 1px dashed #ccc;\n background-color: #fff;\n}\n\n.pb-section:hover:not(:has(.pb-block:hover)) {\n background-color: #f0f0f0;\n}\n\n.pb-section.selected::before {\n content: "";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 2px solid #4998f8;\n z-index: 999;\n pointer-events: none;\n}\n\n.pb-section.pb-section-static {\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n pointer-events: none;\n}\n\n.pb-section.pb-section-static:after {\n content: "";\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.2);\n}\n\n.pb-section-static .pb-widget {\n outline: none;\n}\n\n.pb-block {\n display: flex;\n min-width: 1px;\n position: relative;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n width: 100%;\n outline: 1px dashed #ccc;\n}\n\n.pb-block:hover:not(:has(.pb-widget:hover)) {\n background-color: #f0f0f0;\n}\n\n.pb-block.selected::before {\n content: "";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 2px solid #4998f8;\n z-index: 999;\n pointer-events: none;\n}\n\n.pb-widget {\n position: relative;\n outline: 1px dashed #ccc;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n pointer-events: auto !important;\n}\n\n.pb-widget * {\n pointer-events: none;\n}\n\n.pb-widget.selected::before {\n content: "";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 2px solid #4998f8;\n z-index: 999;\n pointer-events: none;\n}\n\n.pb-widget .children {\n position: absolute;\n width: 100%;\n height: 100%;\n}\n\n.pb-widget .pan-handle {\n position: absolute;\n left: -6px;\n top: -6px;\n width: 12px;\n height: 12px;\n background-color: #27ae60;\n cursor: move;\n pointer-events: auto !important;\n}\n\n.pb-widget .resize-handle {\n position: absolute;\n right: -6px;\n bottom: -6px;\n width: 12px;\n height: 12px;\n background-color: #27ae60;\n cursor: nwse-resize;\n pointer-events: auto !important;\n}\n\n.pb-widget {\n position: relative;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\n width: 100%;\n}\n\n.pb-widget .children {\n position: absolute;\n width: 100%;\n height: 100%;\n}\n\n.pb-text-widget {\n width: 100%;\n height: fit-content;\n}\n\n.pb-text-widget .text {\n color: #333;\n}\n\n.pb-text-widget .placeholder {\n padding: 4px 0;\n font-size: 18px;\n text-align: center;\n color: #999;\n}\n\n.pb-image-widget {\n width: 100%;\n}\n\n.pb-image-widget .image {\n width: 100%;\n}\n\n.pb-image-widget .placeholder {\n height: 100px;\n background-color: #eee;\n text-align: center;\n}\n\n.pb-image-widget .placeholder span {\n font-size: 40px;\n color: #999;\n line-height: 100px;\n vertical-align: middle;\n}\n\n.pb-html-widget {\n width: 100%;\n height: fit-content;\n}\n\n.pb-html-widget .placeholder {\n padding: 4px 0;\n font-size: 18px;\n text-align: center;\n color: #999;\n}\n\n.pb-iframe-widget {\n width: 100%;\n height: fit-content;\n}\n\n.pb-iframe-widget .placeholder {\n padding: 4px 0;\n font-size: 18px;\n text-align: center;\n color: #999;\n}\n\n.pb-youtube-widget {\n width: 100%;\n}\n\n.pb-youtube-widget .youtube {\n width: 100%;\n height: 100%;\n}\n\n.pb-youtube-widget .placeholder {\n height: 100px;\n background-color: #eee;\n text-align: center;\n}\n\n.pb-youtube-widget .placeholder span {\n font-size: 40px;\n color: #999;\n line-height: 100px;\n vertical-align: middle;\n}\n\n.pb-container-widget {\n width: 100%;\n}\n\n.pb-container-widget .placeholder {\n height: 100px;\n background-color: #eee;\n text-align: center;\n}\n\n.pb-container-widget .placeholder span {\n font-size: 40px;\n color: #999;\n line-height: 100px;\n vertical-align: middle;\n}\n\n.pb-product-list-widget {\n width: 100%;\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: flex-start;\n align-items: center;\n}\n\n.pb-product-list-widget .product-wrapper {\n width: 25%;\n}\n\n.pb-product-list-widget .product-wrapper .product {\n width: 95%;\n margin: 0 auto;\n padding-top: 8px;\n padding-bottom: 8px;\n}\n\n.pb-product-list-widget .product-wrapper img {\n width: 100%;\n}\n\n.pb-product-list-widget .product-wrapper .name {\n margin-top: 8px;\n font-size: 14px;\n}\n\n.pb-product-list-widget .product-wrapper .price {\n margin-top: 8px;\n font-size: 14px;\n font-weight: bold;\n}\n\n.pb-product-list-widget .product-wrapper .empty {\n height: 200px;\n background-color: #eee;\n text-align: center;\n}\n\n.pb-product-list-widget .product-wrapper .empty span {\n font-size: 40px;\n color: #999;\n line-height: 200px;\n vertical-align: middle;\n}\n\n@media (max-width: 768px) {\n .pb-product-list-widget .product-wrapper {\n width: 50%;\n }\n}\n\n.mobile .pb-product-list-widget .product-wrapper {\n width: 50%;\n}\n\n.pb-login-widget {\n height: 200px;\n text-align: center;\n}\n\n.pb-login-widget h3 {\n padding: 0;\n margin: 0;\n font-size: 32px;\n font-weight: bold;\n color: #ccc;\n line-height: 200px;\n vertical-align: middle;\n}\n\n.font-icon {\n font-family: Material Symbols Outlined, monospace;\n font-size: 1rem;\n max-width: 1em;\n}\n\nbody {\n margin: 0;\n padding: 0;\n background-color: #aaa;\n overflow: hidden;\n}\n\n.font-icon {\n font-family: "Material Symbols Outlined", monospace;\n font-size: 1rem;\n max-width: 1em;\n}\n\n.pb-position-mark {\n background-color: #ff3333;\n opacity: 0.5;\n border-radius: 2px;\n}\n\n.pb-add-section-handle {\n position: relative;\n text-align: center;\n cursor: pointer;\n z-index: 5;\n height: 0;\n}\n\n.pb-add-section-handle.top::before, .pb-add-section-handle.bottom::before, .pb-add-section-handle.middle::before {\n content: "";\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n opacity: 0;\n pointer-events: none;\n}\n\n.pb-add-section-handle.bottom {\n bottom: -32px;\n}\n\n.pb-add-section-handle:hover.top::before, .pb-add-section-handle:hover.bottom::before, .pb-add-section-handle:hover.middle::before,\n.pb-add-section-handle:hover > i {\n opacity: 1;\n}\n\n.pb-add-section-handle > i {\n font-family: "Material Symbols Outlined", monospace;\n font-style: normal;\n vertical-align: middle;\n position: absolute;\n top: 50%;\n left: 0;\n font-size: 2rem;\n transform: translate(-50%, -50%);\n opacity: 0.2;\n}';
|
|
14514
14518
|
const _hoisted_1$g = ["width"];
|
|
14515
14519
|
const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
|
|
14516
14520
|
__name: "PbPageFrame",
|
|
@@ -14535,24 +14539,10 @@ ${_html.style}
|
|
|
14535
14539
|
const head = (_e = (_d = iframeRef.value) == null ? void 0 : _d.contentWindow) == null ? void 0 : _e.document.head;
|
|
14536
14540
|
head.innerHTML = `
|
|
14537
14541
|
<meta charset="UTF-8"/>
|
|
14538
|
-
<link href="https://fonts.googleapis.com" rel="preconnect">
|
|
14539
|
-
<link crossorigin href="https://fonts.gstatic.com" rel="preconnect">
|
|
14540
|
-
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;500&display=swap" rel="stylesheet">
|
|
14541
14542
|
<link
|
|
14542
|
-
|
|
14543
|
-
|
|
14544
|
-
<link
|
|
14545
|
-
href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&family=Noto+Sans+KR:wght@400;500&family=Noto+Sans:wght@400;500&display=swap"
|
|
14546
|
-
rel="stylesheet">
|
|
14547
|
-
<link
|
|
14548
|
-
href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=block"
|
|
14549
|
-
rel="stylesheet"/>
|
|
14550
|
-
<link href="https://fonts.googleapis.com/css2?family=Material+Icons+Outlined" rel="stylesheet" />
|
|
14551
|
-
|
|
14552
|
-
<link href="https://bluesea5.g1project.net/assets/index-DjQFWKLW.css" rel="stylesheet" />
|
|
14553
|
-
|
|
14543
|
+
href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=block"
|
|
14544
|
+
rel="stylesheet"/>
|
|
14554
14545
|
${externalCss}
|
|
14555
|
-
|
|
14556
14546
|
<style>${canvasStyle}</style>
|
|
14557
14547
|
`;
|
|
14558
14548
|
const script2 = (_g = (_f = iframeRef.value) == null ? void 0 : _f.contentWindow) == null ? void 0 : _g.document.createElement("script");
|
|
@@ -15280,8 +15270,9 @@ ${_html.style}
|
|
|
15280
15270
|
const _hoisted_2$2 = { class: "bs-layout-horizontal-wrap ml-16 mb-8 gap-8" };
|
|
15281
15271
|
const _hoisted_3$1 = ["onClick", "textContent"];
|
|
15282
15272
|
const _hoisted_4$1 = { class: "group mb-16" };
|
|
15283
|
-
const _hoisted_5$1 =
|
|
15284
|
-
const _hoisted_6$1 =
|
|
15273
|
+
const _hoisted_5$1 = ["textContent"];
|
|
15274
|
+
const _hoisted_6$1 = { class: "bs-layout-horizontal-wrap ml-16 mb-8 gap-8" };
|
|
15275
|
+
const _hoisted_7$1 = ["onClick", "textContent"];
|
|
15285
15276
|
const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
15286
15277
|
__name: "PbWidgetAddModal",
|
|
15287
15278
|
props: {
|
|
@@ -15300,7 +15291,7 @@ ${_html.style}
|
|
|
15300
15291
|
modalHandle.close();
|
|
15301
15292
|
};
|
|
15302
15293
|
return (_ctx, _cache) => {
|
|
15303
|
-
return vue.openBlock(), vue.createBlock(vue.unref(bluesea.BSModalFrame), { title: "Add
|
|
15294
|
+
return vue.openBlock(), vue.createBlock(vue.unref(bluesea.BSModalFrame), { title: "Add Widget" }, {
|
|
15304
15295
|
default: vue.withCtx(() => [
|
|
15305
15296
|
vue.createElementVNode("div", _hoisted_1$2, [
|
|
15306
15297
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(widgetPartDefinitions), (group) => {
|
|
@@ -15309,14 +15300,14 @@ ${_html.style}
|
|
|
15309
15300
|
class: "group mb-16"
|
|
15310
15301
|
}, [
|
|
15311
15302
|
_cache[0] || (_cache[0] = vue.createElementVNode("div", {
|
|
15312
|
-
class: "mb-8",
|
|
15303
|
+
class: "mb-8 section-title",
|
|
15313
15304
|
textContent: "Basic Widgets"
|
|
15314
15305
|
}, null, -1)),
|
|
15315
15306
|
vue.createElementVNode("div", _hoisted_2$2, [
|
|
15316
15307
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(group.partDefinitions, (part) => {
|
|
15317
15308
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
15318
15309
|
key: part.partName,
|
|
15319
|
-
class: "part",
|
|
15310
|
+
class: "part w-200",
|
|
15320
15311
|
onClick: ($event) => select(part),
|
|
15321
15312
|
textContent: vue.toDisplayString(part.caption)
|
|
15322
15313
|
}, null, 8, _hoisted_3$1);
|
|
@@ -15324,22 +15315,24 @@ ${_html.style}
|
|
|
15324
15315
|
])
|
|
15325
15316
|
]);
|
|
15326
15317
|
}), 128)),
|
|
15327
|
-
vue.
|
|
15328
|
-
|
|
15329
|
-
|
|
15330
|
-
|
|
15331
|
-
|
|
15332
|
-
|
|
15333
|
-
|
|
15334
|
-
|
|
15335
|
-
|
|
15336
|
-
|
|
15337
|
-
|
|
15338
|
-
|
|
15339
|
-
|
|
15340
|
-
|
|
15341
|
-
|
|
15342
|
-
|
|
15318
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(customWidgets.value, (group) => {
|
|
15319
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_4$1, [
|
|
15320
|
+
vue.createElementVNode("div", {
|
|
15321
|
+
class: "mb-8 section-title",
|
|
15322
|
+
textContent: vue.toDisplayString(group.caption)
|
|
15323
|
+
}, null, 8, _hoisted_5$1),
|
|
15324
|
+
vue.createElementVNode("div", _hoisted_6$1, [
|
|
15325
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(group.partDefinitions, (part) => {
|
|
15326
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
15327
|
+
key: part.partName,
|
|
15328
|
+
class: "part w-200",
|
|
15329
|
+
onClick: ($event) => select(part),
|
|
15330
|
+
textContent: vue.toDisplayString(part.caption)
|
|
15331
|
+
}, null, 8, _hoisted_7$1);
|
|
15332
|
+
}), 128))
|
|
15333
|
+
])
|
|
15334
|
+
]);
|
|
15335
|
+
}), 256))
|
|
15343
15336
|
])
|
|
15344
15337
|
]),
|
|
15345
15338
|
_: 1
|
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.38",
|
|
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.38"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@types/node": "^20.12.7",
|