@bagelink/blox 1.6.47 → 1.6.49
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/blocks/BlockFooter.vue.d.ts.map +1 -1
- package/dist/components/blocks/BlockNav.vue.d.ts.map +1 -1
- package/dist/components/blocks/Contact.vue.d.ts +1 -1
- package/dist/components/blocks/Contact.vue.d.ts.map +1 -1
- package/dist/components/blocks/Tabs.vue.d.ts +1 -1
- package/dist/components/blocks/Tabs.vue.d.ts.map +1 -1
- package/dist/components/blocks/Team.vue.d.ts.map +1 -1
- package/dist/components/blocks/Testimonials.vue.d.ts.map +1 -1
- package/dist/index.cjs +105 -104
- package/dist/index.mjs +106 -105
- package/dist/style.css +118 -118
- package/dist/views/ExternalPreview.vue.d.ts.map +1 -1
- package/package.json +2 -3
package/dist/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
2
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
3
|
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
-
import { defineComponent, createElementBlock, openBlock, normalizeClass, createElementVNode, toDisplayString, useCssVars, renderSlot, createCommentVNode, normalizeStyle, createBlock, resolveDynamicComponent, withCtx, createTextVNode, unref, computed, resolveComponent, createVNode, Fragment, renderList, ref, resolveDirective, withDirectives, reactive, onMounted, withModifiers, createSlots, Transition,
|
|
4
|
+
import { defineComponent, createElementBlock, openBlock, normalizeClass, createElementVNode, toDisplayString, useCssVars, renderSlot, createCommentVNode, normalizeStyle, createBlock, resolveDynamicComponent, withCtx, createTextVNode, unref, computed, resolveComponent, createVNode, Fragment, renderList, ref, resolveDirective, withDirectives, reactive, onMounted, withModifiers, createSlots, Transition, onUnmounted, mergeProps } from "vue";
|
|
5
5
|
import { Image as Image$1, Btn, Card, Icon, TextInput, Accordion, AccordionItem, Carousel, TabsNav, TabsBody, Modal, pathKeyToURL, BglVideo } from "@bagelink/vue";
|
|
6
6
|
const _hoisted_1$u = ["href", "target", "rel"];
|
|
7
7
|
const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
@@ -60,12 +60,12 @@ const _sfc_main$x = /* @__PURE__ */ defineComponent({
|
|
|
60
60
|
},
|
|
61
61
|
setup(__props) {
|
|
62
62
|
useCssVars((_ctx) => ({
|
|
63
|
-
"
|
|
63
|
+
"f164f006": _ctx.columns
|
|
64
64
|
}));
|
|
65
65
|
const props = __props;
|
|
66
66
|
const containerStyle = {
|
|
67
|
-
maxWidth:
|
|
68
|
-
padding:
|
|
67
|
+
maxWidth: typeof props.maxWidth === "number" ? `${props.maxWidth}px` : props.maxWidth,
|
|
68
|
+
padding: typeof props.padding === "number" ? `${props.padding}px` : props.padding,
|
|
69
69
|
gap: `${props.gap}px`
|
|
70
70
|
};
|
|
71
71
|
return (_ctx, _cache) => {
|
|
@@ -78,7 +78,7 @@ const _sfc_main$x = /* @__PURE__ */ defineComponent({
|
|
|
78
78
|
};
|
|
79
79
|
}
|
|
80
80
|
});
|
|
81
|
-
const Container = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__scopeId", "data-v-
|
|
81
|
+
const Container = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__scopeId", "data-v-05d5aba4"]]);
|
|
82
82
|
const _hoisted_1$t = { class: "image-wrapper" };
|
|
83
83
|
const _hoisted_2$r = ["href", "target", "rel"];
|
|
84
84
|
const _hoisted_3$o = ["src", "alt"];
|
|
@@ -143,8 +143,8 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
143
143
|
setup(__props) {
|
|
144
144
|
const props = __props;
|
|
145
145
|
function computedHeight() {
|
|
146
|
-
const h = props.isMobile && props.heightMobile ? props.heightMobile : props.height;
|
|
147
|
-
return "number"
|
|
146
|
+
const h = props.isMobile === true && props.heightMobile !== void 0 ? props.heightMobile : props.height;
|
|
147
|
+
return typeof h === "number" ? `${h}px` : h;
|
|
148
148
|
}
|
|
149
149
|
return (_ctx, _cache) => {
|
|
150
150
|
return openBlock(), createElementBlock("div", {
|
|
@@ -154,7 +154,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
154
154
|
};
|
|
155
155
|
}
|
|
156
156
|
});
|
|
157
|
-
const Spacer = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-
|
|
157
|
+
const Spacer = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-11859d36"]]);
|
|
158
158
|
const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
159
159
|
__name: "Text",
|
|
160
160
|
props: {
|
|
@@ -171,7 +171,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
|
171
171
|
};
|
|
172
172
|
}
|
|
173
173
|
});
|
|
174
|
-
const Text = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-
|
|
174
|
+
const Text = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-19fd75d2"]]);
|
|
175
175
|
const _hoisted_1$s = {
|
|
176
176
|
key: 1,
|
|
177
177
|
class: "subtitle"
|
|
@@ -203,7 +203,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
|
203
203
|
};
|
|
204
204
|
}
|
|
205
205
|
});
|
|
206
|
-
const Title$1 = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-
|
|
206
|
+
const Title$1 = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-aa7f2c92"]]);
|
|
207
207
|
const _hoisted_1$r = ["id"];
|
|
208
208
|
const _hoisted_2$q = {
|
|
209
209
|
key: 1,
|
|
@@ -244,7 +244,7 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
244
244
|
};
|
|
245
245
|
}
|
|
246
246
|
});
|
|
247
|
-
const BigImage = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-
|
|
247
|
+
const BigImage = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-44f7dcf0"]]);
|
|
248
248
|
const _hoisted_1$q = ["id"];
|
|
249
249
|
const _hoisted_2$p = {
|
|
250
250
|
key: 1,
|
|
@@ -311,7 +311,7 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
|
|
|
311
311
|
};
|
|
312
312
|
}
|
|
313
313
|
});
|
|
314
|
-
const BigQuote = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-
|
|
314
|
+
const BigQuote = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-13d1e7cc"]]);
|
|
315
315
|
const _hoisted_1$p = ["id"];
|
|
316
316
|
const _hoisted_2$o = { class: "flex w-1200px align-items-center space-between gap-075 m_column m_p-1 m_txt-center" };
|
|
317
317
|
const _hoisted_3$m = { class: "me-auto m_m-0" };
|
|
@@ -337,7 +337,7 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
|
|
|
337
337
|
},
|
|
338
338
|
setup(__props) {
|
|
339
339
|
const defaultItems = computed(() => {
|
|
340
|
-
if (
|
|
340
|
+
if (__props.items.length > 0) {
|
|
341
341
|
return __props.items;
|
|
342
342
|
}
|
|
343
343
|
return [
|
|
@@ -347,7 +347,7 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
|
|
|
347
347
|
];
|
|
348
348
|
});
|
|
349
349
|
const defaultsocalMedia = computed(() => {
|
|
350
|
-
if (
|
|
350
|
+
if (__props.socalMedia.length > 0) {
|
|
351
351
|
return __props.socalMedia;
|
|
352
352
|
}
|
|
353
353
|
return [
|
|
@@ -435,7 +435,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
435
435
|
},
|
|
436
436
|
setup(__props) {
|
|
437
437
|
const defaultItems = computed(() => {
|
|
438
|
-
if (
|
|
438
|
+
if (__props.items.length > 0) {
|
|
439
439
|
return __props.items;
|
|
440
440
|
}
|
|
441
441
|
return [
|
|
@@ -529,7 +529,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
529
529
|
};
|
|
530
530
|
}
|
|
531
531
|
});
|
|
532
|
-
const BlockNav = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-
|
|
532
|
+
const BlockNav = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-351acf8f"]]);
|
|
533
533
|
const _hoisted_1$n = ["id"];
|
|
534
534
|
const _hoisted_2$m = { key: 0 };
|
|
535
535
|
const _hoisted_3$k = { class: "p-1-5" };
|
|
@@ -577,7 +577,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
577
577
|
}
|
|
578
578
|
];
|
|
579
579
|
const itemsList = computed(() => {
|
|
580
|
-
return __props.items &&
|
|
580
|
+
return __props.items && __props.items.length > 0 ? __props.items : defaultItems;
|
|
581
581
|
});
|
|
582
582
|
return (_ctx, _cache) => {
|
|
583
583
|
const _directive_lightbox = resolveDirective("lightbox");
|
|
@@ -653,7 +653,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
653
653
|
};
|
|
654
654
|
}
|
|
655
655
|
});
|
|
656
|
-
const Cards = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-
|
|
656
|
+
const Cards = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-ede9e3db"]]);
|
|
657
657
|
const _hoisted_1$m = ["id"];
|
|
658
658
|
const _hoisted_2$l = {
|
|
659
659
|
key: 0,
|
|
@@ -700,7 +700,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
700
700
|
id: {}
|
|
701
701
|
},
|
|
702
702
|
setup(__props) {
|
|
703
|
-
|
|
703
|
+
const formStatus = ref("");
|
|
704
704
|
const form = reactive({});
|
|
705
705
|
function initForm() {
|
|
706
706
|
Object.assign(form, {
|
|
@@ -716,6 +716,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
716
716
|
await new Promise((resolve) => setTimeout(resolve, 1e3));
|
|
717
717
|
formStatus.value = "success";
|
|
718
718
|
} catch (error) {
|
|
719
|
+
console.error("Form submission failed:", error);
|
|
719
720
|
formStatus.value = "fail";
|
|
720
721
|
}
|
|
721
722
|
}
|
|
@@ -763,7 +764,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
763
764
|
])) : createCommentVNode("", true)
|
|
764
765
|
])) : createCommentVNode("", true),
|
|
765
766
|
createElementVNode("div", _hoisted_7$4, [
|
|
766
|
-
|
|
767
|
+
formStatus.value !== "success" && _ctx.formStatusView !== "Success" ? (openBlock(), createElementBlock("form", {
|
|
767
768
|
key: 0,
|
|
768
769
|
class: "w-100p",
|
|
769
770
|
onSubmit: withModifiers(sendForm, ["prevent"])
|
|
@@ -804,13 +805,13 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
804
805
|
})
|
|
805
806
|
])
|
|
806
807
|
], 32)) : createCommentVNode("", true),
|
|
807
|
-
|
|
808
|
+
formStatus.value === "success" || _ctx.formStatusView === "Success" ? (openBlock(), createElementBlock("div", _hoisted_10$2, [
|
|
808
809
|
createElementVNode("div", {
|
|
809
810
|
class: "txt-center txt-24",
|
|
810
811
|
innerHTML: _ctx.successMessage
|
|
811
812
|
}, null, 8, _hoisted_11$1)
|
|
812
813
|
])) : createCommentVNode("", true),
|
|
813
|
-
|
|
814
|
+
formStatus.value === "fail" || _ctx.formStatusView === "Fail" ? (openBlock(), createElementBlock("div", _hoisted_12$1, [
|
|
814
815
|
createElementVNode("p", _hoisted_13$1, toDisplayString(_ctx.failMessage), 1)
|
|
815
816
|
])) : createCommentVNode("", true)
|
|
816
817
|
])
|
|
@@ -819,7 +820,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
819
820
|
};
|
|
820
821
|
}
|
|
821
822
|
});
|
|
822
|
-
const Contact = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-
|
|
823
|
+
const Contact = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-6600c2c0"]]);
|
|
823
824
|
const _hoisted_1$l = ["id"];
|
|
824
825
|
const _hoisted_2$k = ["innerHTML"];
|
|
825
826
|
const _hoisted_3$i = {
|
|
@@ -886,7 +887,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
886
887
|
};
|
|
887
888
|
}
|
|
888
889
|
});
|
|
889
|
-
const Cta = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-
|
|
890
|
+
const Cta = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-639daae0"]]);
|
|
890
891
|
const _hoisted_1$k = ["id"];
|
|
891
892
|
const _hoisted_2$j = { class: "txt-20 balance m-0 relative z-2" };
|
|
892
893
|
const _hoisted_3$h = { class: "txt20 line-height-13 py-1 flex-grow-2 txt-start ps-1" };
|
|
@@ -931,7 +932,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
931
932
|
}
|
|
932
933
|
];
|
|
933
934
|
const itemsList = computed(() => {
|
|
934
|
-
return __props.items &&
|
|
935
|
+
return __props.items && __props.items.length > 0 ? __props.items : defaultItems;
|
|
935
936
|
});
|
|
936
937
|
return (_ctx, _cache) => {
|
|
937
938
|
return openBlock(), createElementBlock("div", {
|
|
@@ -992,7 +993,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
992
993
|
};
|
|
993
994
|
}
|
|
994
995
|
});
|
|
995
|
-
const Faq = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-
|
|
996
|
+
const Faq = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-4be9591d"]]);
|
|
996
997
|
const _hoisted_1$j = ["id"];
|
|
997
998
|
const _hoisted_2$i = { class: "relative z-2 w-100p mt-auto line-height-14 color-white" };
|
|
998
999
|
const _hoisted_3$g = { class: "m-0 txt30 regular balance max-w400px pb-025" };
|
|
@@ -1062,7 +1063,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
1062
1063
|
}
|
|
1063
1064
|
];
|
|
1064
1065
|
const itemsList = computed(() => {
|
|
1065
|
-
return __props.items &&
|
|
1066
|
+
return __props.items && __props.items.length > 0 ? __props.items : defaultItems;
|
|
1066
1067
|
});
|
|
1067
1068
|
return (_ctx, _cache) => {
|
|
1068
1069
|
return openBlock(), createElementBlock("div", {
|
|
@@ -1152,7 +1153,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
1152
1153
|
}
|
|
1153
1154
|
];
|
|
1154
1155
|
const itemsList = computed(() => {
|
|
1155
|
-
return __props.items &&
|
|
1156
|
+
return __props.items && __props.items.length > 0 ? __props.items : defaultItems;
|
|
1156
1157
|
});
|
|
1157
1158
|
return (_ctx, _cache) => {
|
|
1158
1159
|
return openBlock(), createElementBlock("div", { id: _ctx.id }, [
|
|
@@ -1189,7 +1190,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
1189
1190
|
};
|
|
1190
1191
|
}
|
|
1191
1192
|
});
|
|
1192
|
-
const Icons = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-
|
|
1193
|
+
const Icons = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-452babdb"]]);
|
|
1193
1194
|
const _hoisted_1$h = ["id"];
|
|
1194
1195
|
const _hoisted_2$g = { class: "txt-20 balance m-0" };
|
|
1195
1196
|
const _hoisted_3$e = { class: "txt24 line-height-13 pb-025" };
|
|
@@ -1229,7 +1230,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
1229
1230
|
}
|
|
1230
1231
|
];
|
|
1231
1232
|
const itemsList = computed(() => {
|
|
1232
|
-
return __props.items &&
|
|
1233
|
+
return __props.items && __props.items.length > 0 ? __props.items : defaultItems;
|
|
1233
1234
|
});
|
|
1234
1235
|
return (_ctx, _cache) => {
|
|
1235
1236
|
return openBlock(), createElementBlock("div", {
|
|
@@ -1286,7 +1287,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
1286
1287
|
};
|
|
1287
1288
|
}
|
|
1288
1289
|
});
|
|
1289
|
-
const IconsList = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-
|
|
1290
|
+
const IconsList = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-07ff7bf0"]]);
|
|
1290
1291
|
const _hoisted_1$g = { class: "txt30 line-height-12" };
|
|
1291
1292
|
const _hoisted_2$f = { class: "txt24 pt-1 line-height-15" };
|
|
1292
1293
|
const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
@@ -1307,7 +1308,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
1307
1308
|
{ image: "https://bagel.sfo2.cdn.digitaloceanspaces.com/bagelBlocks/image.svg", title: "", subtitle: "" }
|
|
1308
1309
|
];
|
|
1309
1310
|
const itemsList = computed(() => {
|
|
1310
|
-
return __props.items &&
|
|
1311
|
+
return __props.items && __props.items.length > 0 ? __props.items : defaultItems;
|
|
1311
1312
|
});
|
|
1312
1313
|
return (_ctx, _cache) => {
|
|
1313
1314
|
const _directive_lightbox = resolveDirective("lightbox");
|
|
@@ -1417,7 +1418,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
1417
1418
|
}
|
|
1418
1419
|
];
|
|
1419
1420
|
const itemsList = computed(() => {
|
|
1420
|
-
return __props.items &&
|
|
1421
|
+
return __props.items && __props.items.length > 0 ? __props.items : defaultItems;
|
|
1421
1422
|
});
|
|
1422
1423
|
return (_ctx, _cache) => {
|
|
1423
1424
|
return openBlock(), createElementBlock("div", {
|
|
@@ -1524,7 +1525,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
|
1524
1525
|
{ image: "https://bagel.sfo2.cdn.digitaloceanspaces.com/bagelBlocks/image.svg", alt: "", link: "" }
|
|
1525
1526
|
];
|
|
1526
1527
|
const itemsList = computed(() => {
|
|
1527
|
-
return __props.items &&
|
|
1528
|
+
return __props.items && __props.items.length > 0 ? __props.items : defaultItems;
|
|
1528
1529
|
});
|
|
1529
1530
|
return (_ctx, _cache) => {
|
|
1530
1531
|
return openBlock(), createElementBlock("div", { id: _ctx.id }, [
|
|
@@ -1625,7 +1626,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
1625
1626
|
const now = (/* @__PURE__ */ new Date()).getTime();
|
|
1626
1627
|
const targetTime = __props.targetDateTime.getTime();
|
|
1627
1628
|
timeLeft.value = Math.floor((targetTime - now) / 1e3);
|
|
1628
|
-
if (
|
|
1629
|
+
if (timeLeft.value <= 0) {
|
|
1629
1630
|
clearInterval(interval);
|
|
1630
1631
|
}
|
|
1631
1632
|
}, 1e3);
|
|
@@ -1733,9 +1734,9 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
|
1733
1734
|
const timeToAddInHours = (__props.countdown ?? 0) * 60 * 60 * 1e3;
|
|
1734
1735
|
return new Date((/* @__PURE__ */ new Date()).getTime() + timeToAddInHours);
|
|
1735
1736
|
});
|
|
1736
|
-
|
|
1737
|
+
const openPopup = ref(false);
|
|
1737
1738
|
onMounted(() => {
|
|
1738
|
-
if (__props.autoOpenDelay &&
|
|
1739
|
+
if (__props.autoOpenDelay && __props.autoOpenDelay > 0) {
|
|
1739
1740
|
setTimeout(() => openPopup.value = true, __props.autoOpenDelay);
|
|
1740
1741
|
} else {
|
|
1741
1742
|
openPopup.value = true;
|
|
@@ -1744,7 +1745,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
|
1744
1745
|
return (_ctx, _cache) => {
|
|
1745
1746
|
return openBlock(), createBlock(Transition, { name: "fadePopup" }, {
|
|
1746
1747
|
default: withCtx(() => [
|
|
1747
|
-
|
|
1748
|
+
openPopup.value ? (openBlock(), createElementBlock("div", _hoisted_1$c, [
|
|
1748
1749
|
_ctx.position === "top" ? (openBlock(), createElementBlock("div", {
|
|
1749
1750
|
key: 0,
|
|
1750
1751
|
id: _ctx.id,
|
|
@@ -1779,7 +1780,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
|
1779
1780
|
class: "absolute end-025 m_top-025",
|
|
1780
1781
|
icon: "close",
|
|
1781
1782
|
style: normalizeStyle([_ctx.bgColor ? { backgroundColor: _ctx.bgColor } : {}, _ctx.textColor ? { color: _ctx.textColor } : {}]),
|
|
1782
|
-
onClick: _cache[0] || (_cache[0] = ($event) =>
|
|
1783
|
+
onClick: _cache[0] || (_cache[0] = ($event) => openPopup.value = false)
|
|
1783
1784
|
}, null, 8, ["style"])
|
|
1784
1785
|
], 12, _hoisted_2$c)) : createCommentVNode("", true),
|
|
1785
1786
|
_ctx.position === "center" ? (openBlock(), createElementBlock("div", {
|
|
@@ -1827,7 +1828,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
|
1827
1828
|
class: "absolute end-025 top-025",
|
|
1828
1829
|
icon: "close",
|
|
1829
1830
|
style: normalizeStyle([_ctx.bgColor ? { backgroundColor: _ctx.bgColor } : {}, _ctx.textColor ? { color: _ctx.textColor } : {}]),
|
|
1830
|
-
onClick: _cache[1] || (_cache[1] = ($event) =>
|
|
1831
|
+
onClick: _cache[1] || (_cache[1] = ($event) => openPopup.value = false)
|
|
1831
1832
|
}, null, 8, ["style"])
|
|
1832
1833
|
], 4)
|
|
1833
1834
|
], 8, _hoisted_5$4)) : createCommentVNode("", true),
|
|
@@ -1873,7 +1874,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
|
1873
1874
|
class: "absolute start-025 top-025",
|
|
1874
1875
|
icon: "close",
|
|
1875
1876
|
style: normalizeStyle([_ctx.bgColor ? { backgroundColor: _ctx.bgColor } : {}, _ctx.textColor ? { color: _ctx.textColor } : {}]),
|
|
1876
|
-
onClick: _cache[2] || (_cache[2] = ($event) =>
|
|
1877
|
+
onClick: _cache[2] || (_cache[2] = ($event) => openPopup.value = false)
|
|
1877
1878
|
}, null, 8, ["style"])
|
|
1878
1879
|
], 12, _hoisted_8$1)) : createCommentVNode("", true)
|
|
1879
1880
|
])) : createCommentVNode("", true)
|
|
@@ -1959,7 +1960,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
|
1959
1960
|
}
|
|
1960
1961
|
];
|
|
1961
1962
|
const itemsList = computed(() => {
|
|
1962
|
-
return __props.items &&
|
|
1963
|
+
return __props.items && __props.items.length > 0 ? __props.items : defaultItems;
|
|
1963
1964
|
});
|
|
1964
1965
|
return (_ctx, _cache) => {
|
|
1965
1966
|
return openBlock(), createElementBlock("div", _hoisted_1$b, [
|
|
@@ -2050,10 +2051,10 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
2050
2051
|
const desktopAbs = Math.abs(desktopValue);
|
|
2051
2052
|
const mobileAbs = Math.abs(mobileValue);
|
|
2052
2053
|
return {
|
|
2053
|
-
"--desktop-height":
|
|
2054
|
-
"--mobile-height":
|
|
2055
|
-
"--desktop-margin":
|
|
2056
|
-
"--mobile-margin":
|
|
2054
|
+
"--desktop-height": desktopValue >= 0 ? `${desktopAbs}rem` : "auto",
|
|
2055
|
+
"--mobile-height": mobileValue >= 0 ? `${mobileAbs}rem` : "auto",
|
|
2056
|
+
"--desktop-margin": desktopValue < 0 ? `-${desktopAbs}rem` : "0",
|
|
2057
|
+
"--mobile-margin": mobileValue < 0 ? `-${mobileAbs}rem` : "0"
|
|
2057
2058
|
};
|
|
2058
2059
|
});
|
|
2059
2060
|
return (_ctx, _cache) => {
|
|
@@ -2064,7 +2065,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
2064
2065
|
};
|
|
2065
2066
|
}
|
|
2066
2067
|
});
|
|
2067
|
-
const Space = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-
|
|
2068
|
+
const Space = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-8702adbf"]]);
|
|
2068
2069
|
const _hoisted_1$a = ["id"];
|
|
2069
2070
|
const _hoisted_2$a = { class: "" };
|
|
2070
2071
|
const _hoisted_3$9 = ["innerHTML"];
|
|
@@ -2085,7 +2086,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
|
2085
2086
|
{ title: "Smart & Simple", body: "It just makes sense. No overthinking, just great results." }
|
|
2086
2087
|
];
|
|
2087
2088
|
const itemsList = computed(() => {
|
|
2088
|
-
return __props.items
|
|
2089
|
+
return __props.items.length > 0 ? __props.items : defaultItems;
|
|
2089
2090
|
});
|
|
2090
2091
|
const activeTab = computed(() => __props.items.findIndex((item) => item.active).toString() || "0");
|
|
2091
2092
|
return (_ctx, _cache) => {
|
|
@@ -2095,8 +2096,8 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
|
2095
2096
|
}, [
|
|
2096
2097
|
createElementVNode("div", _hoisted_2$a, [
|
|
2097
2098
|
createVNode(unref(TabsNav), {
|
|
2098
|
-
modelValue:
|
|
2099
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) =>
|
|
2099
|
+
modelValue: activeTab.value,
|
|
2100
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => activeTab.value = $event),
|
|
2100
2101
|
class: "flex-shrink-0",
|
|
2101
2102
|
group: "tabs",
|
|
2102
2103
|
tabs: itemsList.value.map((item, index) => ({ id: `${index}`, label: item.title })),
|
|
@@ -2147,7 +2148,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
2147
2148
|
},
|
|
2148
2149
|
setup(__props) {
|
|
2149
2150
|
const listItem = computed(() => {
|
|
2150
|
-
if (__props.items &&
|
|
2151
|
+
if (__props.items && __props.items.length > 0) {
|
|
2151
2152
|
return __props.items;
|
|
2152
2153
|
}
|
|
2153
2154
|
return [
|
|
@@ -2237,7 +2238,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
2237
2238
|
};
|
|
2238
2239
|
}
|
|
2239
2240
|
});
|
|
2240
|
-
const Team = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-
|
|
2241
|
+
const Team = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-88b050bd"]]);
|
|
2241
2242
|
const _hoisted_1$8 = { class: "txt30 line-height-12 py-05" };
|
|
2242
2243
|
const _hoisted_2$8 = { class: "txt24 bold pt-1 line-height-1" };
|
|
2243
2244
|
const _hoisted_3$7 = { class: "pt-025" };
|
|
@@ -2255,7 +2256,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
2255
2256
|
},
|
|
2256
2257
|
setup(__props) {
|
|
2257
2258
|
const listItem = computed(() => {
|
|
2258
|
-
if (__props.items &&
|
|
2259
|
+
if (__props.items && __props.items.length > 0) {
|
|
2259
2260
|
return __props.items;
|
|
2260
2261
|
}
|
|
2261
2262
|
return [
|
|
@@ -2352,7 +2353,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
2352
2353
|
};
|
|
2353
2354
|
}
|
|
2354
2355
|
});
|
|
2355
|
-
const Testimonials = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-
|
|
2356
|
+
const Testimonials = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-f5cdbfee"]]);
|
|
2356
2357
|
const _hoisted_1$7 = ["id"];
|
|
2357
2358
|
const _hoisted_2$7 = ["innerHTML"];
|
|
2358
2359
|
const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
@@ -2468,7 +2469,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
2468
2469
|
};
|
|
2469
2470
|
}
|
|
2470
2471
|
});
|
|
2471
|
-
const TextImage = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-
|
|
2472
|
+
const TextImage = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-1a468adf"]]);
|
|
2472
2473
|
const _hoisted_1$5 = ["id"];
|
|
2473
2474
|
const _hoisted_2$5 = { class: "emptyState rounded emptyStateRT" };
|
|
2474
2475
|
const _hoisted_3$5 = ["innerHTML"];
|
|
@@ -2553,7 +2554,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
2553
2554
|
};
|
|
2554
2555
|
}
|
|
2555
2556
|
});
|
|
2556
|
-
const TextSide = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-
|
|
2557
|
+
const TextSide = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-24c70320"]]);
|
|
2557
2558
|
const _hoisted_1$4 = ["id"];
|
|
2558
2559
|
const _hoisted_2$4 = { class: "txt-16 opacity-6" };
|
|
2559
2560
|
const _hoisted_3$4 = ["innerHTML"];
|
|
@@ -2607,7 +2608,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
2607
2608
|
};
|
|
2608
2609
|
}
|
|
2609
2610
|
});
|
|
2610
|
-
const Title = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-
|
|
2611
|
+
const Title = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-bee838c4"]]);
|
|
2611
2612
|
const _hoisted_1$3 = ["id"];
|
|
2612
2613
|
const _hoisted_2$3 = { class: "emptyState" };
|
|
2613
2614
|
const _hoisted_3$3 = { class: "txt-16 opacity-6" };
|
|
@@ -2693,7 +2694,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
2693
2694
|
};
|
|
2694
2695
|
}
|
|
2695
2696
|
});
|
|
2696
|
-
const TitleSide = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-
|
|
2697
|
+
const TitleSide = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-b842227e"]]);
|
|
2697
2698
|
const _hoisted_1$2 = ["id"];
|
|
2698
2699
|
const _hoisted_2$2 = {
|
|
2699
2700
|
key: 0,
|
|
@@ -5420,7 +5421,7 @@ class CommunicationBridge {
|
|
|
5420
5421
|
* Handle incoming messages
|
|
5421
5422
|
*/
|
|
5422
5423
|
handleMessage(event) {
|
|
5423
|
-
if ("*"
|
|
5424
|
+
if (this.origin !== "*" && event.origin !== this.origin) {
|
|
5424
5425
|
console.warn(`⚠️ Rejected message from unauthorized origin: ${event.origin}`);
|
|
5425
5426
|
return;
|
|
5426
5427
|
}
|
|
@@ -5475,7 +5476,7 @@ class CommunicationBridge {
|
|
|
5475
5476
|
*/
|
|
5476
5477
|
send(type, message, data) {
|
|
5477
5478
|
const payload = { type, message, data };
|
|
5478
|
-
this.targetWindow.postMessage(payload, "*"
|
|
5479
|
+
this.targetWindow.postMessage(payload, this.origin === "*" ? "*" : this.origin);
|
|
5479
5480
|
}
|
|
5480
5481
|
/**
|
|
5481
5482
|
* Cleanup
|
|
@@ -5542,14 +5543,14 @@ function createNamespacedRegistry(namespace) {
|
|
|
5542
5543
|
function generateBlockStyles(data, isMobile = false) {
|
|
5543
5544
|
const styles = {};
|
|
5544
5545
|
function toNumber(v) {
|
|
5545
|
-
if (v === void 0 ||
|
|
5546
|
+
if (v === void 0 || v === null || v === "") {
|
|
5546
5547
|
return null;
|
|
5547
5548
|
}
|
|
5548
5549
|
const n = Number(v);
|
|
5549
5550
|
return Number.isNaN(n) ? null : n;
|
|
5550
5551
|
}
|
|
5551
5552
|
function getValue(desktopKey, mobileKey) {
|
|
5552
|
-
if (isMobile && data[mobileKey] !== void 0 &&
|
|
5553
|
+
if (isMobile && data[mobileKey] !== void 0 && data[mobileKey] !== null) {
|
|
5553
5554
|
return data[mobileKey];
|
|
5554
5555
|
}
|
|
5555
5556
|
return data[desktopKey];
|
|
@@ -5557,21 +5558,21 @@ function generateBlockStyles(data, isMobile = false) {
|
|
|
5557
5558
|
const mTop = toNumber(getValue("marginTop", "marginTopMobile"));
|
|
5558
5559
|
const mBottom = toNumber(getValue("marginBottom", "marginBottomMobile"));
|
|
5559
5560
|
const pad = toNumber(getValue("padding", "paddingMobile"));
|
|
5560
|
-
if (
|
|
5561
|
+
if (mTop !== null) {
|
|
5561
5562
|
styles["margin-top"] = `${mTop}rem`;
|
|
5562
5563
|
styles["--margin-top"] = `${mTop}rem`;
|
|
5563
5564
|
} else {
|
|
5564
5565
|
styles["--margin-top"] = "0rem";
|
|
5565
5566
|
}
|
|
5566
|
-
if (
|
|
5567
|
+
if (mBottom !== null) {
|
|
5567
5568
|
styles["margin-bottom"] = `${mBottom}rem`;
|
|
5568
5569
|
styles["--margin-bottom"] = `${mBottom}rem`;
|
|
5569
5570
|
} else {
|
|
5570
5571
|
styles["--margin-bottom"] = "0rem";
|
|
5571
5572
|
}
|
|
5572
|
-
const hasMargin =
|
|
5573
|
+
const hasMargin = mTop !== null && mTop > 0 || mBottom !== null && mBottom > 0;
|
|
5573
5574
|
styles["--has-margin"] = hasMargin ? "1" : "0";
|
|
5574
|
-
if (
|
|
5575
|
+
if (pad !== null) {
|
|
5575
5576
|
styles.padding = `${pad}rem`;
|
|
5576
5577
|
styles["--block-padding"] = `${pad}rem`;
|
|
5577
5578
|
}
|
|
@@ -5580,16 +5581,16 @@ function generateBlockStyles(data, isMobile = false) {
|
|
|
5580
5581
|
const wPercentDesktop = toNumber(data.widthPercent) || 96;
|
|
5581
5582
|
const wPercentMobile = toNumber(data.widthPercentMobile) || wPercentDesktop;
|
|
5582
5583
|
const fullWidthDesktop = data.fullWidth;
|
|
5583
|
-
styles["--max-width-desktop"] =
|
|
5584
|
-
styles["--max-width-mobile"] =
|
|
5584
|
+
styles["--max-width-desktop"] = wDesktop !== null ? `${wDesktop}px` : "800px";
|
|
5585
|
+
styles["--max-width-mobile"] = wMobile !== null ? `${wMobile}px` : wDesktop !== null ? `${wDesktop}px` : "800px";
|
|
5585
5586
|
styles["--width-percent-desktop"] = `${wPercentDesktop}%`;
|
|
5586
5587
|
styles["--width-percent-mobile"] = `${wPercentMobile}%`;
|
|
5587
|
-
if (!(
|
|
5588
|
+
if (!(fullWidthDesktop === true || fullWidthDesktop === "true") && wDesktop !== null) {
|
|
5588
5589
|
styles["margin-left"] = "auto";
|
|
5589
5590
|
styles["margin-right"] = "auto";
|
|
5590
5591
|
}
|
|
5591
5592
|
const borderW = toNumber(getValue("borderWidth", "borderWidthMobile"));
|
|
5592
|
-
if (
|
|
5593
|
+
if (borderW !== null && borderW > 0) {
|
|
5593
5594
|
styles["border-width"] = `${borderW}px`;
|
|
5594
5595
|
styles["border-style"] = getValue("borderStyle", "borderStyleMobile") || "solid";
|
|
5595
5596
|
const borderColor = getValue("borderColor", "borderColorMobile");
|
|
@@ -5598,11 +5599,11 @@ function generateBlockStyles(data, isMobile = false) {
|
|
|
5598
5599
|
}
|
|
5599
5600
|
}
|
|
5600
5601
|
const isCenter = getValue("center", "centerMobile");
|
|
5601
|
-
if (
|
|
5602
|
+
if (isCenter === true || isCenter === "true") {
|
|
5602
5603
|
styles["text-align"] = "center";
|
|
5603
5604
|
}
|
|
5604
5605
|
const borderR = toNumber(getValue("borderRadius", "borderRadiusMobile"));
|
|
5605
|
-
if (
|
|
5606
|
+
if (borderR !== null) {
|
|
5606
5607
|
styles["border-radius"] = `${borderR}px`;
|
|
5607
5608
|
}
|
|
5608
5609
|
const bgColorDesktop = data.backgroundColor;
|
|
@@ -5630,29 +5631,29 @@ function generateBlockStyles(data, isMobile = false) {
|
|
|
5630
5631
|
custom: "0 4px 6px -1px rgba(0, 0, 0, 0.15)"
|
|
5631
5632
|
};
|
|
5632
5633
|
const shadowType = getValue("shadowType", "shadowTypeMobile");
|
|
5633
|
-
if (shadowType && "none"
|
|
5634
|
+
if (shadowType && shadowType !== "none") {
|
|
5634
5635
|
styles["box-shadow"] = shadowMap[shadowType] || shadowMap.md;
|
|
5635
5636
|
}
|
|
5636
5637
|
const z = toNumber(getValue("zIndex", "zIndexMobile"));
|
|
5637
|
-
if (
|
|
5638
|
+
if (z !== null && z > 0) {
|
|
5638
5639
|
styles.position = "relative";
|
|
5639
5640
|
styles["z-index"] = z.toString();
|
|
5640
5641
|
}
|
|
5641
|
-
if (!isMobile &&
|
|
5642
|
+
if (!isMobile && data.showDesktop === false) {
|
|
5642
5643
|
styles.display = "none";
|
|
5643
|
-
} else if (isMobile &&
|
|
5644
|
+
} else if (isMobile && data.showMobile === false) {
|
|
5644
5645
|
styles.display = "none";
|
|
5645
5646
|
}
|
|
5646
5647
|
const fontFamilyDesktop = data.fontFamily;
|
|
5647
5648
|
const { fontFamilyMobile } = data;
|
|
5648
|
-
if (isMobile && fontFamilyMobile &&
|
|
5649
|
+
if (isMobile && fontFamilyMobile && fontFamilyMobile.trim() !== "") {
|
|
5649
5650
|
styles["font-family"] = `"${fontFamilyMobile}", sans-serif`;
|
|
5650
|
-
} else if (fontFamilyDesktop &&
|
|
5651
|
+
} else if (fontFamilyDesktop && fontFamilyDesktop.trim() !== "") {
|
|
5651
5652
|
styles["font-family"] = `"${fontFamilyDesktop}", sans-serif`;
|
|
5652
5653
|
}
|
|
5653
5654
|
if (data.customCSS) {
|
|
5654
5655
|
try {
|
|
5655
|
-
const customRules = data.customCSS.split(";").filter((rule) => rule.trim()).map((rule) => rule.trim().split(":")).filter((parts) =>
|
|
5656
|
+
const customRules = data.customCSS.split(";").filter((rule) => rule.trim()).map((rule) => rule.trim().split(":")).filter((parts) => parts.length === 2);
|
|
5656
5657
|
customRules.forEach(([property, value]) => {
|
|
5657
5658
|
const prop = property.trim();
|
|
5658
5659
|
const val = value.trim();
|
|
@@ -5669,7 +5670,7 @@ function generateBlockStyles(data, isMobile = false) {
|
|
|
5669
5670
|
function getResponsiveClasses(data) {
|
|
5670
5671
|
const classes = ["blox-block", "responsive-colors"];
|
|
5671
5672
|
const effectiveDesktopFullWidth = Boolean(data.fullWidth);
|
|
5672
|
-
const effectiveMobileFullWidth =
|
|
5673
|
+
const effectiveMobileFullWidth = data.fullWidthMobile !== null ? Boolean(data.fullWidthMobile) : effectiveDesktopFullWidth;
|
|
5673
5674
|
if (effectiveDesktopFullWidth) {
|
|
5674
5675
|
classes.push("full-width-desktop");
|
|
5675
5676
|
}
|
|
@@ -5850,12 +5851,12 @@ function normalizeComponentData(data) {
|
|
|
5850
5851
|
const normalized = {};
|
|
5851
5852
|
const stringFields = ["title", "subTitle", "btnTxt", "tag", "customId", "height", "url", "href"];
|
|
5852
5853
|
for (const [key, value] of Object.entries(data)) {
|
|
5853
|
-
if ("string"
|
|
5854
|
-
if ("true"
|
|
5854
|
+
if (typeof value === "string") {
|
|
5855
|
+
if (value === "true") {
|
|
5855
5856
|
normalized[key] = true;
|
|
5856
|
-
} else if ("false"
|
|
5857
|
+
} else if (value === "false") {
|
|
5857
5858
|
normalized[key] = false;
|
|
5858
|
-
} else if (!Number.isNaN(Number(value)) &&
|
|
5859
|
+
} else if (!Number.isNaN(Number(value)) && value !== "" && !stringFields.includes(key)) {
|
|
5859
5860
|
normalized[key] = Number(value);
|
|
5860
5861
|
} else {
|
|
5861
5862
|
normalized[key] = value;
|
|
@@ -5867,10 +5868,10 @@ function normalizeComponentData(data) {
|
|
|
5867
5868
|
if (!normalized.items) {
|
|
5868
5869
|
normalized.items = [];
|
|
5869
5870
|
}
|
|
5870
|
-
if (normalized.height !== void 0 &&
|
|
5871
|
+
if (normalized.height !== void 0 && typeof normalized.height === "number") {
|
|
5871
5872
|
normalized.height = String(normalized.height);
|
|
5872
5873
|
}
|
|
5873
|
-
if ("auto"
|
|
5874
|
+
if (normalized.height === "auto") {
|
|
5874
5875
|
delete normalized.height;
|
|
5875
5876
|
}
|
|
5876
5877
|
return normalized;
|
|
@@ -5881,7 +5882,7 @@ function deepClone(obj) {
|
|
|
5881
5882
|
function deepMerge(target, source) {
|
|
5882
5883
|
const result = { ...target };
|
|
5883
5884
|
for (const key in source) {
|
|
5884
|
-
if (source[key] &&
|
|
5885
|
+
if (source[key] && typeof source[key] === "object" && !Array.isArray(source[key])) {
|
|
5885
5886
|
result[key] = deepMerge(result[key] || {}, source[key]);
|
|
5886
5887
|
} else {
|
|
5887
5888
|
result[key] = source[key];
|
|
@@ -5942,7 +5943,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
5942
5943
|
return false;
|
|
5943
5944
|
}
|
|
5944
5945
|
return config.content.some(
|
|
5945
|
-
(field) => ["text", "richtext"].includes(field.type) || "array"
|
|
5946
|
+
(field) => ["text", "richtext"].includes(field.type) || field.type === "array" && field.fields && field.fields.some((subField) => ["text", "richtext"].includes(subField.type))
|
|
5946
5947
|
);
|
|
5947
5948
|
}
|
|
5948
5949
|
let lastFocusCall = 0;
|
|
@@ -5954,7 +5955,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
5954
5955
|
return;
|
|
5955
5956
|
}
|
|
5956
5957
|
const now = Date.now();
|
|
5957
|
-
if (lastFocusCall &&
|
|
5958
|
+
if (lastFocusCall && now - lastFocusCall < 10) {
|
|
5958
5959
|
console.log("🛡️ ExternalPreview setFocus debounced:", id);
|
|
5959
5960
|
return;
|
|
5960
5961
|
}
|
|
@@ -5965,7 +5966,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
5965
5966
|
const el = document.querySelector(`[data-block-id="${id}"]`);
|
|
5966
5967
|
el == null ? void 0 : el.scrollIntoView({ behavior: "smooth", block: "center" });
|
|
5967
5968
|
if (emit && bridge) {
|
|
5968
|
-
if (lastEmittedId !== id ||
|
|
5969
|
+
if (lastEmittedId !== id || now - lastEmittedTime > 50) {
|
|
5969
5970
|
console.log("📴 ExternalPreview sending focus:", id);
|
|
5970
5971
|
bridge.send("focus", id);
|
|
5971
5972
|
lastEmittedId = id;
|
|
@@ -5985,24 +5986,24 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
5985
5986
|
if (previewMode.value) {
|
|
5986
5987
|
return;
|
|
5987
5988
|
}
|
|
5988
|
-
if ("ArrowDown"
|
|
5989
|
+
if (event.key === "ArrowDown") {
|
|
5989
5990
|
const next = components.value.findIndex((comp) => comp.id === highlightID.value) + 1;
|
|
5990
5991
|
if (next < components.value.length) {
|
|
5991
5992
|
setFocus(components.value[next].id, true);
|
|
5992
5993
|
}
|
|
5993
|
-
} else if ("ArrowUp"
|
|
5994
|
+
} else if (event.key === "ArrowUp") {
|
|
5994
5995
|
const prev = components.value.findIndex((comp) => comp.id === highlightID.value) - 1;
|
|
5995
|
-
if (
|
|
5996
|
+
if (prev >= 0) {
|
|
5996
5997
|
setFocus(components.value[prev].id, true);
|
|
5997
5998
|
}
|
|
5998
|
-
} else if ("Enter"
|
|
5999
|
+
} else if (event.key === "Enter") {
|
|
5999
6000
|
if (bridge) {
|
|
6000
6001
|
bridge.send("focus", highlightID.value);
|
|
6001
6002
|
}
|
|
6002
|
-
} else if ("Escape"
|
|
6003
|
+
} else if (event.key === "Escape") {
|
|
6003
6004
|
setHighlight("");
|
|
6004
6005
|
selectedID.value = "";
|
|
6005
|
-
} else if ("Delete"
|
|
6006
|
+
} else if (event.key === "Delete") {
|
|
6006
6007
|
if (bridge) {
|
|
6007
6008
|
bridge.send("delete", highlightID.value);
|
|
6008
6009
|
}
|
|
@@ -6015,8 +6016,8 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
6015
6016
|
let element = event.target;
|
|
6016
6017
|
while (element) {
|
|
6017
6018
|
const href = element.getAttribute("href");
|
|
6018
|
-
if ("A"
|
|
6019
|
-
const isButton = element.classList.contains("btn") || element.classList.contains("button") ||
|
|
6019
|
+
if (element.tagName === "A" && href !== null && href !== "") {
|
|
6020
|
+
const isButton = element.classList.contains("btn") || element.classList.contains("button") || element.getAttribute("role") === "button";
|
|
6020
6021
|
if (!isButton) {
|
|
6021
6022
|
event.preventDefault();
|
|
6022
6023
|
event.stopPropagation();
|
|
@@ -6140,7 +6141,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
6140
6141
|
};
|
|
6141
6142
|
}
|
|
6142
6143
|
});
|
|
6143
|
-
const ExternalPreview = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-
|
|
6144
|
+
const ExternalPreview = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-7e262aee"]]);
|
|
6144
6145
|
const _hoisted_1 = { class: "blox-page-wrapper" };
|
|
6145
6146
|
const _hoisted_2 = {
|
|
6146
6147
|
key: 0,
|
|
@@ -6211,16 +6212,16 @@ class ComponentValidationError extends Error {
|
|
|
6211
6212
|
}
|
|
6212
6213
|
function validateComponentConfig(config) {
|
|
6213
6214
|
const errors = [];
|
|
6214
|
-
if (!config.id ||
|
|
6215
|
+
if (!config.id || typeof config.id !== "string") {
|
|
6215
6216
|
errors.push('Component must have a valid "id" (string)');
|
|
6216
6217
|
}
|
|
6217
|
-
if (!config.label ||
|
|
6218
|
+
if (!config.label || typeof config.label !== "string") {
|
|
6218
6219
|
errors.push('Component must have a valid "label" (string)');
|
|
6219
6220
|
}
|
|
6220
6221
|
if (!config.component) {
|
|
6221
6222
|
errors.push('Component must have a "component" property (Vue component or async function)');
|
|
6222
6223
|
}
|
|
6223
|
-
if (config.component &&
|
|
6224
|
+
if (config.component && typeof config.component !== "function" && typeof config.component !== "object") {
|
|
6224
6225
|
errors.push('Component "component" must be a Vue component or async function');
|
|
6225
6226
|
}
|
|
6226
6227
|
if (config.content && !Array.isArray(config.content)) {
|
|
@@ -6229,7 +6230,7 @@ function validateComponentConfig(config) {
|
|
|
6229
6230
|
if (config.settings && !Array.isArray(config.settings)) {
|
|
6230
6231
|
errors.push('Component "settings" must be an array');
|
|
6231
6232
|
}
|
|
6232
|
-
if (
|
|
6233
|
+
if (errors.length > 0) {
|
|
6233
6234
|
throw new ComponentValidationError(
|
|
6234
6235
|
`Invalid component configuration for "${config.id || "unknown"}":
|
|
6235
6236
|
${errors.map((e) => ` - ${e}`).join("\n")}`,
|
|
@@ -6261,12 +6262,12 @@ function levenshteinDistance(a, b) {
|
|
|
6261
6262
|
return matrix[b.length][a.length];
|
|
6262
6263
|
}
|
|
6263
6264
|
function findSimilarIds(targetId, allIds, maxSuggestions = 3) {
|
|
6264
|
-
return allIds.map((id) => ({ id, distance: levenshteinDistance(targetId.toLowerCase(), id.toLowerCase()) })).filter((item) =>
|
|
6265
|
+
return allIds.map((id) => ({ id, distance: levenshteinDistance(targetId.toLowerCase(), id.toLowerCase()) })).filter((item) => item.distance <= 3).sort((a, b) => a.distance - b.distance).slice(0, maxSuggestions).map((item) => item.id);
|
|
6265
6266
|
}
|
|
6266
6267
|
function createMissingComponentError(id, registeredIds) {
|
|
6267
6268
|
const suggestions = findSimilarIds(id, registeredIds);
|
|
6268
6269
|
let message = `Component "${id}" is not registered.`;
|
|
6269
|
-
if (
|
|
6270
|
+
if (suggestions.length > 0) {
|
|
6270
6271
|
message += `
|
|
6271
6272
|
|
|
6272
6273
|
Did you mean: ${suggestions.map((s) => `"${s}"`).join(", ")}?`;
|