@orion-studios/payload-studio 0.6.0-beta.113 → 0.6.0-beta.114
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/builder-v2/client.js +47 -1
- package/dist/builder-v2/client.mjs +47 -1
- package/package.json +1 -1
|
@@ -695,6 +695,51 @@ var syncModelBackgroundToBlock = (model) => {
|
|
|
695
695
|
})
|
|
696
696
|
});
|
|
697
697
|
};
|
|
698
|
+
var spacingLonghands = [
|
|
699
|
+
"margin-top",
|
|
700
|
+
"margin-bottom",
|
|
701
|
+
"margin-left",
|
|
702
|
+
"margin-right",
|
|
703
|
+
"padding-top",
|
|
704
|
+
"padding-bottom",
|
|
705
|
+
"padding-left",
|
|
706
|
+
"padding-right"
|
|
707
|
+
];
|
|
708
|
+
var hasSpacingStyle = (style, property) => Boolean(style[property] || style[property.replace(/-([a-z])/g, (_, char) => char.toUpperCase())]);
|
|
709
|
+
var hoistPreviewSpacingToModel = (view) => {
|
|
710
|
+
const element = view.el;
|
|
711
|
+
const preview = element?.querySelector?.(".xo-builder-preview");
|
|
712
|
+
if (!preview) {
|
|
713
|
+
return;
|
|
714
|
+
}
|
|
715
|
+
const model = view.model;
|
|
716
|
+
const style = model.getStyle?.() || {};
|
|
717
|
+
const computed = window.getComputedStyle(preview);
|
|
718
|
+
const nextStyle = {};
|
|
719
|
+
spacingLonghands.forEach((property) => {
|
|
720
|
+
const isPadding = property.startsWith("padding-");
|
|
721
|
+
if (hasSpacingStyle(style, property) || hasSpacingStyle(style, isPadding ? "padding" : "margin")) {
|
|
722
|
+
return;
|
|
723
|
+
}
|
|
724
|
+
const value = computed.getPropertyValue(property).trim();
|
|
725
|
+
if (value && (isPadding || value !== "0px")) {
|
|
726
|
+
nextStyle[property] = value;
|
|
727
|
+
}
|
|
728
|
+
});
|
|
729
|
+
if (Object.keys(nextStyle).length > 0) {
|
|
730
|
+
model.addStyle?.(nextStyle);
|
|
731
|
+
}
|
|
732
|
+
preview.style.margin = "0";
|
|
733
|
+
preview.style.marginTop = "0";
|
|
734
|
+
preview.style.marginRight = "0";
|
|
735
|
+
preview.style.marginBottom = "0";
|
|
736
|
+
preview.style.marginLeft = "0";
|
|
737
|
+
preview.style.padding = "0";
|
|
738
|
+
preview.style.paddingTop = "0";
|
|
739
|
+
preview.style.paddingRight = "0";
|
|
740
|
+
preview.style.paddingBottom = "0";
|
|
741
|
+
preview.style.paddingLeft = "0";
|
|
742
|
+
};
|
|
698
743
|
var previewForDefinition = (definition, props) => definition.editorPreview?.(props) || `<div class="orion-builder-v2-dynamic-placeholder"><strong>${definition.label}</strong></div>`;
|
|
699
744
|
var blockPreviewForDefinition = (type) => {
|
|
700
745
|
const normalizedType = type.replace(/[^a-z0-9-]/gi, "-");
|
|
@@ -1032,6 +1077,7 @@ var registerProjectDynamicComponents = (editor, adapter) => {
|
|
|
1032
1077
|
this.model.addAttributes?.({ "data-orion-background-color": backgroundColor });
|
|
1033
1078
|
}
|
|
1034
1079
|
this.model.components(previewForDefinition(definition, props));
|
|
1080
|
+
hoistPreviewSpacingToModel(this);
|
|
1035
1081
|
lockPreviewChildren(this.model);
|
|
1036
1082
|
queueMicrotask(() => bindEditablePreview(this, editor));
|
|
1037
1083
|
}
|
|
@@ -1540,7 +1586,7 @@ var spacingProperties = [
|
|
|
1540
1586
|
];
|
|
1541
1587
|
var spacingTargetForComponent = (component) => {
|
|
1542
1588
|
const element = component?.getEl?.();
|
|
1543
|
-
return element
|
|
1589
|
+
return element || null;
|
|
1544
1590
|
};
|
|
1545
1591
|
var hasExplicitHorizontalAlign = (block) => {
|
|
1546
1592
|
const settings = readNestedRecord(block, "settings");
|
|
@@ -571,6 +571,51 @@ var syncModelBackgroundToBlock = (model) => {
|
|
|
571
571
|
})
|
|
572
572
|
});
|
|
573
573
|
};
|
|
574
|
+
var spacingLonghands = [
|
|
575
|
+
"margin-top",
|
|
576
|
+
"margin-bottom",
|
|
577
|
+
"margin-left",
|
|
578
|
+
"margin-right",
|
|
579
|
+
"padding-top",
|
|
580
|
+
"padding-bottom",
|
|
581
|
+
"padding-left",
|
|
582
|
+
"padding-right"
|
|
583
|
+
];
|
|
584
|
+
var hasSpacingStyle = (style, property) => Boolean(style[property] || style[property.replace(/-([a-z])/g, (_, char) => char.toUpperCase())]);
|
|
585
|
+
var hoistPreviewSpacingToModel = (view) => {
|
|
586
|
+
const element = view.el;
|
|
587
|
+
const preview = element?.querySelector?.(".xo-builder-preview");
|
|
588
|
+
if (!preview) {
|
|
589
|
+
return;
|
|
590
|
+
}
|
|
591
|
+
const model = view.model;
|
|
592
|
+
const style = model.getStyle?.() || {};
|
|
593
|
+
const computed = window.getComputedStyle(preview);
|
|
594
|
+
const nextStyle = {};
|
|
595
|
+
spacingLonghands.forEach((property) => {
|
|
596
|
+
const isPadding = property.startsWith("padding-");
|
|
597
|
+
if (hasSpacingStyle(style, property) || hasSpacingStyle(style, isPadding ? "padding" : "margin")) {
|
|
598
|
+
return;
|
|
599
|
+
}
|
|
600
|
+
const value = computed.getPropertyValue(property).trim();
|
|
601
|
+
if (value && (isPadding || value !== "0px")) {
|
|
602
|
+
nextStyle[property] = value;
|
|
603
|
+
}
|
|
604
|
+
});
|
|
605
|
+
if (Object.keys(nextStyle).length > 0) {
|
|
606
|
+
model.addStyle?.(nextStyle);
|
|
607
|
+
}
|
|
608
|
+
preview.style.margin = "0";
|
|
609
|
+
preview.style.marginTop = "0";
|
|
610
|
+
preview.style.marginRight = "0";
|
|
611
|
+
preview.style.marginBottom = "0";
|
|
612
|
+
preview.style.marginLeft = "0";
|
|
613
|
+
preview.style.padding = "0";
|
|
614
|
+
preview.style.paddingTop = "0";
|
|
615
|
+
preview.style.paddingRight = "0";
|
|
616
|
+
preview.style.paddingBottom = "0";
|
|
617
|
+
preview.style.paddingLeft = "0";
|
|
618
|
+
};
|
|
574
619
|
var previewForDefinition = (definition, props) => definition.editorPreview?.(props) || `<div class="orion-builder-v2-dynamic-placeholder"><strong>${definition.label}</strong></div>`;
|
|
575
620
|
var blockPreviewForDefinition = (type) => {
|
|
576
621
|
const normalizedType = type.replace(/[^a-z0-9-]/gi, "-");
|
|
@@ -908,6 +953,7 @@ var registerProjectDynamicComponents = (editor, adapter) => {
|
|
|
908
953
|
this.model.addAttributes?.({ "data-orion-background-color": backgroundColor });
|
|
909
954
|
}
|
|
910
955
|
this.model.components(previewForDefinition(definition, props));
|
|
956
|
+
hoistPreviewSpacingToModel(this);
|
|
911
957
|
lockPreviewChildren(this.model);
|
|
912
958
|
queueMicrotask(() => bindEditablePreview(this, editor));
|
|
913
959
|
}
|
|
@@ -1416,7 +1462,7 @@ var spacingProperties = [
|
|
|
1416
1462
|
];
|
|
1417
1463
|
var spacingTargetForComponent = (component) => {
|
|
1418
1464
|
const element = component?.getEl?.();
|
|
1419
|
-
return element
|
|
1465
|
+
return element || null;
|
|
1420
1466
|
};
|
|
1421
1467
|
var hasExplicitHorizontalAlign = (block) => {
|
|
1422
1468
|
const settings = readNestedRecord(block, "settings");
|
package/package.json
CHANGED