@measured/puck 0.16.0-canary.6386bd1 → 0.16.0-canary.7cac376
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/{Config-VOJqVbHe.d.ts → Config-CkVFT1_w.d.ts} +15 -1
- package/dist/index.css +95 -78
- package/dist/index.d.ts +45 -6
- package/dist/index.js +838 -596
- package/dist/rsc.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
@@ -7536,7 +7536,7 @@ var require_react_dom_development = __commonJS({
|
|
7536
7536
|
var HostPortal = 4;
|
7537
7537
|
var HostComponent = 5;
|
7538
7538
|
var HostText = 6;
|
7539
|
-
var
|
7539
|
+
var Fragment20 = 7;
|
7540
7540
|
var Mode = 8;
|
7541
7541
|
var ContextConsumer = 9;
|
7542
7542
|
var ContextProvider = 10;
|
@@ -8692,7 +8692,7 @@ var require_react_dom_development = __commonJS({
|
|
8692
8692
|
return "DehydratedFragment";
|
8693
8693
|
case ForwardRef:
|
8694
8694
|
return getWrappedName$1(type, type.render, "ForwardRef");
|
8695
|
-
case
|
8695
|
+
case Fragment20:
|
8696
8696
|
return "Fragment";
|
8697
8697
|
case HostComponent:
|
8698
8698
|
return type;
|
@@ -18343,7 +18343,7 @@ var require_react_dom_development = __commonJS({
|
|
18343
18343
|
}
|
18344
18344
|
}
|
18345
18345
|
function updateFragment2(returnFiber, current2, fragment, lanes, key) {
|
18346
|
-
if (current2 === null || current2.tag !==
|
18346
|
+
if (current2 === null || current2.tag !== Fragment20) {
|
18347
18347
|
var created = createFiberFromFragment(fragment, returnFiber.mode, lanes, key);
|
18348
18348
|
created.return = returnFiber;
|
18349
18349
|
return created;
|
@@ -18746,7 +18746,7 @@ var require_react_dom_development = __commonJS({
|
|
18746
18746
|
if (child.key === key) {
|
18747
18747
|
var elementType = element.type;
|
18748
18748
|
if (elementType === REACT_FRAGMENT_TYPE) {
|
18749
|
-
if (child.tag ===
|
18749
|
+
if (child.tag === Fragment20) {
|
18750
18750
|
deleteRemainingChildren(returnFiber, child.sibling);
|
18751
18751
|
var existing = useFiber(child, element.props.children);
|
18752
18752
|
existing.return = returnFiber;
|
@@ -22921,7 +22921,7 @@ var require_react_dom_development = __commonJS({
|
|
22921
22921
|
var _resolvedProps2 = workInProgress2.elementType === type ? _unresolvedProps2 : resolveDefaultProps(type, _unresolvedProps2);
|
22922
22922
|
return updateForwardRef(current2, workInProgress2, type, _resolvedProps2, renderLanes2);
|
22923
22923
|
}
|
22924
|
-
case
|
22924
|
+
case Fragment20:
|
22925
22925
|
return updateFragment(current2, workInProgress2, renderLanes2);
|
22926
22926
|
case Mode:
|
22927
22927
|
return updateMode(current2, workInProgress2, renderLanes2);
|
@@ -23193,7 +23193,7 @@ var require_react_dom_development = __commonJS({
|
|
23193
23193
|
case SimpleMemoComponent:
|
23194
23194
|
case FunctionComponent:
|
23195
23195
|
case ForwardRef:
|
23196
|
-
case
|
23196
|
+
case Fragment20:
|
23197
23197
|
case Mode:
|
23198
23198
|
case Profiler:
|
23199
23199
|
case ContextConsumer:
|
@@ -27444,7 +27444,7 @@ var require_react_dom_development = __commonJS({
|
|
27444
27444
|
return fiber;
|
27445
27445
|
}
|
27446
27446
|
function createFiberFromFragment(elements, mode, lanes, key) {
|
27447
|
-
var fiber = createFiber(
|
27447
|
+
var fiber = createFiber(Fragment20, elements, key, mode);
|
27448
27448
|
fiber.lanes = lanes;
|
27449
27449
|
return fiber;
|
27450
27450
|
}
|
@@ -28567,6 +28567,8 @@ var require_react_dom = __commonJS({
|
|
28567
28567
|
// index.ts
|
28568
28568
|
var core_exports = {};
|
28569
28569
|
__export(core_exports, {
|
28570
|
+
Action: () => Action,
|
28571
|
+
ActionBar: () => ActionBar,
|
28570
28572
|
AutoField: () => AutoField,
|
28571
28573
|
AutoFieldPrivate: () => AutoFieldPrivate,
|
28572
28574
|
Button: () => Button,
|
@@ -28596,7 +28598,7 @@ init_react_import();
|
|
28596
28598
|
// types/Fields.ts
|
28597
28599
|
init_react_import();
|
28598
28600
|
|
28599
|
-
// components/
|
28601
|
+
// components/ActionBar/index.tsx
|
28600
28602
|
init_react_import();
|
28601
28603
|
|
28602
28604
|
// lib/get-class-name-factory.ts
|
@@ -28631,9 +28633,33 @@ var getClassNameFactory = (rootClass, styles, { baseClass = "" } = {}) => (optio
|
|
28631
28633
|
};
|
28632
28634
|
var get_class_name_factory_default = getClassNameFactory;
|
28633
28635
|
|
28636
|
+
// css-module:/home/runner/work/puck/puck/packages/core/components/ActionBar/styles.module.css#css-module
|
28637
|
+
init_react_import();
|
28638
|
+
var styles_module_default = { "ActionBarComponent": "_ActionBarComponent_8nyey_1", "ActionBarComponent-actionsLabel": "_ActionBarComponent-actionsLabel_8nyey_15", "ActionBarComponent-action": "_ActionBarComponent-action_8nyey_15" };
|
28639
|
+
|
28640
|
+
// components/ActionBar/index.tsx
|
28641
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
28642
|
+
var getClassName = get_class_name_factory_default("ActionBarComponent", styles_module_default);
|
28643
|
+
var ActionBar = ({
|
28644
|
+
label,
|
28645
|
+
children
|
28646
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: getClassName(), children: [
|
28647
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: getClassName("actionsLabel"), children: label }),
|
28648
|
+
children
|
28649
|
+
] });
|
28650
|
+
var Action = ({
|
28651
|
+
children,
|
28652
|
+
label,
|
28653
|
+
onClick
|
28654
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("button", { className: getClassName("action"), onClick, title: label, children });
|
28655
|
+
ActionBar.Action = Action;
|
28656
|
+
|
28657
|
+
// components/AutoField/index.tsx
|
28658
|
+
init_react_import();
|
28659
|
+
|
28634
28660
|
// css-module:/home/runner/work/puck/puck/packages/core/components/AutoField/styles.module.css#css-module
|
28635
28661
|
init_react_import();
|
28636
|
-
var
|
28662
|
+
var styles_module_default2 = { "Input": "_Input_3pq3z_1", "Input-label": "_Input-label_3pq3z_26", "Input-labelIcon": "_Input-labelIcon_3pq3z_35", "Input-disabledIcon": "_Input-disabledIcon_3pq3z_42", "Input-input": "_Input-input_3pq3z_47", "Input--readOnly": "_Input--readOnly_3pq3z_91", "Input-radioGroupItems": "_Input-radioGroupItems_3pq3z_102", "Input-radio": "_Input-radio_3pq3z_102", "Input-radioInner": "_Input-radioInner_3pq3z_119", "Input-radioInput": "_Input-radioInput_3pq3z_164" };
|
28637
28663
|
|
28638
28664
|
// components/AutoField/index.tsx
|
28639
28665
|
var import_react11 = require("react");
|
@@ -28646,7 +28672,7 @@ init_react_import();
|
|
28646
28672
|
|
28647
28673
|
// css-module:/home/runner/work/puck/puck/packages/core/components/AutoField/fields/ArrayField/styles.module.css#css-module
|
28648
28674
|
init_react_import();
|
28649
|
-
var
|
28675
|
+
var styles_module_default3 = { "ArrayField": "_ArrayField_1go19_5", "ArrayField--isDraggingFrom": "_ArrayField--isDraggingFrom_1go19_13", "ArrayField-addButton": "_ArrayField-addButton_1go19_18", "ArrayField--hasItems": "_ArrayField--hasItems_1go19_33", "ArrayFieldItem": "_ArrayFieldItem_1go19_63", "ArrayFieldItem--isDragging": "_ArrayFieldItem--isDragging_1go19_71", "ArrayFieldItem--isExpanded": "_ArrayFieldItem--isExpanded_1go19_81", "ArrayFieldItem-summary": "_ArrayFieldItem-summary_1go19_97", "ArrayField--addDisabled": "_ArrayField--addDisabled_1go19_128", "ArrayFieldItem-body": "_ArrayFieldItem-body_1go19_164", "ArrayFieldItem-fieldset": "_ArrayFieldItem-fieldset_1go19_173", "ArrayFieldItem-rhs": "_ArrayFieldItem-rhs_1go19_181", "ArrayFieldItem-actions": "_ArrayFieldItem-actions_1go19_187" };
|
28650
28676
|
|
28651
28677
|
// ../../node_modules/lucide-react/dist/esm/lucide-react.js
|
28652
28678
|
init_react_import();
|
@@ -28958,11 +28984,11 @@ var replace = (list, index, newItem) => {
|
|
28958
28984
|
|
28959
28985
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Loader/styles.module.css#css-module
|
28960
28986
|
init_react_import();
|
28961
|
-
var
|
28987
|
+
var styles_module_default4 = { "Loader": "_Loader_nacdm_13", "loader-animation": "_loader-animation_nacdm_1" };
|
28962
28988
|
|
28963
28989
|
// components/Loader/index.tsx
|
28964
|
-
var
|
28965
|
-
var
|
28990
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
28991
|
+
var getClassName2 = get_class_name_factory_default("Loader", styles_module_default4);
|
28966
28992
|
var Loader = (_a) => {
|
28967
28993
|
var _b = _a, {
|
28968
28994
|
color,
|
@@ -28971,10 +28997,10 @@ var Loader = (_a) => {
|
|
28971
28997
|
"color",
|
28972
28998
|
"size"
|
28973
28999
|
]);
|
28974
|
-
return /* @__PURE__ */ (0,
|
29000
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
28975
29001
|
"span",
|
28976
29002
|
__spreadValues({
|
28977
|
-
className:
|
29003
|
+
className: getClassName2(),
|
28978
29004
|
style: {
|
28979
29005
|
width: size,
|
28980
29006
|
height: size,
|
@@ -28986,8 +29012,8 @@ var Loader = (_a) => {
|
|
28986
29012
|
};
|
28987
29013
|
|
28988
29014
|
// components/IconButton/IconButton.tsx
|
28989
|
-
var
|
28990
|
-
var
|
29015
|
+
var import_jsx_runtime3 = require("react/jsx-runtime");
|
29016
|
+
var getClassName3 = get_class_name_factory_default("IconButton", IconButton_module_default);
|
28991
29017
|
var IconButton = ({
|
28992
29018
|
children,
|
28993
29019
|
href,
|
@@ -29002,10 +29028,10 @@ var IconButton = ({
|
|
29002
29028
|
}) => {
|
29003
29029
|
const [loading, setLoading] = (0, import_react3.useState)(false);
|
29004
29030
|
const ElementType = href ? "a" : "button";
|
29005
|
-
const el = /* @__PURE__ */ (0,
|
29031
|
+
const el = /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
|
29006
29032
|
ElementType,
|
29007
29033
|
{
|
29008
|
-
className:
|
29034
|
+
className: getClassName3({
|
29009
29035
|
primary: variant === "primary",
|
29010
29036
|
secondary: variant === "secondary",
|
29011
29037
|
disabled,
|
@@ -29026,11 +29052,11 @@ var IconButton = ({
|
|
29026
29052
|
href,
|
29027
29053
|
title,
|
29028
29054
|
children: [
|
29029
|
-
/* @__PURE__ */ (0,
|
29055
|
+
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { className: getClassName3("title"), children: title }),
|
29030
29056
|
children,
|
29031
|
-
loading && /* @__PURE__ */ (0,
|
29057
|
+
loading && /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_jsx_runtime3.Fragment, { children: [
|
29032
29058
|
"\xA0\xA0",
|
29033
|
-
/* @__PURE__ */ (0,
|
29059
|
+
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Loader, { size: 14 })
|
29034
29060
|
] })
|
29035
29061
|
]
|
29036
29062
|
}
|
@@ -29085,7 +29111,7 @@ var defaultViewports = [
|
|
29085
29111
|
|
29086
29112
|
// components/Puck/context.tsx
|
29087
29113
|
var import_ua_parser_js = require("ua-parser-js");
|
29088
|
-
var
|
29114
|
+
var import_jsx_runtime4 = require("react/jsx-runtime");
|
29089
29115
|
var defaultAppState = {
|
29090
29116
|
data: { content: [], root: { props: {} } },
|
29091
29117
|
ui: {
|
@@ -29125,7 +29151,8 @@ var defaultContext = {
|
|
29125
29151
|
status: "LOADING",
|
29126
29152
|
setStatus: () => null,
|
29127
29153
|
iframe: {},
|
29128
|
-
safariFallbackMode: false
|
29154
|
+
safariFallbackMode: false,
|
29155
|
+
globalPermissions: {}
|
29129
29156
|
};
|
29130
29157
|
var appContext = (0, import_react4.createContext)(defaultContext);
|
29131
29158
|
var AppProvider = ({
|
@@ -29155,7 +29182,7 @@ See https://github.com/measuredco/puck/issues/411 for more information. This mes
|
|
29155
29182
|
setSafariFallbackMode(true);
|
29156
29183
|
}
|
29157
29184
|
}, []);
|
29158
|
-
return /* @__PURE__ */ (0,
|
29185
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
29159
29186
|
appContext.Provider,
|
29160
29187
|
{
|
29161
29188
|
value: __spreadProps(__spreadValues({}, value), {
|
@@ -29186,7 +29213,7 @@ function useAppContext() {
|
|
29186
29213
|
}
|
29187
29214
|
|
29188
29215
|
// components/Droppable/index.tsx
|
29189
|
-
var
|
29216
|
+
var import_jsx_runtime5 = require("react/jsx-runtime");
|
29190
29217
|
var defaultProvided = {
|
29191
29218
|
droppableProps: {
|
29192
29219
|
"data-rfd-droppable-context-id": "",
|
@@ -29201,17 +29228,17 @@ var defaultSnapshot = {
|
|
29201
29228
|
draggingFromThisWith: null,
|
29202
29229
|
isUsingPlaceholder: false
|
29203
29230
|
};
|
29204
|
-
var DefaultDroppable = ({ children }) => /* @__PURE__ */ (0,
|
29231
|
+
var DefaultDroppable = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_jsx_runtime5.Fragment, { children: children(defaultProvided, defaultSnapshot) });
|
29205
29232
|
var Droppable = (props) => {
|
29206
29233
|
const { status } = useAppContext();
|
29207
29234
|
const El = status !== "LOADING" ? import_dnd.Droppable : DefaultDroppable;
|
29208
|
-
return /* @__PURE__ */ (0,
|
29235
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(El, __spreadValues({}, props));
|
29209
29236
|
};
|
29210
29237
|
|
29211
29238
|
// components/Draggable/index.tsx
|
29212
29239
|
init_react_import();
|
29213
29240
|
var import_dnd2 = require("@measured/dnd");
|
29214
|
-
var
|
29241
|
+
var import_jsx_runtime6 = require("react/jsx-runtime");
|
29215
29242
|
var defaultProvided2 = {
|
29216
29243
|
draggableProps: {
|
29217
29244
|
"data-rfd-draggable-context-id": "",
|
@@ -29235,7 +29262,7 @@ var defaultRubric = {
|
|
29235
29262
|
type: "",
|
29236
29263
|
source: { droppableId: "", index: 0 }
|
29237
29264
|
};
|
29238
|
-
var DefaultDraggable = ({ children }) => /* @__PURE__ */ (0,
|
29265
|
+
var DefaultDraggable = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_jsx_runtime6.Fragment, { children: children(defaultProvided2, defaultSnapshot2, defaultRubric) });
|
29239
29266
|
var Draggable = ({
|
29240
29267
|
className,
|
29241
29268
|
children,
|
@@ -29247,22 +29274,23 @@ var Draggable = ({
|
|
29247
29274
|
}) => {
|
29248
29275
|
const { status } = useAppContext();
|
29249
29276
|
const El = status !== "LOADING" ? import_dnd2.Draggable : DefaultDraggable;
|
29250
|
-
return /* @__PURE__ */ (0,
|
29277
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(El, { draggableId: id, index, isDragDisabled, children: (provided, snapshot) => {
|
29251
29278
|
var _a;
|
29252
|
-
return /* @__PURE__ */ (0,
|
29253
|
-
/* @__PURE__ */ (0,
|
29279
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
|
29280
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
29254
29281
|
"div",
|
29255
29282
|
__spreadProps(__spreadValues(__spreadValues({
|
29256
29283
|
className: className && className(provided, snapshot),
|
29257
29284
|
ref: provided.innerRef
|
29258
29285
|
}, provided.draggableProps), provided.dragHandleProps), {
|
29259
29286
|
style: __spreadProps(__spreadValues({}, provided.draggableProps.style), {
|
29260
|
-
transform: snapshot.isDragging || !disableAnimations ? (_a = provided.draggableProps.style) == null ? void 0 : _a.transform : "translate(0px, 0px)"
|
29287
|
+
transform: snapshot.isDragging || !disableAnimations ? (_a = provided.draggableProps.style) == null ? void 0 : _a.transform : "translate(0px, 0px)",
|
29288
|
+
cursor: isDragDisabled ? "no-drop" : "grab"
|
29261
29289
|
}),
|
29262
29290
|
children: children(provided, snapshot)
|
29263
29291
|
})
|
29264
29292
|
),
|
29265
|
-
showShadow && snapshot.isDragging && /* @__PURE__ */ (0,
|
29293
|
+
showShadow && snapshot.isDragging && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
29266
29294
|
"div",
|
29267
29295
|
{
|
29268
29296
|
className: className && className(provided, snapshot),
|
@@ -29282,28 +29310,28 @@ init_react_import();
|
|
29282
29310
|
|
29283
29311
|
// css-module:/home/runner/work/puck/puck/packages/core/components/DragIcon/styles.module.css#css-module
|
29284
29312
|
init_react_import();
|
29285
|
-
var
|
29313
|
+
var styles_module_default5 = { "DragIcon": "_DragIcon_17p8x_1", "DragIcon--disabled": "_DragIcon--disabled_17p8x_8" };
|
29286
29314
|
|
29287
29315
|
// components/DragIcon/index.tsx
|
29288
|
-
var
|
29289
|
-
var
|
29290
|
-
var DragIcon = () => /* @__PURE__ */ (0,
|
29316
|
+
var import_jsx_runtime7 = require("react/jsx-runtime");
|
29317
|
+
var getClassName4 = get_class_name_factory_default("DragIcon", styles_module_default5);
|
29318
|
+
var DragIcon = ({ isDragDisabled }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: getClassName4({ disabled: isDragDisabled }), children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("svg", { viewBox: "0 0 20 20", width: "12", fill: "currentColor", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("path", { d: "M7 2a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 2zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 8zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 14zm6-8a2 2 0 1 0-.001-4.001A2 2 0 0 0 13 6zm0 2a2 2 0 1 0 .001 4.001A2 2 0 0 0 13 8zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 13 14z" }) }) });
|
29291
29319
|
|
29292
29320
|
// components/DragDropContext/index.tsx
|
29293
29321
|
init_react_import();
|
29294
29322
|
var import_dnd3 = require("@measured/dnd");
|
29295
|
-
var
|
29296
|
-
var DefaultDragDropContext = ({ children }) => /* @__PURE__ */ (0,
|
29323
|
+
var import_jsx_runtime8 = require("react/jsx-runtime");
|
29324
|
+
var DefaultDragDropContext = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_jsx_runtime8.Fragment, { children });
|
29297
29325
|
var DragDropContext = (props) => {
|
29298
29326
|
const { status } = useAppContext();
|
29299
29327
|
const El = status !== "LOADING" ? import_dnd3.DragDropContext : DefaultDragDropContext;
|
29300
|
-
return /* @__PURE__ */ (0,
|
29328
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(El, __spreadValues({}, props));
|
29301
29329
|
};
|
29302
29330
|
|
29303
29331
|
// components/AutoField/fields/ArrayField/index.tsx
|
29304
|
-
var
|
29305
|
-
var
|
29306
|
-
var getClassNameItem = get_class_name_factory_default("ArrayFieldItem",
|
29332
|
+
var import_jsx_runtime9 = require("react/jsx-runtime");
|
29333
|
+
var getClassName5 = get_class_name_factory_default("ArrayField", styles_module_default3);
|
29334
|
+
var getClassNameItem = get_class_name_factory_default("ArrayFieldItem", styles_module_default3);
|
29307
29335
|
var ArrayField = ({
|
29308
29336
|
field,
|
29309
29337
|
onChange,
|
@@ -29312,7 +29340,7 @@ var ArrayField = ({
|
|
29312
29340
|
label,
|
29313
29341
|
readOnly,
|
29314
29342
|
id,
|
29315
|
-
Label = (props) => /* @__PURE__ */ (0,
|
29343
|
+
Label = (props) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", __spreadValues({}, props))
|
29316
29344
|
}) => {
|
29317
29345
|
const { state, setUi, selectedItem } = useAppContext();
|
29318
29346
|
const readOnlyFields = (selectedItem == null ? void 0 : selectedItem.readOnly) || {};
|
@@ -29375,14 +29403,14 @@ var ArrayField = ({
|
|
29375
29403
|
return null;
|
29376
29404
|
}
|
29377
29405
|
const addDisabled = field.max !== void 0 && localState.arrayState.items.length >= field.max || readOnly;
|
29378
|
-
return /* @__PURE__ */ (0,
|
29406
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
29379
29407
|
Label,
|
29380
29408
|
{
|
29381
29409
|
label: label || name,
|
29382
|
-
icon: /* @__PURE__ */ (0,
|
29410
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(List, { size: 16 }),
|
29383
29411
|
el: "div",
|
29384
29412
|
readOnly,
|
29385
|
-
children: /* @__PURE__ */ (0,
|
29413
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
29386
29414
|
DragDropContext,
|
29387
29415
|
{
|
29388
29416
|
onDragEnd: (event) => {
|
@@ -29409,12 +29437,12 @@ var ArrayField = ({
|
|
29409
29437
|
});
|
29410
29438
|
}
|
29411
29439
|
},
|
29412
|
-
children: /* @__PURE__ */ (0,
|
29413
|
-
return /* @__PURE__ */ (0,
|
29440
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Droppable, { droppableId: "array", isDropDisabled: readOnly, children: (provided, snapshot) => {
|
29441
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
29414
29442
|
"div",
|
29415
29443
|
__spreadProps(__spreadValues({}, provided.droppableProps), {
|
29416
29444
|
ref: provided.innerRef,
|
29417
|
-
className:
|
29445
|
+
className: getClassName5({
|
29418
29446
|
isDraggingFrom: !!snapshot.draggingFromThisWith,
|
29419
29447
|
hasItems: Array.isArray(value) && value.length > 0,
|
29420
29448
|
addDisabled
|
@@ -29431,7 +29459,7 @@ var ArrayField = ({
|
|
29431
29459
|
localState.arrayState.items.map((item, i) => {
|
29432
29460
|
const { _arrayId = `${id}-${i}`, _originalIndex = i } = item;
|
29433
29461
|
const data = Array.from(localState.value || [])[i] || {};
|
29434
|
-
return /* @__PURE__ */ (0,
|
29462
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
29435
29463
|
Draggable,
|
29436
29464
|
{
|
29437
29465
|
id: _arrayId,
|
@@ -29442,8 +29470,8 @@ var ArrayField = ({
|
|
29442
29470
|
readOnly
|
29443
29471
|
}),
|
29444
29472
|
isDragDisabled: readOnly || !hovering,
|
29445
|
-
children: () => /* @__PURE__ */ (0,
|
29446
|
-
/* @__PURE__ */ (0,
|
29473
|
+
children: () => /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(import_jsx_runtime9.Fragment, { children: [
|
29474
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
29447
29475
|
"div",
|
29448
29476
|
{
|
29449
29477
|
onClick: () => {
|
@@ -29464,8 +29492,8 @@ var ArrayField = ({
|
|
29464
29492
|
className: getClassNameItem("summary"),
|
29465
29493
|
children: [
|
29466
29494
|
field.getItemSummary ? field.getItemSummary(data, i) : `Item #${_originalIndex}`,
|
29467
|
-
/* @__PURE__ */ (0,
|
29468
|
-
!readOnly && /* @__PURE__ */ (0,
|
29495
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: getClassNameItem("rhs"), children: [
|
29496
|
+
!readOnly && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: getClassNameItem("actions"), children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: getClassNameItem("action"), children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
29469
29497
|
IconButton,
|
29470
29498
|
{
|
29471
29499
|
type: "button",
|
@@ -29488,20 +29516,20 @@ var ArrayField = ({
|
|
29488
29516
|
);
|
29489
29517
|
},
|
29490
29518
|
title: "Delete",
|
29491
|
-
children: /* @__PURE__ */ (0,
|
29519
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Trash, { size: 16 })
|
29492
29520
|
}
|
29493
29521
|
) }) }),
|
29494
|
-
/* @__PURE__ */ (0,
|
29522
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DragIcon, {}) })
|
29495
29523
|
] })
|
29496
29524
|
]
|
29497
29525
|
}
|
29498
29526
|
),
|
29499
|
-
/* @__PURE__ */ (0,
|
29527
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: getClassNameItem("body"), children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("fieldset", { className: getClassNameItem("fieldset"), children: Object.keys(field.arrayFields).map(
|
29500
29528
|
(fieldName) => {
|
29501
29529
|
const subField = field.arrayFields[fieldName];
|
29502
29530
|
const subFieldName = `${name}[${i}].${fieldName}`;
|
29503
29531
|
const wildcardFieldName = `${name}[*].${fieldName}`;
|
29504
|
-
return /* @__PURE__ */ (0,
|
29532
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
29505
29533
|
AutoFieldPrivate,
|
29506
29534
|
{
|
29507
29535
|
name: subFieldName,
|
@@ -29529,11 +29557,11 @@ var ArrayField = ({
|
|
29529
29557
|
);
|
29530
29558
|
}),
|
29531
29559
|
provided.placeholder,
|
29532
|
-
!addDisabled && /* @__PURE__ */ (0,
|
29560
|
+
!addDisabled && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
29533
29561
|
"button",
|
29534
29562
|
{
|
29535
29563
|
type: "button",
|
29536
|
-
className:
|
29564
|
+
className: getClassName5("addButton"),
|
29537
29565
|
onClick: () => {
|
29538
29566
|
const existingValue = value || [];
|
29539
29567
|
const newValue = [
|
@@ -29543,7 +29571,7 @@ var ArrayField = ({
|
|
29543
29571
|
const newArrayState = regenerateArrayState(newValue);
|
29544
29572
|
onChange(newValue, mapArrayStateToUi(newArrayState));
|
29545
29573
|
},
|
29546
|
-
children: /* @__PURE__ */ (0,
|
29574
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Plus, { size: 21 })
|
29547
29575
|
}
|
29548
29576
|
)
|
29549
29577
|
]
|
@@ -29558,8 +29586,8 @@ var ArrayField = ({
|
|
29558
29586
|
|
29559
29587
|
// components/AutoField/fields/DefaultField/index.tsx
|
29560
29588
|
init_react_import();
|
29561
|
-
var
|
29562
|
-
var
|
29589
|
+
var import_jsx_runtime10 = require("react/jsx-runtime");
|
29590
|
+
var getClassName6 = get_class_name_factory_default("Input", styles_module_default2);
|
29563
29591
|
var DefaultField = ({
|
29564
29592
|
field,
|
29565
29593
|
onChange,
|
@@ -29570,19 +29598,19 @@ var DefaultField = ({
|
|
29570
29598
|
Label,
|
29571
29599
|
id
|
29572
29600
|
}) => {
|
29573
|
-
return /* @__PURE__ */ (0,
|
29601
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
29574
29602
|
Label,
|
29575
29603
|
{
|
29576
29604
|
label: label || name,
|
29577
|
-
icon: /* @__PURE__ */ (0,
|
29578
|
-
field.type === "text" && /* @__PURE__ */ (0,
|
29579
|
-
field.type === "number" && /* @__PURE__ */ (0,
|
29605
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(import_jsx_runtime10.Fragment, { children: [
|
29606
|
+
field.type === "text" && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Type, { size: 16 }),
|
29607
|
+
field.type === "number" && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Hash, { size: 16 })
|
29580
29608
|
] }),
|
29581
29609
|
readOnly,
|
29582
|
-
children: /* @__PURE__ */ (0,
|
29610
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
29583
29611
|
"input",
|
29584
29612
|
{
|
29585
|
-
className:
|
29613
|
+
className: getClassName6("input"),
|
29586
29614
|
autoComplete: "off",
|
29587
29615
|
type: field.type,
|
29588
29616
|
name,
|
@@ -29615,7 +29643,7 @@ var import_react8 = require("react");
|
|
29615
29643
|
|
29616
29644
|
// css-module:/home/runner/work/puck/puck/packages/core/components/ExternalInput/styles.module.css#css-module
|
29617
29645
|
init_react_import();
|
29618
|
-
var
|
29646
|
+
var styles_module_default6 = { "ExternalInput-actions": "_ExternalInput-actions_19obq_1", "ExternalInput-button": "_ExternalInput-button_19obq_5", "ExternalInput--dataSelected": "_ExternalInput--dataSelected_19obq_25", "ExternalInput-detachButton": "_ExternalInput-detachButton_19obq_32", "ExternalInputModal": "_ExternalInputModal_19obq_74", "ExternalInputModal-grid": "_ExternalInputModal-grid_19obq_84", "ExternalInputModal--filtersToggled": "_ExternalInputModal--filtersToggled_19obq_95", "ExternalInputModal-filters": "_ExternalInputModal-filters_19obq_100", "ExternalInputModal-masthead": "_ExternalInputModal-masthead_19obq_119", "ExternalInputModal-tableWrapper": "_ExternalInputModal-tableWrapper_19obq_128", "ExternalInputModal-table": "_ExternalInputModal-table_19obq_128", "ExternalInputModal-thead": "_ExternalInputModal-thead_19obq_144", "ExternalInputModal-th": "_ExternalInputModal-th_19obq_144", "ExternalInputModal-td": "_ExternalInputModal-td_19obq_159", "ExternalInputModal-tr": "_ExternalInputModal-tr_19obq_164", "ExternalInputModal-tbody": "_ExternalInputModal-tbody_19obq_171", "ExternalInputModal--hasData": "_ExternalInputModal--hasData_19obq_197", "ExternalInputModal-loadingBanner": "_ExternalInputModal-loadingBanner_19obq_201", "ExternalInputModal--isLoading": "_ExternalInputModal--isLoading_19obq_218", "ExternalInputModal-searchForm": "_ExternalInputModal-searchForm_19obq_222", "ExternalInputModal-search": "_ExternalInputModal-search_19obq_222", "ExternalInputModal-searchIcon": "_ExternalInputModal-searchIcon_19obq_259", "ExternalInputModal-searchIconText": "_ExternalInputModal-searchIconText_19obq_284", "ExternalInputModal-searchInput": "_ExternalInputModal-searchInput_19obq_294", "ExternalInputModal-searchActions": "_ExternalInputModal-searchActions_19obq_308", "ExternalInputModal-searchActionIcon": "_ExternalInputModal-searchActionIcon_19obq_321", "ExternalInputModal-footer": "_ExternalInputModal-footer_19obq_325" };
|
29619
29647
|
|
29620
29648
|
// components/Modal/index.tsx
|
29621
29649
|
init_react_import();
|
@@ -29623,12 +29651,12 @@ var import_react6 = require("react");
|
|
29623
29651
|
|
29624
29652
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Modal/styles.module.css#css-module
|
29625
29653
|
init_react_import();
|
29626
|
-
var
|
29654
|
+
var styles_module_default7 = { "Modal": "_Modal_ikbaj_1", "Modal--isOpen": "_Modal--isOpen_ikbaj_15", "Modal-inner": "_Modal-inner_ikbaj_19" };
|
29627
29655
|
|
29628
29656
|
// components/Modal/index.tsx
|
29629
29657
|
var import_react_dom = __toESM(require_react_dom());
|
29630
|
-
var
|
29631
|
-
var
|
29658
|
+
var import_jsx_runtime11 = require("react/jsx-runtime");
|
29659
|
+
var getClassName7 = get_class_name_factory_default("Modal", styles_module_default7);
|
29632
29660
|
var Modal = ({
|
29633
29661
|
children,
|
29634
29662
|
onClose,
|
@@ -29639,13 +29667,13 @@ var Modal = ({
|
|
29639
29667
|
setRootEl(document.getElementById("puck-portal-root"));
|
29640
29668
|
}, []);
|
29641
29669
|
if (!rootEl) {
|
29642
|
-
return /* @__PURE__ */ (0,
|
29670
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", {});
|
29643
29671
|
}
|
29644
29672
|
return (0, import_react_dom.createPortal)(
|
29645
|
-
/* @__PURE__ */ (0,
|
29673
|
+
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: getClassName7({ isOpen }), onClick: onClose, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
29646
29674
|
"div",
|
29647
29675
|
{
|
29648
|
-
className:
|
29676
|
+
className: getClassName7("inner"),
|
29649
29677
|
onClick: (e) => e.stopPropagation(),
|
29650
29678
|
children
|
29651
29679
|
}
|
@@ -29659,17 +29687,17 @@ init_react_import();
|
|
29659
29687
|
|
29660
29688
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Heading/styles.module.css#css-module
|
29661
29689
|
init_react_import();
|
29662
|
-
var
|
29690
|
+
var styles_module_default8 = { "Heading": "_Heading_qxrry_1", "Heading--xxxxl": "_Heading--xxxxl_qxrry_12", "Heading--xxxl": "_Heading--xxxl_qxrry_18", "Heading--xxl": "_Heading--xxl_qxrry_22", "Heading--xl": "_Heading--xl_qxrry_26", "Heading--l": "_Heading--l_qxrry_30", "Heading--m": "_Heading--m_qxrry_34", "Heading--s": "_Heading--s_qxrry_38", "Heading--xs": "_Heading--xs_qxrry_42" };
|
29663
29691
|
|
29664
29692
|
// components/Heading/index.tsx
|
29665
|
-
var
|
29666
|
-
var
|
29693
|
+
var import_jsx_runtime12 = require("react/jsx-runtime");
|
29694
|
+
var getClassName8 = get_class_name_factory_default("Heading", styles_module_default8);
|
29667
29695
|
var Heading = ({ children, rank, size = "m" }) => {
|
29668
29696
|
const Tag = rank ? `h${rank}` : "span";
|
29669
|
-
return /* @__PURE__ */ (0,
|
29697
|
+
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
29670
29698
|
Tag,
|
29671
29699
|
{
|
29672
|
-
className:
|
29700
|
+
className: getClassName8({
|
29673
29701
|
[size]: true
|
29674
29702
|
}),
|
29675
29703
|
children
|
@@ -29689,8 +29717,8 @@ init_react_import();
|
|
29689
29717
|
var Button_module_default = { "Button": "_Button_1t64k_1", "Button--medium": "_Button--medium_1t64k_29", "Button--large": "_Button--large_1t64k_37", "Button-icon": "_Button-icon_1t64k_44", "Button--primary": "_Button--primary_1t64k_48", "Button--secondary": "_Button--secondary_1t64k_67", "Button--flush": "_Button--flush_1t64k_84", "Button--disabled": "_Button--disabled_1t64k_88", "Button--fullWidth": "_Button--fullWidth_1t64k_95", "Button-spinner": "_Button-spinner_1t64k_100" };
|
29690
29718
|
|
29691
29719
|
// components/Button/Button.tsx
|
29692
|
-
var
|
29693
|
-
var
|
29720
|
+
var import_jsx_runtime13 = require("react/jsx-runtime");
|
29721
|
+
var getClassName9 = get_class_name_factory_default("Button", Button_module_default);
|
29694
29722
|
var Button = ({
|
29695
29723
|
children,
|
29696
29724
|
href,
|
@@ -29708,10 +29736,10 @@ var Button = ({
|
|
29708
29736
|
const [loading, setLoading] = (0, import_react7.useState)(loadingProp);
|
29709
29737
|
(0, import_react7.useEffect)(() => setLoading(loadingProp), [loadingProp]);
|
29710
29738
|
const ElementType = href ? "a" : type ? "button" : "span";
|
29711
|
-
const el = /* @__PURE__ */ (0,
|
29739
|
+
const el = /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
|
29712
29740
|
ElementType,
|
29713
29741
|
{
|
29714
|
-
className:
|
29742
|
+
className: getClassName9({
|
29715
29743
|
primary: variant === "primary",
|
29716
29744
|
secondary: variant === "secondary",
|
29717
29745
|
disabled,
|
@@ -29732,9 +29760,9 @@ var Button = ({
|
|
29732
29760
|
rel: newTab ? "noreferrer" : void 0,
|
29733
29761
|
href,
|
29734
29762
|
children: [
|
29735
|
-
icon && /* @__PURE__ */ (0,
|
29763
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: getClassName9("icon"), children: icon }),
|
29736
29764
|
children,
|
29737
|
-
loading && /* @__PURE__ */ (0,
|
29765
|
+
loading && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: getClassName9("spinner"), children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Loader, { size: 14 }) })
|
29738
29766
|
]
|
29739
29767
|
}
|
29740
29768
|
);
|
@@ -29742,9 +29770,9 @@ var Button = ({
|
|
29742
29770
|
};
|
29743
29771
|
|
29744
29772
|
// components/ExternalInput/index.tsx
|
29745
|
-
var
|
29746
|
-
var
|
29747
|
-
var getClassNameModal = get_class_name_factory_default("ExternalInputModal",
|
29773
|
+
var import_jsx_runtime14 = require("react/jsx-runtime");
|
29774
|
+
var getClassName10 = get_class_name_factory_default("ExternalInput", styles_module_default6);
|
29775
|
+
var getClassNameModal = get_class_name_factory_default("ExternalInputModal", styles_module_default6);
|
29748
29776
|
var dataCache = {};
|
29749
29777
|
var ExternalInput = ({
|
29750
29778
|
field,
|
@@ -29795,40 +29823,40 @@ var ExternalInput = ({
|
|
29795
29823
|
(0, import_react8.useEffect)(() => {
|
29796
29824
|
search(searchQuery, filters);
|
29797
29825
|
}, []);
|
29798
|
-
return /* @__PURE__ */ (0,
|
29826
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
29799
29827
|
"div",
|
29800
29828
|
{
|
29801
|
-
className:
|
29829
|
+
className: getClassName10({
|
29802
29830
|
dataSelected: !!value,
|
29803
29831
|
modalVisible: isOpen
|
29804
29832
|
}),
|
29805
29833
|
id,
|
29806
29834
|
children: [
|
29807
|
-
/* @__PURE__ */ (0,
|
29808
|
-
/* @__PURE__ */ (0,
|
29835
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: getClassName10("actions"), children: [
|
29836
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
29809
29837
|
"button",
|
29810
29838
|
{
|
29811
29839
|
type: "button",
|
29812
29840
|
onClick: () => setOpen(true),
|
29813
|
-
className:
|
29814
|
-
children: value ? field.getItemSummary ? field.getItemSummary(value) : "External item" : /* @__PURE__ */ (0,
|
29815
|
-
/* @__PURE__ */ (0,
|
29816
|
-
/* @__PURE__ */ (0,
|
29841
|
+
className: getClassName10("button"),
|
29842
|
+
children: value ? field.getItemSummary ? field.getItemSummary(value) : "External item" : /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(import_jsx_runtime14.Fragment, { children: [
|
29843
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Link, { size: "16" }),
|
29844
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { children: field.placeholder })
|
29817
29845
|
] })
|
29818
29846
|
}
|
29819
29847
|
),
|
29820
|
-
value && /* @__PURE__ */ (0,
|
29848
|
+
value && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
29821
29849
|
"button",
|
29822
29850
|
{
|
29823
|
-
className:
|
29851
|
+
className: getClassName10("detachButton"),
|
29824
29852
|
onClick: () => {
|
29825
29853
|
onChange(null);
|
29826
29854
|
},
|
29827
|
-
children: /* @__PURE__ */ (0,
|
29855
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Unlock, { size: 16 })
|
29828
29856
|
}
|
29829
29857
|
)
|
29830
29858
|
] }),
|
29831
|
-
/* @__PURE__ */ (0,
|
29859
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Modal, { onClose: () => setOpen(false), isOpen, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
29832
29860
|
"form",
|
29833
29861
|
{
|
29834
29862
|
className: getClassNameModal({
|
@@ -29842,11 +29870,11 @@ var ExternalInput = ({
|
|
29842
29870
|
search(searchQuery, filters);
|
29843
29871
|
},
|
29844
29872
|
children: [
|
29845
|
-
/* @__PURE__ */ (0,
|
29846
|
-
/* @__PURE__ */ (0,
|
29847
|
-
/* @__PURE__ */ (0,
|
29848
|
-
/* @__PURE__ */ (0,
|
29849
|
-
/* @__PURE__ */ (0,
|
29873
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: getClassNameModal("masthead"), children: field.showSearch ? /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: getClassNameModal("searchForm"), children: [
|
29874
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("label", { className: getClassNameModal("search"), children: [
|
29875
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: getClassNameModal("searchIconText"), children: "Search" }),
|
29876
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: getClassNameModal("searchIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Search, { size: "18" }) }),
|
29877
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
29850
29878
|
"input",
|
29851
29879
|
{
|
29852
29880
|
className: getClassNameModal("searchInput"),
|
@@ -29861,9 +29889,9 @@ var ExternalInput = ({
|
|
29861
29889
|
}
|
29862
29890
|
)
|
29863
29891
|
] }),
|
29864
|
-
/* @__PURE__ */ (0,
|
29865
|
-
/* @__PURE__ */ (0,
|
29866
|
-
hasFilterFields && /* @__PURE__ */ (0,
|
29892
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: getClassNameModal("searchActions"), children: [
|
29893
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Button, { type: "submit", loading: isLoading, fullWidth: true, children: "Search" }),
|
29894
|
+
hasFilterFields && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: getClassNameModal("searchActionIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
29867
29895
|
IconButton,
|
29868
29896
|
{
|
29869
29897
|
title: "Toggle filters",
|
@@ -29872,15 +29900,15 @@ var ExternalInput = ({
|
|
29872
29900
|
e.stopPropagation();
|
29873
29901
|
setFiltersToggled(!filtersToggled);
|
29874
29902
|
},
|
29875
|
-
children: /* @__PURE__ */ (0,
|
29903
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(SlidersHorizontal, { size: 20 })
|
29876
29904
|
}
|
29877
29905
|
) })
|
29878
29906
|
] })
|
29879
|
-
] }) : /* @__PURE__ */ (0,
|
29880
|
-
/* @__PURE__ */ (0,
|
29881
|
-
hasFilterFields && /* @__PURE__ */ (0,
|
29907
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Heading, { rank: 2, size: "xs", children: field.placeholder || "Select data" }) }),
|
29908
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: getClassNameModal("grid"), children: [
|
29909
|
+
hasFilterFields && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: getClassNameModal("filters"), children: hasFilterFields && Object.keys(filterFields).map((fieldName) => {
|
29882
29910
|
const filterField = filterFields[fieldName];
|
29883
|
-
return /* @__PURE__ */ (0,
|
29911
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
29884
29912
|
AutoFieldPrivate,
|
29885
29913
|
{
|
29886
29914
|
field: filterField,
|
@@ -29897,9 +29925,9 @@ var ExternalInput = ({
|
|
29897
29925
|
fieldName
|
29898
29926
|
);
|
29899
29927
|
}) }),
|
29900
|
-
/* @__PURE__ */ (0,
|
29901
|
-
/* @__PURE__ */ (0,
|
29902
|
-
/* @__PURE__ */ (0,
|
29928
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: getClassNameModal("tableWrapper"), children: [
|
29929
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("table", { className: getClassNameModal("table"), children: [
|
29930
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("thead", { className: getClassNameModal("thead"), children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("tr", { className: getClassNameModal("tr"), children: keys.map((key) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
29903
29931
|
"th",
|
29904
29932
|
{
|
29905
29933
|
className: getClassNameModal("th"),
|
@@ -29908,8 +29936,8 @@ var ExternalInput = ({
|
|
29908
29936
|
},
|
29909
29937
|
key
|
29910
29938
|
)) }) }),
|
29911
|
-
/* @__PURE__ */ (0,
|
29912
|
-
return /* @__PURE__ */ (0,
|
29939
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("tbody", { className: getClassNameModal("tbody"), children: mappedData.map((item, i) => {
|
29940
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
29913
29941
|
"tr",
|
29914
29942
|
{
|
29915
29943
|
style: { whiteSpace: "nowrap" },
|
@@ -29918,16 +29946,16 @@ var ExternalInput = ({
|
|
29918
29946
|
onChange(mapProp(data[i]));
|
29919
29947
|
setOpen(false);
|
29920
29948
|
},
|
29921
|
-
children: keys.map((key) => /* @__PURE__ */ (0,
|
29949
|
+
children: keys.map((key) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("td", { className: getClassNameModal("td"), children: item[key] }, key))
|
29922
29950
|
},
|
29923
29951
|
i
|
29924
29952
|
);
|
29925
29953
|
}) })
|
29926
29954
|
] }),
|
29927
|
-
/* @__PURE__ */ (0,
|
29955
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: getClassNameModal("loadingBanner"), children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Loader, { size: 24 }) })
|
29928
29956
|
] })
|
29929
29957
|
] }),
|
29930
|
-
/* @__PURE__ */ (0,
|
29958
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: getClassNameModal("footer"), children: [
|
29931
29959
|
mappedData.length,
|
29932
29960
|
" result",
|
29933
29961
|
mappedData.length === 1 ? "" : "s"
|
@@ -29941,7 +29969,7 @@ var ExternalInput = ({
|
|
29941
29969
|
};
|
29942
29970
|
|
29943
29971
|
// components/AutoField/fields/ExternalField/index.tsx
|
29944
|
-
var
|
29972
|
+
var import_jsx_runtime15 = require("react/jsx-runtime");
|
29945
29973
|
var ExternalField = ({
|
29946
29974
|
field,
|
29947
29975
|
onChange,
|
@@ -29964,7 +29992,7 @@ var ExternalField = ({
|
|
29964
29992
|
if (field.type !== "external") {
|
29965
29993
|
return null;
|
29966
29994
|
}
|
29967
|
-
return /* @__PURE__ */ (0,
|
29995
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Label, { label: label || name, icon: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Link, { size: 16 }), el: "div", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
29968
29996
|
ExternalInput,
|
29969
29997
|
{
|
29970
29998
|
name,
|
@@ -29988,8 +30016,8 @@ var ExternalField = ({
|
|
29988
30016
|
|
29989
30017
|
// components/AutoField/fields/RadioField/index.tsx
|
29990
30018
|
init_react_import();
|
29991
|
-
var
|
29992
|
-
var
|
30019
|
+
var import_jsx_runtime16 = require("react/jsx-runtime");
|
30020
|
+
var getClassName11 = get_class_name_factory_default("Input", styles_module_default2);
|
29993
30021
|
var RadioField = ({
|
29994
30022
|
field,
|
29995
30023
|
onChange,
|
@@ -30003,23 +30031,23 @@ var RadioField = ({
|
|
30003
30031
|
if (field.type !== "radio" || !field.options) {
|
30004
30032
|
return null;
|
30005
30033
|
}
|
30006
|
-
return /* @__PURE__ */ (0,
|
30034
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
30007
30035
|
Label,
|
30008
30036
|
{
|
30009
|
-
icon: /* @__PURE__ */ (0,
|
30037
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(CheckCircle, { size: 16 }),
|
30010
30038
|
label: label || name,
|
30011
30039
|
readOnly,
|
30012
30040
|
el: "div",
|
30013
|
-
children: /* @__PURE__ */ (0,
|
30041
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: getClassName11("radioGroupItems"), id, children: field.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
30014
30042
|
"label",
|
30015
30043
|
{
|
30016
|
-
className:
|
30044
|
+
className: getClassName11("radio"),
|
30017
30045
|
children: [
|
30018
|
-
/* @__PURE__ */ (0,
|
30046
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
30019
30047
|
"input",
|
30020
30048
|
{
|
30021
30049
|
type: "radio",
|
30022
|
-
className:
|
30050
|
+
className: getClassName11("radioInput"),
|
30023
30051
|
value: option.value,
|
30024
30052
|
name,
|
30025
30053
|
onChange: (e) => {
|
@@ -30033,7 +30061,7 @@ var RadioField = ({
|
|
30033
30061
|
checked: value === option.value
|
30034
30062
|
}
|
30035
30063
|
),
|
30036
|
-
/* @__PURE__ */ (0,
|
30064
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: getClassName11("radioInner"), children: option.label || option.value })
|
30037
30065
|
]
|
30038
30066
|
},
|
30039
30067
|
option.label + option.value
|
@@ -30044,8 +30072,8 @@ var RadioField = ({
|
|
30044
30072
|
|
30045
30073
|
// components/AutoField/fields/SelectField/index.tsx
|
30046
30074
|
init_react_import();
|
30047
|
-
var
|
30048
|
-
var
|
30075
|
+
var import_jsx_runtime17 = require("react/jsx-runtime");
|
30076
|
+
var getClassName12 = get_class_name_factory_default("Input", styles_module_default2);
|
30049
30077
|
var SelectField = ({
|
30050
30078
|
field,
|
30051
30079
|
onChange,
|
@@ -30059,17 +30087,17 @@ var SelectField = ({
|
|
30059
30087
|
if (field.type !== "select" || !field.options) {
|
30060
30088
|
return null;
|
30061
30089
|
}
|
30062
|
-
return /* @__PURE__ */ (0,
|
30090
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
30063
30091
|
Label,
|
30064
30092
|
{
|
30065
30093
|
label: label || name,
|
30066
|
-
icon: /* @__PURE__ */ (0,
|
30094
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(ChevronDown, { size: 16 }),
|
30067
30095
|
readOnly,
|
30068
|
-
children: /* @__PURE__ */ (0,
|
30096
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
30069
30097
|
"select",
|
30070
30098
|
{
|
30071
30099
|
id,
|
30072
|
-
className:
|
30100
|
+
className: getClassName12("input"),
|
30073
30101
|
disabled: readOnly,
|
30074
30102
|
onChange: (e) => {
|
30075
30103
|
if (e.currentTarget.value === "true" || e.currentTarget.value === "false") {
|
@@ -30079,7 +30107,7 @@ var SelectField = ({
|
|
30079
30107
|
onChange(e.currentTarget.value);
|
30080
30108
|
},
|
30081
30109
|
value,
|
30082
|
-
children: field.options.map((option) => /* @__PURE__ */ (0,
|
30110
|
+
children: field.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
30083
30111
|
"option",
|
30084
30112
|
{
|
30085
30113
|
label: option.label,
|
@@ -30095,8 +30123,8 @@ var SelectField = ({
|
|
30095
30123
|
|
30096
30124
|
// components/AutoField/fields/TextareaField/index.tsx
|
30097
30125
|
init_react_import();
|
30098
|
-
var
|
30099
|
-
var
|
30126
|
+
var import_jsx_runtime18 = require("react/jsx-runtime");
|
30127
|
+
var getClassName13 = get_class_name_factory_default("Input", styles_module_default2);
|
30100
30128
|
var TextareaField = ({
|
30101
30129
|
onChange,
|
30102
30130
|
readOnly,
|
@@ -30106,11 +30134,11 @@ var TextareaField = ({
|
|
30106
30134
|
Label,
|
30107
30135
|
id
|
30108
30136
|
}) => {
|
30109
|
-
return /* @__PURE__ */ (0,
|
30137
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Label, { label: label || name, icon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Type, { size: 16 }), readOnly, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
30110
30138
|
"textarea",
|
30111
30139
|
{
|
30112
30140
|
id,
|
30113
|
-
className:
|
30141
|
+
className: getClassName13("input"),
|
30114
30142
|
autoComplete: "off",
|
30115
30143
|
name,
|
30116
30144
|
value: typeof value === "undefined" ? "" : value,
|
@@ -30130,11 +30158,11 @@ init_react_import();
|
|
30130
30158
|
|
30131
30159
|
// css-module:/home/runner/work/puck/puck/packages/core/components/AutoField/fields/ObjectField/styles.module.css#css-module
|
30132
30160
|
init_react_import();
|
30133
|
-
var
|
30161
|
+
var styles_module_default9 = { "ObjectField": "_ObjectField_1ua3y_5", "ObjectField-fieldset": "_ObjectField-fieldset_1ua3y_13" };
|
30134
30162
|
|
30135
30163
|
// components/AutoField/fields/ObjectField/index.tsx
|
30136
|
-
var
|
30137
|
-
var
|
30164
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
30165
|
+
var getClassName14 = get_class_name_factory_default("ObjectField", styles_module_default9);
|
30138
30166
|
var ObjectField = ({
|
30139
30167
|
field,
|
30140
30168
|
onChange,
|
@@ -30151,18 +30179,18 @@ var ObjectField = ({
|
|
30151
30179
|
}
|
30152
30180
|
const readOnlyFields = (selectedItem == null ? void 0 : selectedItem.readOnly) || {};
|
30153
30181
|
const data = value || {};
|
30154
|
-
return /* @__PURE__ */ (0,
|
30182
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
30155
30183
|
Label,
|
30156
30184
|
{
|
30157
30185
|
label: label || name,
|
30158
|
-
icon: /* @__PURE__ */ (0,
|
30186
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(MoreVertical, { size: 16 }),
|
30159
30187
|
el: "div",
|
30160
30188
|
readOnly,
|
30161
|
-
children: /* @__PURE__ */ (0,
|
30189
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: getClassName14(), children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("fieldset", { className: getClassName14("fieldset"), children: Object.keys(field.objectFields).map((fieldName) => {
|
30162
30190
|
const subField = field.objectFields[fieldName];
|
30163
30191
|
const subFieldName = `${name}.${fieldName}`;
|
30164
30192
|
const wildcardFieldName = `${name}.${fieldName}`;
|
30165
|
-
return /* @__PURE__ */ (0,
|
30193
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
30166
30194
|
AutoFieldPrivate,
|
30167
30195
|
{
|
30168
30196
|
name: subFieldName,
|
@@ -30206,8 +30234,8 @@ var useSafeId = () => {
|
|
30206
30234
|
};
|
30207
30235
|
|
30208
30236
|
// components/AutoField/index.tsx
|
30209
|
-
var
|
30210
|
-
var
|
30237
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
30238
|
+
var getClassName15 = get_class_name_factory_default("Input", styles_module_default2);
|
30211
30239
|
var FieldLabel = ({
|
30212
30240
|
children,
|
30213
30241
|
icon,
|
@@ -30217,11 +30245,11 @@ var FieldLabel = ({
|
|
30217
30245
|
className
|
30218
30246
|
}) => {
|
30219
30247
|
const El = el;
|
30220
|
-
return /* @__PURE__ */ (0,
|
30221
|
-
/* @__PURE__ */ (0,
|
30222
|
-
icon ? /* @__PURE__ */ (0,
|
30248
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(El, { className, children: [
|
30249
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: getClassName15("label"), children: [
|
30250
|
+
icon ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: getClassName15("labelIcon"), children: icon }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_jsx_runtime20.Fragment, {}),
|
30223
30251
|
label,
|
30224
|
-
readOnly && /* @__PURE__ */ (0,
|
30252
|
+
readOnly && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: getClassName15("disabledIcon"), title: "Read-only", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Lock, { size: "12" }) })
|
30225
30253
|
] }),
|
30226
30254
|
children
|
30227
30255
|
] });
|
@@ -30239,14 +30267,14 @@ var FieldLabelInternal2 = ({
|
|
30239
30267
|
[overrides]
|
30240
30268
|
);
|
30241
30269
|
if (!label) {
|
30242
|
-
return /* @__PURE__ */ (0,
|
30270
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_jsx_runtime20.Fragment, { children });
|
30243
30271
|
}
|
30244
|
-
return /* @__PURE__ */ (0,
|
30272
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
30245
30273
|
Wrapper,
|
30246
30274
|
{
|
30247
30275
|
label,
|
30248
30276
|
icon,
|
30249
|
-
className:
|
30277
|
+
className: getClassName15({ readOnly }),
|
30250
30278
|
readOnly,
|
30251
30279
|
el,
|
30252
30280
|
children
|
@@ -30290,11 +30318,11 @@ function AutoFieldInternal(props) {
|
|
30290
30318
|
return null;
|
30291
30319
|
}
|
30292
30320
|
const CustomField = field.render;
|
30293
|
-
return /* @__PURE__ */ (0,
|
30321
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: getClassName15(), children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(CustomField, __spreadValues({}, mergedProps)) });
|
30294
30322
|
}
|
30295
30323
|
const children = defaultFields[field.type](mergedProps);
|
30296
30324
|
const Render2 = render[field.type];
|
30297
|
-
return /* @__PURE__ */ (0,
|
30325
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Render2, __spreadProps(__spreadValues({}, mergedProps), { children }));
|
30298
30326
|
}
|
30299
30327
|
function AutoFieldPrivate(props) {
|
30300
30328
|
const { value, onChange } = props;
|
@@ -30317,11 +30345,11 @@ function AutoFieldPrivate(props) {
|
|
30317
30345
|
value: localValue,
|
30318
30346
|
onChange: onChangeLocal
|
30319
30347
|
};
|
30320
|
-
return /* @__PURE__ */ (0,
|
30348
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(AutoFieldInternal, __spreadValues(__spreadValues({}, props), localProps));
|
30321
30349
|
}
|
30322
|
-
var DefaultLabel = (props) => /* @__PURE__ */ (0,
|
30350
|
+
var DefaultLabel = (props) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", __spreadValues({}, props));
|
30323
30351
|
function AutoField(props) {
|
30324
|
-
return /* @__PURE__ */ (0,
|
30352
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(AutoFieldInternal, __spreadProps(__spreadValues({}, props), { Label: DefaultLabel }));
|
30325
30353
|
}
|
30326
30354
|
|
30327
30355
|
// components/Drawer/index.tsx
|
@@ -30329,49 +30357,62 @@ init_react_import();
|
|
30329
30357
|
|
30330
30358
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Drawer/styles.module.css#css-module
|
30331
30359
|
init_react_import();
|
30332
|
-
var
|
30360
|
+
var styles_module_default10 = { "Drawer": "_Drawer_4yfqn_1", "DrawerItem--disabled": "_DrawerItem--disabled_4yfqn_5", "DrawerItem-default": "_DrawerItem-default_4yfqn_11", "DrawerItem-draggableWrapper": "_DrawerItem-draggableWrapper_4yfqn_11", "DrawerItem": "_DrawerItem_4yfqn_5", "DrawerItem-draggable": "_DrawerItem-draggable_4yfqn_11", "Drawer--isDraggingFrom": "_Drawer--isDraggingFrom_4yfqn_36", "DrawerItem-name": "_DrawerItem-name_4yfqn_54" };
|
30333
30361
|
|
30334
30362
|
// components/Drawer/index.tsx
|
30335
30363
|
var import_react12 = require("react");
|
30336
|
-
var
|
30337
|
-
var
|
30338
|
-
var getClassNameItem2 = get_class_name_factory_default("DrawerItem",
|
30364
|
+
var import_jsx_runtime21 = require("react/jsx-runtime");
|
30365
|
+
var getClassName16 = get_class_name_factory_default("Drawer", styles_module_default10);
|
30366
|
+
var getClassNameItem2 = get_class_name_factory_default("DrawerItem", styles_module_default10);
|
30339
30367
|
var drawerContext = (0, import_react12.createContext)({
|
30340
30368
|
droppableId: ""
|
30341
30369
|
});
|
30342
30370
|
var DrawerDraggable = ({
|
30343
30371
|
children,
|
30344
30372
|
id,
|
30345
|
-
index
|
30346
|
-
|
30347
|
-
|
30348
|
-
|
30349
|
-
|
30350
|
-
|
30351
|
-
|
30352
|
-
|
30353
|
-
|
30354
|
-
|
30355
|
-
|
30356
|
-
|
30357
|
-
)
|
30373
|
+
index,
|
30374
|
+
isDragDisabled
|
30375
|
+
}) => {
|
30376
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
30377
|
+
Draggable,
|
30378
|
+
{
|
30379
|
+
id,
|
30380
|
+
index,
|
30381
|
+
isDragDisabled,
|
30382
|
+
showShadow: true,
|
30383
|
+
disableAnimations: true,
|
30384
|
+
className: () => getClassNameItem2({ disabled: isDragDisabled }),
|
30385
|
+
children: () => children
|
30386
|
+
},
|
30387
|
+
id
|
30388
|
+
);
|
30389
|
+
};
|
30358
30390
|
var DrawerItem = ({
|
30359
30391
|
name,
|
30360
30392
|
children,
|
30361
30393
|
id,
|
30362
30394
|
label,
|
30363
|
-
index
|
30395
|
+
index,
|
30396
|
+
isDragDisabled
|
30364
30397
|
}) => {
|
30365
30398
|
const ctx = (0, import_react12.useContext)(drawerContext);
|
30366
30399
|
const resolvedId = `${ctx.droppableId}::${id || name}`;
|
30367
30400
|
const CustomInner = (0, import_react12.useMemo)(
|
30368
|
-
() => children || (({ children: children2, name: name2 }) => /* @__PURE__ */ (0,
|
30401
|
+
() => children || (({ children: children2, name: name2 }) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: getClassNameItem2("default"), children: children2 })),
|
30369
30402
|
[children]
|
30370
30403
|
);
|
30371
|
-
return /* @__PURE__ */ (0,
|
30372
|
-
|
30373
|
-
|
30374
|
-
|
30404
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
30405
|
+
DrawerDraggable,
|
30406
|
+
{
|
30407
|
+
id: resolvedId,
|
30408
|
+
index,
|
30409
|
+
isDragDisabled,
|
30410
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(CustomInner, { name, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: getClassNameItem2("draggableWrapper"), children: /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: getClassNameItem2("draggable"), children: [
|
30411
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: getClassNameItem2("name"), children: label != null ? label : name }),
|
30412
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: getClassNameItem2("icon"), children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DragIcon, { isDragDisabled }) })
|
30413
|
+
] }) }) })
|
30414
|
+
}
|
30415
|
+
);
|
30375
30416
|
};
|
30376
30417
|
var Drawer = ({
|
30377
30418
|
children,
|
@@ -30379,16 +30420,16 @@ var Drawer = ({
|
|
30379
30420
|
direction = "vertical"
|
30380
30421
|
}) => {
|
30381
30422
|
const droppableId = `component-list:${_droppableId}`;
|
30382
|
-
return /* @__PURE__ */ (0,
|
30423
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(drawerContext.Provider, { value: { droppableId }, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Droppable, { droppableId, isDropDisabled: true, direction, children: (provided, snapshot) => /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
30383
30424
|
"div",
|
30384
30425
|
__spreadProps(__spreadValues({}, provided.droppableProps), {
|
30385
30426
|
ref: provided.innerRef,
|
30386
|
-
className:
|
30427
|
+
className: getClassName16({
|
30387
30428
|
isDraggingFrom: !!snapshot.draggingFromThisWith
|
30388
30429
|
}),
|
30389
30430
|
children: [
|
30390
30431
|
children,
|
30391
|
-
/* @__PURE__ */ (0,
|
30432
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { style: { display: "none" }, children: provided.placeholder })
|
30392
30433
|
]
|
30393
30434
|
})
|
30394
30435
|
) }) });
|
@@ -30397,16 +30438,16 @@ Drawer.Item = DrawerItem;
|
|
30397
30438
|
|
30398
30439
|
// components/DropZone/index.tsx
|
30399
30440
|
init_react_import();
|
30400
|
-
var
|
30441
|
+
var import_react17 = require("react");
|
30401
30442
|
|
30402
30443
|
// components/DraggableComponent/index.tsx
|
30403
30444
|
init_react_import();
|
30404
|
-
var
|
30445
|
+
var import_react15 = require("react");
|
30405
30446
|
var import_dnd4 = require("@measured/dnd");
|
30406
30447
|
|
30407
30448
|
// css-module:/home/runner/work/puck/puck/packages/core/components/DraggableComponent/styles.module.css#css-module
|
30408
30449
|
init_react_import();
|
30409
|
-
var
|
30450
|
+
var styles_module_default11 = { "DraggableComponent": "_DraggableComponent_1bhad_1", "DraggableComponent--isDragging": "_DraggableComponent--isDragging_1bhad_11", "DraggableComponent-contents": "_DraggableComponent-contents_1bhad_16", "DraggableComponent-overlay": "_DraggableComponent-overlay_1bhad_29", "DraggableComponent-loadingOverlay": "_DraggableComponent-loadingOverlay_1bhad_49", "DraggableComponent--isLocked": "_DraggableComponent--isLocked_1bhad_65", "DraggableComponent--forceHover": "_DraggableComponent--forceHover_1bhad_71", "DraggableComponent--isSelected": "_DraggableComponent--isSelected_1bhad_76", "DraggableComponent--indicativeHover": "_DraggableComponent--indicativeHover_1bhad_81", "DraggableComponent-actionsOverlay": "_DraggableComponent-actionsOverlay_1bhad_97", "DraggableComponent-actions": "_DraggableComponent-actions_1bhad_97" };
|
30410
30451
|
|
30411
30452
|
// lib/use-modifier-held.ts
|
30412
30453
|
init_react_import();
|
@@ -30446,13 +30487,151 @@ var isIos = () => [
|
|
30446
30487
|
].includes(navigator.platform) || // iPad on iOS 13 detection
|
30447
30488
|
navigator.userAgent.includes("Mac") && "ontouchend" in document;
|
30448
30489
|
|
30490
|
+
// components/DefaultOverride/index.tsx
|
30491
|
+
init_react_import();
|
30492
|
+
var import_jsx_runtime22 = require("react/jsx-runtime");
|
30493
|
+
var DefaultOverride = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_jsx_runtime22.Fragment, { children });
|
30494
|
+
|
30495
|
+
// lib/use-loaded-overrides.ts
|
30496
|
+
init_react_import();
|
30497
|
+
var import_react14 = require("react");
|
30498
|
+
|
30499
|
+
// lib/load-overrides.ts
|
30500
|
+
init_react_import();
|
30501
|
+
var loadOverrides = ({
|
30502
|
+
overrides,
|
30503
|
+
plugins
|
30504
|
+
}) => {
|
30505
|
+
const collected = __spreadValues({}, overrides);
|
30506
|
+
plugins.forEach((plugin) => {
|
30507
|
+
Object.keys(plugin.overrides).forEach((overridesType) => {
|
30508
|
+
if (overridesType === "fieldTypes") {
|
30509
|
+
const fieldTypes = plugin.overrides.fieldTypes;
|
30510
|
+
Object.keys(fieldTypes).forEach((fieldType) => {
|
30511
|
+
collected.fieldTypes = collected.fieldTypes || {};
|
30512
|
+
const childNode2 = collected.fieldTypes[fieldType];
|
30513
|
+
const Comp2 = (props) => fieldTypes[fieldType](__spreadProps(__spreadValues({}, props), {
|
30514
|
+
children: childNode2 ? childNode2(props) : props.children
|
30515
|
+
}));
|
30516
|
+
collected.fieldTypes[fieldType] = Comp2;
|
30517
|
+
});
|
30518
|
+
return;
|
30519
|
+
}
|
30520
|
+
const childNode = collected[overridesType];
|
30521
|
+
const Comp = (props) => plugin.overrides[overridesType](__spreadProps(__spreadValues({}, props), {
|
30522
|
+
children: childNode ? childNode(props) : props.children
|
30523
|
+
}));
|
30524
|
+
collected[overridesType] = Comp;
|
30525
|
+
});
|
30526
|
+
});
|
30527
|
+
return collected;
|
30528
|
+
};
|
30529
|
+
|
30530
|
+
// lib/use-loaded-overrides.ts
|
30531
|
+
var useLoadedOverrides = ({
|
30532
|
+
overrides,
|
30533
|
+
plugins
|
30534
|
+
}) => {
|
30535
|
+
return (0, import_react14.useMemo)(() => {
|
30536
|
+
return loadOverrides({ overrides, plugins });
|
30537
|
+
}, [plugins, overrides]);
|
30538
|
+
};
|
30539
|
+
|
30540
|
+
// lib/get-permissions.ts
|
30541
|
+
init_react_import();
|
30542
|
+
|
30543
|
+
// lib/get-changed.ts
|
30544
|
+
init_react_import();
|
30545
|
+
var getChanged = (newItem, oldItem) => {
|
30546
|
+
return newItem ? Object.keys(newItem.props || {}).reduce((acc, item) => {
|
30547
|
+
const newItemProps = (newItem == null ? void 0 : newItem.props) || {};
|
30548
|
+
const oldItemProps = (oldItem == null ? void 0 : oldItem.props) || {};
|
30549
|
+
return __spreadProps(__spreadValues({}, acc), {
|
30550
|
+
[item]: oldItemProps[item] !== newItemProps[item]
|
30551
|
+
});
|
30552
|
+
}, {}) : {};
|
30553
|
+
};
|
30554
|
+
|
30555
|
+
// lib/resolve-permissions.ts
|
30556
|
+
init_react_import();
|
30557
|
+
var resolvePermissions = ({
|
30558
|
+
selectedItem,
|
30559
|
+
config,
|
30560
|
+
changed,
|
30561
|
+
lastPermissions,
|
30562
|
+
initialPermissions,
|
30563
|
+
appState
|
30564
|
+
}) => {
|
30565
|
+
const componentConfig = selectedItem ? config.components[selectedItem.type] : null;
|
30566
|
+
if (selectedItem && (componentConfig == null ? void 0 : componentConfig.resolvePermissions)) {
|
30567
|
+
return componentConfig.resolvePermissions(selectedItem, {
|
30568
|
+
changed,
|
30569
|
+
lastPermissions,
|
30570
|
+
initialPermissions,
|
30571
|
+
appState
|
30572
|
+
});
|
30573
|
+
}
|
30574
|
+
return {};
|
30575
|
+
};
|
30576
|
+
|
30577
|
+
// lib/get-permissions.ts
|
30578
|
+
var cache = { lastPermissions: {}, lastSelected: {} };
|
30579
|
+
var getPermissions = ({
|
30580
|
+
selectedItem,
|
30581
|
+
type,
|
30582
|
+
globalPermissions,
|
30583
|
+
config,
|
30584
|
+
appState
|
30585
|
+
}) => {
|
30586
|
+
const componentType = type || selectedItem && selectedItem.type || "";
|
30587
|
+
const componentId = selectedItem && selectedItem.props.id || "";
|
30588
|
+
let componentPermissions = getInitialPermissions({
|
30589
|
+
componentType,
|
30590
|
+
config,
|
30591
|
+
globalPermissions
|
30592
|
+
});
|
30593
|
+
const changed = getChanged(selectedItem, cache.lastSelected);
|
30594
|
+
if (Object.values(changed).some((el) => el === true)) {
|
30595
|
+
const resolvedPermissions = resolvePermissions({
|
30596
|
+
selectedItem,
|
30597
|
+
config,
|
30598
|
+
changed,
|
30599
|
+
lastPermissions: cache.lastPermissions[componentId] || componentPermissions,
|
30600
|
+
initialPermissions: componentPermissions,
|
30601
|
+
appState
|
30602
|
+
});
|
30603
|
+
if (resolvedPermissions !== void 0) {
|
30604
|
+
componentPermissions = __spreadValues(__spreadValues({}, componentPermissions), resolvedPermissions);
|
30605
|
+
}
|
30606
|
+
cache.lastSelected = selectedItem;
|
30607
|
+
cache.lastPermissions[componentId] = componentPermissions;
|
30608
|
+
return componentPermissions;
|
30609
|
+
}
|
30610
|
+
if (Object.keys(componentId && cache.lastPermissions[componentId]).length !== 0) {
|
30611
|
+
componentPermissions = cache.lastPermissions[componentId];
|
30612
|
+
}
|
30613
|
+
return componentPermissions;
|
30614
|
+
};
|
30615
|
+
var getInitialPermissions = ({
|
30616
|
+
componentType,
|
30617
|
+
globalPermissions,
|
30618
|
+
config
|
30619
|
+
}) => {
|
30620
|
+
var _a;
|
30621
|
+
return __spreadValues(__spreadValues({}, globalPermissions), (_a = config.components[componentType]) == null ? void 0 : _a.permissions);
|
30622
|
+
};
|
30623
|
+
|
30449
30624
|
// components/DraggableComponent/index.tsx
|
30450
|
-
var
|
30451
|
-
var
|
30625
|
+
var import_jsx_runtime23 = require("react/jsx-runtime");
|
30626
|
+
var getClassName17 = get_class_name_factory_default("DraggableComponent", styles_module_default11);
|
30452
30627
|
var space = 8;
|
30453
30628
|
var actionsOverlayTop = space * 6.5;
|
30454
30629
|
var actionsTop = -(actionsOverlayTop - 8);
|
30455
30630
|
var actionsRight = space;
|
30631
|
+
var DefaultActionBar = ({
|
30632
|
+
label,
|
30633
|
+
children
|
30634
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ActionBar, { label, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(DefaultOverride, { children }) });
|
30456
30635
|
var DraggableComponent = ({
|
30457
30636
|
children,
|
30458
30637
|
id,
|
@@ -30475,30 +30654,52 @@ var DraggableComponent = ({
|
|
30475
30654
|
indicativeHover = false,
|
30476
30655
|
style
|
30477
30656
|
}) => {
|
30478
|
-
const {
|
30657
|
+
const {
|
30658
|
+
zoomConfig,
|
30659
|
+
status,
|
30660
|
+
overrides,
|
30661
|
+
plugins,
|
30662
|
+
selectedItem,
|
30663
|
+
config,
|
30664
|
+
globalPermissions,
|
30665
|
+
state
|
30666
|
+
} = useAppContext();
|
30479
30667
|
const isModifierHeld = useModifierHeld("Alt");
|
30480
|
-
const { status } = useAppContext();
|
30481
30668
|
const El = status !== "LOADING" ? import_dnd4.Draggable : DefaultDraggable;
|
30482
|
-
(0,
|
30483
|
-
const [disableSecondaryAnimation, setDisableSecondaryAnimation] = (0,
|
30484
|
-
(0,
|
30669
|
+
(0, import_react15.useEffect)(onMount, []);
|
30670
|
+
const [disableSecondaryAnimation, setDisableSecondaryAnimation] = (0, import_react15.useState)(false);
|
30671
|
+
(0, import_react15.useEffect)(() => {
|
30485
30672
|
if (isIos()) {
|
30486
30673
|
setDisableSecondaryAnimation(true);
|
30487
30674
|
}
|
30488
30675
|
}, []);
|
30489
|
-
|
30676
|
+
const loadedOverrides = useLoadedOverrides({
|
30677
|
+
overrides,
|
30678
|
+
plugins
|
30679
|
+
});
|
30680
|
+
const CustomActionBar = (0, import_react15.useMemo)(
|
30681
|
+
() => loadedOverrides.actionBar || DefaultActionBar,
|
30682
|
+
[loadedOverrides]
|
30683
|
+
);
|
30684
|
+
const permissions = selectedItem && getPermissions({
|
30685
|
+
selectedItem,
|
30686
|
+
globalPermissions: globalPermissions || {},
|
30687
|
+
config,
|
30688
|
+
appState: state
|
30689
|
+
});
|
30690
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
30490
30691
|
El,
|
30491
30692
|
{
|
30492
30693
|
draggableId: id,
|
30493
30694
|
index,
|
30494
30695
|
isDragDisabled,
|
30495
30696
|
disableSecondaryAnimation,
|
30496
|
-
children: (provided, snapshot) => /* @__PURE__ */ (0,
|
30697
|
+
children: (provided, snapshot) => /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
|
30497
30698
|
"div",
|
30498
30699
|
__spreadProps(__spreadValues(__spreadValues({
|
30499
30700
|
ref: provided.innerRef
|
30500
30701
|
}, provided.draggableProps), provided.dragHandleProps), {
|
30501
|
-
className:
|
30702
|
+
className: getClassName17({
|
30502
30703
|
isSelected,
|
30503
30704
|
isModifierHeld,
|
30504
30705
|
isDragging: snapshot.isDragging,
|
@@ -30507,7 +30708,7 @@ var DraggableComponent = ({
|
|
30507
30708
|
indicativeHover
|
30508
30709
|
}),
|
30509
30710
|
style: __spreadProps(__spreadValues(__spreadValues({}, style), provided.draggableProps.style), {
|
30510
|
-
cursor: isModifierHeld ? "initial" : "grab"
|
30711
|
+
cursor: isModifierHeld || isDragDisabled ? "initial" : "grab"
|
30511
30712
|
}),
|
30512
30713
|
onMouseOver,
|
30513
30714
|
onMouseOut,
|
@@ -30516,34 +30717,33 @@ var DraggableComponent = ({
|
|
30516
30717
|
onClick,
|
30517
30718
|
children: [
|
30518
30719
|
debug,
|
30519
|
-
isLoading && /* @__PURE__ */ (0,
|
30520
|
-
/* @__PURE__ */ (0,
|
30720
|
+
isLoading && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassName17("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Loader, {}) }),
|
30721
|
+
isSelected && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
30521
30722
|
"div",
|
30522
30723
|
{
|
30523
|
-
className:
|
30724
|
+
className: getClassName17("actionsOverlay"),
|
30524
30725
|
style: {
|
30525
30726
|
top: actionsOverlayTop / zoomConfig.zoom
|
30526
30727
|
},
|
30527
|
-
children: /* @__PURE__ */ (0,
|
30728
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
30528
30729
|
"div",
|
30529
30730
|
{
|
30530
|
-
className:
|
30731
|
+
className: getClassName17("actions"),
|
30531
30732
|
style: {
|
30532
30733
|
transform: `scale(${1 / zoomConfig.zoom}`,
|
30533
30734
|
top: actionsTop / zoomConfig.zoom,
|
30534
30735
|
right: actionsRight / zoomConfig.zoom
|
30535
30736
|
},
|
30536
|
-
children: [
|
30537
|
-
|
30538
|
-
/* @__PURE__ */ (0,
|
30539
|
-
|
30540
|
-
]
|
30737
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(CustomActionBar, { label, children: [
|
30738
|
+
permissions && permissions.duplicate && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ActionBar.Action, { onClick: onDuplicate, label: "Duplicate", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Copy, { size: 16 }) }),
|
30739
|
+
permissions && permissions.delete && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ActionBar.Action, { onClick: onDelete, label: "Delete", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Trash, { size: 16 }) })
|
30740
|
+
] })
|
30541
30741
|
}
|
30542
30742
|
)
|
30543
30743
|
}
|
30544
30744
|
),
|
30545
|
-
/* @__PURE__ */ (0,
|
30546
|
-
/* @__PURE__ */ (0,
|
30745
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassName17("overlay") }),
|
30746
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: getClassName17("contents"), children })
|
30547
30747
|
]
|
30548
30748
|
})
|
30549
30749
|
)
|
@@ -30554,11 +30754,11 @@ var DraggableComponent = ({
|
|
30554
30754
|
|
30555
30755
|
// css-module:/home/runner/work/puck/puck/packages/core/components/DropZone/styles.module.css#css-module
|
30556
30756
|
init_react_import();
|
30557
|
-
var
|
30757
|
+
var styles_module_default12 = { "DropZone": "_DropZone_djoti_1", "DropZone-content": "_DropZone-content_djoti_10", "DropZone--userIsDragging": "_DropZone--userIsDragging_djoti_15", "DropZone--draggingOverArea": "_DropZone--draggingOverArea_djoti_19", "DropZone--draggingNewComponent": "_DropZone--draggingNewComponent_djoti_20", "DropZone--isAreaSelected": "_DropZone--isAreaSelected_djoti_26", "DropZone--hoveringOverArea": "_DropZone--hoveringOverArea_djoti_27", "DropZone--isDisabled": "_DropZone--isDisabled_djoti_28", "DropZone--isRootZone": "_DropZone--isRootZone_djoti_29", "DropZone--hasChildren": "_DropZone--hasChildren_djoti_30", "DropZone--isDestination": "_DropZone--isDestination_djoti_40", "DropZone-item": "_DropZone-item_djoti_52", "DropZone-hitbox": "_DropZone-hitbox_djoti_56" };
|
30558
30758
|
|
30559
30759
|
// components/DropZone/context.tsx
|
30560
30760
|
init_react_import();
|
30561
|
-
var
|
30761
|
+
var import_react16 = require("react");
|
30562
30762
|
var import_use_debounce2 = require("use-debounce");
|
30563
30763
|
|
30564
30764
|
// lib/get-zone-id.ts
|
@@ -30574,30 +30774,30 @@ var getZoneId = (zoneCompound) => {
|
|
30574
30774
|
};
|
30575
30775
|
|
30576
30776
|
// components/DropZone/context.tsx
|
30577
|
-
var
|
30578
|
-
var dropZoneContext = (0,
|
30777
|
+
var import_jsx_runtime24 = require("react/jsx-runtime");
|
30778
|
+
var dropZoneContext = (0, import_react16.createContext)(null);
|
30579
30779
|
var DropZoneProvider = ({
|
30580
30780
|
children,
|
30581
30781
|
value
|
30582
30782
|
}) => {
|
30583
|
-
const [hoveringArea, setHoveringArea] = (0,
|
30584
|
-
const [hoveringZone, setHoveringZone] = (0,
|
30783
|
+
const [hoveringArea, setHoveringArea] = (0, import_react16.useState)(null);
|
30784
|
+
const [hoveringZone, setHoveringZone] = (0, import_react16.useState)(
|
30585
30785
|
rootDroppableId
|
30586
30786
|
);
|
30587
|
-
const [hoveringComponent, setHoveringComponent] = (0,
|
30787
|
+
const [hoveringComponent, setHoveringComponent] = (0, import_react16.useState)();
|
30588
30788
|
const [hoveringAreaDb] = (0, import_use_debounce2.useDebounce)(hoveringArea, 75, { leading: false });
|
30589
|
-
const [areasWithZones, setAreasWithZones] = (0,
|
30789
|
+
const [areasWithZones, setAreasWithZones] = (0, import_react16.useState)(
|
30590
30790
|
{}
|
30591
30791
|
);
|
30592
|
-
const [activeZones, setActiveZones] = (0,
|
30792
|
+
const [activeZones, setActiveZones] = (0, import_react16.useState)({});
|
30593
30793
|
const { dispatch = null } = value ? value : {};
|
30594
|
-
const registerZoneArea = (0,
|
30794
|
+
const registerZoneArea = (0, import_react16.useCallback)(
|
30595
30795
|
(area) => {
|
30596
30796
|
setAreasWithZones((latest) => __spreadProps(__spreadValues({}, latest), { [area]: true }));
|
30597
30797
|
},
|
30598
30798
|
[setAreasWithZones]
|
30599
30799
|
);
|
30600
|
-
const registerZone = (0,
|
30800
|
+
const registerZone = (0, import_react16.useCallback)(
|
30601
30801
|
(zoneCompound) => {
|
30602
30802
|
if (!dispatch) {
|
30603
30803
|
return;
|
@@ -30610,7 +30810,7 @@ var DropZoneProvider = ({
|
|
30610
30810
|
},
|
30611
30811
|
[setActiveZones, dispatch]
|
30612
30812
|
);
|
30613
|
-
const unregisterZone = (0,
|
30813
|
+
const unregisterZone = (0, import_react16.useCallback)(
|
30614
30814
|
(zoneCompound) => {
|
30615
30815
|
if (!dispatch) {
|
30616
30816
|
return;
|
@@ -30625,8 +30825,8 @@ var DropZoneProvider = ({
|
|
30625
30825
|
},
|
30626
30826
|
[setActiveZones, dispatch]
|
30627
30827
|
);
|
30628
|
-
const [pathData, setPathData] = (0,
|
30629
|
-
const registerPath = (0,
|
30828
|
+
const [pathData, setPathData] = (0, import_react16.useState)();
|
30829
|
+
const registerPath = (0, import_react16.useCallback)(
|
30630
30830
|
(selector) => {
|
30631
30831
|
if (!(value == null ? void 0 : value.data)) {
|
30632
30832
|
return;
|
@@ -30651,8 +30851,8 @@ var DropZoneProvider = ({
|
|
30651
30851
|
},
|
30652
30852
|
[value, setPathData]
|
30653
30853
|
);
|
30654
|
-
const [zoneWillDrag, setZoneWillDrag] = (0,
|
30655
|
-
return /* @__PURE__ */ (0,
|
30854
|
+
const [zoneWillDrag, setZoneWillDrag] = (0, import_react16.useState)("");
|
30855
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_jsx_runtime24.Fragment, { children: value && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
30656
30856
|
dropZoneContext.Provider,
|
30657
30857
|
{
|
30658
30858
|
value: __spreadValues({
|
@@ -30678,12 +30878,12 @@ var DropZoneProvider = ({
|
|
30678
30878
|
};
|
30679
30879
|
|
30680
30880
|
// components/DropZone/index.tsx
|
30681
|
-
var
|
30682
|
-
var
|
30881
|
+
var import_jsx_runtime25 = require("react/jsx-runtime");
|
30882
|
+
var getClassName18 = get_class_name_factory_default("DropZone", styles_module_default12);
|
30683
30883
|
function DropZoneEdit({ zone, allow, disallow, style }) {
|
30684
30884
|
var _a;
|
30685
30885
|
const appContext2 = useAppContext();
|
30686
|
-
const ctx = (0,
|
30886
|
+
const ctx = (0, import_react17.useContext)(dropZoneContext);
|
30687
30887
|
const {
|
30688
30888
|
// These all need setting via context
|
30689
30889
|
data,
|
@@ -30702,12 +30902,12 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
|
|
30702
30902
|
} = ctx || {};
|
30703
30903
|
let content = data.content || [];
|
30704
30904
|
let zoneCompound = rootDroppableId;
|
30705
|
-
(0,
|
30905
|
+
(0, import_react17.useEffect)(() => {
|
30706
30906
|
if (areaId && registerZoneArea) {
|
30707
30907
|
registerZoneArea(areaId);
|
30708
30908
|
}
|
30709
30909
|
}, [areaId]);
|
30710
|
-
(0,
|
30910
|
+
(0, import_react17.useEffect)(() => {
|
30711
30911
|
if (ctx == null ? void 0 : ctx.registerZone) {
|
30712
30912
|
ctx == null ? void 0 : ctx.registerZone(zoneCompound);
|
30713
30913
|
}
|
@@ -30733,7 +30933,7 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
|
|
30733
30933
|
const draggingOverArea = userIsDragging && zoneArea === draggedSourceArea;
|
30734
30934
|
const draggingNewComponent = draggedSourceId == null ? void 0 : draggedSourceId.startsWith("component-list");
|
30735
30935
|
if (!(ctx == null ? void 0 : ctx.config) || !ctx.setHoveringArea || !ctx.setHoveringZone || !ctx.setHoveringComponent || !ctx.setItemSelector || !ctx.registerPath || !ctx.dispatch) {
|
30736
|
-
return /* @__PURE__ */ (0,
|
30936
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { children: "DropZone requires context to work." });
|
30737
30937
|
}
|
30738
30938
|
const {
|
30739
30939
|
hoveringArea = "root",
|
@@ -30774,10 +30974,10 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
|
|
30774
30974
|
}
|
30775
30975
|
const selectedItem = itemSelector ? getItem(itemSelector, data) : null;
|
30776
30976
|
const isAreaSelected = selectedItem && zoneArea === selectedItem.props.id;
|
30777
|
-
return /* @__PURE__ */ (0,
|
30977
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
30778
30978
|
"div",
|
30779
30979
|
{
|
30780
|
-
className:
|
30980
|
+
className: getClassName18({
|
30781
30981
|
isRootZone,
|
30782
30982
|
userIsDragging,
|
30783
30983
|
draggingOverArea,
|
@@ -30791,17 +30991,17 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
|
|
30791
30991
|
onMouseUp: () => {
|
30792
30992
|
setZoneWillDrag("");
|
30793
30993
|
},
|
30794
|
-
children: /* @__PURE__ */ (0,
|
30994
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
30795
30995
|
Droppable,
|
30796
30996
|
{
|
30797
30997
|
droppableId: zoneCompound,
|
30798
30998
|
direction: "vertical",
|
30799
30999
|
isDropDisabled: !isEnabled,
|
30800
31000
|
children: (provided, snapshot) => {
|
30801
|
-
return /* @__PURE__ */ (0,
|
31001
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
|
30802
31002
|
"div",
|
30803
31003
|
__spreadProps(__spreadValues({}, (provided || { droppableProps: {} }).droppableProps), {
|
30804
|
-
className:
|
31004
|
+
className: getClassName18("content"),
|
30805
31005
|
ref: provided == null ? void 0 : provided.innerRef,
|
30806
31006
|
style,
|
30807
31007
|
id: zoneCompound,
|
@@ -30828,25 +31028,34 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
|
|
30828
31028
|
"draggable-"
|
30829
31029
|
)[1] === componentId;
|
30830
31030
|
const containsZone = areasWithZones ? areasWithZones[componentId] : false;
|
30831
|
-
const Render2 = config.components[item.type] ? config.components[item.type].render : () => /* @__PURE__ */ (0,
|
31031
|
+
const Render2 = config.components[item.type] ? config.components[item.type].render : () => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { style: { padding: 48, textAlign: "center" }, children: [
|
30832
31032
|
"No configuration for ",
|
30833
31033
|
item.type
|
30834
31034
|
] });
|
30835
31035
|
const componentConfig = config.components[item.type];
|
30836
31036
|
const label = (_b = componentConfig == null ? void 0 : componentConfig["label"]) != null ? _b : item.type.toString();
|
30837
|
-
|
31037
|
+
const canDrag = getPermissions({
|
31038
|
+
selectedItem: getItem(
|
31039
|
+
{ index: i, zone: zoneCompound },
|
31040
|
+
appContext2.state.data
|
31041
|
+
),
|
31042
|
+
config: appContext2.config,
|
31043
|
+
globalPermissions: appContext2.globalPermissions || {},
|
31044
|
+
appState: appContext2.state
|
31045
|
+
}).drag;
|
31046
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
|
30838
31047
|
"div",
|
30839
31048
|
{
|
30840
|
-
className:
|
31049
|
+
className: getClassName18("item"),
|
30841
31050
|
style: { zIndex: isDragging ? 1 : void 0 },
|
30842
31051
|
children: [
|
30843
|
-
/* @__PURE__ */ (0,
|
31052
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
30844
31053
|
DropZoneProvider,
|
30845
31054
|
{
|
30846
31055
|
value: __spreadProps(__spreadValues({}, ctx), {
|
30847
31056
|
areaId: componentId
|
30848
31057
|
}),
|
30849
|
-
children: /* @__PURE__ */ (0,
|
31058
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
30850
31059
|
DraggableComponent,
|
30851
31060
|
{
|
30852
31061
|
label,
|
@@ -30855,6 +31064,7 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
|
|
30855
31064
|
isSelected,
|
30856
31065
|
isLocked: userIsDragging,
|
30857
31066
|
forceHover: hoveringComponent === componentId && !userIsDragging,
|
31067
|
+
isDragDisabled: !canDrag,
|
30858
31068
|
indicativeHover: userIsDragging && containsZone && hoveringArea === componentId,
|
30859
31069
|
isLoading: (_c = appContext2.componentState[componentId]) == null ? void 0 : _c.loading,
|
30860
31070
|
onMount: () => {
|
@@ -30913,15 +31123,15 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
|
|
30913
31123
|
style: {
|
30914
31124
|
pointerEvents: userIsDragging && draggingNewComponent ? "all" : void 0
|
30915
31125
|
},
|
30916
|
-
children: /* @__PURE__ */ (0,
|
31126
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName18("renderWrapper"), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Render2, __spreadValues({}, defaultedProps)) })
|
30917
31127
|
}
|
30918
31128
|
)
|
30919
31129
|
}
|
30920
31130
|
),
|
30921
|
-
userIsDragging && /* @__PURE__ */ (0,
|
31131
|
+
userIsDragging && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
30922
31132
|
"div",
|
30923
31133
|
{
|
30924
|
-
className:
|
31134
|
+
className: getClassName18("hitbox"),
|
30925
31135
|
onMouseOver: (e) => {
|
30926
31136
|
e.stopPropagation();
|
30927
31137
|
setHoveringArea(zoneArea);
|
@@ -30935,7 +31145,7 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
|
|
30935
31145
|
);
|
30936
31146
|
}),
|
30937
31147
|
provided == null ? void 0 : provided.placeholder,
|
30938
|
-
(snapshot == null ? void 0 : snapshot.isDraggingOver) && /* @__PURE__ */ (0,
|
31148
|
+
(snapshot == null ? void 0 : snapshot.isDraggingOver) && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
30939
31149
|
"div",
|
30940
31150
|
{
|
30941
31151
|
"data-puck-placeholder": true,
|
@@ -30956,7 +31166,7 @@ function DropZoneEdit({ zone, allow, disallow, style }) {
|
|
30956
31166
|
);
|
30957
31167
|
}
|
30958
31168
|
function DropZoneRender({ zone }) {
|
30959
|
-
const ctx = (0,
|
31169
|
+
const ctx = (0, import_react17.useContext)(dropZoneContext);
|
30960
31170
|
const { data, areaId = "root", config } = ctx || {};
|
30961
31171
|
let zoneCompound = rootDroppableId;
|
30962
31172
|
let content = (data == null ? void 0 : data.content) || [];
|
@@ -30967,14 +31177,14 @@ function DropZoneRender({ zone }) {
|
|
30967
31177
|
zoneCompound = `${areaId}:${zone}`;
|
30968
31178
|
content = setupZone(data, zoneCompound).zones[zoneCompound];
|
30969
31179
|
}
|
30970
|
-
return /* @__PURE__ */ (0,
|
31180
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_jsx_runtime25.Fragment, { children: content.map((item) => {
|
30971
31181
|
const Component = config.components[item.type];
|
30972
31182
|
if (Component) {
|
30973
|
-
return /* @__PURE__ */ (0,
|
31183
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
30974
31184
|
DropZoneProvider,
|
30975
31185
|
{
|
30976
31186
|
value: { data, config, areaId: item.props.id },
|
30977
|
-
children: /* @__PURE__ */ (0,
|
31187
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
30978
31188
|
Component.render,
|
30979
31189
|
__spreadProps(__spreadValues({}, item.props), {
|
30980
31190
|
puck: { renderDropZone: DropZone }
|
@@ -30988,20 +31198,20 @@ function DropZoneRender({ zone }) {
|
|
30988
31198
|
}) });
|
30989
31199
|
}
|
30990
31200
|
function DropZone(props) {
|
30991
|
-
const ctx = (0,
|
31201
|
+
const ctx = (0, import_react17.useContext)(dropZoneContext);
|
30992
31202
|
if ((ctx == null ? void 0 : ctx.mode) === "edit") {
|
30993
|
-
return /* @__PURE__ */ (0,
|
31203
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(DropZoneEdit, __spreadValues({}, props));
|
30994
31204
|
}
|
30995
|
-
return /* @__PURE__ */ (0,
|
31205
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(DropZoneRender, __spreadValues({}, props));
|
30996
31206
|
}
|
30997
31207
|
|
30998
31208
|
// components/Puck/index.tsx
|
30999
31209
|
init_react_import();
|
31000
|
-
var
|
31210
|
+
var import_react31 = require("react");
|
31001
31211
|
|
31002
31212
|
// lib/use-placeholder-style.ts
|
31003
31213
|
init_react_import();
|
31004
|
-
var
|
31214
|
+
var import_react18 = require("react");
|
31005
31215
|
|
31006
31216
|
// lib/get-frame.ts
|
31007
31217
|
init_react_import();
|
@@ -31016,7 +31226,7 @@ var getFrame = () => {
|
|
31016
31226
|
// lib/use-placeholder-style.ts
|
31017
31227
|
var usePlaceholderStyle = () => {
|
31018
31228
|
const queryAttr = "data-rfd-drag-handle-draggable-id";
|
31019
|
-
const [placeholderStyle, setPlaceholderStyle] = (0,
|
31229
|
+
const [placeholderStyle, setPlaceholderStyle] = (0, import_react18.useState)();
|
31020
31230
|
const onDragStartOrUpdate = (draggedItem) => {
|
31021
31231
|
var _a;
|
31022
31232
|
const draggableId = draggedItem.draggableId;
|
@@ -31065,11 +31275,11 @@ init_react_import();
|
|
31065
31275
|
|
31066
31276
|
// css-module:/home/runner/work/puck/puck/packages/core/components/SidebarSection/styles.module.css#css-module
|
31067
31277
|
init_react_import();
|
31068
|
-
var
|
31278
|
+
var styles_module_default13 = { "SidebarSection": "_SidebarSection_125qe_1", "SidebarSection-title": "_SidebarSection-title_125qe_12", "SidebarSection--noBorderTop": "_SidebarSection--noBorderTop_125qe_20", "SidebarSection-content": "_SidebarSection-content_125qe_24", "SidebarSection--noPadding": "_SidebarSection--noPadding_125qe_28", "SidebarSection-breadcrumbLabel": "_SidebarSection-breadcrumbLabel_125qe_41", "SidebarSection-breadcrumbs": "_SidebarSection-breadcrumbs_125qe_70", "SidebarSection-breadcrumb": "_SidebarSection-breadcrumb_125qe_41", "SidebarSection-heading": "_SidebarSection-heading_125qe_82", "SidebarSection-loadingOverlay": "_SidebarSection-loadingOverlay_125qe_86" };
|
31069
31279
|
|
31070
31280
|
// lib/use-breadcrumbs.ts
|
31071
31281
|
init_react_import();
|
31072
|
-
var
|
31282
|
+
var import_react19 = require("react");
|
31073
31283
|
var convertPathDataToBreadcrumbs = (selectedItem, pathData, data) => {
|
31074
31284
|
const id = selectedItem ? selectedItem == null ? void 0 : selectedItem.props.id : "";
|
31075
31285
|
const currentPathData = pathData && id && pathData[id] ? __spreadValues({}, pathData[id]) : { label: "Page", path: [] };
|
@@ -31119,8 +31329,8 @@ var useBreadcrumbs = (renderCount) => {
|
|
31119
31329
|
state: { data },
|
31120
31330
|
selectedItem
|
31121
31331
|
} = useAppContext();
|
31122
|
-
const dzContext = (0,
|
31123
|
-
return (0,
|
31332
|
+
const dzContext = (0, import_react19.useContext)(dropZoneContext);
|
31333
|
+
return (0, import_react19.useMemo)(() => {
|
31124
31334
|
const breadcrumbs = convertPathDataToBreadcrumbs(
|
31125
31335
|
selectedItem,
|
31126
31336
|
dzContext == null ? void 0 : dzContext.pathData,
|
@@ -31134,8 +31344,8 @@ var useBreadcrumbs = (renderCount) => {
|
|
31134
31344
|
};
|
31135
31345
|
|
31136
31346
|
// components/SidebarSection/index.tsx
|
31137
|
-
var
|
31138
|
-
var
|
31347
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
31348
|
+
var getClassName19 = get_class_name_factory_default("SidebarSection", styles_module_default13);
|
31139
31349
|
var SidebarSection = ({
|
31140
31350
|
children,
|
31141
31351
|
title,
|
@@ -31147,28 +31357,28 @@ var SidebarSection = ({
|
|
31147
31357
|
}) => {
|
31148
31358
|
const { setUi } = useAppContext();
|
31149
31359
|
const breadcrumbs = useBreadcrumbs(1);
|
31150
|
-
return /* @__PURE__ */ (0,
|
31360
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
31151
31361
|
"div",
|
31152
31362
|
{
|
31153
|
-
className:
|
31363
|
+
className: getClassName19({ noBorderTop, noPadding }),
|
31154
31364
|
style: { background },
|
31155
31365
|
children: [
|
31156
|
-
/* @__PURE__ */ (0,
|
31157
|
-
showBreadcrumbs ? breadcrumbs.map((breadcrumb, i) => /* @__PURE__ */ (0,
|
31158
|
-
/* @__PURE__ */ (0,
|
31366
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName19("title"), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: getClassName19("breadcrumbs"), children: [
|
31367
|
+
showBreadcrumbs ? breadcrumbs.map((breadcrumb, i) => /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: getClassName19("breadcrumb"), children: [
|
31368
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
31159
31369
|
"button",
|
31160
31370
|
{
|
31161
|
-
className:
|
31371
|
+
className: getClassName19("breadcrumbLabel"),
|
31162
31372
|
onClick: () => setUi({ itemSelector: breadcrumb.selector }),
|
31163
31373
|
children: breadcrumb.label
|
31164
31374
|
}
|
31165
31375
|
),
|
31166
|
-
/* @__PURE__ */ (0,
|
31376
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ChevronRight, { size: 16 })
|
31167
31377
|
] }, i)) : null,
|
31168
|
-
/* @__PURE__ */ (0,
|
31378
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName19("heading"), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Heading, { rank: 2, size: "xs", children: title }) })
|
31169
31379
|
] }) }),
|
31170
|
-
/* @__PURE__ */ (0,
|
31171
|
-
isLoading && /* @__PURE__ */ (0,
|
31380
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName19("content"), children }),
|
31381
|
+
isLoading && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName19("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Loader, { size: 32 }) })
|
31172
31382
|
]
|
31173
31383
|
}
|
31174
31384
|
);
|
@@ -31282,34 +31492,37 @@ var replaceAction = (data, action) => {
|
|
31282
31492
|
})
|
31283
31493
|
});
|
31284
31494
|
};
|
31285
|
-
var
|
31286
|
-
|
31287
|
-
|
31288
|
-
|
31289
|
-
|
31290
|
-
|
31291
|
-
|
31292
|
-
|
31293
|
-
if (action.destinationZone === rootDroppableId) {
|
31294
|
-
return __spreadProps(__spreadValues({}, data), {
|
31295
|
-
content: insert(
|
31296
|
-
data.content,
|
31297
|
-
action.destinationIndex,
|
31298
|
-
emptyComponentData
|
31299
|
-
)
|
31300
|
-
});
|
31301
|
-
}
|
31302
|
-
const newData = setupZone(data, action.destinationZone);
|
31495
|
+
var insertAction = (data, action, config) => {
|
31496
|
+
const emptyComponentData = {
|
31497
|
+
type: action.componentType,
|
31498
|
+
props: __spreadProps(__spreadValues({}, config.components[action.componentType].defaultProps || {}), {
|
31499
|
+
id: action.id || generateId(action.componentType)
|
31500
|
+
})
|
31501
|
+
};
|
31502
|
+
if (action.destinationZone === rootDroppableId) {
|
31303
31503
|
return __spreadProps(__spreadValues({}, data), {
|
31304
|
-
|
31305
|
-
|
31306
|
-
|
31307
|
-
|
31308
|
-
|
31309
|
-
)
|
31310
|
-
})
|
31504
|
+
content: insert(
|
31505
|
+
data.content,
|
31506
|
+
action.destinationIndex,
|
31507
|
+
emptyComponentData
|
31508
|
+
)
|
31311
31509
|
});
|
31312
31510
|
}
|
31511
|
+
const newData = setupZone(data, action.destinationZone);
|
31512
|
+
return __spreadProps(__spreadValues({}, data), {
|
31513
|
+
zones: __spreadProps(__spreadValues({}, newData.zones), {
|
31514
|
+
[action.destinationZone]: insert(
|
31515
|
+
newData.zones[action.destinationZone],
|
31516
|
+
action.destinationIndex,
|
31517
|
+
emptyComponentData
|
31518
|
+
)
|
31519
|
+
})
|
31520
|
+
});
|
31521
|
+
};
|
31522
|
+
var reduceData = (data, action, config) => {
|
31523
|
+
if (action.type === "insert") {
|
31524
|
+
return insertAction(data, action, config);
|
31525
|
+
}
|
31313
31526
|
if (action.type === "duplicate") {
|
31314
31527
|
const item = getItem(
|
31315
31528
|
{ index: action.sourceIndex, zone: action.sourceZone },
|
@@ -31534,25 +31747,11 @@ var flushZones = (appState) => {
|
|
31534
31747
|
|
31535
31748
|
// lib/use-resolved-data.ts
|
31536
31749
|
init_react_import();
|
31537
|
-
var
|
31750
|
+
var import_react20 = require("react");
|
31538
31751
|
|
31539
31752
|
// lib/resolve-component-data.ts
|
31540
31753
|
init_react_import();
|
31541
|
-
|
31542
|
-
// lib/get-changed.ts
|
31543
|
-
init_react_import();
|
31544
|
-
var getChanged = (newItem, oldItem) => {
|
31545
|
-
return newItem ? Object.keys(newItem.props || {}).reduce((acc, item) => {
|
31546
|
-
const newItemProps = (newItem == null ? void 0 : newItem.props) || {};
|
31547
|
-
const oldItemProps = (oldItem == null ? void 0 : oldItem.props) || {};
|
31548
|
-
return __spreadProps(__spreadValues({}, acc), {
|
31549
|
-
[item]: oldItemProps[item] !== newItemProps[item]
|
31550
|
-
});
|
31551
|
-
}, {}) : {};
|
31552
|
-
};
|
31553
|
-
|
31554
|
-
// lib/resolve-component-data.ts
|
31555
|
-
var cache = { lastChange: {} };
|
31754
|
+
var cache2 = { lastChange: {} };
|
31556
31755
|
var resolveAllComponentData = (content, config, onResolveStart, onResolveEnd) => __async(void 0, null, function* () {
|
31557
31756
|
return yield Promise.all(
|
31558
31757
|
content.map((item) => __async(void 0, null, function* () {
|
@@ -31568,7 +31767,7 @@ var resolveAllComponentData = (content, config, onResolveStart, onResolveEnd) =>
|
|
31568
31767
|
var resolveComponentData = (item, config, onResolveStart, onResolveEnd) => __async(void 0, null, function* () {
|
31569
31768
|
const configForItem = config.components[item.type];
|
31570
31769
|
if (configForItem.resolveData) {
|
31571
|
-
const { item: oldItem = {}, resolved = {} } =
|
31770
|
+
const { item: oldItem = {}, resolved = {} } = cache2.lastChange[item.props.id] || {};
|
31572
31771
|
if (item && item === oldItem) {
|
31573
31772
|
return resolved;
|
31574
31773
|
}
|
@@ -31585,7 +31784,7 @@ var resolveComponentData = (item, config, onResolveStart, onResolveEnd) => __asy
|
|
31585
31784
|
if (Object.keys(newReadOnly).length) {
|
31586
31785
|
resolvedItem.readOnly = newReadOnly;
|
31587
31786
|
}
|
31588
|
-
|
31787
|
+
cache2.lastChange[item.props.id] = {
|
31589
31788
|
item,
|
31590
31789
|
resolved: resolvedItem
|
31591
31790
|
};
|
@@ -31617,20 +31816,20 @@ var applyDynamicProps = (data, dynamicProps, rootData) => {
|
|
31617
31816
|
|
31618
31817
|
// lib/resolve-root-data.ts
|
31619
31818
|
init_react_import();
|
31620
|
-
var
|
31819
|
+
var cache3 = {};
|
31621
31820
|
var resolveRootData = (data, config) => __async(void 0, null, function* () {
|
31622
31821
|
var _a, _b, _c, _d, _e;
|
31623
31822
|
if (((_a = config.root) == null ? void 0 : _a.resolveData) && data.root.props) {
|
31624
|
-
if (((_b =
|
31625
|
-
return
|
31823
|
+
if (((_b = cache3.lastChange) == null ? void 0 : _b.original) === data.root) {
|
31824
|
+
return cache3.lastChange.resolved;
|
31626
31825
|
}
|
31627
|
-
const changed = getChanged(data.root, (_c =
|
31826
|
+
const changed = getChanged(data.root, (_c = cache3.lastChange) == null ? void 0 : _c.original);
|
31628
31827
|
const rootWithProps = data.root;
|
31629
31828
|
const resolvedRoot = yield (_e = config.root) == null ? void 0 : _e.resolveData(rootWithProps, {
|
31630
31829
|
changed,
|
31631
|
-
lastData: ((_d =
|
31830
|
+
lastData: ((_d = cache3.lastChange) == null ? void 0 : _d.original) || {}
|
31632
31831
|
});
|
31633
|
-
|
31832
|
+
cache3.lastChange = {
|
31634
31833
|
original: data.root,
|
31635
31834
|
resolved: resolvedRoot
|
31636
31835
|
};
|
@@ -31643,13 +31842,13 @@ var resolveRootData = (data, config) => __async(void 0, null, function* () {
|
|
31643
31842
|
|
31644
31843
|
// lib/use-resolved-data.ts
|
31645
31844
|
var useResolvedData = (appState, config, dispatch) => {
|
31646
|
-
const [{ resolverKey, newAppState }, setResolverState] = (0,
|
31845
|
+
const [{ resolverKey, newAppState }, setResolverState] = (0, import_react20.useState)({
|
31647
31846
|
resolverKey: 0,
|
31648
31847
|
newAppState: appState
|
31649
31848
|
});
|
31650
|
-
const [componentState, setComponentState] = (0,
|
31849
|
+
const [componentState, setComponentState] = (0, import_react20.useState)({});
|
31651
31850
|
const deferredSetStates = {};
|
31652
|
-
const setComponentLoading = (0,
|
31851
|
+
const setComponentLoading = (0, import_react20.useCallback)(
|
31653
31852
|
(id, loading, defer2 = 0) => {
|
31654
31853
|
if (deferredSetStates[id]) {
|
31655
31854
|
clearTimeout(deferredSetStates[id]);
|
@@ -31719,10 +31918,10 @@ var useResolvedData = (appState, config, dispatch) => {
|
|
31719
31918
|
});
|
31720
31919
|
yield Promise.all(promises);
|
31721
31920
|
});
|
31722
|
-
(0,
|
31921
|
+
(0, import_react20.useEffect)(() => {
|
31723
31922
|
runResolvers();
|
31724
31923
|
}, [resolverKey]);
|
31725
|
-
const resolveData = (0,
|
31924
|
+
const resolveData = (0, import_react20.useCallback)((newAppState2 = appState) => {
|
31726
31925
|
setResolverState((curr) => ({
|
31727
31926
|
resolverKey: curr.resolverKey + 1,
|
31728
31927
|
newAppState: newAppState2
|
@@ -31739,11 +31938,11 @@ init_react_import();
|
|
31739
31938
|
|
31740
31939
|
// css-module:/home/runner/work/puck/puck/packages/core/components/MenuBar/styles.module.css#css-module
|
31741
31940
|
init_react_import();
|
31742
|
-
var
|
31941
|
+
var styles_module_default14 = { "MenuBar": "_MenuBar_8pf8c_1", "MenuBar--menuOpen": "_MenuBar--menuOpen_8pf8c_14", "MenuBar-inner": "_MenuBar-inner_8pf8c_29", "MenuBar-history": "_MenuBar-history_8pf8c_45" };
|
31743
31942
|
|
31744
31943
|
// components/MenuBar/index.tsx
|
31745
|
-
var
|
31746
|
-
var
|
31944
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
31945
|
+
var getClassName20 = get_class_name_factory_default("MenuBar", styles_module_default14);
|
31747
31946
|
var MenuBar = ({
|
31748
31947
|
appState,
|
31749
31948
|
data = { content: [], root: {} },
|
@@ -31757,10 +31956,10 @@ var MenuBar = ({
|
|
31757
31956
|
history: { back, forward, historyStore }
|
31758
31957
|
} = useAppContext();
|
31759
31958
|
const { hasFuture = false, hasPast = false } = historyStore || {};
|
31760
|
-
return /* @__PURE__ */ (0,
|
31959
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
31761
31960
|
"div",
|
31762
31961
|
{
|
31763
|
-
className:
|
31962
|
+
className: getClassName20({ menuOpen }),
|
31764
31963
|
onClick: (event) => {
|
31765
31964
|
var _a;
|
31766
31965
|
const element = event.target;
|
@@ -31771,12 +31970,12 @@ var MenuBar = ({
|
|
31771
31970
|
setMenuOpen(false);
|
31772
31971
|
}
|
31773
31972
|
},
|
31774
|
-
children: /* @__PURE__ */ (0,
|
31775
|
-
/* @__PURE__ */ (0,
|
31776
|
-
/* @__PURE__ */ (0,
|
31777
|
-
/* @__PURE__ */ (0,
|
31973
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: getClassName20("inner"), children: [
|
31974
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: getClassName20("history"), children: [
|
31975
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(IconButton, { title: "undo", disabled: !hasPast, onClick: back, children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Undo2, { size: 21 }) }),
|
31976
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(IconButton, { title: "redo", disabled: !hasFuture, onClick: forward, children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Redo2, { size: 21 }) })
|
31778
31977
|
] }),
|
31779
|
-
/* @__PURE__ */ (0,
|
31978
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_jsx_runtime27.Fragment, { children: renderHeaderActions && renderHeaderActions({
|
31780
31979
|
state: appState,
|
31781
31980
|
dispatch
|
31782
31981
|
}) })
|
@@ -31787,26 +31986,26 @@ var MenuBar = ({
|
|
31787
31986
|
|
31788
31987
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Puck/styles.module.css#css-module
|
31789
31988
|
init_react_import();
|
31790
|
-
var
|
31989
|
+
var styles_module_default15 = { "Puck": "_Puck_1g88c_19", "Puck-portal": "_Puck-portal_1g88c_24", "PuckLayout": "_PuckLayout_1g88c_31", "PuckLayout-inner": "_PuckLayout-inner_1g88c_39", "PuckLayout--mounted": "_PuckLayout--mounted_1g88c_51", "PuckLayout--leftSideBarVisible": "_PuckLayout--leftSideBarVisible_1g88c_55", "PuckLayout--rightSideBarVisible": "_PuckLayout--rightSideBarVisible_1g88c_61", "PuckLayout-mounted": "_PuckLayout-mounted_1g88c_75", "PuckLayout-header": "_PuckLayout-header_1g88c_116", "PuckLayout-headerInner": "_PuckLayout-headerInner_1g88c_125", "PuckLayout-headerToggle": "_PuckLayout-headerToggle_1g88c_135", "PuckLayout-rightSideBarToggle": "_PuckLayout-rightSideBarToggle_1g88c_142", "PuckLayout-leftSideBarToggle": "_PuckLayout-leftSideBarToggle_1g88c_143", "PuckLayout-headerTitle": "_PuckLayout-headerTitle_1g88c_147", "PuckLayout-headerPath": "_PuckLayout-headerPath_1g88c_151", "PuckLayout-headerTools": "_PuckLayout-headerTools_1g88c_158", "PuckLayout-menuButton": "_PuckLayout-menuButton_1g88c_164", "PuckLayout--menuOpen": "_PuckLayout--menuOpen_1g88c_169", "PuckLayout-leftSideBar": "_PuckLayout-leftSideBar_1g88c_143", "PuckLayout-rightSideBar": "_PuckLayout-rightSideBar_1g88c_142" };
|
31791
31990
|
|
31792
31991
|
// components/Puck/components/Fields/index.tsx
|
31793
31992
|
init_react_import();
|
31794
31993
|
|
31795
31994
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Puck/components/Fields/styles.module.css#css-module
|
31796
31995
|
init_react_import();
|
31797
|
-
var
|
31996
|
+
var styles_module_default16 = { "PuckFields": "_PuckFields_jp3lw_1", "PuckFields--isLoading": "_PuckFields--isLoading_jp3lw_6", "PuckFields-loadingOverlay": "_PuckFields-loadingOverlay_jp3lw_10", "PuckFields-loadingOverlayInner": "_PuckFields-loadingOverlayInner_jp3lw_25" };
|
31798
31997
|
|
31799
31998
|
// components/Puck/components/Fields/index.tsx
|
31800
|
-
var
|
31801
|
-
var
|
31802
|
-
var
|
31999
|
+
var import_react21 = require("react");
|
32000
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
32001
|
+
var getClassName21 = get_class_name_factory_default("PuckFields", styles_module_default16);
|
31803
32002
|
var defaultPageFields = {
|
31804
32003
|
title: { type: "text" }
|
31805
32004
|
};
|
31806
32005
|
var DefaultFields = ({
|
31807
32006
|
children
|
31808
32007
|
}) => {
|
31809
|
-
return /* @__PURE__ */ (0,
|
32008
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_jsx_runtime28.Fragment, { children });
|
31810
32009
|
};
|
31811
32010
|
var useResolvedFields = () => {
|
31812
32011
|
var _a;
|
@@ -31816,14 +32015,14 @@ var useResolvedFields = () => {
|
|
31816
32015
|
const componentConfig = selectedItem ? config.components[selectedItem.type] : null;
|
31817
32016
|
const defaultFields = selectedItem ? componentConfig == null ? void 0 : componentConfig.fields : rootFields;
|
31818
32017
|
const rootProps = data.root.props || data.root;
|
31819
|
-
const [lastSelectedData, setLastSelectedData] = (0,
|
32018
|
+
const [lastSelectedData, setLastSelectedData] = (0, import_react21.useState)(
|
31820
32019
|
{}
|
31821
32020
|
);
|
31822
|
-
const [resolvedFields, setResolvedFields] = (0,
|
31823
|
-
const [fieldsLoading, setFieldsLoading] = (0,
|
32021
|
+
const [resolvedFields, setResolvedFields] = (0, import_react21.useState)(defaultFields || {});
|
32022
|
+
const [fieldsLoading, setFieldsLoading] = (0, import_react21.useState)(false);
|
31824
32023
|
const defaultResolveFields = (_componentData, _params) => defaultFields;
|
31825
32024
|
const componentData = selectedItem ? selectedItem : { props: rootProps, readOnly: data.root.readOnly };
|
31826
|
-
const resolveFields = (0,
|
32025
|
+
const resolveFields = (0, import_react21.useCallback)(
|
31827
32026
|
(..._0) => __async(void 0, [..._0], function* (fields = {}) {
|
31828
32027
|
var _a2, _b, _c;
|
31829
32028
|
const lastData = ((_a2 = lastSelectedData.props) == null ? void 0 : _a2.id) === componentData.props.id ? lastSelectedData : {};
|
@@ -31859,7 +32058,7 @@ var useResolvedFields = () => {
|
|
31859
32058
|
}),
|
31860
32059
|
[data, config, componentData, selectedItem, resolvedFields, state]
|
31861
32060
|
);
|
31862
|
-
(0,
|
32061
|
+
(0, import_react21.useEffect)(() => {
|
31863
32062
|
setFieldsLoading(true);
|
31864
32063
|
resolveFields(defaultFields).then((fields) => {
|
31865
32064
|
setResolvedFields(fields || {});
|
@@ -31877,7 +32076,8 @@ var Fields = () => {
|
|
31877
32076
|
config,
|
31878
32077
|
resolveData,
|
31879
32078
|
componentState,
|
31880
|
-
overrides
|
32079
|
+
overrides,
|
32080
|
+
globalPermissions
|
31881
32081
|
} = useAppContext();
|
31882
32082
|
const { data, ui } = state;
|
31883
32083
|
const { itemSelector } = ui;
|
@@ -31885,16 +32085,16 @@ var Fields = () => {
|
|
31885
32085
|
const componentResolving = selectedItem ? (_a = componentState[selectedItem == null ? void 0 : selectedItem.props.id]) == null ? void 0 : _a.loading : (_b = componentState["puck-root"]) == null ? void 0 : _b.loading;
|
31886
32086
|
const isLoading = fieldsResolving || componentResolving;
|
31887
32087
|
const rootProps = data.root.props || data.root;
|
31888
|
-
const Wrapper = (0,
|
31889
|
-
return /* @__PURE__ */ (0,
|
32088
|
+
const Wrapper = (0, import_react21.useMemo)(() => overrides.fields || DefaultFields, [overrides]);
|
32089
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
|
31890
32090
|
"form",
|
31891
32091
|
{
|
31892
|
-
className:
|
32092
|
+
className: getClassName21(),
|
31893
32093
|
onSubmit: (e) => {
|
31894
32094
|
e.preventDefault();
|
31895
32095
|
},
|
31896
32096
|
children: [
|
31897
|
-
/* @__PURE__ */ (0,
|
32097
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Wrapper, { isLoading, itemSelector, children: Object.keys(fields).map((fieldName) => {
|
31898
32098
|
const field = fields[fieldName];
|
31899
32099
|
if (!(field == null ? void 0 : field.type)) return null;
|
31900
32100
|
const onChange = (value, updatedUi) => {
|
@@ -31961,13 +32161,19 @@ var Fields = () => {
|
|
31961
32161
|
};
|
31962
32162
|
if (selectedItem && itemSelector) {
|
31963
32163
|
const { readOnly = {} } = selectedItem;
|
31964
|
-
|
32164
|
+
const { edit } = getPermissions({
|
32165
|
+
selectedItem,
|
32166
|
+
config,
|
32167
|
+
globalPermissions: globalPermissions || {},
|
32168
|
+
appState: state
|
32169
|
+
});
|
32170
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
31965
32171
|
AutoFieldPrivate,
|
31966
32172
|
{
|
31967
32173
|
field,
|
31968
32174
|
name: fieldName,
|
31969
32175
|
id: `${selectedItem.props.id}_${fieldName}`,
|
31970
|
-
readOnly: readOnly[fieldName],
|
32176
|
+
readOnly: !edit || readOnly[fieldName],
|
31971
32177
|
value: selectedItem.props[fieldName],
|
31972
32178
|
onChange
|
31973
32179
|
},
|
@@ -31975,7 +32181,7 @@ var Fields = () => {
|
|
31975
32181
|
);
|
31976
32182
|
} else {
|
31977
32183
|
const { readOnly = {} } = data.root;
|
31978
|
-
return /* @__PURE__ */ (0,
|
32184
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
31979
32185
|
AutoFieldPrivate,
|
31980
32186
|
{
|
31981
32187
|
field,
|
@@ -31989,7 +32195,7 @@ var Fields = () => {
|
|
31989
32195
|
);
|
31990
32196
|
}
|
31991
32197
|
}) }),
|
31992
|
-
isLoading && /* @__PURE__ */ (0,
|
32198
|
+
isLoading && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: getClassName21("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: getClassName21("loadingOverlayInner"), children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Loader, { size: 16 }) }) })
|
31993
32199
|
]
|
31994
32200
|
}
|
31995
32201
|
);
|
@@ -32000,25 +32206,40 @@ init_react_import();
|
|
32000
32206
|
|
32001
32207
|
// lib/use-component-list.tsx
|
32002
32208
|
init_react_import();
|
32003
|
-
var
|
32209
|
+
var import_react22 = require("react");
|
32004
32210
|
|
32005
32211
|
// components/ComponentList/index.tsx
|
32006
32212
|
init_react_import();
|
32007
32213
|
|
32008
32214
|
// css-module:/home/runner/work/puck/puck/packages/core/components/ComponentList/styles.module.css#css-module
|
32009
32215
|
init_react_import();
|
32010
|
-
var
|
32216
|
+
var styles_module_default17 = { "ComponentList": "_ComponentList_odh9d_1", "ComponentList--isExpanded": "_ComponentList--isExpanded_odh9d_5", "ComponentList-content": "_ComponentList-content_odh9d_9", "ComponentList-title": "_ComponentList-title_odh9d_17", "ComponentList-titleIcon": "_ComponentList-titleIcon_odh9d_53" };
|
32011
32217
|
|
32012
32218
|
// components/ComponentList/index.tsx
|
32013
|
-
var
|
32014
|
-
var
|
32219
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
32220
|
+
var getClassName22 = get_class_name_factory_default("ComponentList", styles_module_default17);
|
32015
32221
|
var ComponentListItem = ({
|
32016
32222
|
name,
|
32017
32223
|
label,
|
32018
32224
|
index
|
32019
32225
|
}) => {
|
32020
|
-
const { overrides } = useAppContext();
|
32021
|
-
|
32226
|
+
const { overrides, config, globalPermissions, state } = useAppContext();
|
32227
|
+
const canInsert = getPermissions({
|
32228
|
+
type: name,
|
32229
|
+
config,
|
32230
|
+
globalPermissions: globalPermissions || {},
|
32231
|
+
appState: state
|
32232
|
+
}).insert;
|
32233
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
32234
|
+
Drawer.Item,
|
32235
|
+
{
|
32236
|
+
label,
|
32237
|
+
name,
|
32238
|
+
index,
|
32239
|
+
isDragDisabled: !canInsert,
|
32240
|
+
children: overrides.componentItem
|
32241
|
+
}
|
32242
|
+
);
|
32022
32243
|
};
|
32023
32244
|
var ComponentList = ({
|
32024
32245
|
children,
|
@@ -32027,11 +32248,11 @@ var ComponentList = ({
|
|
32027
32248
|
}) => {
|
32028
32249
|
const { config, state, setUi } = useAppContext();
|
32029
32250
|
const { expanded = true } = state.ui.componentList[id] || {};
|
32030
|
-
return /* @__PURE__ */ (0,
|
32031
|
-
title && /* @__PURE__ */ (0,
|
32251
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: getClassName22({ isExpanded: expanded }), children: [
|
32252
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
|
32032
32253
|
"button",
|
32033
32254
|
{
|
32034
|
-
className:
|
32255
|
+
className: getClassName22("title"),
|
32035
32256
|
onClick: () => setUi({
|
32036
32257
|
componentList: __spreadProps(__spreadValues({}, state.ui.componentList), {
|
32037
32258
|
[id]: __spreadProps(__spreadValues({}, state.ui.componentList[id]), {
|
@@ -32041,14 +32262,14 @@ var ComponentList = ({
|
|
32041
32262
|
}),
|
32042
32263
|
title: expanded ? `Collapse${title ? ` ${title}` : ""}` : `Expand${title ? ` ${title}` : ""}`,
|
32043
32264
|
children: [
|
32044
|
-
/* @__PURE__ */ (0,
|
32045
|
-
/* @__PURE__ */ (0,
|
32265
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { children: title }),
|
32266
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: getClassName22("titleIcon"), children: expanded ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(ChevronUp, { size: 12 }) : /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(ChevronDown, { size: 12 }) })
|
32046
32267
|
]
|
32047
32268
|
}
|
32048
32269
|
),
|
32049
|
-
/* @__PURE__ */ (0,
|
32270
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: getClassName22("content"), children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Drawer, { droppableId: title, children: children || Object.keys(config.components).map((componentKey, i) => {
|
32050
32271
|
var _a;
|
32051
|
-
return /* @__PURE__ */ (0,
|
32272
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
32052
32273
|
ComponentListItem,
|
32053
32274
|
{
|
32054
32275
|
label: (_a = config.components[componentKey]["label"]) != null ? _a : componentKey,
|
@@ -32063,10 +32284,10 @@ var ComponentList = ({
|
|
32063
32284
|
ComponentList.Item = ComponentListItem;
|
32064
32285
|
|
32065
32286
|
// lib/use-component-list.tsx
|
32066
|
-
var
|
32287
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
32067
32288
|
var useComponentList = (config, ui) => {
|
32068
|
-
const [componentList, setComponentList] = (0,
|
32069
|
-
(0,
|
32289
|
+
const [componentList, setComponentList] = (0, import_react22.useState)();
|
32290
|
+
(0, import_react22.useEffect)(() => {
|
32070
32291
|
var _a, _b, _c;
|
32071
32292
|
if (Object.keys(ui.componentList).length > 0) {
|
32072
32293
|
const matchedComponents = [];
|
@@ -32076,7 +32297,7 @@ var useComponentList = (config, ui) => {
|
|
32076
32297
|
if (category.visible === false || !category.components) {
|
32077
32298
|
return null;
|
32078
32299
|
}
|
32079
|
-
return /* @__PURE__ */ (0,
|
32300
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
32080
32301
|
ComponentList,
|
32081
32302
|
{
|
32082
32303
|
id: categoryKey,
|
@@ -32085,7 +32306,7 @@ var useComponentList = (config, ui) => {
|
|
32085
32306
|
var _a2;
|
32086
32307
|
matchedComponents.push(componentName);
|
32087
32308
|
const componentConf = config.components[componentName] || {};
|
32088
|
-
return /* @__PURE__ */ (0,
|
32309
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
32089
32310
|
ComponentList.Item,
|
32090
32311
|
{
|
32091
32312
|
label: (_a2 = componentConf["label"]) != null ? _a2 : componentName,
|
@@ -32105,7 +32326,7 @@ var useComponentList = (config, ui) => {
|
|
32105
32326
|
);
|
32106
32327
|
if (remainingComponents.length > 0 && !((_a = ui.componentList.other) == null ? void 0 : _a.components) && ((_b = ui.componentList.other) == null ? void 0 : _b.visible) !== false) {
|
32107
32328
|
_componentList.push(
|
32108
|
-
/* @__PURE__ */ (0,
|
32329
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
32109
32330
|
ComponentList,
|
32110
32331
|
{
|
32111
32332
|
id: "other",
|
@@ -32113,7 +32334,7 @@ var useComponentList = (config, ui) => {
|
|
32113
32334
|
children: remainingComponents.map((componentName, i) => {
|
32114
32335
|
var _a2;
|
32115
32336
|
const componentConf = config.components[componentName] || {};
|
32116
|
-
return /* @__PURE__ */ (0,
|
32337
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
32117
32338
|
ComponentList.Item,
|
32118
32339
|
{
|
32119
32340
|
name: componentName,
|
@@ -32135,25 +32356,25 @@ var useComponentList = (config, ui) => {
|
|
32135
32356
|
};
|
32136
32357
|
|
32137
32358
|
// components/Puck/components/Components/index.tsx
|
32138
|
-
var
|
32139
|
-
var
|
32359
|
+
var import_react23 = require("react");
|
32360
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
32140
32361
|
var Components = () => {
|
32141
32362
|
const { config, state, overrides } = useAppContext();
|
32142
32363
|
const componentList = useComponentList(config, state.ui);
|
32143
|
-
const Wrapper = (0,
|
32144
|
-
return /* @__PURE__ */ (0,
|
32364
|
+
const Wrapper = (0, import_react23.useMemo)(() => overrides.components || "div", [overrides]);
|
32365
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Wrapper, { children: componentList ? componentList : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(ComponentList, { id: "all" }) });
|
32145
32366
|
};
|
32146
32367
|
|
32147
32368
|
// components/Puck/components/Preview/index.tsx
|
32148
32369
|
init_react_import();
|
32149
|
-
var
|
32370
|
+
var import_react25 = require("react");
|
32150
32371
|
|
32151
32372
|
// components/AutoFrame/index.tsx
|
32152
32373
|
init_react_import();
|
32153
|
-
var
|
32374
|
+
var import_react24 = __toESM(require("react"));
|
32154
32375
|
var import_react_frame_component = __toESM(require("react-frame-component"));
|
32155
32376
|
var import_object_hash = __toESM(require("object-hash"));
|
32156
|
-
var
|
32377
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
32157
32378
|
var styleSelector = 'style, link[rel="stylesheet"]';
|
32158
32379
|
var collectStyles = (doc) => {
|
32159
32380
|
const collected = [];
|
@@ -32196,7 +32417,7 @@ var CopyHostStyles = ({
|
|
32196
32417
|
onStylesLoaded = () => null
|
32197
32418
|
}) => {
|
32198
32419
|
const { document: doc, window: win } = (0, import_react_frame_component.useFrame)();
|
32199
|
-
(0,
|
32420
|
+
(0, import_react24.useEffect)(() => {
|
32200
32421
|
if (!win || !doc) {
|
32201
32422
|
return () => {
|
32202
32423
|
};
|
@@ -32353,12 +32574,12 @@ var CopyHostStyles = ({
|
|
32353
32574
|
observer.disconnect();
|
32354
32575
|
};
|
32355
32576
|
}, []);
|
32356
|
-
return /* @__PURE__ */ (0,
|
32577
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_jsx_runtime32.Fragment, { children });
|
32357
32578
|
};
|
32358
|
-
var AutoFrameComponent =
|
32579
|
+
var AutoFrameComponent = import_react24.default.forwardRef(
|
32359
32580
|
function(_a, ref) {
|
32360
32581
|
var _b = _a, { children, debug, onStylesLoaded } = _b, props = __objRest(_b, ["children", "debug", "onStylesLoaded"]);
|
32361
|
-
return /* @__PURE__ */ (0,
|
32582
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react_frame_component.default, __spreadProps(__spreadValues({}, props), { ref, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(CopyHostStyles, { debug, onStylesLoaded, children }) }));
|
32362
32583
|
}
|
32363
32584
|
);
|
32364
32585
|
AutoFrameComponent.displayName = "AutoFrameComponent";
|
@@ -32366,14 +32587,15 @@ var AutoFrame_default = AutoFrameComponent;
|
|
32366
32587
|
|
32367
32588
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Puck/components/Preview/styles.module.css#css-module
|
32368
32589
|
init_react_import();
|
32369
|
-
var
|
32590
|
+
var styles_module_default18 = { "PuckPreview": "_PuckPreview_rxwlr_1", "PuckPreview-frame": "_PuckPreview-frame_rxwlr_5" };
|
32370
32591
|
|
32371
32592
|
// components/Puck/components/Preview/index.tsx
|
32372
|
-
var
|
32373
|
-
var
|
32593
|
+
var import_react_frame_component2 = require("react-frame-component");
|
32594
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
32595
|
+
var getClassName23 = get_class_name_factory_default("PuckPreview", styles_module_default18);
|
32374
32596
|
var Preview = ({ id = "puck-preview" }) => {
|
32375
|
-
const { config, dispatch, state, setStatus, iframe } = useAppContext();
|
32376
|
-
const Page = (0,
|
32597
|
+
const { config, dispatch, state, setStatus, iframe, overrides } = useAppContext();
|
32598
|
+
const Page = (0, import_react25.useCallback)(
|
32377
32599
|
(pageProps) => {
|
32378
32600
|
var _a, _b;
|
32379
32601
|
return ((_a = config.root) == null ? void 0 : _a.render) ? (_b = config.root) == null ? void 0 : _b.render(__spreadProps(__spreadValues({
|
@@ -32382,33 +32604,36 @@ var Preview = ({ id = "puck-preview" }) => {
|
|
32382
32604
|
editMode: true,
|
32383
32605
|
// DEPRECATED
|
32384
32606
|
puck: { renderDropZone: DropZone, isEditing: true }
|
32385
|
-
})) : /* @__PURE__ */ (0,
|
32607
|
+
})) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_jsx_runtime33.Fragment, { children: pageProps.children });
|
32386
32608
|
},
|
32387
32609
|
[config.root]
|
32388
32610
|
);
|
32611
|
+
const Frame2 = (0, import_react25.useMemo)(() => overrides.iframe || "div", [overrides]);
|
32389
32612
|
const rootProps = state.data.root.props || state.data.root;
|
32390
|
-
const ref = (0,
|
32391
|
-
return /* @__PURE__ */ (0,
|
32613
|
+
const ref = (0, import_react25.useRef)(null);
|
32614
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
32392
32615
|
"div",
|
32393
32616
|
{
|
32394
|
-
className:
|
32617
|
+
className: getClassName23(),
|
32395
32618
|
id,
|
32396
32619
|
onClick: () => {
|
32397
32620
|
dispatch({ type: "setUi", ui: __spreadProps(__spreadValues({}, state.ui), { itemSelector: null }) });
|
32398
32621
|
},
|
32399
|
-
children: iframe.enabled ? /* @__PURE__ */ (0,
|
32622
|
+
children: iframe.enabled ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
32400
32623
|
AutoFrame_default,
|
32401
32624
|
{
|
32402
32625
|
id: "preview-frame",
|
32403
|
-
className:
|
32626
|
+
className: getClassName23("frame"),
|
32404
32627
|
"data-rfd-iframe": true,
|
32405
32628
|
ref,
|
32406
32629
|
onStylesLoaded: () => {
|
32407
32630
|
setStatus("READY");
|
32408
32631
|
},
|
32409
|
-
children: /* @__PURE__ */ (0,
|
32632
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react_frame_component2.FrameContextConsumer, { children: ({ document: document2 }) => {
|
32633
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Frame2, { document: document2, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Page, __spreadProps(__spreadValues({ dispatch, state }, rootProps), { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(DropZone, { zone: rootDroppableId }) })) });
|
32634
|
+
} })
|
32410
32635
|
}
|
32411
|
-
) : /* @__PURE__ */ (0,
|
32636
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { id: "preview-frame", className: getClassName23("frame"), children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Page, __spreadProps(__spreadValues({ dispatch, state }, rootProps), { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(DropZone, { zone: rootDroppableId }) })) })
|
32412
32637
|
}
|
32413
32638
|
);
|
32414
32639
|
};
|
@@ -32442,7 +32667,7 @@ init_react_import();
|
|
32442
32667
|
|
32443
32668
|
// css-module:/home/runner/work/puck/puck/packages/core/components/LayerTree/styles.module.css#css-module
|
32444
32669
|
init_react_import();
|
32445
|
-
var
|
32670
|
+
var styles_module_default19 = { "LayerTree": "_LayerTree_1pgw8_1", "LayerTree-zoneTitle": "_LayerTree-zoneTitle_1pgw8_11", "LayerTree-helper": "_LayerTree-helper_1pgw8_17", "Layer": "_Layer_1pgw8_1", "Layer-inner": "_Layer-inner_1pgw8_29", "Layer--containsZone": "_Layer--containsZone_1pgw8_35", "Layer-clickable": "_Layer-clickable_1pgw8_39", "Layer--isSelected": "_Layer--isSelected_1pgw8_61", "Layer-chevron": "_Layer-chevron_1pgw8_77", "Layer--childIsSelected": "_Layer--childIsSelected_1pgw8_78", "Layer-zones": "_Layer-zones_1pgw8_82", "Layer-title": "_Layer-title_1pgw8_96", "Layer-name": "_Layer-name_1pgw8_105", "Layer-icon": "_Layer-icon_1pgw8_111", "Layer-zoneIcon": "_Layer-zoneIcon_1pgw8_116" };
|
32446
32671
|
|
32447
32672
|
// lib/scroll-into-view.ts
|
32448
32673
|
init_react_import();
|
@@ -32456,7 +32681,7 @@ var scrollIntoView = (el) => {
|
|
32456
32681
|
};
|
32457
32682
|
|
32458
32683
|
// components/LayerTree/index.tsx
|
32459
|
-
var
|
32684
|
+
var import_react26 = require("react");
|
32460
32685
|
|
32461
32686
|
// lib/is-child-of-zone.ts
|
32462
32687
|
init_react_import();
|
@@ -32470,9 +32695,9 @@ var isChildOfZone = (item, maybeChild, ctx) => {
|
|
32470
32695
|
};
|
32471
32696
|
|
32472
32697
|
// components/LayerTree/index.tsx
|
32473
|
-
var
|
32474
|
-
var
|
32475
|
-
var getClassNameLayer = get_class_name_factory_default("Layer",
|
32698
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
32699
|
+
var getClassName24 = get_class_name_factory_default("LayerTree", styles_module_default19);
|
32700
|
+
var getClassNameLayer = get_class_name_factory_default("Layer", styles_module_default19);
|
32476
32701
|
var LayerTree = ({
|
32477
32702
|
data,
|
32478
32703
|
config,
|
@@ -32483,15 +32708,15 @@ var LayerTree = ({
|
|
32483
32708
|
label
|
32484
32709
|
}) => {
|
32485
32710
|
const zones = data.zones || {};
|
32486
|
-
const ctx = (0,
|
32487
|
-
return /* @__PURE__ */ (0,
|
32488
|
-
label && /* @__PURE__ */ (0,
|
32489
|
-
/* @__PURE__ */ (0,
|
32711
|
+
const ctx = (0, import_react26.useContext)(dropZoneContext);
|
32712
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [
|
32713
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassName24("zoneTitle"), children: [
|
32714
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("zoneIcon"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Layers, { size: "16" }) }),
|
32490
32715
|
" ",
|
32491
32716
|
label
|
32492
32717
|
] }),
|
32493
|
-
/* @__PURE__ */ (0,
|
32494
|
-
zoneContent.length === 0 && /* @__PURE__ */ (0,
|
32718
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("ul", { className: getClassName24(), children: [
|
32719
|
+
zoneContent.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassName24("helper"), children: "No items" }),
|
32495
32720
|
zoneContent.map((item, i) => {
|
32496
32721
|
var _a;
|
32497
32722
|
const isSelected = (itemSelector == null ? void 0 : itemSelector.index) === i && (itemSelector.zone === zone || itemSelector.zone === rootDroppableId && !zone);
|
@@ -32509,7 +32734,7 @@ var LayerTree = ({
|
|
32509
32734
|
const childIsSelected = isChildOfZone(item, selectedItem, ctx);
|
32510
32735
|
const componentConfig = config.components[item.type];
|
32511
32736
|
const label2 = (_a = componentConfig == null ? void 0 : componentConfig["label"]) != null ? _a : item.type.toString();
|
32512
|
-
return /* @__PURE__ */ (0,
|
32737
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
|
32513
32738
|
"li",
|
32514
32739
|
{
|
32515
32740
|
className: getClassNameLayer({
|
@@ -32519,7 +32744,7 @@ var LayerTree = ({
|
|
32519
32744
|
childIsSelected
|
32520
32745
|
}),
|
32521
32746
|
children: [
|
32522
|
-
/* @__PURE__ */ (0,
|
32747
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("inner"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
|
32523
32748
|
"button",
|
32524
32749
|
{
|
32525
32750
|
className: getClassNameLayer("clickable"),
|
@@ -32551,22 +32776,22 @@ var LayerTree = ({
|
|
32551
32776
|
setHoveringComponent(null);
|
32552
32777
|
},
|
32553
32778
|
children: [
|
32554
|
-
containsZone && /* @__PURE__ */ (0,
|
32779
|
+
containsZone && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
32555
32780
|
"div",
|
32556
32781
|
{
|
32557
32782
|
className: getClassNameLayer("chevron"),
|
32558
32783
|
title: isSelected ? "Collapse" : "Expand",
|
32559
|
-
children: /* @__PURE__ */ (0,
|
32784
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronDown, { size: "12" })
|
32560
32785
|
}
|
32561
32786
|
),
|
32562
|
-
/* @__PURE__ */ (0,
|
32563
|
-
/* @__PURE__ */ (0,
|
32564
|
-
/* @__PURE__ */ (0,
|
32787
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: getClassNameLayer("title"), children: [
|
32788
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("icon"), children: item.type === "Text" || item.type === "Heading" ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Type, { size: "16" }) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(LayoutGrid, { size: "16" }) }),
|
32789
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("name"), children: label2 })
|
32565
32790
|
] })
|
32566
32791
|
]
|
32567
32792
|
}
|
32568
32793
|
) }),
|
32569
|
-
containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0,
|
32794
|
+
containsZone && Object.keys(zonesForItem).map((zoneKey, idx) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: getClassNameLayer("zones"), children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
32570
32795
|
LayerTree,
|
32571
32796
|
{
|
32572
32797
|
config,
|
@@ -32588,13 +32813,13 @@ var LayerTree = ({
|
|
32588
32813
|
};
|
32589
32814
|
|
32590
32815
|
// components/Puck/components/Outline/index.tsx
|
32591
|
-
var
|
32592
|
-
var
|
32816
|
+
var import_react27 = require("react");
|
32817
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
32593
32818
|
var Outline = () => {
|
32594
32819
|
const { dispatch, state, overrides, config } = useAppContext();
|
32595
32820
|
const { data, ui } = state;
|
32596
32821
|
const { itemSelector } = ui;
|
32597
|
-
const setItemSelector = (0,
|
32822
|
+
const setItemSelector = (0, import_react27.useCallback)(
|
32598
32823
|
(newItemSelector) => {
|
32599
32824
|
dispatch({
|
32600
32825
|
type: "setUi",
|
@@ -32603,9 +32828,9 @@ var Outline = () => {
|
|
32603
32828
|
},
|
32604
32829
|
[]
|
32605
32830
|
);
|
32606
|
-
const Wrapper = (0,
|
32607
|
-
return /* @__PURE__ */ (0,
|
32608
|
-
(ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0,
|
32831
|
+
const Wrapper = (0, import_react27.useMemo)(() => overrides.outline || "div", [overrides]);
|
32832
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Wrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(dropZoneContext.Consumer, { children: (ctx) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(import_jsx_runtime35.Fragment, { children: [
|
32833
|
+
(ctx == null ? void 0 : ctx.activeZones) && (ctx == null ? void 0 : ctx.activeZones[rootDroppableId]) && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
32609
32834
|
LayerTree,
|
32610
32835
|
{
|
32611
32836
|
config,
|
@@ -32618,7 +32843,7 @@ var Outline = () => {
|
|
32618
32843
|
),
|
32619
32844
|
Object.entries(findZonesForArea(data, "root")).map(
|
32620
32845
|
([zoneKey, zone]) => {
|
32621
|
-
return /* @__PURE__ */ (0,
|
32846
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
32622
32847
|
LayerTree,
|
32623
32848
|
{
|
32624
32849
|
config,
|
@@ -32636,37 +32861,6 @@ var Outline = () => {
|
|
32636
32861
|
] }) }) });
|
32637
32862
|
};
|
32638
32863
|
|
32639
|
-
// lib/load-overrides.ts
|
32640
|
-
init_react_import();
|
32641
|
-
var loadOverrides = ({
|
32642
|
-
overrides,
|
32643
|
-
plugins
|
32644
|
-
}) => {
|
32645
|
-
const collected = __spreadValues({}, overrides);
|
32646
|
-
plugins.forEach((plugin) => {
|
32647
|
-
Object.keys(plugin.overrides).forEach((overridesType) => {
|
32648
|
-
if (overridesType === "fieldTypes") {
|
32649
|
-
const fieldTypes = plugin.overrides.fieldTypes;
|
32650
|
-
Object.keys(fieldTypes).forEach((fieldType) => {
|
32651
|
-
collected.fieldTypes = collected.fieldTypes || {};
|
32652
|
-
const childNode2 = collected.fieldTypes[fieldType];
|
32653
|
-
const Comp2 = (props) => fieldTypes[fieldType](__spreadProps(__spreadValues({}, props), {
|
32654
|
-
children: childNode2 ? childNode2(props) : props.children
|
32655
|
-
}));
|
32656
|
-
collected.fieldTypes[fieldType] = Comp2;
|
32657
|
-
});
|
32658
|
-
return;
|
32659
|
-
}
|
32660
|
-
const childNode = collected[overridesType];
|
32661
|
-
const Comp = (props) => plugin.overrides[overridesType](__spreadProps(__spreadValues({}, props), {
|
32662
|
-
children: childNode ? childNode(props) : props.children
|
32663
|
-
}));
|
32664
|
-
collected[overridesType] = Comp;
|
32665
|
-
});
|
32666
|
-
});
|
32667
|
-
return collected;
|
32668
|
-
};
|
32669
|
-
|
32670
32864
|
// lib/use-puck-history.ts
|
32671
32865
|
init_react_import();
|
32672
32866
|
var import_react_hotkeys_hook = require("react-hotkeys-hook");
|
@@ -32723,19 +32917,19 @@ function usePuckHistory({
|
|
32723
32917
|
|
32724
32918
|
// lib/use-history-store.ts
|
32725
32919
|
init_react_import();
|
32726
|
-
var
|
32920
|
+
var import_react28 = require("react");
|
32727
32921
|
var import_use_debounce3 = require("use-debounce");
|
32728
32922
|
var EMPTY_HISTORY_INDEX = -1;
|
32729
32923
|
function useHistoryStore(initialHistory) {
|
32730
32924
|
var _a, _b;
|
32731
|
-
const [histories, setHistories] = (0,
|
32925
|
+
const [histories, setHistories] = (0, import_react28.useState)(
|
32732
32926
|
(_a = initialHistory == null ? void 0 : initialHistory.histories) != null ? _a : []
|
32733
32927
|
);
|
32734
32928
|
const updateHistories = (histories2) => {
|
32735
32929
|
setHistories(histories2);
|
32736
32930
|
setIndex(histories2.length - 1);
|
32737
32931
|
};
|
32738
|
-
const [index, setIndex] = (0,
|
32932
|
+
const [index, setIndex] = (0, import_react28.useState)(
|
32739
32933
|
(_b = initialHistory == null ? void 0 : initialHistory.index) != null ? _b : EMPTY_HISTORY_INDEX
|
32740
32934
|
);
|
32741
32935
|
const hasPast = index > EMPTY_HISTORY_INDEX;
|
@@ -32895,25 +33089,25 @@ var getBox = function getBox2(el) {
|
|
32895
33089
|
};
|
32896
33090
|
|
32897
33091
|
// components/Puck/components/Canvas/index.tsx
|
32898
|
-
var
|
33092
|
+
var import_react30 = require("react");
|
32899
33093
|
|
32900
33094
|
// components/ViewportControls/index.tsx
|
32901
33095
|
init_react_import();
|
32902
|
-
var
|
33096
|
+
var import_react29 = require("react");
|
32903
33097
|
|
32904
33098
|
// css-module:/home/runner/work/puck/puck/packages/core/components/ViewportControls/styles.module.css#css-module
|
32905
33099
|
init_react_import();
|
32906
|
-
var
|
33100
|
+
var styles_module_default20 = { "ViewportControls": "_ViewportControls_g1wgg_1", "ViewportControls-divider": "_ViewportControls-divider_g1wgg_15", "ViewportControls-zoomSelect": "_ViewportControls-zoomSelect_g1wgg_21", "ViewportButton--isActive": "_ViewportButton--isActive_g1wgg_34", "ViewportButton-inner": "_ViewportButton-inner_g1wgg_34" };
|
32907
33101
|
|
32908
33102
|
// components/ViewportControls/index.tsx
|
32909
|
-
var
|
33103
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
32910
33104
|
var icons = {
|
32911
|
-
Smartphone: /* @__PURE__ */ (0,
|
32912
|
-
Tablet: /* @__PURE__ */ (0,
|
32913
|
-
Monitor: /* @__PURE__ */ (0,
|
33105
|
+
Smartphone: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Smartphone, { size: 16 }),
|
33106
|
+
Tablet: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Tablet, { size: 16 }),
|
33107
|
+
Monitor: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Monitor, { size: 16 })
|
32914
33108
|
};
|
32915
|
-
var
|
32916
|
-
var getClassNameButton = get_class_name_factory_default("ViewportButton",
|
33109
|
+
var getClassName25 = get_class_name_factory_default("ViewportControls", styles_module_default20);
|
33110
|
+
var getClassNameButton = get_class_name_factory_default("ViewportButton", styles_module_default20);
|
32917
33111
|
var ViewportButton = ({
|
32918
33112
|
children,
|
32919
33113
|
height = "auto",
|
@@ -32922,11 +33116,11 @@ var ViewportButton = ({
|
|
32922
33116
|
onClick
|
32923
33117
|
}) => {
|
32924
33118
|
const { state } = useAppContext();
|
32925
|
-
const [isActive, setIsActive] = (0,
|
32926
|
-
(0,
|
33119
|
+
const [isActive, setIsActive] = (0, import_react29.useState)(false);
|
33120
|
+
(0, import_react29.useEffect)(() => {
|
32927
33121
|
setIsActive(width === state.ui.viewports.current.width);
|
32928
33122
|
}, [width, state.ui.viewports.current.width]);
|
32929
|
-
return /* @__PURE__ */ (0,
|
33123
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: getClassNameButton({ isActive }), children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
32930
33124
|
IconButton,
|
32931
33125
|
{
|
32932
33126
|
title,
|
@@ -32935,7 +33129,7 @@ var ViewportButton = ({
|
|
32935
33129
|
e.stopPropagation();
|
32936
33130
|
onClick({ width, height });
|
32937
33131
|
},
|
32938
|
-
children: /* @__PURE__ */ (0,
|
33132
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: getClassNameButton("inner"), children })
|
32939
33133
|
}
|
32940
33134
|
) });
|
32941
33135
|
};
|
@@ -32959,7 +33153,7 @@ var ViewportControls = ({
|
|
32959
33153
|
const defaultsContainAutoZoom = defaultZoomOptions.find(
|
32960
33154
|
(option) => option.value === autoZoom
|
32961
33155
|
);
|
32962
|
-
const zoomOptions = (0,
|
33156
|
+
const zoomOptions = (0, import_react29.useMemo)(
|
32963
33157
|
() => [
|
32964
33158
|
...defaultZoomOptions,
|
32965
33159
|
...defaultsContainAutoZoom ? [] : [
|
@@ -32971,8 +33165,8 @@ var ViewportControls = ({
|
|
32971
33165
|
].filter((a) => a.value <= autoZoom).sort((a, b) => a.value > b.value ? 1 : -1),
|
32972
33166
|
[autoZoom]
|
32973
33167
|
);
|
32974
|
-
return /* @__PURE__ */ (0,
|
32975
|
-
viewports.map((viewport, i) => /* @__PURE__ */ (0,
|
33168
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: getClassName25(), children: [
|
33169
|
+
viewports.map((viewport, i) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
32976
33170
|
ViewportButton,
|
32977
33171
|
{
|
32978
33172
|
height: viewport.height,
|
@@ -32983,8 +33177,8 @@ var ViewportControls = ({
|
|
32983
33177
|
},
|
32984
33178
|
i
|
32985
33179
|
)),
|
32986
|
-
/* @__PURE__ */ (0,
|
32987
|
-
/* @__PURE__ */ (0,
|
33180
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName25("divider") }),
|
33181
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
32988
33182
|
IconButton,
|
32989
33183
|
{
|
32990
33184
|
title: "Zoom viewport out",
|
@@ -32998,10 +33192,10 @@ var ViewportControls = ({
|
|
32998
33192
|
)].value
|
32999
33193
|
);
|
33000
33194
|
},
|
33001
|
-
children: /* @__PURE__ */ (0,
|
33195
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(ZoomOut, { size: 16 })
|
33002
33196
|
}
|
33003
33197
|
),
|
33004
|
-
/* @__PURE__ */ (0,
|
33198
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
33005
33199
|
IconButton,
|
33006
33200
|
{
|
33007
33201
|
title: "Zoom viewport in",
|
@@ -33015,19 +33209,19 @@ var ViewportControls = ({
|
|
33015
33209
|
)].value
|
33016
33210
|
);
|
33017
33211
|
},
|
33018
|
-
children: /* @__PURE__ */ (0,
|
33212
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(ZoomIn, { size: 16 })
|
33019
33213
|
}
|
33020
33214
|
),
|
33021
|
-
/* @__PURE__ */ (0,
|
33022
|
-
/* @__PURE__ */ (0,
|
33215
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: getClassName25("divider") }),
|
33216
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
33023
33217
|
"select",
|
33024
33218
|
{
|
33025
|
-
className:
|
33219
|
+
className: getClassName25("zoomSelect"),
|
33026
33220
|
value: zoom.toString(),
|
33027
33221
|
onChange: (e) => {
|
33028
33222
|
onZoom(parseFloat(e.currentTarget.value));
|
33029
33223
|
},
|
33030
|
-
children: zoomOptions.map((option) => /* @__PURE__ */ (0,
|
33224
|
+
children: zoomOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
33031
33225
|
"option",
|
33032
33226
|
{
|
33033
33227
|
value: option.value,
|
@@ -33042,7 +33236,7 @@ var ViewportControls = ({
|
|
33042
33236
|
|
33043
33237
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Puck/components/Canvas/styles.module.css#css-module
|
33044
33238
|
init_react_import();
|
33045
|
-
var
|
33239
|
+
var styles_module_default21 = { "PuckCanvas": "_PuckCanvas_6zd4y_1", "PuckCanvas-controls": "_PuckCanvas-controls_6zd4y_16", "PuckCanvas-inner": "_PuckCanvas-inner_6zd4y_21", "PuckCanvas-root": "_PuckCanvas-root_6zd4y_32", "PuckCanvas--ready": "_PuckCanvas--ready_6zd4y_56" };
|
33046
33240
|
|
33047
33241
|
// lib/get-zoom-config.ts
|
33048
33242
|
init_react_import();
|
@@ -33075,24 +33269,24 @@ var getZoomConfig = (uiViewport, frame, zoom) => {
|
|
33075
33269
|
};
|
33076
33270
|
|
33077
33271
|
// components/Puck/components/Canvas/index.tsx
|
33078
|
-
var
|
33079
|
-
var
|
33272
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
33273
|
+
var getClassName26 = get_class_name_factory_default("PuckCanvas", styles_module_default21);
|
33080
33274
|
var ZOOM_ON_CHANGE = true;
|
33081
33275
|
var Canvas = () => {
|
33082
33276
|
const { status, iframe } = useAppContext();
|
33083
33277
|
const { dispatch, state, overrides, setUi, zoomConfig, setZoomConfig } = useAppContext();
|
33084
33278
|
const { ui } = state;
|
33085
|
-
const frameRef = (0,
|
33086
|
-
const [showTransition, setShowTransition] = (0,
|
33087
|
-
const defaultRender = (0,
|
33088
|
-
const PuckDefault = ({ children }) => /* @__PURE__ */ (0,
|
33279
|
+
const frameRef = (0, import_react30.useRef)(null);
|
33280
|
+
const [showTransition, setShowTransition] = (0, import_react30.useState)(false);
|
33281
|
+
const defaultRender = (0, import_react30.useMemo)(() => {
|
33282
|
+
const PuckDefault = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children });
|
33089
33283
|
return PuckDefault;
|
33090
33284
|
}, []);
|
33091
|
-
const CustomPreview = (0,
|
33285
|
+
const CustomPreview = (0, import_react30.useMemo)(
|
33092
33286
|
() => overrides.preview || defaultRender,
|
33093
33287
|
[overrides]
|
33094
33288
|
);
|
33095
|
-
const getFrameDimensions = (0,
|
33289
|
+
const getFrameDimensions = (0, import_react30.useCallback)(() => {
|
33096
33290
|
if (frameRef.current) {
|
33097
33291
|
const frame = frameRef.current;
|
33098
33292
|
const box = getBox(frame);
|
@@ -33100,7 +33294,7 @@ var Canvas = () => {
|
|
33100
33294
|
}
|
33101
33295
|
return { width: 0, height: 0 };
|
33102
33296
|
}, [frameRef]);
|
33103
|
-
const resetAutoZoom = (0,
|
33297
|
+
const resetAutoZoom = (0, import_react30.useCallback)(
|
33104
33298
|
(ui2 = state.ui) => {
|
33105
33299
|
if (frameRef.current) {
|
33106
33300
|
setZoomConfig(
|
@@ -33110,11 +33304,11 @@ var Canvas = () => {
|
|
33110
33304
|
},
|
33111
33305
|
[frameRef, zoomConfig, state.ui]
|
33112
33306
|
);
|
33113
|
-
(0,
|
33307
|
+
(0, import_react30.useEffect)(() => {
|
33114
33308
|
setShowTransition(false);
|
33115
33309
|
resetAutoZoom();
|
33116
33310
|
}, [frameRef, ui.leftSideBarVisible, ui.rightSideBarVisible]);
|
33117
|
-
(0,
|
33311
|
+
(0, import_react30.useEffect)(() => {
|
33118
33312
|
const { height: frameHeight } = getFrameDimensions();
|
33119
33313
|
if (ui.viewports.current.height === "auto") {
|
33120
33314
|
setZoomConfig(__spreadProps(__spreadValues({}, zoomConfig), {
|
@@ -33122,7 +33316,7 @@ var Canvas = () => {
|
|
33122
33316
|
}));
|
33123
33317
|
}
|
33124
33318
|
}, [zoomConfig.zoom]);
|
33125
|
-
(0,
|
33319
|
+
(0, import_react30.useEffect)(() => {
|
33126
33320
|
const observer = new ResizeObserver(() => {
|
33127
33321
|
setShowTransition(false);
|
33128
33322
|
resetAutoZoom();
|
@@ -33134,10 +33328,10 @@ var Canvas = () => {
|
|
33134
33328
|
observer.disconnect();
|
33135
33329
|
};
|
33136
33330
|
}, []);
|
33137
|
-
return /* @__PURE__ */ (0,
|
33331
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
|
33138
33332
|
"div",
|
33139
33333
|
{
|
33140
|
-
className:
|
33334
|
+
className: getClassName26({
|
33141
33335
|
ready: status === "READY" || !iframe.enabled
|
33142
33336
|
}),
|
33143
33337
|
onClick: () => dispatch({
|
@@ -33146,7 +33340,7 @@ var Canvas = () => {
|
|
33146
33340
|
recordHistory: true
|
33147
33341
|
}),
|
33148
33342
|
children: [
|
33149
|
-
ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0,
|
33343
|
+
ui.viewports.controlsVisible && iframe.enabled && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: getClassName26("controls"), children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
33150
33344
|
ViewportControls,
|
33151
33345
|
{
|
33152
33346
|
autoZoom: zoomConfig.autoZoom,
|
@@ -33171,10 +33365,10 @@ var Canvas = () => {
|
|
33171
33365
|
}
|
33172
33366
|
}
|
33173
33367
|
) }),
|
33174
|
-
/* @__PURE__ */ (0,
|
33368
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: getClassName26("inner"), ref: frameRef, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
33175
33369
|
"div",
|
33176
33370
|
{
|
33177
|
-
className:
|
33371
|
+
className: getClassName26("root"),
|
33178
33372
|
style: {
|
33179
33373
|
width: iframe.enabled ? ui.viewports.current.width : "100%",
|
33180
33374
|
height: zoomConfig.rootHeight,
|
@@ -33183,7 +33377,7 @@ var Canvas = () => {
|
|
33183
33377
|
overflow: iframe.enabled ? void 0 : "auto"
|
33184
33378
|
},
|
33185
33379
|
suppressHydrationWarning: true,
|
33186
|
-
children: /* @__PURE__ */ (0,
|
33380
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(CustomPreview, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Preview, {}) })
|
33187
33381
|
}
|
33188
33382
|
) })
|
33189
33383
|
]
|
@@ -33191,10 +33385,42 @@ var Canvas = () => {
|
|
33191
33385
|
);
|
33192
33386
|
};
|
33193
33387
|
|
33388
|
+
// lib/insert-component.ts
|
33389
|
+
init_react_import();
|
33390
|
+
var insertComponent = (componentType, zone, index, {
|
33391
|
+
config,
|
33392
|
+
dispatch,
|
33393
|
+
resolveData,
|
33394
|
+
state
|
33395
|
+
}) => {
|
33396
|
+
const id = generateId(componentType);
|
33397
|
+
const insertActionData = {
|
33398
|
+
type: "insert",
|
33399
|
+
componentType,
|
33400
|
+
destinationIndex: index,
|
33401
|
+
destinationZone: zone,
|
33402
|
+
id
|
33403
|
+
};
|
33404
|
+
const insertedData = insertAction(state.data, insertActionData, config);
|
33405
|
+
dispatch(__spreadProps(__spreadValues({}, insertActionData), {
|
33406
|
+
// Dispatch insert rather set, as user's may rely on this via onAction
|
33407
|
+
recordHistory: false
|
33408
|
+
}));
|
33409
|
+
const itemSelector = {
|
33410
|
+
index,
|
33411
|
+
zone
|
33412
|
+
};
|
33413
|
+
dispatch({ type: "setUi", ui: { itemSelector } });
|
33414
|
+
resolveData({
|
33415
|
+
data: insertedData,
|
33416
|
+
ui: __spreadProps(__spreadValues({}, state.ui), { itemSelector })
|
33417
|
+
});
|
33418
|
+
};
|
33419
|
+
|
33194
33420
|
// components/Puck/index.tsx
|
33195
|
-
var
|
33196
|
-
var
|
33197
|
-
var getLayoutClassName = get_class_name_factory_default("PuckLayout",
|
33421
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
33422
|
+
var getClassName27 = get_class_name_factory_default("Puck", styles_module_default15);
|
33423
|
+
var getLayoutClassName = get_class_name_factory_default("PuckLayout", styles_module_default15);
|
33198
33424
|
function Puck({
|
33199
33425
|
children,
|
33200
33426
|
config,
|
@@ -33203,6 +33429,7 @@ function Puck({
|
|
33203
33429
|
onChange,
|
33204
33430
|
onPublish,
|
33205
33431
|
onAction,
|
33432
|
+
permissions = {},
|
33206
33433
|
plugins = [],
|
33207
33434
|
overrides = {},
|
33208
33435
|
renderHeader,
|
@@ -33218,10 +33445,10 @@ function Puck({
|
|
33218
33445
|
}) {
|
33219
33446
|
var _a;
|
33220
33447
|
const historyStore = useHistoryStore(initialHistory);
|
33221
|
-
const [reducer] = (0,
|
33448
|
+
const [reducer] = (0, import_react31.useState)(
|
33222
33449
|
() => createReducer({ config, record: historyStore.record, onAction })
|
33223
33450
|
);
|
33224
|
-
const [initialAppState] = (0,
|
33451
|
+
const [initialAppState] = (0, import_react31.useState)(() => {
|
33225
33452
|
var _a2, _b, _c, _d, _e, _f, _g;
|
33226
33453
|
const initial = __spreadValues(__spreadValues({}, defaultAppState.ui), initialUi);
|
33227
33454
|
let clientUiState = {};
|
@@ -33279,7 +33506,7 @@ function Puck({
|
|
33279
33506
|
})
|
33280
33507
|
});
|
33281
33508
|
});
|
33282
|
-
const [appState, dispatch] = (0,
|
33509
|
+
const [appState, dispatch] = (0, import_react31.useReducer)(
|
33283
33510
|
reducer,
|
33284
33511
|
flushZones(initialAppState)
|
33285
33512
|
);
|
@@ -33290,9 +33517,9 @@ function Puck({
|
|
33290
33517
|
config,
|
33291
33518
|
dispatch
|
33292
33519
|
);
|
33293
|
-
const [menuOpen, setMenuOpen] = (0,
|
33520
|
+
const [menuOpen, setMenuOpen] = (0, import_react31.useState)(false);
|
33294
33521
|
const { itemSelector, leftSideBarVisible, rightSideBarVisible } = ui;
|
33295
|
-
const setItemSelector = (0,
|
33522
|
+
const setItemSelector = (0, import_react31.useCallback)(
|
33296
33523
|
(newItemSelector) => {
|
33297
33524
|
if (newItemSelector === itemSelector) return;
|
33298
33525
|
dispatch({
|
@@ -33304,13 +33531,13 @@ function Puck({
|
|
33304
33531
|
[itemSelector]
|
33305
33532
|
);
|
33306
33533
|
const selectedItem = itemSelector ? getItem(itemSelector, data) : null;
|
33307
|
-
(0,
|
33534
|
+
(0, import_react31.useEffect)(() => {
|
33308
33535
|
if (onChange) onChange(data);
|
33309
33536
|
}, [data]);
|
33310
33537
|
const { onDragStartOrUpdate, placeholderStyle } = usePlaceholderStyle();
|
33311
|
-
const [draggedItem, setDraggedItem] = (0,
|
33538
|
+
const [draggedItem, setDraggedItem] = (0, import_react31.useState)();
|
33312
33539
|
const rootProps = data.root.props || data.root;
|
33313
|
-
const toggleSidebars = (0,
|
33540
|
+
const toggleSidebars = (0, import_react31.useCallback)(
|
33314
33541
|
(sidebar) => {
|
33315
33542
|
const widerViewport = window.matchMedia("(min-width: 638px)").matches;
|
33316
33543
|
const sideBarVisible = sidebar === "left" ? leftSideBarVisible : rightSideBarVisible;
|
@@ -33324,7 +33551,7 @@ function Puck({
|
|
33324
33551
|
},
|
33325
33552
|
[dispatch, leftSideBarVisible, rightSideBarVisible]
|
33326
33553
|
);
|
33327
|
-
(0,
|
33554
|
+
(0, import_react31.useEffect)(() => {
|
33328
33555
|
if (!window.matchMedia("(min-width: 638px)").matches) {
|
33329
33556
|
dispatch({
|
33330
33557
|
type: "setUi",
|
@@ -33347,11 +33574,7 @@ function Puck({
|
|
33347
33574
|
window.removeEventListener("resize", handleResize);
|
33348
33575
|
};
|
33349
33576
|
}, []);
|
33350
|
-
const
|
33351
|
-
const PuckDefault = ({ children: children2 }) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_jsx_runtime36.Fragment, { children: children2 });
|
33352
|
-
return PuckDefault;
|
33353
|
-
}, []);
|
33354
|
-
const defaultHeaderRender = (0, import_react30.useMemo)(() => {
|
33577
|
+
const defaultHeaderRender = (0, import_react31.useMemo)(() => {
|
33355
33578
|
if (renderHeader) {
|
33356
33579
|
console.warn(
|
33357
33580
|
"`renderHeader` is deprecated. Please use `overrides.header` and the `usePuck` hook instead"
|
@@ -33359,48 +33582,49 @@ function Puck({
|
|
33359
33582
|
const RenderHeader = (_a2) => {
|
33360
33583
|
var _b = _a2, { actions } = _b, props = __objRest(_b, ["actions"]);
|
33361
33584
|
const Comp = renderHeader;
|
33362
|
-
return /* @__PURE__ */ (0,
|
33585
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState, children: actions }));
|
33363
33586
|
};
|
33364
33587
|
return RenderHeader;
|
33365
33588
|
}
|
33366
|
-
return
|
33589
|
+
return DefaultOverride;
|
33367
33590
|
}, [renderHeader]);
|
33368
|
-
const defaultHeaderActionsRender = (0,
|
33591
|
+
const defaultHeaderActionsRender = (0, import_react31.useMemo)(() => {
|
33369
33592
|
if (renderHeaderActions) {
|
33370
33593
|
console.warn(
|
33371
33594
|
"`renderHeaderActions` is deprecated. Please use `overrides.headerActions` and the `usePuck` hook instead."
|
33372
33595
|
);
|
33373
33596
|
const RenderHeader = (props) => {
|
33374
33597
|
const Comp = renderHeaderActions;
|
33375
|
-
return /* @__PURE__ */ (0,
|
33598
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Comp, __spreadProps(__spreadValues({}, props), { dispatch, state: appState }));
|
33376
33599
|
};
|
33377
33600
|
return RenderHeader;
|
33378
33601
|
}
|
33379
|
-
return
|
33602
|
+
return DefaultOverride;
|
33380
33603
|
}, [renderHeader]);
|
33381
|
-
const loadedOverrides = (
|
33382
|
-
|
33383
|
-
|
33384
|
-
|
33385
|
-
|
33604
|
+
const loadedOverrides = useLoadedOverrides({
|
33605
|
+
overrides,
|
33606
|
+
plugins
|
33607
|
+
});
|
33608
|
+
const CustomPuck = (0, import_react31.useMemo)(
|
33609
|
+
() => loadedOverrides.puck || DefaultOverride,
|
33386
33610
|
[loadedOverrides]
|
33387
33611
|
);
|
33388
|
-
const CustomHeader = (0,
|
33612
|
+
const CustomHeader = (0, import_react31.useMemo)(
|
33389
33613
|
() => loadedOverrides.header || defaultHeaderRender,
|
33390
33614
|
[loadedOverrides]
|
33391
33615
|
);
|
33392
|
-
const CustomHeaderActions = (0,
|
33616
|
+
const CustomHeaderActions = (0, import_react31.useMemo)(
|
33393
33617
|
() => loadedOverrides.headerActions || defaultHeaderActionsRender,
|
33394
33618
|
[loadedOverrides]
|
33395
33619
|
);
|
33396
|
-
const [mounted, setMounted] = (0,
|
33397
|
-
(0,
|
33620
|
+
const [mounted, setMounted] = (0, import_react31.useState)(false);
|
33621
|
+
(0, import_react31.useEffect)(() => {
|
33398
33622
|
setMounted(true);
|
33399
33623
|
}, []);
|
33400
33624
|
const selectedComponentConfig = selectedItem && config.components[selectedItem.type];
|
33401
33625
|
const selectedComponentLabel = selectedItem ? (_a = selectedComponentConfig == null ? void 0 : selectedComponentConfig["label"]) != null ? _a : selectedItem.type.toString() : "";
|
33402
|
-
return /* @__PURE__ */ (0,
|
33403
|
-
/* @__PURE__ */ (0,
|
33626
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: `Puck ${getClassName27()}`, children: [
|
33627
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33404
33628
|
AppProvider,
|
33405
33629
|
{
|
33406
33630
|
value: {
|
@@ -33413,9 +33637,16 @@ function Puck({
|
|
33413
33637
|
overrides: loadedOverrides,
|
33414
33638
|
history,
|
33415
33639
|
viewports,
|
33416
|
-
iframe
|
33640
|
+
iframe,
|
33641
|
+
globalPermissions: __spreadValues({
|
33642
|
+
delete: true,
|
33643
|
+
drag: true,
|
33644
|
+
duplicate: true,
|
33645
|
+
insert: true,
|
33646
|
+
edit: true
|
33647
|
+
}, permissions)
|
33417
33648
|
},
|
33418
|
-
children: /* @__PURE__ */ (0,
|
33649
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33419
33650
|
DragDropContext,
|
33420
33651
|
{
|
33421
33652
|
autoScrollerOptions: { disabled: dnd == null ? void 0 : dnd.disableAutoScroll },
|
@@ -33436,16 +33667,12 @@ function Puck({
|
|
33436
33667
|
}
|
33437
33668
|
if (droppedItem.source.droppableId.startsWith("component-list") && droppedItem.destination) {
|
33438
33669
|
const [_, componentType] = droppedItem.draggableId.split("::");
|
33439
|
-
|
33440
|
-
|
33441
|
-
|
33442
|
-
|
33443
|
-
|
33444
|
-
|
33445
|
-
setItemSelector({
|
33446
|
-
index: droppedItem.destination.index,
|
33447
|
-
zone: droppedItem.destination.droppableId
|
33448
|
-
});
|
33670
|
+
insertComponent(
|
33671
|
+
componentType || droppedItem.draggableId,
|
33672
|
+
droppedItem.destination.droppableId,
|
33673
|
+
droppedItem.destination.index,
|
33674
|
+
{ config, dispatch, resolveData, state: appState }
|
33675
|
+
);
|
33449
33676
|
return;
|
33450
33677
|
} else {
|
33451
33678
|
const { source, destination } = droppedItem;
|
@@ -33471,7 +33698,7 @@ function Puck({
|
|
33471
33698
|
});
|
33472
33699
|
}
|
33473
33700
|
},
|
33474
|
-
children: /* @__PURE__ */ (0,
|
33701
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33475
33702
|
DropZoneProvider,
|
33476
33703
|
{
|
33477
33704
|
value: {
|
@@ -33485,7 +33712,7 @@ function Puck({
|
|
33485
33712
|
mode: "edit",
|
33486
33713
|
areaId: "root"
|
33487
33714
|
},
|
33488
|
-
children: /* @__PURE__ */ (0,
|
33715
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(CustomPuck, { children: children || /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33489
33716
|
"div",
|
33490
33717
|
{
|
33491
33718
|
className: getLayoutClassName({
|
@@ -33494,64 +33721,64 @@ function Puck({
|
|
33494
33721
|
mounted,
|
33495
33722
|
rightSideBarVisible
|
33496
33723
|
}),
|
33497
|
-
children: /* @__PURE__ */ (0,
|
33498
|
-
/* @__PURE__ */ (0,
|
33724
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("inner"), children: [
|
33725
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33499
33726
|
CustomHeader,
|
33500
33727
|
{
|
33501
|
-
actions: /* @__PURE__ */ (0,
|
33728
|
+
actions: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_jsx_runtime38.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33502
33729
|
Button,
|
33503
33730
|
{
|
33504
33731
|
onClick: () => {
|
33505
33732
|
onPublish && onPublish(data);
|
33506
33733
|
},
|
33507
|
-
icon: /* @__PURE__ */ (0,
|
33734
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Globe, { size: "14px" }),
|
33508
33735
|
children: "Publish"
|
33509
33736
|
}
|
33510
33737
|
) }) }),
|
33511
|
-
children: /* @__PURE__ */ (0,
|
33512
|
-
/* @__PURE__ */ (0,
|
33513
|
-
/* @__PURE__ */ (0,
|
33738
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("header", { className: getLayoutClassName("header"), children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("headerInner"), children: [
|
33739
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("headerToggle"), children: [
|
33740
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33514
33741
|
"div",
|
33515
33742
|
{
|
33516
33743
|
className: getLayoutClassName(
|
33517
33744
|
"leftSideBarToggle"
|
33518
33745
|
),
|
33519
|
-
children: /* @__PURE__ */ (0,
|
33746
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33520
33747
|
IconButton,
|
33521
33748
|
{
|
33522
33749
|
onClick: () => {
|
33523
33750
|
toggleSidebars("left");
|
33524
33751
|
},
|
33525
33752
|
title: "Toggle left sidebar",
|
33526
|
-
children: /* @__PURE__ */ (0,
|
33753
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(PanelLeft, { focusable: "false" })
|
33527
33754
|
}
|
33528
33755
|
)
|
33529
33756
|
}
|
33530
33757
|
),
|
33531
|
-
/* @__PURE__ */ (0,
|
33758
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33532
33759
|
"div",
|
33533
33760
|
{
|
33534
33761
|
className: getLayoutClassName(
|
33535
33762
|
"rightSideBarToggle"
|
33536
33763
|
),
|
33537
|
-
children: /* @__PURE__ */ (0,
|
33764
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33538
33765
|
IconButton,
|
33539
33766
|
{
|
33540
33767
|
onClick: () => {
|
33541
33768
|
toggleSidebars("right");
|
33542
33769
|
},
|
33543
33770
|
title: "Toggle right sidebar",
|
33544
|
-
children: /* @__PURE__ */ (0,
|
33771
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(PanelRight, { focusable: "false" })
|
33545
33772
|
}
|
33546
33773
|
)
|
33547
33774
|
}
|
33548
33775
|
)
|
33549
33776
|
] }),
|
33550
|
-
/* @__PURE__ */ (0,
|
33777
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: getLayoutClassName("headerTitle"), children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(Heading, { rank: 2, size: "xs", children: [
|
33551
33778
|
headerTitle || rootProps.title || "Page",
|
33552
|
-
headerPath && /* @__PURE__ */ (0,
|
33779
|
+
headerPath && /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_jsx_runtime38.Fragment, { children: [
|
33553
33780
|
" ",
|
33554
|
-
/* @__PURE__ */ (0,
|
33781
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33555
33782
|
"code",
|
33556
33783
|
{
|
33557
33784
|
className: getLayoutClassName("headerPath"),
|
@@ -33560,18 +33787,18 @@ function Puck({
|
|
33560
33787
|
)
|
33561
33788
|
] })
|
33562
33789
|
] }) }),
|
33563
|
-
/* @__PURE__ */ (0,
|
33564
|
-
/* @__PURE__ */ (0,
|
33790
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("headerTools"), children: [
|
33791
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: getLayoutClassName("menuButton"), children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33565
33792
|
IconButton,
|
33566
33793
|
{
|
33567
33794
|
onClick: () => {
|
33568
33795
|
return setMenuOpen(!menuOpen);
|
33569
33796
|
},
|
33570
33797
|
title: "Toggle menu bar",
|
33571
|
-
children: menuOpen ? /* @__PURE__ */ (0,
|
33798
|
+
children: menuOpen ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(ChevronUp, { focusable: "false" }) : /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(ChevronDown, { focusable: "false" })
|
33572
33799
|
}
|
33573
33800
|
) }),
|
33574
|
-
/* @__PURE__ */ (0,
|
33801
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33575
33802
|
MenuBar,
|
33576
33803
|
{
|
33577
33804
|
appState,
|
@@ -33579,13 +33806,13 @@ function Puck({
|
|
33579
33806
|
dispatch,
|
33580
33807
|
onPublish,
|
33581
33808
|
menuOpen,
|
33582
|
-
renderHeaderActions: () => /* @__PURE__ */ (0,
|
33809
|
+
renderHeaderActions: () => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(CustomHeaderActions, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33583
33810
|
Button,
|
33584
33811
|
{
|
33585
33812
|
onClick: () => {
|
33586
33813
|
onPublish && onPublish(data);
|
33587
33814
|
},
|
33588
|
-
icon: /* @__PURE__ */ (0,
|
33815
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Globe, { size: "14px" }),
|
33589
33816
|
children: "Publish"
|
33590
33817
|
}
|
33591
33818
|
) }),
|
@@ -33596,19 +33823,19 @@ function Puck({
|
|
33596
33823
|
] }) })
|
33597
33824
|
}
|
33598
33825
|
),
|
33599
|
-
/* @__PURE__ */ (0,
|
33600
|
-
/* @__PURE__ */ (0,
|
33601
|
-
/* @__PURE__ */ (0,
|
33826
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: getLayoutClassName("leftSideBar"), children: [
|
33827
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(SidebarSection, { title: "Components", noBorderTop: true, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Components, {}) }),
|
33828
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(SidebarSection, { title: "Outline", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Outline, {}) })
|
33602
33829
|
] }),
|
33603
|
-
/* @__PURE__ */ (0,
|
33604
|
-
/* @__PURE__ */ (0,
|
33830
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Canvas, {}),
|
33831
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: getLayoutClassName("rightSideBar"), children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
33605
33832
|
SidebarSection,
|
33606
33833
|
{
|
33607
33834
|
noPadding: true,
|
33608
33835
|
noBorderTop: true,
|
33609
33836
|
showBreadcrumbs: true,
|
33610
33837
|
title: selectedItem ? selectedComponentLabel : "Page",
|
33611
|
-
children: /* @__PURE__ */ (0,
|
33838
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Fields, {})
|
33612
33839
|
}
|
33613
33840
|
) })
|
33614
33841
|
] })
|
@@ -33620,7 +33847,7 @@ function Puck({
|
|
33620
33847
|
)
|
33621
33848
|
}
|
33622
33849
|
),
|
33623
|
-
/* @__PURE__ */ (0,
|
33850
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { id: "puck-portal-root", className: getClassName27("portal") })
|
33624
33851
|
] });
|
33625
33852
|
}
|
33626
33853
|
Puck.Components = Components;
|
@@ -33630,7 +33857,7 @@ Puck.Preview = Preview;
|
|
33630
33857
|
|
33631
33858
|
// components/Render/index.tsx
|
33632
33859
|
init_react_import();
|
33633
|
-
var
|
33860
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
33634
33861
|
function Render({
|
33635
33862
|
config,
|
33636
33863
|
data
|
@@ -33643,7 +33870,7 @@ function Render({
|
|
33643
33870
|
const rootProps = defaultedData.root.props || defaultedData.root;
|
33644
33871
|
const title = (rootProps == null ? void 0 : rootProps.title) || "";
|
33645
33872
|
if ((_a = config.root) == null ? void 0 : _a.render) {
|
33646
|
-
return /* @__PURE__ */ (0,
|
33873
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(DropZoneProvider, { value: { data: defaultedData, config, mode: "render" }, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
33647
33874
|
config.root.render,
|
33648
33875
|
__spreadProps(__spreadValues({}, rootProps), {
|
33649
33876
|
puck: {
|
@@ -33653,11 +33880,11 @@ function Render({
|
|
33653
33880
|
title,
|
33654
33881
|
editMode: false,
|
33655
33882
|
id: "puck-root",
|
33656
|
-
children: /* @__PURE__ */ (0,
|
33883
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(DropZone, { zone: rootDroppableId })
|
33657
33884
|
})
|
33658
33885
|
) });
|
33659
33886
|
}
|
33660
|
-
return /* @__PURE__ */ (0,
|
33887
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(DropZoneProvider, { value: { data: defaultedData, config, mode: "render" }, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(DropZone, { zone: rootDroppableId }) });
|
33661
33888
|
}
|
33662
33889
|
|
33663
33890
|
// lib/migrate.ts
|
@@ -33765,12 +33992,25 @@ var usePuck = () => {
|
|
33765
33992
|
config,
|
33766
33993
|
history,
|
33767
33994
|
dispatch,
|
33768
|
-
selectedItem
|
33995
|
+
selectedItem: currentItem,
|
33996
|
+
globalPermissions
|
33769
33997
|
} = useAppContext();
|
33770
33998
|
return {
|
33771
33999
|
appState,
|
33772
34000
|
config,
|
33773
34001
|
dispatch,
|
34002
|
+
getPermissions: ({
|
34003
|
+
item,
|
34004
|
+
type
|
34005
|
+
} = {}) => {
|
34006
|
+
return getPermissions({
|
34007
|
+
selectedItem: item || currentItem,
|
34008
|
+
type,
|
34009
|
+
globalPermissions: globalPermissions || {},
|
34010
|
+
config,
|
34011
|
+
appState
|
34012
|
+
});
|
34013
|
+
},
|
33774
34014
|
history: {
|
33775
34015
|
back: history.back,
|
33776
34016
|
forward: history.forward,
|
@@ -33782,11 +34022,13 @@ var usePuck = () => {
|
|
33782
34022
|
index: history.historyStore.index,
|
33783
34023
|
historyStore: history.historyStore
|
33784
34024
|
},
|
33785
|
-
selectedItem:
|
34025
|
+
selectedItem: currentItem || null
|
33786
34026
|
};
|
33787
34027
|
};
|
33788
34028
|
// Annotate the CommonJS export names for ESM import in node:
|
33789
34029
|
0 && (module.exports = {
|
34030
|
+
Action,
|
34031
|
+
ActionBar,
|
33790
34032
|
AutoField,
|
33791
34033
|
AutoFieldPrivate,
|
33792
34034
|
Button,
|