@g1cloud/page-builder-editor 1.0.0-alpha.30 → 1.0.0-alpha.31
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 +5 -0
- package/css/page-widget.scss +7 -0
- package/css/property-editor-number.scss +10 -0
- package/dist/{PbPropertyEditorColor-DRZ3JPbE.js → PbPropertyEditorColor-CnF04lLw.js} +1 -1
- package/dist/{PbPropertyEditorHtml-Cpy0eI4_.js → PbPropertyEditorHtml-DGWhLeBV.js} +1 -1
- package/dist/{PbPropertyEditorImage-DO7YS7Xn.js → PbPropertyEditorImage-wnD2ZhtY.js} +1 -1
- package/dist/{PbPropertyEditorMultilineText-D4ONFS76.js → PbPropertyEditorMultilineText-BupCrg8y.js} +1 -1
- package/dist/PbPropertyEditorNumber-DrxTz2s1.js +41 -0
- package/dist/{PbPropertyEditorText-BV9QDXbJ.js → PbPropertyEditorText-DPMCCfN3.js} +1 -1
- package/dist/{PbPropertyEditorYoutube-C5Qzdu6N.js → PbPropertyEditorYoutube-CyyNcDAu.js} +1 -1
- package/dist/{PbWidgetAddModal-9vxg06Q_.js → PbWidgetAddModal-CpkklmlZ.js} +1 -1
- package/dist/{PbYoutubeModal-DFb6CQyW.js → PbYoutubeModal-8vQ_IPA0.js} +1 -1
- package/dist/components/sidebar/property/PbPropertyEditorNumber.vue.d.ts +23 -0
- package/dist/{index-jGbCiM-P.js → index-Cu4Pt-wp.js} +16 -12
- package/dist/page-builder-editor.js +1 -1
- package/dist/page-builder-editor.umd.cjs +245 -201
- package/package.json +2 -2
|
@@ -141,6 +141,7 @@
|
|
|
141
141
|
@import "./property-editor-readonly-text";
|
|
142
142
|
@import "./property-editor-select";
|
|
143
143
|
@import "./property-editor-text";
|
|
144
|
+
@import "./property-editor-number";
|
|
144
145
|
@import "./property-editor-html";
|
|
145
146
|
|
|
146
147
|
@import "./property-group-editor-background";
|
|
@@ -235,6 +236,10 @@
|
|
|
235
236
|
.editor {
|
|
236
237
|
width: 50%;
|
|
237
238
|
|
|
239
|
+
.bs-tab-sheet > :nth-child(2) {
|
|
240
|
+
height: 0;
|
|
241
|
+
}
|
|
242
|
+
|
|
238
243
|
.tags {
|
|
239
244
|
height: 60%;
|
|
240
245
|
|
package/css/page-widget.scss
CHANGED
|
@@ -4,6 +4,11 @@
|
|
|
4
4
|
background-position: 50% 50%;
|
|
5
5
|
background-repeat: no-repeat;
|
|
6
6
|
background-size: cover;
|
|
7
|
+
pointer-events: auto !important;
|
|
8
|
+
|
|
9
|
+
* {
|
|
10
|
+
pointer-events: none;
|
|
11
|
+
}
|
|
7
12
|
|
|
8
13
|
//&.selected {
|
|
9
14
|
// outline: 2px solid #4998f8;
|
|
@@ -37,6 +42,7 @@
|
|
|
37
42
|
height: 12px;
|
|
38
43
|
background-color: #27ae60;
|
|
39
44
|
cursor: move;
|
|
45
|
+
pointer-events: auto !important;
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
.resize-handle {
|
|
@@ -47,6 +53,7 @@
|
|
|
47
53
|
height: 12px;
|
|
48
54
|
background-color: #27ae60;
|
|
49
55
|
cursor: nwse-resize;
|
|
56
|
+
pointer-events: auto !important;
|
|
50
57
|
}
|
|
51
58
|
}
|
|
52
59
|
|
|
@@ -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-Cu4Pt-wp.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-Cu4Pt-wp.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-Cu4Pt-wp.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-D4ONFS76.js → PbPropertyEditorMultilineText-BupCrg8y.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-Cu4Pt-wp.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"];
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { defineComponent, openBlock, createElementBlock, createElementVNode, toDisplayString, createVNode, unref } from "vue";
|
|
2
|
+
import { BSNumberInput } from "@g1cloud/bluesea";
|
|
3
|
+
const _hoisted_1 = { class: "property-editor property-editor-number flex-align-center" };
|
|
4
|
+
const _hoisted_2 = { class: "title" };
|
|
5
|
+
const _hoisted_3 = ["textContent"];
|
|
6
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
7
|
+
__name: "PbPropertyEditorNumber",
|
|
8
|
+
props: {
|
|
9
|
+
property: {},
|
|
10
|
+
value: {}
|
|
11
|
+
},
|
|
12
|
+
emits: ["update-property-value"],
|
|
13
|
+
setup(__props, { emit: __emit }) {
|
|
14
|
+
const props = __props;
|
|
15
|
+
const emit = __emit;
|
|
16
|
+
const emitUpdatePropertyValue = (value) => {
|
|
17
|
+
const properties = {};
|
|
18
|
+
properties[props.property.propertyName] = `${value}`;
|
|
19
|
+
emit("update-property-value", properties);
|
|
20
|
+
};
|
|
21
|
+
return (_ctx, _cache) => {
|
|
22
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
23
|
+
createElementVNode("div", _hoisted_2, [
|
|
24
|
+
createElementVNode("label", {
|
|
25
|
+
textContent: toDisplayString(_ctx.property.caption)
|
|
26
|
+
}, null, 8, _hoisted_3)
|
|
27
|
+
]),
|
|
28
|
+
createElementVNode("div", null, [
|
|
29
|
+
createVNode(unref(BSNumberInput), {
|
|
30
|
+
"model-value": Number(_ctx.value),
|
|
31
|
+
width: "100%",
|
|
32
|
+
"onUpdate:modelValue": emitUpdatePropertyValue
|
|
33
|
+
}, null, 8, ["model-value"])
|
|
34
|
+
])
|
|
35
|
+
]);
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
export {
|
|
40
|
+
_sfc_main as default
|
|
41
|
+
};
|
|
@@ -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-Cu4Pt-wp.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-Cu4Pt-wp.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-Cu4Pt-wp.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"];
|
|
@@ -23,7 +23,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
23
23
|
};
|
|
24
24
|
return (_ctx, _cache) => {
|
|
25
25
|
return openBlock(), createBlock(unref(BSModalFrame), {
|
|
26
|
-
class: "pb-
|
|
26
|
+
class: "pb-youtube-modal",
|
|
27
27
|
title: "Youtube Video"
|
|
28
28
|
}, {
|
|
29
29
|
default: withCtx(() => [
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { PartProperty } from '../../../model/part-property.ts';
|
|
2
|
+
|
|
3
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
4
|
+
property: PartProperty;
|
|
5
|
+
value?: string | undefined;
|
|
6
|
+
}>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
7
|
+
"update-property-value": (properties: Record<string, unknown>) => void;
|
|
8
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
9
|
+
property: PartProperty;
|
|
10
|
+
value?: string | undefined;
|
|
11
|
+
}>>> & Readonly<{
|
|
12
|
+
"onUpdate-property-value"?: ((properties: Record<string, unknown>) => any) | undefined;
|
|
13
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
14
|
+
export default _default;
|
|
15
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
16
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
17
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
18
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
19
|
+
} : {
|
|
20
|
+
type: import('vue').PropType<T[K]>;
|
|
21
|
+
required: true;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
@@ -8102,13 +8102,14 @@ class PartManager {
|
|
|
8102
8102
|
const defaultPartPropertyEditors = () => {
|
|
8103
8103
|
return {
|
|
8104
8104
|
"readonly-text": () => defineAsyncComponent(() => import("./PbPropertyEditorReadonlyText-Dgp_AVOD.js")),
|
|
8105
|
-
"text": () => defineAsyncComponent(() => import("./PbPropertyEditorText-
|
|
8106
|
-
"
|
|
8105
|
+
"text": () => defineAsyncComponent(() => import("./PbPropertyEditorText-DPMCCfN3.js")),
|
|
8106
|
+
"number": () => defineAsyncComponent(() => import("./PbPropertyEditorNumber-DrxTz2s1.js")),
|
|
8107
|
+
"multiline-text": () => defineAsyncComponent(() => import("./PbPropertyEditorMultilineText-BupCrg8y.js")),
|
|
8107
8108
|
"select": () => defineAsyncComponent(() => import("./PbPropertyEditorSelect-CWedbXJI.js")),
|
|
8108
|
-
"color": () => defineAsyncComponent(() => import("./PbPropertyEditorColor-
|
|
8109
|
-
"image": () => defineAsyncComponent(() => import("./PbPropertyEditorImage-
|
|
8110
|
-
"html": () => defineAsyncComponent(() => import("./PbPropertyEditorHtml-
|
|
8111
|
-
"youtube": () => defineAsyncComponent(() => import("./PbPropertyEditorYoutube-
|
|
8109
|
+
"color": () => defineAsyncComponent(() => import("./PbPropertyEditorColor-CnF04lLw.js")),
|
|
8110
|
+
"image": () => defineAsyncComponent(() => import("./PbPropertyEditorImage-wnD2ZhtY.js")),
|
|
8111
|
+
"html": () => defineAsyncComponent(() => import("./PbPropertyEditorHtml-DGWhLeBV.js")),
|
|
8112
|
+
"youtube": () => defineAsyncComponent(() => import("./PbPropertyEditorYoutube-CyyNcDAu.js"))
|
|
8112
8113
|
};
|
|
8113
8114
|
};
|
|
8114
8115
|
const getPropertyValueOfParts = (parts, propertyName) => {
|
|
@@ -8128,7 +8129,7 @@ const isCursorInElement = (event, element) => {
|
|
|
8128
8129
|
};
|
|
8129
8130
|
const selectYoutubeVideo = (modal, url, callback) => {
|
|
8130
8131
|
modal.openModal({
|
|
8131
|
-
component: defineAsyncComponent(() => import("./PbYoutubeModal-
|
|
8132
|
+
component: defineAsyncComponent(() => import("./PbYoutubeModal-8vQ_IPA0.js")),
|
|
8132
8133
|
style: {
|
|
8133
8134
|
minWidth: "500px",
|
|
8134
8135
|
minHeight: "400px"
|
|
@@ -12386,7 +12387,7 @@ __publicField(_OpenAddWidgetModalCommand, "COMMAND_ID", "OpenAddWidgetModal");
|
|
|
12386
12387
|
let OpenAddWidgetModalCommand = _OpenAddWidgetModalCommand;
|
|
12387
12388
|
const openWidgetAddModal = (modal, args, callback) => {
|
|
12388
12389
|
modal.openModal({
|
|
12389
|
-
component: defineAsyncComponent(() => import("./PbWidgetAddModal-
|
|
12390
|
+
component: defineAsyncComponent(() => import("./PbWidgetAddModal-CpkklmlZ.js")),
|
|
12390
12391
|
style: {
|
|
12391
12392
|
width: "80%",
|
|
12392
12393
|
height: "80%",
|
|
@@ -13581,7 +13582,7 @@ class PageBuilderEditorImpl {
|
|
|
13581
13582
|
name: "Page (Mobile)"
|
|
13582
13583
|
};
|
|
13583
13584
|
parts[1].properties = {
|
|
13584
|
-
...parts[
|
|
13585
|
+
...parts[1].properties || {},
|
|
13585
13586
|
name: "Page (PC)"
|
|
13586
13587
|
};
|
|
13587
13588
|
}
|
|
@@ -14017,7 +14018,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
14017
14018
|
}
|
|
14018
14019
|
};
|
|
14019
14020
|
const expandParent = (part) => {
|
|
14020
|
-
if (part.parent && part.parent.partName !==
|
|
14021
|
+
if (part.parent && part.parent.partName !== ROOT_TYPE) {
|
|
14021
14022
|
expandedRows.value.add(part.parent.partId);
|
|
14022
14023
|
expandParent(part.parent);
|
|
14023
14024
|
}
|
|
@@ -14289,7 +14290,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
14289
14290
|
};
|
|
14290
14291
|
}
|
|
14291
14292
|
});
|
|
14292
|
-
const canvasStyle = '.pb-page-wrapper {\n margin: 0 auto;\n padding: 0;\n}\n\n.pb-page {\n width: 100%;\n margin: 0 auto;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\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 position: relative;\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}\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}\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}\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\nhtml, body {\n font-family: Noto Sans, Noto Sans KR, Noto Sans JP, Arial, sans-serif;\n font-size: 12px;\n}\n\nbody {\n margin: 0;\n padding: 0;\n background-color: #aaa;\n overflow: hidden;\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 left: 50%;\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 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}';
|
|
14293
|
+
const canvasStyle = '.pb-page-wrapper {\n margin: 0 auto;\n padding: 0;\n}\n\n.pb-page {\n width: 100%;\n margin: 0 auto;\n background-position: 50% 50%;\n background-repeat: no-repeat;\n background-size: cover;\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 position: relative;\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\nhtml, body {\n font-family: Noto Sans, Noto Sans KR, Noto Sans JP, Arial, sans-serif;\n font-size: 12px;\n}\n\nbody {\n margin: 0;\n padding: 0;\n background-color: #aaa;\n overflow: hidden;\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 left: 50%;\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 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}';
|
|
14293
14294
|
const _hoisted_1$2 = ["height", "width"];
|
|
14294
14295
|
const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
14295
14296
|
__name: "PbPageFrame",
|
|
@@ -14387,7 +14388,10 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
14387
14388
|
}, [
|
|
14388
14389
|
createVNode(unref(BSSelect), {
|
|
14389
14390
|
modelValue: width.value,
|
|
14390
|
-
"onUpdate:modelValue":
|
|
14391
|
+
"onUpdate:modelValue": [
|
|
14392
|
+
_cache[0] || (_cache[0] = ($event) => width.value = $event),
|
|
14393
|
+
updateIframeHeight
|
|
14394
|
+
],
|
|
14391
14395
|
items: [480, 768, 1024, 1280],
|
|
14392
14396
|
"label-provider": (v) => `Screen Size: ${v}px`,
|
|
14393
14397
|
"value-provider": (v) => v,
|
|
@@ -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-Cu4Pt-wp.js";
|
|
2
2
|
export {
|
|
3
3
|
B as BLOCK_TYPE,
|
|
4
4
|
b as Block,
|