@measured/puck 0.17.0-canary.9de5e5e → 0.17.0-canary.bda6153
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/{chunk-7IH6SUIT.mjs → chunk-EXKSBUY5.mjs} +10 -0
- package/dist/index.css +53 -46
- package/dist/index.js +527 -115
- package/dist/index.mjs +517 -102
- package/dist/rsc.mjs +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
@@ -9,6 +9,9 @@ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
9
9
|
var __getProtoOf = Object.getPrototypeOf;
|
10
10
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
11
11
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
12
|
+
var __typeError = (msg) => {
|
13
|
+
throw TypeError(msg);
|
14
|
+
};
|
12
15
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
13
16
|
var __spreadValues = (a2, b2) => {
|
14
17
|
for (var prop in b2 || (b2 = {}))
|
@@ -61,6 +64,10 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
61
64
|
mod
|
62
65
|
));
|
63
66
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
67
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
68
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
69
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
70
|
+
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
64
71
|
var __async = (__this, __arguments, generator) => {
|
65
72
|
return new Promise((resolve, reject) => {
|
66
73
|
var fulfilled = (value) => {
|
@@ -2411,7 +2418,7 @@ init_react_import();
|
|
2411
2418
|
|
2412
2419
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Drawer/styles.module.css#css-module
|
2413
2420
|
init_react_import();
|
2414
|
-
var styles_module_default10 = { "Drawer": "
|
2421
|
+
var styles_module_default10 = { "Drawer": "_Drawer_1ob9x_1", "DrawerItem-draggable": "_DrawerItem-draggable_1ob9x_8", "DrawerItem--disabled": "_DrawerItem--disabled_1ob9x_21", "DrawerItem": "_DrawerItem_1ob9x_8", "Drawer--isDraggingFrom": "_Drawer--isDraggingFrom_1ob9x_31", "DrawerItem-name": "_DrawerItem-name_1ob9x_49" };
|
2415
2422
|
|
2416
2423
|
// components/Drawer/index.tsx
|
2417
2424
|
var import_react21 = require("react");
|
@@ -2432,7 +2439,7 @@ var import_react16 = require("react");
|
|
2432
2439
|
|
2433
2440
|
// css-module:/home/runner/work/puck/puck/packages/core/components/DraggableComponent/styles.module.css#css-module
|
2434
2441
|
init_react_import();
|
2435
|
-
var styles_module_default11 = { "DraggableComponent": "
|
2442
|
+
var styles_module_default11 = { "DraggableComponent": "_DraggableComponent_1uqah_1", "DraggableComponent-overlay": "_DraggableComponent-overlay_1uqah_12", "DraggableComponent-loadingOverlay": "_DraggableComponent-loadingOverlay_1uqah_29", "DraggableComponent--hover": "_DraggableComponent--hover_1uqah_45", "DraggableComponent--isLocked": "_DraggableComponent--isLocked_1uqah_45", "DraggableComponent--isSelected": "_DraggableComponent--isSelected_1uqah_54", "DraggableComponent-actionsOverlay": "_DraggableComponent-actionsOverlay_1uqah_66", "DraggableComponent-actions": "_DraggableComponent-actions_1uqah_66" };
|
2436
2443
|
|
2437
2444
|
// lib/use-modifier-held.ts
|
2438
2445
|
init_react_import();
|
@@ -2874,9 +2881,10 @@ var __create2 = Object.create;
|
|
2874
2881
|
var __defProp2 = Object.defineProperty;
|
2875
2882
|
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
|
2876
2883
|
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
|
2877
|
-
var
|
2884
|
+
var __typeError2 = (msg) => {
|
2878
2885
|
throw TypeError(msg);
|
2879
2886
|
};
|
2887
|
+
var __pow = Math.pow;
|
2880
2888
|
var __defNormalProp2 = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
2881
2889
|
var __name = (target, value) => __defProp2(target, "name", { value, configurable: true });
|
2882
2890
|
var __decoratorStart = (base) => {
|
@@ -2884,8 +2892,8 @@ var __decoratorStart = (base) => {
|
|
2884
2892
|
return [, , , __create2((_a = base == null ? void 0 : base[__knownSymbol("metadata")]) != null ? _a : null)];
|
2885
2893
|
};
|
2886
2894
|
var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
|
2887
|
-
var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ?
|
2888
|
-
var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ?
|
2895
|
+
var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError2("Function expected") : fn;
|
2896
|
+
var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError2("Already initialized") : fns.push(__expectFn(fn || null)) });
|
2889
2897
|
var __decoratorMetadata = (array, target) => __defNormalProp2(target, __knownSymbol("metadata"), array[3]);
|
2890
2898
|
var __runInitializers = (array, flags, self, value) => {
|
2891
2899
|
for (var i2 = 0, fns = array[flags >> 1], n2 = fns && fns.length; i2 < n2; i2++) flags & 1 ? fns[i2].call(self) : value = fns[i2].call(self, value);
|
@@ -2896,31 +2904,31 @@ var __decorateElement = (array, flags, name, decorators, target, extra) => {
|
|
2896
2904
|
var j = k > 3 ? array.length + 1 : k ? s2 ? 1 : 2 : 0, key = __decoratorStrings[k + 5];
|
2897
2905
|
var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
|
2898
2906
|
var desc = k && (!p2 && !s2 && (target = target.prototype), k < 5 && (k > 3 || !p2) && __getOwnPropDesc2(k < 4 ? target : { get [name]() {
|
2899
|
-
return
|
2907
|
+
return __privateGet2(this, extra);
|
2900
2908
|
}, set [name](x) {
|
2901
|
-
return
|
2909
|
+
return __privateSet2(this, extra, x);
|
2902
2910
|
} }, name));
|
2903
2911
|
k ? p2 && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name(target, name);
|
2904
2912
|
for (var i2 = decorators.length - 1; i2 >= 0; i2--) {
|
2905
2913
|
ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
|
2906
2914
|
if (k) {
|
2907
2915
|
ctx.static = s2, ctx.private = p2, access = ctx.access = { has: p2 ? (x) => __privateIn(target, x) : (x) => name in x };
|
2908
|
-
if (k ^ 3) access.get = p2 ? (x) => (k ^ 1 ?
|
2909
|
-
if (k > 2) access.set = p2 ? (x, y2) =>
|
2916
|
+
if (k ^ 3) access.get = p2 ? (x) => (k ^ 1 ? __privateGet2 : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];
|
2917
|
+
if (k > 2) access.set = p2 ? (x, y2) => __privateSet2(x, target, y2, k ^ 4 ? extra : desc.set) : (x, y2) => x[name] = y2;
|
2910
2918
|
}
|
2911
2919
|
it = (0, decorators[i2])(k ? k < 4 ? p2 ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;
|
2912
2920
|
if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p2 ? extra = it : desc[key] = it : target = it);
|
2913
|
-
else if (typeof it !== "object" || it === null)
|
2921
|
+
else if (typeof it !== "object" || it === null) __typeError2("Object expected");
|
2914
2922
|
else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);
|
2915
2923
|
}
|
2916
2924
|
return k || __decoratorMetadata(array, target), desc && __defProp2(target, name, desc), p2 ? k ^ 4 ? extra : desc : target;
|
2917
2925
|
};
|
2918
|
-
var
|
2919
|
-
var __privateIn = (member, obj) => Object(obj) !== obj ?
|
2920
|
-
var
|
2921
|
-
var
|
2922
|
-
var
|
2923
|
-
var __privateMethod = (obj, member, method) => (
|
2926
|
+
var __accessCheck2 = (obj, member, msg) => member.has(obj) || __typeError2("Cannot " + msg);
|
2927
|
+
var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError2('Cannot use the "in" operator on this value') : member.has(obj);
|
2928
|
+
var __privateGet2 = (obj, member, getter) => (__accessCheck2(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
2929
|
+
var __privateAdd2 = (obj, member, value) => member.has(obj) ? __typeError2("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
2930
|
+
var __privateSet2 = (obj, member, value, setter) => (__accessCheck2(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
2931
|
+
var __privateMethod = (obj, member, method) => (__accessCheck2(obj, member, "access private method"), method);
|
2924
2932
|
var Point = class _Point {
|
2925
2933
|
/**
|
2926
2934
|
* @param {number} Coordinate of the point on the horizontal axis
|
@@ -2978,14 +2986,14 @@ _velocity_dec = [reactive], _initial_dec = [reactive], _previous_dec = [reactive
|
|
2978
2986
|
var Position = class {
|
2979
2987
|
constructor(initialValue) {
|
2980
2988
|
__runInitializers(_init, 5, this);
|
2981
|
-
|
2982
|
-
|
2989
|
+
__privateAdd2(this, _timestamp, 0);
|
2990
|
+
__privateAdd2(this, _velocity, __runInitializers(_init, 8, this, {
|
2983
2991
|
x: 0,
|
2984
2992
|
y: 0
|
2985
2993
|
})), __runInitializers(_init, 11, this);
|
2986
|
-
|
2987
|
-
|
2988
|
-
|
2994
|
+
__privateAdd2(this, _initial, __runInitializers(_init, 12, this)), __runInitializers(_init, 15, this);
|
2995
|
+
__privateAdd2(this, _previous, __runInitializers(_init, 16, this)), __runInitializers(_init, 19, this);
|
2996
|
+
__privateAdd2(this, _current, __runInitializers(_init, 20, this)), __runInitializers(_init, 23, this);
|
2989
2997
|
const point = Point.from(initialValue);
|
2990
2998
|
this.initial = point;
|
2991
2999
|
this.current = point;
|
@@ -3010,7 +3018,7 @@ var Position = class {
|
|
3010
3018
|
reset(coordinates) {
|
3011
3019
|
const point = Point.from(coordinates);
|
3012
3020
|
o(() => {
|
3013
|
-
|
3021
|
+
__privateSet2(this, _timestamp, 0);
|
3014
3022
|
this.velocity = { x: 0, y: 0 };
|
3015
3023
|
this.current = point;
|
3016
3024
|
this.previous = point;
|
@@ -3028,12 +3036,12 @@ var Position = class {
|
|
3028
3036
|
y: point.y - current.y
|
3029
3037
|
};
|
3030
3038
|
const timestamp = Date.now();
|
3031
|
-
const timeDelta = timestamp -
|
3039
|
+
const timeDelta = timestamp - __privateGet2(this, _timestamp);
|
3032
3040
|
const velocity = (delta2) => Math.round(delta2 / timeDelta * 100);
|
3033
3041
|
if (Math.abs(delta.x) < SENSITIVITY || Math.abs(delta.y) < SENSITIVITY) {
|
3034
3042
|
this.previous = current;
|
3035
3043
|
}
|
3036
|
-
|
3044
|
+
__privateSet2(this, _timestamp, timestamp);
|
3037
3045
|
this.velocity = {
|
3038
3046
|
x: velocity(delta.x),
|
3039
3047
|
y: velocity(delta.y)
|
@@ -3054,6 +3062,23 @@ __decorateElement(_init, 4, "current", _current_dec, Position, _current);
|
|
3054
3062
|
__decorateElement(_init, 2, "delta", _delta_dec, Position);
|
3055
3063
|
__decorateElement(_init, 2, "direction", _direction_dec, Position);
|
3056
3064
|
__decoratorMetadata(_init, Position);
|
3065
|
+
function exceedsDistance({ x, y: y2 }, distance) {
|
3066
|
+
const dx = Math.abs(x);
|
3067
|
+
const dy = Math.abs(y2);
|
3068
|
+
if (typeof distance === "number") {
|
3069
|
+
return Math.sqrt(__pow(dx, 2) + __pow(dy, 2)) > distance;
|
3070
|
+
}
|
3071
|
+
if ("x" in distance && "y" in distance) {
|
3072
|
+
return dx > distance.x && dy > distance.y;
|
3073
|
+
}
|
3074
|
+
if ("x" in distance) {
|
3075
|
+
return dx > distance.x;
|
3076
|
+
}
|
3077
|
+
if ("y" in distance) {
|
3078
|
+
return dy > distance.y;
|
3079
|
+
}
|
3080
|
+
return false;
|
3081
|
+
}
|
3057
3082
|
var Axis = /* @__PURE__ */ ((Axis2) => {
|
3058
3083
|
Axis2["Horizontal"] = "x";
|
3059
3084
|
Axis2["Vertical"] = "y";
|
@@ -3069,7 +3094,7 @@ var __getOwnPropSymbols2 = Object.getOwnPropertySymbols;
|
|
3069
3094
|
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
3070
3095
|
var __propIsEnum2 = Object.prototype.propertyIsEnumerable;
|
3071
3096
|
var __knownSymbol2 = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
|
3072
|
-
var
|
3097
|
+
var __typeError3 = (msg) => {
|
3073
3098
|
throw TypeError(msg);
|
3074
3099
|
};
|
3075
3100
|
var __defNormalProp3 = (obj, key, value) => key in obj ? __defProp3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
@@ -3091,8 +3116,8 @@ var __decoratorStart2 = (base) => {
|
|
3091
3116
|
return [, , , __create3((_a = base == null ? void 0 : base[__knownSymbol2("metadata")]) != null ? _a : null)];
|
3092
3117
|
};
|
3093
3118
|
var __decoratorStrings2 = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
|
3094
|
-
var __expectFn2 = (fn) => fn !== void 0 && typeof fn !== "function" ?
|
3095
|
-
var __decoratorContext2 = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings2[kind], name, metadata, addInitializer: (fn) => done._ ?
|
3119
|
+
var __expectFn2 = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError3("Function expected") : fn;
|
3120
|
+
var __decoratorContext2 = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings2[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError3("Already initialized") : fns.push(__expectFn2(fn || null)) });
|
3096
3121
|
var __decoratorMetadata2 = (array, target) => __defNormalProp3(target, __knownSymbol2("metadata"), array[3]);
|
3097
3122
|
var __runInitializers2 = (array, flags, self, value) => {
|
3098
3123
|
for (var i2 = 0, fns = array[flags >> 1], n2 = fns && fns.length; i2 < n2; i2++) flags & 1 ? fns[i2].call(self) : value = fns[i2].call(self, value);
|
@@ -3103,37 +3128,42 @@ var __decorateElement2 = (array, flags, name, decorators, target, extra) => {
|
|
3103
3128
|
var j = k > 3 ? array.length + 1 : k ? s2 ? 1 : 2 : 0, key = __decoratorStrings2[k + 5];
|
3104
3129
|
var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
|
3105
3130
|
var desc = k && (!p2 && !s2 && (target = target.prototype), k < 5 && (k > 3 || !p2) && __getOwnPropDesc3(k < 4 ? target : { get [name]() {
|
3106
|
-
return
|
3131
|
+
return __privateGet3(this, extra);
|
3107
3132
|
}, set [name](x) {
|
3108
|
-
return
|
3133
|
+
return __privateSet3(this, extra, x);
|
3109
3134
|
} }, name));
|
3110
3135
|
k ? p2 && k < 4 && __name2(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name2(target, name);
|
3111
3136
|
for (var i2 = decorators.length - 1; i2 >= 0; i2--) {
|
3112
3137
|
ctx = __decoratorContext2(k, name, done = {}, array[3], extraInitializers);
|
3113
3138
|
if (k) {
|
3114
3139
|
ctx.static = s2, ctx.private = p2, access = ctx.access = { has: p2 ? (x) => __privateIn2(target, x) : (x) => name in x };
|
3115
|
-
if (k ^ 3) access.get = p2 ? (x) => (k ^ 1 ?
|
3116
|
-
if (k > 2) access.set = p2 ? (x, y2) =>
|
3140
|
+
if (k ^ 3) access.get = p2 ? (x) => (k ^ 1 ? __privateGet3 : __privateMethod2)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];
|
3141
|
+
if (k > 2) access.set = p2 ? (x, y2) => __privateSet3(x, target, y2, k ^ 4 ? extra : desc.set) : (x, y2) => x[name] = y2;
|
3117
3142
|
}
|
3118
3143
|
it = (0, decorators[i2])(k ? k < 4 ? p2 ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;
|
3119
3144
|
if (k ^ 4 || it === void 0) __expectFn2(it) && (k > 4 ? initializers.unshift(it) : k ? p2 ? extra = it : desc[key] = it : target = it);
|
3120
|
-
else if (typeof it !== "object" || it === null)
|
3145
|
+
else if (typeof it !== "object" || it === null) __typeError3("Object expected");
|
3121
3146
|
else __expectFn2(fn = it.get) && (desc.get = fn), __expectFn2(fn = it.set) && (desc.set = fn), __expectFn2(fn = it.init) && initializers.unshift(fn);
|
3122
3147
|
}
|
3123
3148
|
return k || __decoratorMetadata2(array, target), desc && __defProp3(target, name, desc), p2 ? k ^ 4 ? extra : desc : target;
|
3124
3149
|
};
|
3125
|
-
var
|
3126
|
-
var __privateIn2 = (member, obj) => Object(obj) !== obj ?
|
3127
|
-
var
|
3128
|
-
var
|
3129
|
-
var
|
3130
|
-
var __privateMethod2 = (obj, member, method) => (
|
3150
|
+
var __accessCheck3 = (obj, member, msg) => member.has(obj) || __typeError3("Cannot " + msg);
|
3151
|
+
var __privateIn2 = (member, obj) => Object(obj) !== obj ? __typeError3('Cannot use the "in" operator on this value') : member.has(obj);
|
3152
|
+
var __privateGet3 = (obj, member, getter) => (__accessCheck3(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
3153
|
+
var __privateAdd3 = (obj, member, value) => member.has(obj) ? __typeError3("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
3154
|
+
var __privateSet3 = (obj, member, value, setter) => (__accessCheck3(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
3155
|
+
var __privateMethod2 = (obj, member, method) => (__accessCheck3(obj, member, "access private method"), method);
|
3131
3156
|
function configure(plugin, options) {
|
3132
3157
|
return {
|
3133
3158
|
plugin,
|
3134
3159
|
options
|
3135
3160
|
};
|
3136
3161
|
}
|
3162
|
+
function configurator(plugin) {
|
3163
|
+
return (options) => {
|
3164
|
+
return configure(plugin, options);
|
3165
|
+
};
|
3166
|
+
}
|
3137
3167
|
var _disabled_dec;
|
3138
3168
|
var _init2;
|
3139
3169
|
var _disabled;
|
@@ -3142,7 +3172,7 @@ var Plugin = class {
|
|
3142
3172
|
constructor(manager, options) {
|
3143
3173
|
this.manager = manager;
|
3144
3174
|
this.options = options;
|
3145
|
-
|
3175
|
+
__privateAdd3(this, _disabled, __runInitializers2(_init2, 8, this, false)), __runInitializers2(_init2, 11, this);
|
3146
3176
|
}
|
3147
3177
|
/**
|
3148
3178
|
* Enable a disabled plugin instance.
|
@@ -3229,10 +3259,10 @@ var Entity = class {
|
|
3229
3259
|
* @param manager - The manager that controls the drag and drop operations.
|
3230
3260
|
*/
|
3231
3261
|
constructor(input, manager) {
|
3232
|
-
|
3233
|
-
|
3234
|
-
|
3235
|
-
|
3262
|
+
__privateAdd3(this, _manager, __runInitializers2(_init22, 8, this)), __runInitializers2(_init22, 11, this);
|
3263
|
+
__privateAdd3(this, _id, __runInitializers2(_init22, 12, this)), __runInitializers2(_init22, 15, this);
|
3264
|
+
__privateAdd3(this, _data, __runInitializers2(_init22, 16, this)), __runInitializers2(_init22, 19, this);
|
3265
|
+
__privateAdd3(this, _disabled2, __runInitializers2(_init22, 20, this)), __runInitializers2(_init22, 23, this);
|
3236
3266
|
this.effects = void 0;
|
3237
3267
|
const { effects: effects5, id, data = {}, disabled = false } = input;
|
3238
3268
|
let previousId = id;
|
@@ -3312,9 +3342,9 @@ var Draggable2 = class extends (_c = Entity, _modifiers_dec = [reactive], _type_
|
|
3312
3342
|
super(input, manager);
|
3313
3343
|
__runInitializers2(_init3, 5, this);
|
3314
3344
|
this.sensors = void 0;
|
3315
|
-
|
3316
|
-
|
3317
|
-
|
3345
|
+
__privateAdd3(this, _modifiers, __runInitializers2(_init3, 8, this)), __runInitializers2(_init3, 11, this);
|
3346
|
+
__privateAdd3(this, _type, __runInitializers2(_init3, 12, this)), __runInitializers2(_init3, 15, this);
|
3347
|
+
__privateAdd3(this, _status, __runInitializers2(_init3, 16, this, "idle")), __runInitializers2(_init3, 19, this);
|
3318
3348
|
this.type = type;
|
3319
3349
|
this.sensors = sensors;
|
3320
3350
|
this.modifiers = modifiers;
|
@@ -3351,11 +3381,11 @@ var Droppable2 = class extends (_c2 = Entity, _accept_dec = [reactive], _type_de
|
|
3351
3381
|
var _b = _a, { accept, collisionDetector, collisionPriority, type } = _b, input = __objRest2(_b, ["accept", "collisionDetector", "collisionPriority", "type"]);
|
3352
3382
|
super(input, manager);
|
3353
3383
|
__runInitializers2(_init4, 5, this);
|
3354
|
-
|
3355
|
-
|
3356
|
-
|
3357
|
-
|
3358
|
-
|
3384
|
+
__privateAdd3(this, _accept, __runInitializers2(_init4, 8, this)), __runInitializers2(_init4, 11, this);
|
3385
|
+
__privateAdd3(this, _type2, __runInitializers2(_init4, 12, this)), __runInitializers2(_init4, 15, this);
|
3386
|
+
__privateAdd3(this, _collisionDetector, __runInitializers2(_init4, 16, this)), __runInitializers2(_init4, 19, this);
|
3387
|
+
__privateAdd3(this, _collisionPriority, __runInitializers2(_init4, 20, this)), __runInitializers2(_init4, 23, this);
|
3388
|
+
__privateAdd3(this, _shape, __runInitializers2(_init4, 24, this)), __runInitializers2(_init4, 27, this);
|
3359
3389
|
this.accept = accept;
|
3360
3390
|
this.collisionDetector = collisionDetector;
|
3361
3391
|
this.collisionPriority = collisionPriority;
|
@@ -3401,6 +3431,13 @@ __decorateElement2(_init4, 4, "collisionPriority", _collisionPriority_dec, Dropp
|
|
3401
3431
|
__decorateElement2(_init4, 4, "shape", _shape_dec, Droppable2, _shape);
|
3402
3432
|
__decorateElement2(_init4, 2, "isDropTarget", _isDropTarget_dec, Droppable2);
|
3403
3433
|
__decoratorMetadata2(_init4, Droppable2);
|
3434
|
+
var Sensor = class extends Plugin {
|
3435
|
+
constructor(manager, options) {
|
3436
|
+
super(manager, options);
|
3437
|
+
this.manager = manager;
|
3438
|
+
this.options = options;
|
3439
|
+
}
|
3440
|
+
};
|
3404
3441
|
|
3405
3442
|
// components/DraggableComponent/collision/directional/index.ts
|
3406
3443
|
init_react_import();
|
@@ -3737,6 +3774,25 @@ function useSortableSafe(input) {
|
|
3737
3774
|
return (0, import_sortable.useSortable)(input);
|
3738
3775
|
}
|
3739
3776
|
|
3777
|
+
// lib/get-deep-scroll-position.ts
|
3778
|
+
init_react_import();
|
3779
|
+
function getDeepScrollPosition(element) {
|
3780
|
+
let totalScroll = {
|
3781
|
+
x: 0,
|
3782
|
+
y: 0
|
3783
|
+
};
|
3784
|
+
let current = element;
|
3785
|
+
while (current && current !== document.documentElement) {
|
3786
|
+
const parent = current.parentElement;
|
3787
|
+
if (parent) {
|
3788
|
+
totalScroll.x += parent.scrollLeft;
|
3789
|
+
totalScroll.y += parent.scrollTop;
|
3790
|
+
}
|
3791
|
+
current = parent;
|
3792
|
+
}
|
3793
|
+
return totalScroll;
|
3794
|
+
}
|
3795
|
+
|
3740
3796
|
// components/DraggableComponent/index.tsx
|
3741
3797
|
var import_jsx_runtime21 = require("react/jsx-runtime");
|
3742
3798
|
var getClassName16 = get_class_name_factory_default("DraggableComponent", styles_module_default11);
|
@@ -3744,7 +3800,7 @@ var DEBUG2 = false;
|
|
3744
3800
|
var space = 8;
|
3745
3801
|
var actionsOverlayTop = space * 6.5;
|
3746
3802
|
var actionsTop = -(actionsOverlayTop - 8);
|
3747
|
-
var
|
3803
|
+
var actionsSide = space;
|
3748
3804
|
var DefaultActionBar = ({
|
3749
3805
|
label,
|
3750
3806
|
children
|
@@ -3776,7 +3832,6 @@ var DraggableComponent = ({
|
|
3776
3832
|
} = useAppContext();
|
3777
3833
|
const isModifierHeld = useModifierHeld("Alt");
|
3778
3834
|
const ctx = (0, import_react16.useContext)(dropZoneContext);
|
3779
|
-
const overlayRef = (0, import_react16.useRef)(null);
|
3780
3835
|
const [localZones, setLocalZones] = (0, import_react16.useState)({});
|
3781
3836
|
const registerLocalZone = (0, import_react16.useCallback)(
|
3782
3837
|
(zoneCompound2, active) => {
|
@@ -3846,24 +3901,31 @@ var DraggableComponent = ({
|
|
3846
3901
|
(_b = iframe.enabled ? (_a = ref.current) == null ? void 0 : _a.ownerDocument.body : document.getElementById("puck-preview")) != null ? _b : document.body
|
3847
3902
|
);
|
3848
3903
|
}, [iframe.enabled]);
|
3849
|
-
const
|
3904
|
+
const portalContainerRect = (0, import_react16.useMemo)(() => {
|
3905
|
+
const portalContainerEl = iframe.enabled ? null : document.getElementById("puck-preview");
|
3906
|
+
return portalContainerEl == null ? void 0 : portalContainerEl.getBoundingClientRect();
|
3907
|
+
}, [iframe.enabled]);
|
3908
|
+
const getStyle = (0, import_react16.useCallback)(() => {
|
3850
3909
|
var _a, _b;
|
3851
|
-
if (!ref.current
|
3910
|
+
if (!ref.current) return;
|
3852
3911
|
const rect = ref.current.getBoundingClientRect();
|
3853
|
-
const
|
3854
|
-
const view = doc.defaultView;
|
3855
|
-
const portalContainerEl = iframe.enabled ? null : document.getElementById("puck-preview");
|
3856
|
-
const portalContainerRect = portalContainerEl == null ? void 0 : portalContainerEl.getBoundingClientRect();
|
3912
|
+
const deepScrollPosition = getDeepScrollPosition(ref.current);
|
3857
3913
|
const scroll = {
|
3858
|
-
x:
|
3859
|
-
y:
|
3914
|
+
x: deepScrollPosition.x - ((_a = portalContainerRect == null ? void 0 : portalContainerRect.left) != null ? _a : 0),
|
3915
|
+
y: deepScrollPosition.y - ((_b = portalContainerRect == null ? void 0 : portalContainerRect.top) != null ? _b : 0)
|
3916
|
+
};
|
3917
|
+
const style2 = {
|
3918
|
+
left: `${rect.left + scroll.x}px`,
|
3919
|
+
top: `${rect.top + scroll.y}px`,
|
3920
|
+
height: `${rect.height}px`,
|
3921
|
+
width: `${rect.width}px`
|
3860
3922
|
};
|
3861
|
-
|
3862
|
-
|
3863
|
-
|
3864
|
-
|
3865
|
-
|
3866
|
-
}, [ref,
|
3923
|
+
return style2;
|
3924
|
+
}, [ref, portalContainerRect]);
|
3925
|
+
const [style, setStyle] = (0, import_react16.useState)();
|
3926
|
+
const sync = (0, import_react16.useCallback)(() => {
|
3927
|
+
setStyle(getStyle());
|
3928
|
+
}, [ref, iframe]);
|
3867
3929
|
(0, import_react16.useEffect)(() => {
|
3868
3930
|
ctx == null ? void 0 : ctx.registerPath({
|
3869
3931
|
index,
|
@@ -3945,6 +4007,7 @@ var DraggableComponent = ({
|
|
3945
4007
|
el.removeAttribute("data-puck-dragging");
|
3946
4008
|
}
|
3947
4009
|
return () => {
|
4010
|
+
el.removeAttribute("data-puck-component");
|
3948
4011
|
el.removeEventListener("click", onClick);
|
3949
4012
|
el.removeEventListener("mouseover", _onMouseOver);
|
3950
4013
|
el.removeEventListener("mouseout", _onMouseOut);
|
@@ -3952,7 +4015,6 @@ var DraggableComponent = ({
|
|
3952
4015
|
};
|
3953
4016
|
}, [
|
3954
4017
|
ref,
|
3955
|
-
overlayRef,
|
3956
4018
|
onClick,
|
3957
4019
|
containsActiveZone,
|
3958
4020
|
zoneCompound,
|
@@ -3970,20 +4032,35 @@ var DraggableComponent = ({
|
|
3970
4032
|
};
|
3971
4033
|
}
|
3972
4034
|
}, [disabled, ref]);
|
3973
|
-
const isVisible =
|
3974
|
-
|
3975
|
-
|
3976
|
-
|
3977
|
-
|
3978
|
-
|
3979
|
-
|
4035
|
+
const [isVisible, setIsVisible] = (0, import_react16.useState)(false);
|
4036
|
+
(0, import_react16.useEffect)(() => {
|
4037
|
+
sync();
|
4038
|
+
if ((isSelected || hover || indicativeHover) && !userIsDragging) {
|
4039
|
+
setIsVisible(true);
|
4040
|
+
} else {
|
4041
|
+
setIsVisible(false);
|
3980
4042
|
}
|
3981
|
-
}, []);
|
3982
|
-
(0, import_react16.
|
3983
|
-
|
3984
|
-
|
3985
|
-
|
3986
|
-
|
4043
|
+
}, [isSelected, hover, indicativeHover, iframe, state.data, userIsDragging]);
|
4044
|
+
const syncActionsPosition = (0, import_react16.useCallback)(
|
4045
|
+
(el) => {
|
4046
|
+
if (el) {
|
4047
|
+
const view = el.ownerDocument.defaultView;
|
4048
|
+
if (view) {
|
4049
|
+
const rect = el.getBoundingClientRect();
|
4050
|
+
const diffLeft = rect.x;
|
4051
|
+
const exceedsBoundsLeft = diffLeft < 0;
|
4052
|
+
if (exceedsBoundsLeft) {
|
4053
|
+
el.style.transformOrigin = "left top";
|
4054
|
+
el.style.left = "0px";
|
4055
|
+
} else {
|
4056
|
+
el.style.transformOrigin = "right top";
|
4057
|
+
el.style.left = "";
|
4058
|
+
}
|
4059
|
+
}
|
4060
|
+
}
|
4061
|
+
},
|
4062
|
+
[zoomConfig]
|
4063
|
+
);
|
3987
4064
|
(0, import_react16.useEffect)(() => {
|
3988
4065
|
if (userDragAxis) {
|
3989
4066
|
setDragAxis(userDragAxis);
|
@@ -3998,7 +4075,6 @@ var DraggableComponent = ({
|
|
3998
4075
|
}
|
3999
4076
|
setDragAxis(autoDragAxis);
|
4000
4077
|
}, [ref, userDragAxis, autoDragAxis]);
|
4001
|
-
(0, import_react16.useEffect)(sync, [ref, overlayRef, isVisible, hover, iframe, state.data]);
|
4002
4078
|
return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
4003
4079
|
DropZoneProvider,
|
4004
4080
|
{
|
@@ -4021,7 +4097,7 @@ var DraggableComponent = ({
|
|
4021
4097
|
isModifierHeld,
|
4022
4098
|
hover: hover || indicativeHover
|
4023
4099
|
}),
|
4024
|
-
|
4100
|
+
style: __spreadValues({}, style),
|
4025
4101
|
children: [
|
4026
4102
|
debug,
|
4027
4103
|
isLoading && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: getClassName16("loadingOverlay"), children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Loader, {}) }),
|
@@ -4030,9 +4106,7 @@ var DraggableComponent = ({
|
|
4030
4106
|
{
|
4031
4107
|
className: getClassName16("actionsOverlay"),
|
4032
4108
|
style: {
|
4033
|
-
top: actionsOverlayTop / zoomConfig.zoom
|
4034
|
-
// Offset against left of frame
|
4035
|
-
minWidth: actionsWidth + 2 * actionsRight
|
4109
|
+
top: actionsOverlayTop / zoomConfig.zoom
|
4036
4110
|
},
|
4037
4111
|
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
4038
4112
|
"div",
|
@@ -4041,9 +4115,11 @@ var DraggableComponent = ({
|
|
4041
4115
|
style: {
|
4042
4116
|
transform: `scale(${1 / zoomConfig.zoom}`,
|
4043
4117
|
top: actionsTop / zoomConfig.zoom,
|
4044
|
-
right:
|
4118
|
+
right: 0,
|
4119
|
+
paddingLeft: actionsSide,
|
4120
|
+
paddingRight: actionsSide
|
4045
4121
|
},
|
4046
|
-
ref:
|
4122
|
+
ref: syncActionsPosition,
|
4047
4123
|
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(CustomActionBar, { label: DEBUG2 ? id : label, children: [
|
4048
4124
|
permissions.duplicate && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(ActionBar.Action, { onClick: onDuplicate, label: "Duplicate", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Copy, { size: 16 }) }),
|
4049
4125
|
permissions.delete && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(ActionBar.Action, { onClick: onDelete, label: "Delete", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Trash, { size: 16 }) })
|
@@ -4066,7 +4142,7 @@ var DraggableComponent = ({
|
|
4066
4142
|
|
4067
4143
|
// css-module:/home/runner/work/puck/puck/packages/core/components/DropZone/styles.module.css#css-module
|
4068
4144
|
init_react_import();
|
4069
|
-
var styles_module_default12 = { "DropZone": "
|
4145
|
+
var styles_module_default12 = { "DropZone": "_DropZone_74ebh_1", "DropZone--hasChildren": "_DropZone--hasChildren_74ebh_12", "DropZone--userIsDragging": "_DropZone--userIsDragging_74ebh_20", "DropZone--isAreaSelected": "_DropZone--isAreaSelected_74ebh_29", "DropZone--hoveringOverArea": "_DropZone--hoveringOverArea_74ebh_30", "DropZone--isRootZone": "_DropZone--isRootZone_74ebh_30", "DropZone--isDestination": "_DropZone--isDestination_74ebh_40", "DropZone-item": "_DropZone-item_74ebh_52", "DropZone-hitbox": "_DropZone-hitbox_74ebh_56", "DropZone--isEnabled": "_DropZone--isEnabled_74ebh_64" };
|
4070
4146
|
|
4071
4147
|
// components/DropZone/context.tsx
|
4072
4148
|
init_react_import();
|
@@ -4280,7 +4356,7 @@ function DropZoneEdit({
|
|
4280
4356
|
const [dragAxis, setDragAxis] = (0, import_react18.useState)(
|
4281
4357
|
collisionAxis || DEFAULT_DRAG_AXIS
|
4282
4358
|
);
|
4283
|
-
(0, import_react18.
|
4359
|
+
const calculateDragAxis = (0, import_react18.useCallback)(() => {
|
4284
4360
|
if (ref.current) {
|
4285
4361
|
const computedStyle = window.getComputedStyle(ref.current);
|
4286
4362
|
if (computedStyle.display === "grid") {
|
@@ -4291,7 +4367,17 @@ function DropZoneEdit({
|
|
4291
4367
|
setDragAxis(DEFAULT_DRAG_AXIS);
|
4292
4368
|
}
|
4293
4369
|
}
|
4294
|
-
}, [ref
|
4370
|
+
}, [ref.current]);
|
4371
|
+
(0, import_react18.useEffect)(calculateDragAxis, [appContext2.status, collisionAxis]);
|
4372
|
+
(0, import_react18.useEffect)(() => {
|
4373
|
+
const onViewportChange = () => {
|
4374
|
+
calculateDragAxis();
|
4375
|
+
};
|
4376
|
+
window.addEventListener("viewportchange", onViewportChange);
|
4377
|
+
return () => {
|
4378
|
+
window.removeEventListener("viewportchange", onViewportChange);
|
4379
|
+
};
|
4380
|
+
}, []);
|
4295
4381
|
return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
|
4296
4382
|
"div",
|
4297
4383
|
{
|
@@ -4580,6 +4666,11 @@ var findDeepestCandidate = (position, manager) => {
|
|
4580
4666
|
if (candidateData2.areaId === draggedCandidateId) {
|
4581
4667
|
return false;
|
4582
4668
|
}
|
4669
|
+
} else if (candidate.type === "component") {
|
4670
|
+
const candidateData2 = candidate.data;
|
4671
|
+
if (!candidateData2.inDroppableZone) {
|
4672
|
+
return false;
|
4673
|
+
}
|
4583
4674
|
}
|
4584
4675
|
return true;
|
4585
4676
|
});
|
@@ -4617,9 +4708,14 @@ var createNestedDroppablePlugin = ({
|
|
4617
4708
|
y: event.clientY
|
4618
4709
|
});
|
4619
4710
|
};
|
4620
|
-
document.body.addEventListener("pointermove", handlePointerMove
|
4711
|
+
document.body.addEventListener("pointermove", handlePointerMove, {
|
4712
|
+
capture: true
|
4713
|
+
// dndkit's PointerSensor prevents propagation during drag
|
4714
|
+
});
|
4621
4715
|
this.destroy = () => {
|
4622
|
-
document.body.removeEventListener("pointermove", handlePointerMove
|
4716
|
+
document.body.removeEventListener("pointermove", handlePointerMove, {
|
4717
|
+
capture: true
|
4718
|
+
});
|
4623
4719
|
cleanupEffect();
|
4624
4720
|
};
|
4625
4721
|
});
|
@@ -4931,6 +5027,11 @@ var reduceUi = (ui, action) => {
|
|
4931
5027
|
}
|
4932
5028
|
return __spreadValues(__spreadValues({}, ui), action.ui(ui));
|
4933
5029
|
}
|
5030
|
+
if (action.type === "duplicate") {
|
5031
|
+
return __spreadProps(__spreadValues({}, ui), {
|
5032
|
+
itemSelector: { index: action.sourceIndex + 1, zone: action.sourceZone }
|
5033
|
+
});
|
5034
|
+
}
|
4934
5035
|
return ui;
|
4935
5036
|
};
|
4936
5037
|
|
@@ -5016,6 +5117,267 @@ var insertComponent = (componentType, zone, index, {
|
|
5016
5117
|
|
5017
5118
|
// components/DragDropContext/index.tsx
|
5018
5119
|
var import_use_debounce2 = require("use-debounce");
|
5120
|
+
var import_utilities2 = require("@dnd-kit/dom/utilities");
|
5121
|
+
|
5122
|
+
// components/DragDropContext/PointerSensor.ts
|
5123
|
+
init_react_import();
|
5124
|
+
var import_utilities = require("@dnd-kit/dom/utilities");
|
5125
|
+
var _clearTimeout;
|
5126
|
+
var _PointerSensor = class _PointerSensor extends Sensor {
|
5127
|
+
constructor(manager, options) {
|
5128
|
+
super(manager);
|
5129
|
+
this.manager = manager;
|
5130
|
+
this.options = options;
|
5131
|
+
this.listeners = new import_utilities.Listeners();
|
5132
|
+
this.cleanup = /* @__PURE__ */ new Set();
|
5133
|
+
this.source = void 0;
|
5134
|
+
__privateAdd(this, _clearTimeout);
|
5135
|
+
this.handleCancel = this.handleCancel.bind(this);
|
5136
|
+
this.handlePointerUp = this.handlePointerUp.bind(this);
|
5137
|
+
this.handleKeyDown = this.handleKeyDown.bind(this);
|
5138
|
+
E(() => {
|
5139
|
+
const unbindGlobal = this.bindGlobal(options != null ? options : {});
|
5140
|
+
return () => {
|
5141
|
+
unbindGlobal();
|
5142
|
+
};
|
5143
|
+
});
|
5144
|
+
}
|
5145
|
+
bind(source, options = this.options) {
|
5146
|
+
const unbind = E(() => {
|
5147
|
+
var _a;
|
5148
|
+
const target = (_a = source.handle) != null ? _a : source.element;
|
5149
|
+
const listener = (event) => {
|
5150
|
+
if ((0, import_utilities.isPointerEvent)(event)) {
|
5151
|
+
this.handlePointerDown(event, source, options);
|
5152
|
+
}
|
5153
|
+
};
|
5154
|
+
if (target) {
|
5155
|
+
patchWindow(target.ownerDocument.defaultView);
|
5156
|
+
target.addEventListener("pointerdown", listener);
|
5157
|
+
return () => {
|
5158
|
+
target.removeEventListener("pointerdown", listener);
|
5159
|
+
};
|
5160
|
+
}
|
5161
|
+
});
|
5162
|
+
return unbind;
|
5163
|
+
}
|
5164
|
+
bindGlobal(options) {
|
5165
|
+
const documents = /* @__PURE__ */ new Set();
|
5166
|
+
for (const draggable of this.manager.registry.draggables.value) {
|
5167
|
+
if (draggable.element) {
|
5168
|
+
documents.add((0, import_utilities.getDocument)(draggable.element));
|
5169
|
+
}
|
5170
|
+
}
|
5171
|
+
for (const droppable of this.manager.registry.droppables.value) {
|
5172
|
+
if (droppable.element) {
|
5173
|
+
documents.add((0, import_utilities.getDocument)(droppable.element));
|
5174
|
+
}
|
5175
|
+
}
|
5176
|
+
const unbindFns = Array.from(documents).map(
|
5177
|
+
(doc) => this.listeners.bind(doc, [
|
5178
|
+
{
|
5179
|
+
type: "pointermove",
|
5180
|
+
listener: (event) => this.handlePointerMove(event, doc, options)
|
5181
|
+
},
|
5182
|
+
{
|
5183
|
+
type: "pointerup",
|
5184
|
+
listener: this.handlePointerUp,
|
5185
|
+
options: {
|
5186
|
+
capture: true
|
5187
|
+
}
|
5188
|
+
},
|
5189
|
+
{
|
5190
|
+
// Cancel activation if there is a competing Drag and Drop interaction
|
5191
|
+
type: "dragstart",
|
5192
|
+
listener: this.handleDragStart
|
5193
|
+
}
|
5194
|
+
])
|
5195
|
+
);
|
5196
|
+
return () => {
|
5197
|
+
unbindFns.forEach((unbind) => unbind());
|
5198
|
+
};
|
5199
|
+
}
|
5200
|
+
handlePointerDown(event, source, options = {}) {
|
5201
|
+
if (this.disabled || !event.isPrimary || event.button !== 0 || !(0, import_utilities.isElement)(event.target) || source.disabled) {
|
5202
|
+
return;
|
5203
|
+
}
|
5204
|
+
const offset = (0, import_utilities.getFrameTransform)(source.element);
|
5205
|
+
this.initialCoordinates = {
|
5206
|
+
x: event.clientX * offset.scaleX + offset.x,
|
5207
|
+
y: event.clientY * offset.scaleY + offset.y
|
5208
|
+
};
|
5209
|
+
this.source = source;
|
5210
|
+
const { activationConstraints } = options;
|
5211
|
+
const constraints = typeof activationConstraints === "function" ? activationConstraints(event, source) : activationConstraints;
|
5212
|
+
event.stopImmediatePropagation();
|
5213
|
+
if (!(constraints == null ? void 0 : constraints.delay) && !(constraints == null ? void 0 : constraints.distance)) {
|
5214
|
+
this.handleStart(source, event);
|
5215
|
+
} else {
|
5216
|
+
const { delay } = constraints;
|
5217
|
+
if (delay) {
|
5218
|
+
const timeout3 = setTimeout(
|
5219
|
+
() => this.handleStart(source, event),
|
5220
|
+
delay.value
|
5221
|
+
);
|
5222
|
+
__privateSet(this, _clearTimeout, () => {
|
5223
|
+
clearTimeout(timeout3);
|
5224
|
+
__privateSet(this, _clearTimeout, void 0);
|
5225
|
+
});
|
5226
|
+
}
|
5227
|
+
}
|
5228
|
+
const cleanup = () => {
|
5229
|
+
var _a;
|
5230
|
+
(_a = __privateGet(this, _clearTimeout)) == null ? void 0 : _a.call(this);
|
5231
|
+
this.initialCoordinates = void 0;
|
5232
|
+
this.source = void 0;
|
5233
|
+
};
|
5234
|
+
this.cleanup.add(cleanup);
|
5235
|
+
}
|
5236
|
+
handlePointerMove(event, doc, options) {
|
5237
|
+
if (!this.source) {
|
5238
|
+
return;
|
5239
|
+
}
|
5240
|
+
const ownerDocument = this.source.element && (0, import_utilities.getDocument)(this.source.element);
|
5241
|
+
if (doc !== ownerDocument) {
|
5242
|
+
return;
|
5243
|
+
}
|
5244
|
+
const coordinates = {
|
5245
|
+
x: event.clientX,
|
5246
|
+
y: event.clientY
|
5247
|
+
};
|
5248
|
+
const offset = (0, import_utilities.getFrameTransform)(this.source.element);
|
5249
|
+
coordinates.x = coordinates.x * offset.scaleX + offset.x;
|
5250
|
+
coordinates.y = coordinates.y * offset.scaleY + offset.y;
|
5251
|
+
if (this.manager.dragOperation.status.dragging) {
|
5252
|
+
event.preventDefault();
|
5253
|
+
event.stopPropagation();
|
5254
|
+
this.manager.actions.move({ to: coordinates });
|
5255
|
+
return;
|
5256
|
+
}
|
5257
|
+
if (!this.initialCoordinates) {
|
5258
|
+
return;
|
5259
|
+
}
|
5260
|
+
const delta = {
|
5261
|
+
x: coordinates.x - this.initialCoordinates.x,
|
5262
|
+
y: coordinates.y - this.initialCoordinates.y
|
5263
|
+
};
|
5264
|
+
const { activationConstraints } = options;
|
5265
|
+
const constraints = typeof activationConstraints === "function" ? activationConstraints(event, this.source) : activationConstraints;
|
5266
|
+
const { distance, delay } = constraints != null ? constraints : {};
|
5267
|
+
if (distance) {
|
5268
|
+
if (distance.tolerance != null && exceedsDistance(delta, distance.tolerance)) {
|
5269
|
+
return this.handleCancel();
|
5270
|
+
}
|
5271
|
+
if (exceedsDistance(delta, distance.value)) {
|
5272
|
+
return this.handleStart(this.source, event);
|
5273
|
+
}
|
5274
|
+
}
|
5275
|
+
if (delay) {
|
5276
|
+
if (exceedsDistance(delta, delay.tolerance)) {
|
5277
|
+
return this.handleCancel();
|
5278
|
+
}
|
5279
|
+
}
|
5280
|
+
}
|
5281
|
+
handlePointerUp(event) {
|
5282
|
+
event.preventDefault();
|
5283
|
+
event.stopPropagation();
|
5284
|
+
const { status } = this.manager.dragOperation;
|
5285
|
+
if (!status.idle) {
|
5286
|
+
const canceled = !status.initialized;
|
5287
|
+
this.manager.actions.stop({ canceled });
|
5288
|
+
}
|
5289
|
+
this.cleanup.forEach((cleanup) => cleanup());
|
5290
|
+
this.cleanup.clear();
|
5291
|
+
}
|
5292
|
+
handleKeyDown(event) {
|
5293
|
+
if (event.key === "Escape") {
|
5294
|
+
event.preventDefault();
|
5295
|
+
this.handleCancel();
|
5296
|
+
}
|
5297
|
+
}
|
5298
|
+
handleStart(source, event) {
|
5299
|
+
var _a;
|
5300
|
+
const { manager, initialCoordinates } = this;
|
5301
|
+
(_a = __privateGet(this, _clearTimeout)) == null ? void 0 : _a.call(this);
|
5302
|
+
if (!initialCoordinates || manager.dragOperation.status.initialized) {
|
5303
|
+
return;
|
5304
|
+
}
|
5305
|
+
if (event.defaultPrevented) {
|
5306
|
+
return;
|
5307
|
+
}
|
5308
|
+
event.preventDefault();
|
5309
|
+
o(() => {
|
5310
|
+
manager.actions.setDragSource(source.id);
|
5311
|
+
manager.actions.start({ coordinates: initialCoordinates, event });
|
5312
|
+
});
|
5313
|
+
const ownerDocument = (0, import_utilities.getDocument)(event.target);
|
5314
|
+
const unbind = this.listeners.bind(ownerDocument, [
|
5315
|
+
{
|
5316
|
+
// Prevent scrolling on touch devices
|
5317
|
+
type: "touchmove",
|
5318
|
+
listener: preventDefault,
|
5319
|
+
options: {
|
5320
|
+
passive: false
|
5321
|
+
}
|
5322
|
+
},
|
5323
|
+
{
|
5324
|
+
// Prevent click events
|
5325
|
+
type: "click",
|
5326
|
+
listener: preventDefault
|
5327
|
+
},
|
5328
|
+
{
|
5329
|
+
type: "keydown",
|
5330
|
+
listener: this.handleKeyDown
|
5331
|
+
}
|
5332
|
+
]);
|
5333
|
+
ownerDocument.body.setPointerCapture(event.pointerId);
|
5334
|
+
this.cleanup.add(unbind);
|
5335
|
+
}
|
5336
|
+
handleDragStart(event) {
|
5337
|
+
const { target } = event;
|
5338
|
+
if (!(0, import_utilities.isElement)(target)) {
|
5339
|
+
return;
|
5340
|
+
}
|
5341
|
+
const isNativeDraggable = (0, import_utilities.isHTMLElement)(target) && target.draggable && target.getAttribute("draggable") === "true";
|
5342
|
+
if (isNativeDraggable) {
|
5343
|
+
this.handleCancel();
|
5344
|
+
} else {
|
5345
|
+
preventDefault(event);
|
5346
|
+
}
|
5347
|
+
}
|
5348
|
+
handleCancel() {
|
5349
|
+
const { dragOperation } = this.manager;
|
5350
|
+
if (dragOperation.status.initialized) {
|
5351
|
+
this.manager.actions.stop({ canceled: true });
|
5352
|
+
}
|
5353
|
+
this.cleanup.forEach((cleanup) => cleanup());
|
5354
|
+
this.cleanup.clear();
|
5355
|
+
}
|
5356
|
+
destroy() {
|
5357
|
+
this.listeners.clear();
|
5358
|
+
}
|
5359
|
+
};
|
5360
|
+
_clearTimeout = new WeakMap();
|
5361
|
+
_PointerSensor.configure = configurator(_PointerSensor);
|
5362
|
+
var PointerSensor = _PointerSensor;
|
5363
|
+
function preventDefault(event) {
|
5364
|
+
event.preventDefault();
|
5365
|
+
}
|
5366
|
+
function noop() {
|
5367
|
+
}
|
5368
|
+
var windows = /* @__PURE__ */ new WeakSet();
|
5369
|
+
function patchWindow(window2) {
|
5370
|
+
if (!window2 || windows.has(window2)) {
|
5371
|
+
return;
|
5372
|
+
}
|
5373
|
+
window2.addEventListener("touchmove", noop, {
|
5374
|
+
capture: false,
|
5375
|
+
passive: false
|
5376
|
+
});
|
5377
|
+
windows.add(window2);
|
5378
|
+
}
|
5379
|
+
|
5380
|
+
// components/DragDropContext/index.tsx
|
5019
5381
|
var import_jsx_runtime24 = require("react/jsx-runtime");
|
5020
5382
|
var dragListenerContext = (0, import_react20.createContext)({
|
5021
5383
|
dragListeners: {}
|
@@ -5031,10 +5393,11 @@ function useDragListener(type, fn, deps = []) {
|
|
5031
5393
|
}, deps);
|
5032
5394
|
}
|
5033
5395
|
var previewContext = (0, import_react20.createContext)(null);
|
5034
|
-
var AREA_CHANGE_DEBOUNCE_MS =
|
5396
|
+
var AREA_CHANGE_DEBOUNCE_MS = 100;
|
5035
5397
|
var DragDropContextClient = ({ children }) => {
|
5036
5398
|
const { state, config, dispatch, resolveData } = useAppContext();
|
5037
5399
|
const [preview, setPreview] = (0, import_react20.useState)(null);
|
5400
|
+
const previewRef = (0, import_react20.useRef)(null);
|
5038
5401
|
const { data } = state;
|
5039
5402
|
const [deepest, setDeepest] = (0, import_react20.useState)(null);
|
5040
5403
|
const [nextDeepest, setNextDeepest] = (0, import_react20.useState)(null);
|
@@ -5081,6 +5444,25 @@ var DragDropContextClient = ({ children }) => {
|
|
5081
5444
|
}
|
5082
5445
|
})
|
5083
5446
|
]);
|
5447
|
+
const [sensors] = (0, import_react20.useState)(() => [
|
5448
|
+
PointerSensor.configure({
|
5449
|
+
activationConstraints(event, source) {
|
5450
|
+
var _a;
|
5451
|
+
const { pointerType, target } = event;
|
5452
|
+
if (pointerType === "mouse" && (0, import_utilities2.isElement)(target) && (source.handle === target || ((_a = source.handle) == null ? void 0 : _a.contains(target)))) {
|
5453
|
+
return void 0;
|
5454
|
+
}
|
5455
|
+
const delay = { value: 200, tolerance: 10 };
|
5456
|
+
if (pointerType === "touch") {
|
5457
|
+
return { delay };
|
5458
|
+
}
|
5459
|
+
return {
|
5460
|
+
delay,
|
5461
|
+
distance: { value: 5 }
|
5462
|
+
};
|
5463
|
+
}
|
5464
|
+
})
|
5465
|
+
]);
|
5084
5466
|
const [draggedItem, setDraggedItem] = (0, import_react20.useState)();
|
5085
5467
|
const [dragListeners, setDragListeners] = (0, import_react20.useState)({});
|
5086
5468
|
const [pathData, setPathData] = (0, import_react20.useState)();
|
@@ -5119,32 +5501,34 @@ var DragDropContextClient = ({ children }) => {
|
|
5119
5501
|
import_react19.DragDropProvider,
|
5120
5502
|
{
|
5121
5503
|
plugins,
|
5504
|
+
sensors,
|
5122
5505
|
onDragEnd: (event, manager) => {
|
5123
5506
|
const { source, target } = event.operation;
|
5507
|
+
deepestRef.current = null;
|
5124
5508
|
if (!source) {
|
5125
5509
|
setDraggedItem(null);
|
5126
5510
|
return;
|
5127
5511
|
}
|
5128
5512
|
const { zone, index } = source.data;
|
5513
|
+
const thisPreview = previewRef.current ? __spreadValues({}, previewRef.current) : null;
|
5514
|
+
previewRef.current = null;
|
5129
5515
|
setTimeout(() => {
|
5130
5516
|
var _a, _b;
|
5131
5517
|
setDraggedItem(null);
|
5132
5518
|
if (event.canceled || (target == null ? void 0 : target.type) === "void") {
|
5133
|
-
|
5134
|
-
setPreview(null);
|
5135
|
-
}
|
5519
|
+
setPreview(null);
|
5136
5520
|
(_a = dragListeners.dragend) == null ? void 0 : _a.forEach((fn) => {
|
5137
5521
|
fn(event, manager);
|
5138
5522
|
});
|
5139
5523
|
return;
|
5140
5524
|
}
|
5141
|
-
if (
|
5525
|
+
if (thisPreview) {
|
5142
5526
|
setPreview(null);
|
5143
|
-
if (
|
5527
|
+
if (thisPreview.type === "insert") {
|
5144
5528
|
insertComponent(
|
5145
|
-
|
5146
|
-
|
5147
|
-
|
5529
|
+
thisPreview.componentType,
|
5530
|
+
thisPreview.zone,
|
5531
|
+
thisPreview.index,
|
5148
5532
|
{ config, dispatch, resolveData, state }
|
5149
5533
|
);
|
5150
5534
|
} else if (initialSelector.current) {
|
@@ -5152,8 +5536,8 @@ var DragDropContextClient = ({ children }) => {
|
|
5152
5536
|
type: "move",
|
5153
5537
|
sourceIndex: initialSelector.current.index,
|
5154
5538
|
sourceZone: initialSelector.current.zone,
|
5155
|
-
destinationIndex:
|
5156
|
-
destinationZone:
|
5539
|
+
destinationIndex: thisPreview.index,
|
5540
|
+
destinationZone: thisPreview.zone,
|
5157
5541
|
recordHistory: false
|
5158
5542
|
});
|
5159
5543
|
}
|
@@ -5169,7 +5553,7 @@ var DragDropContextClient = ({ children }) => {
|
|
5169
5553
|
(_b = dragListeners.dragend) == null ? void 0 : _b.forEach((fn) => {
|
5170
5554
|
fn(event, manager);
|
5171
5555
|
});
|
5172
|
-
},
|
5556
|
+
}, 300);
|
5173
5557
|
},
|
5174
5558
|
onDragOver: (event, manager) => {
|
5175
5559
|
var _a, _b, _c3, _d;
|
@@ -5207,7 +5591,7 @@ var DragDropContextClient = ({ children }) => {
|
|
5207
5591
|
return;
|
5208
5592
|
}
|
5209
5593
|
if (dragMode.current === "new") {
|
5210
|
-
|
5594
|
+
previewRef.current = {
|
5211
5595
|
componentType: sourceData.componentType,
|
5212
5596
|
type: "insert",
|
5213
5597
|
index: targetIndex,
|
@@ -5215,7 +5599,8 @@ var DragDropContextClient = ({ children }) => {
|
|
5215
5599
|
props: {
|
5216
5600
|
id: source.id.toString()
|
5217
5601
|
}
|
5218
|
-
}
|
5602
|
+
};
|
5603
|
+
setPreview(previewRef.current);
|
5219
5604
|
} else {
|
5220
5605
|
if (!initialSelector.current) {
|
5221
5606
|
initialSelector.current = {
|
@@ -5225,13 +5610,14 @@ var DragDropContextClient = ({ children }) => {
|
|
5225
5610
|
}
|
5226
5611
|
const item = getItem(initialSelector.current, data);
|
5227
5612
|
if (item) {
|
5228
|
-
|
5613
|
+
previewRef.current = {
|
5229
5614
|
componentType: sourceData.componentType,
|
5230
5615
|
type: "move",
|
5231
5616
|
index: targetIndex,
|
5232
5617
|
zone: targetZone,
|
5233
5618
|
props: item.props
|
5234
|
-
}
|
5619
|
+
};
|
5620
|
+
setPreview(previewRef.current);
|
5235
5621
|
}
|
5236
5622
|
}
|
5237
5623
|
(_d = dragListeners.dragover) == null ? void 0 : _d.forEach((fn) => {
|
@@ -5398,7 +5784,9 @@ var Drawer = ({
|
|
5398
5784
|
const [id] = (0, import_react21.useState)(generateId());
|
5399
5785
|
const { ref } = useDroppableSafe({
|
5400
5786
|
id,
|
5401
|
-
type: "void"
|
5787
|
+
type: "void",
|
5788
|
+
collisionPriority: 0
|
5789
|
+
// Never collide with this, but we use it so NestedDroppablePlugin respects the Drawer
|
5402
5790
|
});
|
5403
5791
|
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: getClassName18(), ref, children });
|
5404
5792
|
};
|
@@ -6254,11 +6642,12 @@ var styles_module_default18 = { "PuckPreview": "_PuckPreview_z2rgu_1", "PuckPrev
|
|
6254
6642
|
var import_jsx_runtime33 = require("react/jsx-runtime");
|
6255
6643
|
var getClassName23 = get_class_name_factory_default("PuckPreview", styles_module_default18);
|
6256
6644
|
var useBubbleIframeEvents = (ref) => {
|
6645
|
+
const { status } = useAppContext();
|
6257
6646
|
(0, import_react28.useEffect)(() => {
|
6258
6647
|
var _a;
|
6259
|
-
if (ref.current) {
|
6648
|
+
if (ref.current && status === "READY") {
|
6260
6649
|
const iframe = ref.current;
|
6261
|
-
|
6650
|
+
const handlePointerMove = (event) => {
|
6262
6651
|
var _a2;
|
6263
6652
|
const rect = iframe.getBoundingClientRect();
|
6264
6653
|
const evt = new CustomEvent("pointermove", {
|
@@ -6269,9 +6658,23 @@ var useBubbleIframeEvents = (ref) => {
|
|
6269
6658
|
evt.clientX = event.clientX * scaleFactor + rect.left;
|
6270
6659
|
evt.clientY = event.clientY * scaleFactor + rect.top;
|
6271
6660
|
iframe.dispatchEvent(evt);
|
6272
|
-
}
|
6661
|
+
};
|
6662
|
+
(_a = iframe.contentDocument) == null ? void 0 : _a.addEventListener(
|
6663
|
+
"pointermove",
|
6664
|
+
handlePointerMove,
|
6665
|
+
{
|
6666
|
+
capture: true
|
6667
|
+
}
|
6668
|
+
);
|
6669
|
+
return () => {
|
6670
|
+
var _a2;
|
6671
|
+
(_a2 = iframe.contentDocument) == null ? void 0 : _a2.removeEventListener(
|
6672
|
+
"pointermove",
|
6673
|
+
handlePointerMove
|
6674
|
+
);
|
6675
|
+
};
|
6273
6676
|
}
|
6274
|
-
}, [
|
6677
|
+
}, [status]);
|
6275
6678
|
};
|
6276
6679
|
var Preview = ({ id = "puck-preview" }) => {
|
6277
6680
|
const { config, dispatch, state, setStatus, iframe, overrides } = useAppContext();
|
@@ -6992,7 +7395,7 @@ var ViewportControls = ({
|
|
6992
7395
|
|
6993
7396
|
// css-module:/home/runner/work/puck/puck/packages/core/components/Puck/components/Canvas/styles.module.css#css-module
|
6994
7397
|
init_react_import();
|
6995
|
-
var styles_module_default21 = { "PuckCanvas": "
|
7398
|
+
var styles_module_default21 = { "PuckCanvas": "_PuckCanvas_18jay_1", "PuckCanvas-controls": "_PuckCanvas-controls_18jay_16", "PuckCanvas-inner": "_PuckCanvas-inner_18jay_21", "PuckCanvas-root": "_PuckCanvas-root_18jay_30", "PuckCanvas--ready": "_PuckCanvas--ready_18jay_55", "PuckCanvas-loader": "_PuckCanvas-loader_18jay_60", "PuckCanvas--showLoader": "_PuckCanvas--showLoader_18jay_70" };
|
6996
7399
|
|
6997
7400
|
// lib/get-zoom-config.ts
|
6998
7401
|
init_react_import();
|
@@ -7147,6 +7550,14 @@ var Canvas = () => {
|
|
7147
7550
|
},
|
7148
7551
|
suppressHydrationWarning: true,
|
7149
7552
|
id: "puck-canvas-root",
|
7553
|
+
onTransitionEnd: () => {
|
7554
|
+
window.dispatchEvent(
|
7555
|
+
new CustomEvent("viewportchange", {
|
7556
|
+
bubbles: true,
|
7557
|
+
cancelable: false
|
7558
|
+
})
|
7559
|
+
);
|
7560
|
+
},
|
7150
7561
|
children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(CustomPreview, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Preview, {}) })
|
7151
7562
|
}
|
7152
7563
|
),
|
@@ -7217,6 +7628,7 @@ var import_react35 = require("react");
|
|
7217
7628
|
var styles = `
|
7218
7629
|
/* Prevent user from interacting with underlying component */
|
7219
7630
|
[data-puck-component] * {
|
7631
|
+
pointer-events: none;
|
7220
7632
|
user-select: none;
|
7221
7633
|
-webkit-user-select: none;
|
7222
7634
|
}
|