@bpmn-io/properties-panel 4.0.0-0 → 4.0.0-2
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/index.js +390 -810
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +390 -810
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
- package/preact/LICENSE +0 -21
- package/preact/README.md +0 -190
- package/preact/compat/client.js +0 -19
- package/preact/compat/client.mjs +0 -22
- package/preact/compat/dist/compat.js +0 -2
- package/preact/compat/dist/compat.js.map +0 -1
- package/preact/compat/dist/compat.mjs +0 -2
- package/preact/compat/dist/compat.module.js +0 -2
- package/preact/compat/dist/compat.module.js.map +0 -1
- package/preact/compat/dist/compat.umd.js +0 -2
- package/preact/compat/dist/compat.umd.js.map +0 -1
- package/preact/compat/jsx-dev-runtime.js +0 -3
- package/preact/compat/jsx-dev-runtime.mjs +0 -3
- package/preact/compat/jsx-runtime.js +0 -3
- package/preact/compat/jsx-runtime.mjs +0 -3
- package/preact/compat/package.json +0 -50
- package/preact/compat/scheduler.js +0 -15
- package/preact/compat/scheduler.mjs +0 -23
- package/preact/compat/server.browser.js +0 -4
- package/preact/compat/server.js +0 -15
- package/preact/compat/server.mjs +0 -4
- package/preact/compat/src/Children.js +0 -21
- package/preact/compat/src/PureComponent.js +0 -15
- package/preact/compat/src/forwardRef.js +0 -44
- package/preact/compat/src/index.d.ts +0 -194
- package/preact/compat/src/index.js +0 -246
- package/preact/compat/src/internal.d.ts +0 -47
- package/preact/compat/src/memo.js +0 -34
- package/preact/compat/src/portals.js +0 -82
- package/preact/compat/src/render.js +0 -276
- package/preact/compat/src/suspense-list.d.ts +0 -14
- package/preact/compat/src/suspense-list.js +0 -127
- package/preact/compat/src/suspense.d.ts +0 -15
- package/preact/compat/src/suspense.js +0 -270
- package/preact/compat/src/util.js +0 -38
- package/preact/compat/test-utils.js +0 -1
- package/preact/debug/dist/debug.js +0 -2
- package/preact/debug/dist/debug.js.map +0 -1
- package/preact/debug/dist/debug.mjs +0 -2
- package/preact/debug/dist/debug.module.js +0 -2
- package/preact/debug/dist/debug.module.js.map +0 -1
- package/preact/debug/dist/debug.umd.js +0 -2
- package/preact/debug/dist/debug.umd.js.map +0 -1
- package/preact/debug/package.json +0 -27
- package/preact/debug/src/check-props.js +0 -54
- package/preact/debug/src/component-stack.js +0 -146
- package/preact/debug/src/constants.js +0 -3
- package/preact/debug/src/debug.js +0 -463
- package/preact/debug/src/index.d.ts +0 -4
- package/preact/debug/src/index.js +0 -6
- package/preact/debug/src/internal.d.ts +0 -82
- package/preact/debug/src/util.js +0 -15
- package/preact/devtools/dist/devtools.js +0 -2
- package/preact/devtools/dist/devtools.js.map +0 -1
- package/preact/devtools/dist/devtools.mjs +0 -2
- package/preact/devtools/dist/devtools.module.js +0 -2
- package/preact/devtools/dist/devtools.module.js.map +0 -1
- package/preact/devtools/dist/devtools.umd.js +0 -2
- package/preact/devtools/dist/devtools.umd.js.map +0 -1
- package/preact/devtools/package.json +0 -25
- package/preact/devtools/src/devtools.js +0 -10
- package/preact/devtools/src/index.d.ts +0 -8
- package/preact/devtools/src/index.js +0 -15
- package/preact/dist/preact.js +0 -2
- package/preact/dist/preact.js.map +0 -1
- package/preact/dist/preact.min.js +0 -2
- package/preact/dist/preact.min.js.map +0 -1
- package/preact/dist/preact.min.module.js +0 -2
- package/preact/dist/preact.min.module.js.map +0 -1
- package/preact/dist/preact.min.umd.js +0 -2
- package/preact/dist/preact.min.umd.js.map +0 -1
- package/preact/dist/preact.mjs +0 -2
- package/preact/dist/preact.module.js +0 -2
- package/preact/dist/preact.module.js.map +0 -1
- package/preact/dist/preact.umd.js +0 -2
- package/preact/dist/preact.umd.js.map +0 -1
- package/preact/hooks/dist/hooks.js +0 -2
- package/preact/hooks/dist/hooks.js.map +0 -1
- package/preact/hooks/dist/hooks.mjs +0 -2
- package/preact/hooks/dist/hooks.module.js +0 -2
- package/preact/hooks/dist/hooks.module.js.map +0 -1
- package/preact/hooks/dist/hooks.umd.js +0 -2
- package/preact/hooks/dist/hooks.umd.js.map +0 -1
- package/preact/hooks/package.json +0 -35
- package/preact/hooks/src/index.d.ts +0 -142
- package/preact/hooks/src/index.js +0 -511
- package/preact/hooks/src/internal.d.ts +0 -85
- package/preact/jsx-runtime/dist/jsxRuntime.js +0 -2
- package/preact/jsx-runtime/dist/jsxRuntime.js.map +0 -1
- package/preact/jsx-runtime/dist/jsxRuntime.mjs +0 -2
- package/preact/jsx-runtime/dist/jsxRuntime.module.js +0 -2
- package/preact/jsx-runtime/dist/jsxRuntime.module.js.map +0 -1
- package/preact/jsx-runtime/dist/jsxRuntime.umd.js +0 -2
- package/preact/jsx-runtime/dist/jsxRuntime.umd.js.map +0 -1
- package/preact/jsx-runtime/package.json +0 -28
- package/preact/jsx-runtime/src/index.d.ts +0 -50
- package/preact/jsx-runtime/src/index.js +0 -78
- package/preact/package.json +0 -317
- package/preact/src/cjs.js +0 -3
- package/preact/src/clone-element.js +0 -45
- package/preact/src/component.js +0 -235
- package/preact/src/constants.js +0 -4
- package/preact/src/create-context.js +0 -73
- package/preact/src/create-element.js +0 -98
- package/preact/src/diff/catch-error.js +0 -40
- package/preact/src/diff/children.js +0 -356
- package/preact/src/diff/index.js +0 -563
- package/preact/src/diff/props.js +0 -159
- package/preact/src/index.d.ts +0 -378
- package/preact/src/index.js +0 -13
- package/preact/src/internal.d.ts +0 -156
- package/preact/src/jsx.d.ts +0 -2191
- package/preact/src/options.js +0 -16
- package/preact/src/render.js +0 -73
- package/preact/src/util.js +0 -29
- package/preact/test-utils/dist/testUtils.js +0 -2
- package/preact/test-utils/dist/testUtils.js.map +0 -1
- package/preact/test-utils/dist/testUtils.mjs +0 -2
- package/preact/test-utils/dist/testUtils.module.js +0 -2
- package/preact/test-utils/dist/testUtils.module.js.map +0 -1
- package/preact/test-utils/dist/testUtils.umd.js +0 -2
- package/preact/test-utils/dist/testUtils.umd.js.map +0 -1
- package/preact/test-utils/package.json +0 -28
- package/preact/test-utils/src/index.d.ts +0 -3
- package/preact/test-utils/src/index.js +0 -118
package/dist/index.js
CHANGED
|
@@ -2,8 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var hooks = require('preact/hooks');
|
|
6
6
|
var minDash = require('min-dash');
|
|
7
|
+
var compat = require('preact/compat');
|
|
8
|
+
var jsxRuntime = require('preact/jsx-runtime');
|
|
9
|
+
var preact = require('preact');
|
|
7
10
|
var classnames = require('classnames');
|
|
8
11
|
var minDom = require('min-dom');
|
|
9
12
|
var feelers = require('feelers');
|
|
@@ -35,433 +38,10 @@ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
|
35
38
|
var FeelEditor__default = /*#__PURE__*/_interopDefaultLegacy(FeelEditor);
|
|
36
39
|
var focusTrap__namespace = /*#__PURE__*/_interopNamespace(focusTrap);
|
|
37
40
|
|
|
38
|
-
var t,
|
|
39
|
-
r,
|
|
40
|
-
u,
|
|
41
|
-
i,
|
|
42
|
-
o$1 = 0,
|
|
43
|
-
f = [],
|
|
44
|
-
c = [],
|
|
45
|
-
e = preact.options.__b,
|
|
46
|
-
a = preact.options.__r,
|
|
47
|
-
v = preact.options.diffed,
|
|
48
|
-
l = preact.options.__c,
|
|
49
|
-
m = preact.options.unmount;
|
|
50
|
-
function d(t, u) {
|
|
51
|
-
preact.options.__h && preact.options.__h(r, t, o$1 || u), o$1 = 0;
|
|
52
|
-
var i = r.__H || (r.__H = {
|
|
53
|
-
__: [],
|
|
54
|
-
__h: []
|
|
55
|
-
});
|
|
56
|
-
return t >= i.__.length && i.__.push({
|
|
57
|
-
__V: c
|
|
58
|
-
}), i.__[t];
|
|
59
|
-
}
|
|
60
|
-
function h(n) {
|
|
61
|
-
return o$1 = 1, s(B$1, n);
|
|
62
|
-
}
|
|
63
|
-
function s(n, u, i) {
|
|
64
|
-
var o = d(t++, 2);
|
|
65
|
-
if (o.t = n, !o.__c && (o.__ = [i ? i(u) : B$1(void 0, u), function (n) {
|
|
66
|
-
var t = o.__N ? o.__N[0] : o.__[0],
|
|
67
|
-
r = o.t(t, n);
|
|
68
|
-
t !== r && (o.__N = [r, o.__[1]], o.__c.setState({}));
|
|
69
|
-
}], o.__c = r, !r.u)) {
|
|
70
|
-
var f = function (n, t, r) {
|
|
71
|
-
if (!o.__c.__H) return !0;
|
|
72
|
-
var u = o.__c.__H.__.filter(function (n) {
|
|
73
|
-
return n.__c;
|
|
74
|
-
});
|
|
75
|
-
if (u.every(function (n) {
|
|
76
|
-
return !n.__N;
|
|
77
|
-
})) return !c || c.call(this, n, t, r);
|
|
78
|
-
var i = !1;
|
|
79
|
-
return u.forEach(function (n) {
|
|
80
|
-
if (n.__N) {
|
|
81
|
-
var t = n.__[0];
|
|
82
|
-
n.__ = n.__N, n.__N = void 0, t !== n.__[0] && (i = !0);
|
|
83
|
-
}
|
|
84
|
-
}), !(!i && o.__c.props === n) && (!c || c.call(this, n, t, r));
|
|
85
|
-
};
|
|
86
|
-
r.u = !0;
|
|
87
|
-
var c = r.shouldComponentUpdate,
|
|
88
|
-
e = r.componentWillUpdate;
|
|
89
|
-
r.componentWillUpdate = function (n, t, r) {
|
|
90
|
-
if (this.__e) {
|
|
91
|
-
var u = c;
|
|
92
|
-
c = void 0, f(n, t, r), c = u;
|
|
93
|
-
}
|
|
94
|
-
e && e.call(this, n, t, r);
|
|
95
|
-
}, r.shouldComponentUpdate = f;
|
|
96
|
-
}
|
|
97
|
-
return o.__N || o.__;
|
|
98
|
-
}
|
|
99
|
-
function p(u, i) {
|
|
100
|
-
var o = d(t++, 3);
|
|
101
|
-
!preact.options.__s && z$1(o.__H, i) && (o.__ = u, o.i = i, r.__H.__h.push(o));
|
|
102
|
-
}
|
|
103
|
-
function y(u, i) {
|
|
104
|
-
var o = d(t++, 4);
|
|
105
|
-
!preact.options.__s && z$1(o.__H, i) && (o.__ = u, o.i = i, r.__h.push(o));
|
|
106
|
-
}
|
|
107
|
-
function _$1(n) {
|
|
108
|
-
return o$1 = 5, F$1(function () {
|
|
109
|
-
return {
|
|
110
|
-
current: n
|
|
111
|
-
};
|
|
112
|
-
}, []);
|
|
113
|
-
}
|
|
114
|
-
function F$1(n, r) {
|
|
115
|
-
var u = d(t++, 7);
|
|
116
|
-
return z$1(u.__H, r) ? (u.__V = n(), u.i = r, u.__h = n, u.__V) : u.__;
|
|
117
|
-
}
|
|
118
|
-
function T$1(n, t) {
|
|
119
|
-
return o$1 = 8, F$1(function () {
|
|
120
|
-
return n;
|
|
121
|
-
}, t);
|
|
122
|
-
}
|
|
123
|
-
function q$1(n) {
|
|
124
|
-
var u = r.context[n.__c],
|
|
125
|
-
i = d(t++, 9);
|
|
126
|
-
return i.c = n, u ? (null == i.__ && (i.__ = !0, u.sub(r)), u.props.value) : n.__;
|
|
127
|
-
}
|
|
128
|
-
function b() {
|
|
129
|
-
for (var t; t = f.shift();) if (t.__P && t.__H) try {
|
|
130
|
-
t.__H.__h.forEach(k$1), t.__H.__h.forEach(w$1), t.__H.__h = [];
|
|
131
|
-
} catch (r) {
|
|
132
|
-
t.__H.__h = [], preact.options.__e(r, t.__v);
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
preact.options.__b = function (n) {
|
|
136
|
-
r = null, e && e(n);
|
|
137
|
-
}, preact.options.__r = function (n) {
|
|
138
|
-
a && a(n), t = 0;
|
|
139
|
-
var i = (r = n.__c).__H;
|
|
140
|
-
i && (u === r ? (i.__h = [], r.__h = [], i.__.forEach(function (n) {
|
|
141
|
-
n.__N && (n.__ = n.__N), n.__V = c, n.__N = n.i = void 0;
|
|
142
|
-
})) : (i.__h.forEach(k$1), i.__h.forEach(w$1), i.__h = [], t = 0)), u = r;
|
|
143
|
-
}, preact.options.diffed = function (t) {
|
|
144
|
-
v && v(t);
|
|
145
|
-
var o = t.__c;
|
|
146
|
-
o && o.__H && (o.__H.__h.length && (1 !== f.push(o) && i === preact.options.requestAnimationFrame || ((i = preact.options.requestAnimationFrame) || j$1)(b)), o.__H.__.forEach(function (n) {
|
|
147
|
-
n.i && (n.__H = n.i), n.__V !== c && (n.__ = n.__V), n.i = void 0, n.__V = c;
|
|
148
|
-
})), u = r = null;
|
|
149
|
-
}, preact.options.__c = function (t, r) {
|
|
150
|
-
r.some(function (t) {
|
|
151
|
-
try {
|
|
152
|
-
t.__h.forEach(k$1), t.__h = t.__h.filter(function (n) {
|
|
153
|
-
return !n.__ || w$1(n);
|
|
154
|
-
});
|
|
155
|
-
} catch (u) {
|
|
156
|
-
r.some(function (n) {
|
|
157
|
-
n.__h && (n.__h = []);
|
|
158
|
-
}), r = [], preact.options.__e(u, t.__v);
|
|
159
|
-
}
|
|
160
|
-
}), l && l(t, r);
|
|
161
|
-
}, preact.options.unmount = function (t) {
|
|
162
|
-
m && m(t);
|
|
163
|
-
var r,
|
|
164
|
-
u = t.__c;
|
|
165
|
-
u && u.__H && (u.__H.__.forEach(function (n) {
|
|
166
|
-
try {
|
|
167
|
-
k$1(n);
|
|
168
|
-
} catch (n) {
|
|
169
|
-
r = n;
|
|
170
|
-
}
|
|
171
|
-
}), u.__H = void 0, r && preact.options.__e(r, u.__v));
|
|
172
|
-
};
|
|
173
|
-
var g$1 = "function" == typeof requestAnimationFrame;
|
|
174
|
-
function j$1(n) {
|
|
175
|
-
var t,
|
|
176
|
-
r = function () {
|
|
177
|
-
clearTimeout(u), g$1 && cancelAnimationFrame(t), setTimeout(n);
|
|
178
|
-
},
|
|
179
|
-
u = setTimeout(r, 100);
|
|
180
|
-
g$1 && (t = requestAnimationFrame(r));
|
|
181
|
-
}
|
|
182
|
-
function k$1(n) {
|
|
183
|
-
var t = r,
|
|
184
|
-
u = n.__c;
|
|
185
|
-
"function" == typeof u && (n.__c = void 0, u()), r = t;
|
|
186
|
-
}
|
|
187
|
-
function w$1(n) {
|
|
188
|
-
var t = r;
|
|
189
|
-
n.__c = n.__(), r = t;
|
|
190
|
-
}
|
|
191
|
-
function z$1(n, t) {
|
|
192
|
-
return !n || n.length !== t.length || t.some(function (t, r) {
|
|
193
|
-
return t !== n[r];
|
|
194
|
-
});
|
|
195
|
-
}
|
|
196
|
-
function B$1(n, t) {
|
|
197
|
-
return "function" == typeof t ? t(n) : t;
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
function g(n, t) {
|
|
201
|
-
for (var e in t) n[e] = t[e];
|
|
202
|
-
return n;
|
|
203
|
-
}
|
|
204
|
-
function C(n, t) {
|
|
205
|
-
for (var e in n) if ("__source" !== e && !(e in t)) return !0;
|
|
206
|
-
for (var r in t) if ("__source" !== r && n[r] !== t[r]) return !0;
|
|
207
|
-
return !1;
|
|
208
|
-
}
|
|
209
|
-
function w(n) {
|
|
210
|
-
this.props = n;
|
|
211
|
-
}
|
|
212
|
-
(w.prototype = new preact.Component()).isPureReactComponent = !0, w.prototype.shouldComponentUpdate = function (n, t) {
|
|
213
|
-
return C(this.props, n) || C(this.state, t);
|
|
214
|
-
};
|
|
215
|
-
var R = preact.options.__b;
|
|
216
|
-
preact.options.__b = function (n) {
|
|
217
|
-
n.type && n.type.__f && n.ref && (n.props.ref = n.ref, n.ref = null), R && R(n);
|
|
218
|
-
};
|
|
219
|
-
var N = "undefined" != typeof Symbol && Symbol.for && Symbol.for("react.forward_ref") || 3911;
|
|
220
|
-
function k(n) {
|
|
221
|
-
function t(t) {
|
|
222
|
-
var e = g({}, t);
|
|
223
|
-
return delete e.ref, n(e, t.ref || null);
|
|
224
|
-
}
|
|
225
|
-
return t.$$typeof = N, t.render = t, t.prototype.isReactComponent = t.__f = !0, t.displayName = "ForwardRef(" + (n.displayName || n.name) + ")", t;
|
|
226
|
-
}
|
|
227
|
-
var T = preact.options.__e;
|
|
228
|
-
preact.options.__e = function (n, t, e, r) {
|
|
229
|
-
if (n.then) for (var u, o = t; o = o.__;) if ((u = o.__c) && u.__c) return null == t.__e && (t.__e = e.__e, t.__k = e.__k), u.__c(n, t);
|
|
230
|
-
T(n, t, e, r);
|
|
231
|
-
};
|
|
232
|
-
var F = preact.options.unmount;
|
|
233
|
-
function I(n, t, e) {
|
|
234
|
-
return n && (n.__c && n.__c.__H && (n.__c.__H.__.forEach(function (n) {
|
|
235
|
-
"function" == typeof n.__c && n.__c();
|
|
236
|
-
}), n.__c.__H = null), null != (n = g({}, n)).__c && (n.__c.__P === e && (n.__c.__P = t), n.__c = null), n.__k = n.__k && n.__k.map(function (n) {
|
|
237
|
-
return I(n, t, e);
|
|
238
|
-
})), n;
|
|
239
|
-
}
|
|
240
|
-
function L(n, t, e) {
|
|
241
|
-
return n && e && (n.__v = null, n.__k = n.__k && n.__k.map(function (n) {
|
|
242
|
-
return L(n, t, e);
|
|
243
|
-
}), n.__c && n.__c.__P === t && (n.__e && e.insertBefore(n.__e, n.__d), n.__c.__e = !0, n.__c.__P = e)), n;
|
|
244
|
-
}
|
|
245
|
-
function U() {
|
|
246
|
-
this.__u = 0, this.t = null, this.__b = null;
|
|
247
|
-
}
|
|
248
|
-
function D(n) {
|
|
249
|
-
var t = n.__.__c;
|
|
250
|
-
return t && t.__a && t.__a(n);
|
|
251
|
-
}
|
|
252
|
-
function V() {
|
|
253
|
-
this.u = null, this.o = null;
|
|
254
|
-
}
|
|
255
|
-
preact.options.unmount = function (n) {
|
|
256
|
-
var t = n.__c;
|
|
257
|
-
t && t.__R && t.__R(), t && !0 === n.__h && (n.type = null), F && F(n);
|
|
258
|
-
}, (U.prototype = new preact.Component()).__c = function (n, t) {
|
|
259
|
-
var e = t.__c,
|
|
260
|
-
r = this;
|
|
261
|
-
null == r.t && (r.t = []), r.t.push(e);
|
|
262
|
-
var u = D(r.__v),
|
|
263
|
-
o = !1,
|
|
264
|
-
i = function () {
|
|
265
|
-
o || (o = !0, e.__R = null, u ? u(l) : l());
|
|
266
|
-
};
|
|
267
|
-
e.__R = i;
|
|
268
|
-
var l = function () {
|
|
269
|
-
if (! --r.__u) {
|
|
270
|
-
if (r.state.__a) {
|
|
271
|
-
var n = r.state.__a;
|
|
272
|
-
r.__v.__k[0] = L(n, n.__c.__P, n.__c.__O);
|
|
273
|
-
}
|
|
274
|
-
var t;
|
|
275
|
-
for (r.setState({
|
|
276
|
-
__a: r.__b = null
|
|
277
|
-
}); t = r.t.pop();) t.forceUpdate();
|
|
278
|
-
}
|
|
279
|
-
},
|
|
280
|
-
c = !0 === t.__h;
|
|
281
|
-
r.__u++ || c || r.setState({
|
|
282
|
-
__a: r.__b = r.__v.__k[0]
|
|
283
|
-
}), n.then(i, i);
|
|
284
|
-
}, U.prototype.componentWillUnmount = function () {
|
|
285
|
-
this.t = [];
|
|
286
|
-
}, U.prototype.render = function (n, e) {
|
|
287
|
-
if (this.__b) {
|
|
288
|
-
if (this.__v.__k) {
|
|
289
|
-
var r = document.createElement("div"),
|
|
290
|
-
o = this.__v.__k[0].__c;
|
|
291
|
-
this.__v.__k[0] = I(this.__b, r, o.__O = o.__P);
|
|
292
|
-
}
|
|
293
|
-
this.__b = null;
|
|
294
|
-
}
|
|
295
|
-
var i = e.__a && preact.createElement(preact.Fragment, null, n.fallback);
|
|
296
|
-
return i && (i.__h = null), [preact.createElement(preact.Fragment, null, e.__a ? null : n.children), i];
|
|
297
|
-
};
|
|
298
|
-
var W = function (n, t, e) {
|
|
299
|
-
if (++e[1] === e[0] && n.o.delete(t), n.props.revealOrder && ("t" !== n.props.revealOrder[0] || !n.o.size)) for (e = n.u; e;) {
|
|
300
|
-
for (; e.length > 3;) e.pop()();
|
|
301
|
-
if (e[1] < e[0]) break;
|
|
302
|
-
n.u = e = e[2];
|
|
303
|
-
}
|
|
304
|
-
};
|
|
305
|
-
function P(n) {
|
|
306
|
-
return this.getChildContext = function () {
|
|
307
|
-
return n.context;
|
|
308
|
-
}, n.children;
|
|
309
|
-
}
|
|
310
|
-
function j(n) {
|
|
311
|
-
var e = this,
|
|
312
|
-
r = n.i;
|
|
313
|
-
e.componentWillUnmount = function () {
|
|
314
|
-
preact.render(null, e.l), e.l = null, e.i = null;
|
|
315
|
-
}, e.i && e.i !== r && e.componentWillUnmount(), e.l || (e.i = r, e.l = {
|
|
316
|
-
nodeType: 1,
|
|
317
|
-
parentNode: r,
|
|
318
|
-
childNodes: [],
|
|
319
|
-
appendChild: function (n) {
|
|
320
|
-
this.childNodes.push(n), e.i.appendChild(n);
|
|
321
|
-
},
|
|
322
|
-
insertBefore: function (n, t) {
|
|
323
|
-
this.childNodes.push(n), e.i.appendChild(n);
|
|
324
|
-
},
|
|
325
|
-
removeChild: function (n) {
|
|
326
|
-
this.childNodes.splice(this.childNodes.indexOf(n) >>> 1, 1), e.i.removeChild(n);
|
|
327
|
-
}
|
|
328
|
-
}), preact.render(preact.createElement(P, {
|
|
329
|
-
context: e.context
|
|
330
|
-
}, n.__v), e.l);
|
|
331
|
-
}
|
|
332
|
-
function z(n, e) {
|
|
333
|
-
var r = preact.createElement(j, {
|
|
334
|
-
__v: n,
|
|
335
|
-
i: e
|
|
336
|
-
});
|
|
337
|
-
return r.containerInfo = e, r;
|
|
338
|
-
}
|
|
339
|
-
(V.prototype = new preact.Component()).__a = function (n) {
|
|
340
|
-
var t = this,
|
|
341
|
-
e = D(t.__v),
|
|
342
|
-
r = t.o.get(n);
|
|
343
|
-
return r[0]++, function (u) {
|
|
344
|
-
var o = function () {
|
|
345
|
-
t.props.revealOrder ? (r.push(u), W(t, n, r)) : u();
|
|
346
|
-
};
|
|
347
|
-
e ? e(o) : o();
|
|
348
|
-
};
|
|
349
|
-
}, V.prototype.render = function (n) {
|
|
350
|
-
this.u = null, this.o = new Map();
|
|
351
|
-
var t = preact.toChildArray(n.children);
|
|
352
|
-
n.revealOrder && "b" === n.revealOrder[0] && t.reverse();
|
|
353
|
-
for (var e = t.length; e--;) this.o.set(t[e], this.u = [1, 0, this.u]);
|
|
354
|
-
return n.children;
|
|
355
|
-
}, V.prototype.componentDidUpdate = V.prototype.componentDidMount = function () {
|
|
356
|
-
var n = this;
|
|
357
|
-
this.o.forEach(function (t, e) {
|
|
358
|
-
W(n, e, t);
|
|
359
|
-
});
|
|
360
|
-
};
|
|
361
|
-
var B = "undefined" != typeof Symbol && Symbol.for && Symbol.for("react.element") || 60103,
|
|
362
|
-
H = /^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,
|
|
363
|
-
Z = /^on(Ani|Tra|Tou|BeforeInp|Compo)/,
|
|
364
|
-
Y = /[A-Z0-9]/g,
|
|
365
|
-
$ = "undefined" != typeof document,
|
|
366
|
-
q = function (n) {
|
|
367
|
-
return ("undefined" != typeof Symbol && "symbol" == typeof Symbol() ? /fil|che|rad/ : /fil|che|ra/).test(n);
|
|
368
|
-
};
|
|
369
|
-
preact.Component.prototype.isReactComponent = {}, ["componentWillMount", "componentWillReceiveProps", "componentWillUpdate"].forEach(function (t) {
|
|
370
|
-
Object.defineProperty(preact.Component.prototype, t, {
|
|
371
|
-
configurable: !0,
|
|
372
|
-
get: function () {
|
|
373
|
-
return this["UNSAFE_" + t];
|
|
374
|
-
},
|
|
375
|
-
set: function (n) {
|
|
376
|
-
Object.defineProperty(this, t, {
|
|
377
|
-
configurable: !0,
|
|
378
|
-
writable: !0,
|
|
379
|
-
value: n
|
|
380
|
-
});
|
|
381
|
-
}
|
|
382
|
-
});
|
|
383
|
-
});
|
|
384
|
-
var K = preact.options.event;
|
|
385
|
-
function Q() {}
|
|
386
|
-
function X() {
|
|
387
|
-
return this.cancelBubble;
|
|
388
|
-
}
|
|
389
|
-
function nn() {
|
|
390
|
-
return this.defaultPrevented;
|
|
391
|
-
}
|
|
392
|
-
preact.options.event = function (n) {
|
|
393
|
-
return K && (n = K(n)), n.persist = Q, n.isPropagationStopped = X, n.isDefaultPrevented = nn, n.nativeEvent = n;
|
|
394
|
-
};
|
|
395
|
-
var en = {
|
|
396
|
-
enumerable: !1,
|
|
397
|
-
configurable: !0,
|
|
398
|
-
get: function () {
|
|
399
|
-
return this.class;
|
|
400
|
-
}
|
|
401
|
-
},
|
|
402
|
-
rn = preact.options.vnode;
|
|
403
|
-
preact.options.vnode = function (n) {
|
|
404
|
-
"string" == typeof n.type && function (n) {
|
|
405
|
-
var t = n.props,
|
|
406
|
-
e = n.type,
|
|
407
|
-
u = {};
|
|
408
|
-
for (var o in t) {
|
|
409
|
-
var i = t[o];
|
|
410
|
-
if (!("value" === o && "defaultValue" in t && null == i || $ && "children" === o && "noscript" === e || "class" === o || "className" === o)) {
|
|
411
|
-
var l = o.toLowerCase();
|
|
412
|
-
"defaultValue" === o && "value" in t && null == t.value ? o = "value" : "download" === o && !0 === i ? i = "" : "ondoubleclick" === l ? o = "ondblclick" : "onchange" !== l || "input" !== e && "textarea" !== e || q(t.type) ? "onfocus" === l ? o = "onfocusin" : "onblur" === l ? o = "onfocusout" : Z.test(o) ? o = l : -1 === e.indexOf("-") && H.test(o) ? o = o.replace(Y, "-$&").toLowerCase() : null === i && (i = void 0) : l = o = "oninput", "oninput" === l && u[o = l] && (o = "oninputCapture"), u[o] = i;
|
|
413
|
-
}
|
|
414
|
-
}
|
|
415
|
-
"select" == e && u.multiple && Array.isArray(u.value) && (u.value = preact.toChildArray(t.children).forEach(function (n) {
|
|
416
|
-
n.props.selected = -1 != u.value.indexOf(n.props.value);
|
|
417
|
-
})), "select" == e && null != u.defaultValue && (u.value = preact.toChildArray(t.children).forEach(function (n) {
|
|
418
|
-
n.props.selected = u.multiple ? -1 != u.defaultValue.indexOf(n.props.value) : u.defaultValue == n.props.value;
|
|
419
|
-
})), t.class && !t.className ? (u.class = t.class, Object.defineProperty(u, "className", en)) : (t.className && !t.class || t.class && t.className) && (u.class = u.className = t.className), n.props = u;
|
|
420
|
-
}(n), n.$$typeof = B, rn && rn(n);
|
|
421
|
-
};
|
|
422
|
-
var un = preact.options.__r;
|
|
423
|
-
preact.options.__r = function (n) {
|
|
424
|
-
un && un(n);
|
|
425
|
-
};
|
|
426
|
-
var on = preact.options.diffed;
|
|
427
|
-
preact.options.diffed = function (n) {
|
|
428
|
-
on && on(n);
|
|
429
|
-
var t = n.props,
|
|
430
|
-
e = n.__e;
|
|
431
|
-
null != e && "textarea" === n.type && "value" in t && t.value !== e.value && (e.value = null == t.value ? "" : t.value);
|
|
432
|
-
};
|
|
433
|
-
|
|
434
|
-
var _ = 0;
|
|
435
|
-
function o(o, e, n, t, f, l) {
|
|
436
|
-
var s,
|
|
437
|
-
u,
|
|
438
|
-
a = {};
|
|
439
|
-
for (u in e) "ref" == u ? s = e[u] : a[u] = e[u];
|
|
440
|
-
var i = {
|
|
441
|
-
type: o,
|
|
442
|
-
props: a,
|
|
443
|
-
key: n,
|
|
444
|
-
ref: s,
|
|
445
|
-
__k: null,
|
|
446
|
-
__: null,
|
|
447
|
-
__b: 0,
|
|
448
|
-
__e: null,
|
|
449
|
-
__d: void 0,
|
|
450
|
-
__c: null,
|
|
451
|
-
__h: null,
|
|
452
|
-
constructor: void 0,
|
|
453
|
-
__v: --_,
|
|
454
|
-
__source: f,
|
|
455
|
-
__self: l
|
|
456
|
-
};
|
|
457
|
-
if ("function" == typeof o && (s = o.defaultProps)) for (u in s) void 0 === a[u] && (a[u] = s[u]);
|
|
458
|
-
return preact.options.vnode && preact.options.vnode(i), i;
|
|
459
|
-
}
|
|
460
|
-
|
|
461
41
|
var ArrowIcon = function ArrowIcon(props) {
|
|
462
|
-
return
|
|
42
|
+
return jsxRuntime.jsx("svg", {
|
|
463
43
|
...props,
|
|
464
|
-
children:
|
|
44
|
+
children: jsxRuntime.jsx("path", {
|
|
465
45
|
fillRule: "evenodd",
|
|
466
46
|
d: "m11.657 8-4.95 4.95a1 1 0 0 1-1.414-1.414L8.828 8 5.293 4.464A1 1 0 1 1 6.707 3.05L11.657 8Z"
|
|
467
47
|
})
|
|
@@ -473,9 +53,9 @@ ArrowIcon.defaultProps = {
|
|
|
473
53
|
height: "16"
|
|
474
54
|
};
|
|
475
55
|
var CreateIcon = function CreateIcon(props) {
|
|
476
|
-
return
|
|
56
|
+
return jsxRuntime.jsx("svg", {
|
|
477
57
|
...props,
|
|
478
|
-
children:
|
|
58
|
+
children: jsxRuntime.jsx("path", {
|
|
479
59
|
fillRule: "evenodd",
|
|
480
60
|
d: "M9 13V9h4a1 1 0 0 0 0-2H9V3a1 1 0 1 0-2 0v4H3a1 1 0 1 0 0 2h4v4a1 1 0 0 0 2 0Z"
|
|
481
61
|
})
|
|
@@ -487,9 +67,9 @@ CreateIcon.defaultProps = {
|
|
|
487
67
|
height: "16"
|
|
488
68
|
};
|
|
489
69
|
var DeleteIcon = function DeleteIcon(props) {
|
|
490
|
-
return
|
|
70
|
+
return jsxRuntime.jsx("svg", {
|
|
491
71
|
...props,
|
|
492
|
-
children:
|
|
72
|
+
children: jsxRuntime.jsx("path", {
|
|
493
73
|
fillRule: "evenodd",
|
|
494
74
|
d: "M12 6v7c0 1.1-.4 1.55-1.5 1.55h-5C4.4 14.55 4 14.1 4 13V6h8Zm-1.5 1.5h-5v4.3c0 .66.5 1.2 1.111 1.2H9.39c.611 0 1.111-.54 1.111-1.2V7.5ZM13 3h-2l-1-1H6L5 3H3v1.5h10V3Z"
|
|
495
75
|
})
|
|
@@ -501,21 +81,21 @@ DeleteIcon.defaultProps = {
|
|
|
501
81
|
height: "16"
|
|
502
82
|
};
|
|
503
83
|
var DragIcon = function DragIcon(props) {
|
|
504
|
-
return
|
|
84
|
+
return jsxRuntime.jsxs("svg", {
|
|
505
85
|
...props,
|
|
506
|
-
children: [
|
|
86
|
+
children: [jsxRuntime.jsx("path", {
|
|
507
87
|
fill: "#fff",
|
|
508
88
|
style: {
|
|
509
89
|
mixBlendMode: "multiply"
|
|
510
90
|
},
|
|
511
91
|
d: "M0 0h16v16H0z"
|
|
512
|
-
}),
|
|
92
|
+
}), jsxRuntime.jsx("path", {
|
|
513
93
|
fill: "#fff",
|
|
514
94
|
style: {
|
|
515
95
|
mixBlendMode: "multiply"
|
|
516
96
|
},
|
|
517
97
|
d: "M0 0h16v16H0z"
|
|
518
|
-
}),
|
|
98
|
+
}), jsxRuntime.jsx("path", {
|
|
519
99
|
d: "M7 3H5v2h2V3zm4 0H9v2h2V3zM7 7H5v2h2V7zm4 0H9v2h2V7zm-4 4H5v2h2v-2zm4 0H9v2h2v-2z",
|
|
520
100
|
fill: "#161616"
|
|
521
101
|
})]
|
|
@@ -528,9 +108,9 @@ DragIcon.defaultProps = {
|
|
|
528
108
|
xmlns: "http://www.w3.org/2000/svg"
|
|
529
109
|
};
|
|
530
110
|
var ExternalLinkIcon = function ExternalLinkIcon(props) {
|
|
531
|
-
return
|
|
111
|
+
return jsxRuntime.jsx("svg", {
|
|
532
112
|
...props,
|
|
533
|
-
children:
|
|
113
|
+
children: jsxRuntime.jsx("path", {
|
|
534
114
|
fillRule: "evenodd",
|
|
535
115
|
clipRule: "evenodd",
|
|
536
116
|
d: "M12.637 12.637v-4.72h1.362v4.721c0 .36-.137.676-.411.95-.275.275-.591.412-.95.412H3.362c-.38 0-.703-.132-.967-.396A1.315 1.315 0 0 1 2 12.638V3.362c0-.38.132-.703.396-.967S2.982 2 3.363 2h4.553v1.363H3.363v9.274h9.274ZM14 2H9.28l-.001 1.362h2.408L5.065 9.984l.95.95 6.622-6.622v2.409H14V2Z",
|
|
@@ -545,9 +125,9 @@ ExternalLinkIcon.defaultProps = {
|
|
|
545
125
|
xmlns: "http://www.w3.org/2000/svg"
|
|
546
126
|
};
|
|
547
127
|
var FeelIcon$1 = function FeelIcon(props) {
|
|
548
|
-
return
|
|
128
|
+
return jsxRuntime.jsx("svg", {
|
|
549
129
|
...props,
|
|
550
|
-
children:
|
|
130
|
+
children: jsxRuntime.jsx("path", {
|
|
551
131
|
d: "M3.617 11.99c-.137.684-.392 1.19-.765 1.518-.362.328-.882.492-1.558.492H0l.309-1.579h1.264l1.515-7.64h-.912l.309-1.579h.911l.236-1.191c.137-.685.387-1.192.75-1.52C4.753.164 5.277 0 5.953 0h1.294L6.94 1.579H5.675l-.323 1.623h1.264l-.309 1.579H5.043l-1.426 7.208ZM5.605 11.021l3.029-4.155L7.28 3.202h2.073l.706 2.547h.176l1.691-2.547H14l-3.014 4.051 1.338 3.768H10.25l-.706-2.606H9.37L7.678 11.02H5.605Z",
|
|
552
132
|
fill: "currentcolor"
|
|
553
133
|
})
|
|
@@ -575,35 +155,35 @@ function Header(props) {
|
|
|
575
155
|
const type = getTypeLabel(element);
|
|
576
156
|
const documentationRef = getDocumentationRef && getDocumentationRef(element);
|
|
577
157
|
const ElementIcon = getElementIcon(element);
|
|
578
|
-
return
|
|
158
|
+
return jsxRuntime.jsxs("div", {
|
|
579
159
|
class: "bio-properties-panel-header",
|
|
580
|
-
children: [
|
|
160
|
+
children: [jsxRuntime.jsx("div", {
|
|
581
161
|
class: "bio-properties-panel-header-icon",
|
|
582
|
-
children: ElementIcon &&
|
|
162
|
+
children: ElementIcon && jsxRuntime.jsx(ElementIcon, {
|
|
583
163
|
width: "32",
|
|
584
164
|
height: "32",
|
|
585
165
|
viewBox: "0 0 32 32"
|
|
586
166
|
})
|
|
587
|
-
}),
|
|
167
|
+
}), jsxRuntime.jsxs("div", {
|
|
588
168
|
class: "bio-properties-panel-header-labels",
|
|
589
|
-
children: [
|
|
169
|
+
children: [jsxRuntime.jsx("div", {
|
|
590
170
|
title: type,
|
|
591
171
|
class: "bio-properties-panel-header-type",
|
|
592
172
|
children: type
|
|
593
|
-
}), label ?
|
|
173
|
+
}), label ? jsxRuntime.jsx("div", {
|
|
594
174
|
title: label,
|
|
595
175
|
class: "bio-properties-panel-header-label",
|
|
596
176
|
children: label
|
|
597
177
|
}) : null]
|
|
598
|
-
}),
|
|
178
|
+
}), jsxRuntime.jsx("div", {
|
|
599
179
|
class: "bio-properties-panel-header-actions",
|
|
600
|
-
children: documentationRef ?
|
|
180
|
+
children: documentationRef ? jsxRuntime.jsx("a", {
|
|
601
181
|
rel: "noopener",
|
|
602
182
|
class: "bio-properties-panel-header-link",
|
|
603
183
|
href: documentationRef,
|
|
604
184
|
title: "Open documentation",
|
|
605
185
|
target: "_blank",
|
|
606
|
-
children:
|
|
186
|
+
children: jsxRuntime.jsx(ExternalLinkIcon, {})
|
|
607
187
|
}) : null
|
|
608
188
|
})]
|
|
609
189
|
});
|
|
@@ -666,7 +246,7 @@ const TooltipContext = preact.createContext({
|
|
|
666
246
|
function useTooltipContext(id, element) {
|
|
667
247
|
const {
|
|
668
248
|
getTooltipForId
|
|
669
|
-
} =
|
|
249
|
+
} = hooks.useContext(TooltipContext);
|
|
670
250
|
return getTooltipForId(id, element);
|
|
671
251
|
}
|
|
672
252
|
|
|
@@ -680,7 +260,7 @@ function TooltipWrapper(props) {
|
|
|
680
260
|
if (!value) {
|
|
681
261
|
return props.children;
|
|
682
262
|
}
|
|
683
|
-
return
|
|
263
|
+
return jsxRuntime.jsx(Tooltip, {
|
|
684
264
|
...props,
|
|
685
265
|
value: value,
|
|
686
266
|
forId: prefixId$9(forId)
|
|
@@ -692,11 +272,11 @@ function Tooltip(props) {
|
|
|
692
272
|
value,
|
|
693
273
|
parent
|
|
694
274
|
} = props;
|
|
695
|
-
const [visible, setShow] =
|
|
696
|
-
const [focusedViaKeyboard, setFocusedViaKeyboard] =
|
|
275
|
+
const [visible, setShow] = hooks.useState(false);
|
|
276
|
+
const [focusedViaKeyboard, setFocusedViaKeyboard] = hooks.useState(false);
|
|
697
277
|
let timeout = null;
|
|
698
|
-
const wrapperRef =
|
|
699
|
-
const tooltipRef =
|
|
278
|
+
const wrapperRef = hooks.useRef(null);
|
|
279
|
+
const tooltipRef = hooks.useRef(null);
|
|
700
280
|
const showTooltip = async event => {
|
|
701
281
|
const show = () => setShow(true);
|
|
702
282
|
if (!visible && !timeout) {
|
|
@@ -723,7 +303,7 @@ function Tooltip(props) {
|
|
|
723
303
|
const wrapper = wrapperRef.current;
|
|
724
304
|
return tooltip && (inBounds(x, y, wrapper.getBoundingClientRect()) || inBounds(x, y, tooltip.getBoundingClientRect()));
|
|
725
305
|
};
|
|
726
|
-
|
|
306
|
+
hooks.useEffect(() => {
|
|
727
307
|
const {
|
|
728
308
|
current
|
|
729
309
|
} = wrapperRef;
|
|
@@ -758,7 +338,7 @@ function Tooltip(props) {
|
|
|
758
338
|
};
|
|
759
339
|
}, [wrapperRef.current, visible, focusedViaKeyboard]);
|
|
760
340
|
const renderTooltip = () => {
|
|
761
|
-
return
|
|
341
|
+
return jsxRuntime.jsxs("div", {
|
|
762
342
|
class: "bio-properties-panel-tooltip",
|
|
763
343
|
role: "tooltip",
|
|
764
344
|
id: "bio-properties-panel-tooltip",
|
|
@@ -766,15 +346,15 @@ function Tooltip(props) {
|
|
|
766
346
|
style: getTooltipPosition(wrapperRef.current),
|
|
767
347
|
ref: tooltipRef,
|
|
768
348
|
onClick: e => e.stopPropagation(),
|
|
769
|
-
children: [
|
|
349
|
+
children: [jsxRuntime.jsx("div", {
|
|
770
350
|
class: "bio-properties-panel-tooltip-content",
|
|
771
351
|
children: value
|
|
772
|
-
}),
|
|
352
|
+
}), jsxRuntime.jsx("div", {
|
|
773
353
|
class: "bio-properties-panel-tooltip-arrow"
|
|
774
354
|
})]
|
|
775
355
|
});
|
|
776
356
|
};
|
|
777
|
-
return
|
|
357
|
+
return jsxRuntime.jsxs("div", {
|
|
778
358
|
class: "bio-properties-panel-tooltip-wrapper",
|
|
779
359
|
tabIndex: "0",
|
|
780
360
|
ref: wrapperRef,
|
|
@@ -785,7 +365,7 @@ function Tooltip(props) {
|
|
|
785
365
|
},
|
|
786
366
|
onFocus: showTooltip,
|
|
787
367
|
onKeyDown: hideTooltipViaEscape,
|
|
788
|
-
children: [props.children, visible ? parent ?
|
|
368
|
+
children: [props.children, visible ? parent ? compat.createPortal(renderTooltip(), parent.current) : renderTooltip() : null]
|
|
789
369
|
});
|
|
790
370
|
}
|
|
791
371
|
|
|
@@ -830,20 +410,20 @@ function prefixId$9(id) {
|
|
|
830
410
|
function useDescriptionContext(id, element) {
|
|
831
411
|
const {
|
|
832
412
|
getDescriptionForId
|
|
833
|
-
} =
|
|
413
|
+
} = hooks.useContext(DescriptionContext);
|
|
834
414
|
return getDescriptionForId(id, element);
|
|
835
415
|
}
|
|
836
416
|
|
|
837
417
|
function useError(id) {
|
|
838
418
|
const {
|
|
839
419
|
errors
|
|
840
|
-
} =
|
|
420
|
+
} = hooks.useContext(ErrorsContext);
|
|
841
421
|
return errors[id];
|
|
842
422
|
}
|
|
843
423
|
function useErrors() {
|
|
844
424
|
const {
|
|
845
425
|
errors
|
|
846
|
-
} =
|
|
426
|
+
} = hooks.useContext(ErrorsContext);
|
|
847
427
|
return errors;
|
|
848
428
|
}
|
|
849
429
|
|
|
@@ -854,13 +434,13 @@ function useErrors() {
|
|
|
854
434
|
* @param {Function} callback
|
|
855
435
|
*/
|
|
856
436
|
function useEvent(event, callback, eventBus) {
|
|
857
|
-
const eventContext =
|
|
437
|
+
const eventContext = hooks.useContext(EventContext);
|
|
858
438
|
if (!eventBus) {
|
|
859
439
|
({
|
|
860
440
|
eventBus
|
|
861
441
|
} = eventContext);
|
|
862
442
|
}
|
|
863
|
-
const didMount =
|
|
443
|
+
const didMount = hooks.useRef(false);
|
|
864
444
|
|
|
865
445
|
// (1) subscribe immediately
|
|
866
446
|
if (eventBus && !didMount.current) {
|
|
@@ -868,7 +448,7 @@ function useEvent(event, callback, eventBus) {
|
|
|
868
448
|
}
|
|
869
449
|
|
|
870
450
|
// (2) update subscription after inputs changed
|
|
871
|
-
|
|
451
|
+
hooks.useEffect(() => {
|
|
872
452
|
if (eventBus && didMount.current) {
|
|
873
453
|
eventBus.on(event, callback);
|
|
874
454
|
}
|
|
@@ -903,7 +483,7 @@ const KEY_LENGTH = 6;
|
|
|
903
483
|
* @returns {(element: object) => string}
|
|
904
484
|
*/
|
|
905
485
|
function useKeyFactory(dependencies = []) {
|
|
906
|
-
const map =
|
|
486
|
+
const map = hooks.useMemo(() => new Map(), dependencies);
|
|
907
487
|
const getKey = el => {
|
|
908
488
|
let key = map.get(el);
|
|
909
489
|
if (!key) {
|
|
@@ -934,9 +514,9 @@ function useLayoutState(path, defaultValue) {
|
|
|
934
514
|
const {
|
|
935
515
|
getLayoutForKey,
|
|
936
516
|
setLayoutForKey
|
|
937
|
-
} =
|
|
517
|
+
} = hooks.useContext(LayoutContext);
|
|
938
518
|
const layoutForKey = getLayoutForKey(path, defaultValue);
|
|
939
|
-
const setState =
|
|
519
|
+
const setState = hooks.useCallback(newValue => {
|
|
940
520
|
setLayoutForKey(path, newValue);
|
|
941
521
|
}, [setLayoutForKey]);
|
|
942
522
|
return [layoutForKey, setState];
|
|
@@ -950,8 +530,8 @@ function useLayoutState(path, defaultValue) {
|
|
|
950
530
|
*/
|
|
951
531
|
|
|
952
532
|
function usePrevious(value) {
|
|
953
|
-
const ref =
|
|
954
|
-
|
|
533
|
+
const ref = hooks.useRef();
|
|
534
|
+
hooks.useEffect(() => {
|
|
955
535
|
ref.current = value;
|
|
956
536
|
});
|
|
957
537
|
return ref.current;
|
|
@@ -967,10 +547,10 @@ function usePrevious(value) {
|
|
|
967
547
|
function useShowEntryEvent(id) {
|
|
968
548
|
const {
|
|
969
549
|
onShow
|
|
970
|
-
} =
|
|
971
|
-
const ref =
|
|
972
|
-
const focus =
|
|
973
|
-
const onShowEntry =
|
|
550
|
+
} = hooks.useContext(LayoutContext);
|
|
551
|
+
const ref = hooks.useRef();
|
|
552
|
+
const focus = hooks.useRef(false);
|
|
553
|
+
const onShowEntry = hooks.useCallback(event => {
|
|
974
554
|
if (event.id === id) {
|
|
975
555
|
onShow();
|
|
976
556
|
if (!focus.current) {
|
|
@@ -978,7 +558,7 @@ function useShowEntryEvent(id) {
|
|
|
978
558
|
}
|
|
979
559
|
}
|
|
980
560
|
}, [id]);
|
|
981
|
-
|
|
561
|
+
hooks.useEffect(() => {
|
|
982
562
|
if (focus.current && ref.current) {
|
|
983
563
|
if (minDash.isFunction(ref.current.focus)) {
|
|
984
564
|
ref.current.focus();
|
|
@@ -1009,19 +589,19 @@ function useShowEntryEvent(id) {
|
|
|
1009
589
|
* @param {setSticky} setSticky
|
|
1010
590
|
*/
|
|
1011
591
|
function useStickyIntersectionObserver(ref, scrollContainerSelector, setSticky) {
|
|
1012
|
-
const [scrollContainer, setScrollContainer] =
|
|
1013
|
-
const updateScrollContainer =
|
|
592
|
+
const [scrollContainer, setScrollContainer] = hooks.useState(minDom.query(scrollContainerSelector));
|
|
593
|
+
const updateScrollContainer = hooks.useCallback(() => {
|
|
1014
594
|
const newScrollContainer = minDom.query(scrollContainerSelector);
|
|
1015
595
|
if (newScrollContainer !== scrollContainer) {
|
|
1016
596
|
setScrollContainer(newScrollContainer);
|
|
1017
597
|
}
|
|
1018
598
|
}, [scrollContainerSelector, scrollContainer]);
|
|
1019
|
-
|
|
599
|
+
hooks.useEffect(() => {
|
|
1020
600
|
updateScrollContainer();
|
|
1021
601
|
}, [updateScrollContainer]);
|
|
1022
602
|
useEvent('propertiesPanel.attach', updateScrollContainer);
|
|
1023
603
|
useEvent('propertiesPanel.detach', updateScrollContainer);
|
|
1024
|
-
|
|
604
|
+
hooks.useEffect(() => {
|
|
1025
605
|
const Observer = IntersectionObserver;
|
|
1026
606
|
|
|
1027
607
|
// return early if IntersectionObserver is not available
|
|
@@ -1075,9 +655,9 @@ function useStickyIntersectionObserver(ref, scrollContainerSelector, setSticky)
|
|
|
1075
655
|
* @returns {Function} static function reference
|
|
1076
656
|
*/
|
|
1077
657
|
function useStaticCallback(callback) {
|
|
1078
|
-
const callbackRef =
|
|
658
|
+
const callbackRef = hooks.useRef(callback);
|
|
1079
659
|
callbackRef.current = callback;
|
|
1080
|
-
return
|
|
660
|
+
return hooks.useCallback((...args) => callbackRef.current(...args), []);
|
|
1081
661
|
}
|
|
1082
662
|
|
|
1083
663
|
function Group(props) {
|
|
@@ -1088,15 +668,15 @@ function Group(props) {
|
|
|
1088
668
|
label,
|
|
1089
669
|
shouldOpen = false
|
|
1090
670
|
} = props;
|
|
1091
|
-
const groupRef =
|
|
671
|
+
const groupRef = hooks.useRef(null);
|
|
1092
672
|
const [open, setOpen] = useLayoutState(['groups', id, 'open'], shouldOpen);
|
|
1093
|
-
const onShow =
|
|
673
|
+
const onShow = hooks.useCallback(() => setOpen(true), [setOpen]);
|
|
1094
674
|
const toggleOpen = () => setOpen(!open);
|
|
1095
|
-
const [edited, setEdited] =
|
|
1096
|
-
const [sticky, setSticky] =
|
|
675
|
+
const [edited, setEdited] = hooks.useState(false);
|
|
676
|
+
const [sticky, setSticky] = hooks.useState(false);
|
|
1097
677
|
|
|
1098
678
|
// set edited state depending on all entries
|
|
1099
|
-
|
|
679
|
+
hooks.useEffect(() => {
|
|
1100
680
|
// TODO(@barmac): replace with CSS when `:has()` is supported in all major browsers, or rewrite as in https://github.com/camunda/camunda-modeler/issues/3815#issuecomment-1733038161
|
|
1101
681
|
const scheduled = requestAnimationFrame(() => {
|
|
1102
682
|
const hasOneEditedEntry = entries.find(entry => {
|
|
@@ -1123,43 +703,43 @@ function Group(props) {
|
|
|
1123
703
|
// set css class when group is sticky to top
|
|
1124
704
|
useStickyIntersectionObserver(groupRef, 'div.bio-properties-panel-scroll-container', setSticky);
|
|
1125
705
|
const propertiesPanelContext = {
|
|
1126
|
-
...
|
|
706
|
+
...hooks.useContext(LayoutContext),
|
|
1127
707
|
onShow
|
|
1128
708
|
};
|
|
1129
|
-
return
|
|
709
|
+
return jsxRuntime.jsxs("div", {
|
|
1130
710
|
class: "bio-properties-panel-group",
|
|
1131
711
|
"data-group-id": 'group-' + id,
|
|
1132
712
|
ref: groupRef,
|
|
1133
|
-
children: [
|
|
713
|
+
children: [jsxRuntime.jsxs("div", {
|
|
1134
714
|
class: classnames__default["default"]('bio-properties-panel-group-header', edited ? '' : 'empty', open ? 'open' : '', sticky && open ? 'sticky' : ''),
|
|
1135
715
|
onClick: toggleOpen,
|
|
1136
|
-
children: [
|
|
716
|
+
children: [jsxRuntime.jsx("div", {
|
|
1137
717
|
title: props.tooltip ? null : label,
|
|
1138
718
|
"data-title": label,
|
|
1139
719
|
class: "bio-properties-panel-group-header-title",
|
|
1140
|
-
children:
|
|
720
|
+
children: jsxRuntime.jsx(TooltipWrapper, {
|
|
1141
721
|
value: props.tooltip,
|
|
1142
722
|
forId: 'group-' + id,
|
|
1143
723
|
element: element,
|
|
1144
724
|
parent: groupRef,
|
|
1145
725
|
children: label
|
|
1146
726
|
})
|
|
1147
|
-
}),
|
|
727
|
+
}), jsxRuntime.jsxs("div", {
|
|
1148
728
|
class: "bio-properties-panel-group-header-buttons",
|
|
1149
|
-
children: [
|
|
729
|
+
children: [jsxRuntime.jsx(DataMarker, {
|
|
1150
730
|
edited: edited,
|
|
1151
731
|
hasErrors: hasErrors
|
|
1152
|
-
}),
|
|
732
|
+
}), jsxRuntime.jsx("button", {
|
|
1153
733
|
title: "Toggle section",
|
|
1154
734
|
class: "bio-properties-panel-group-header-button bio-properties-panel-arrow",
|
|
1155
|
-
children:
|
|
735
|
+
children: jsxRuntime.jsx(ArrowIcon, {
|
|
1156
736
|
class: open ? 'bio-properties-panel-arrow-down' : 'bio-properties-panel-arrow-right'
|
|
1157
737
|
})
|
|
1158
738
|
})]
|
|
1159
739
|
})]
|
|
1160
|
-
}),
|
|
740
|
+
}), jsxRuntime.jsx("div", {
|
|
1161
741
|
class: classnames__default["default"]('bio-properties-panel-group-entries', open ? 'open' : ''),
|
|
1162
|
-
children:
|
|
742
|
+
children: jsxRuntime.jsx(LayoutContext.Provider, {
|
|
1163
743
|
value: propertiesPanelContext,
|
|
1164
744
|
children: entries.map(entry => {
|
|
1165
745
|
const {
|
|
@@ -1182,13 +762,13 @@ function DataMarker(props) {
|
|
|
1182
762
|
hasErrors
|
|
1183
763
|
} = props;
|
|
1184
764
|
if (hasErrors) {
|
|
1185
|
-
return
|
|
765
|
+
return jsxRuntime.jsx("div", {
|
|
1186
766
|
title: "Section contains an error",
|
|
1187
767
|
class: "bio-properties-panel-dot bio-properties-panel-dot--error"
|
|
1188
768
|
});
|
|
1189
769
|
}
|
|
1190
770
|
if (edited) {
|
|
1191
|
-
return
|
|
771
|
+
return jsxRuntime.jsx("div", {
|
|
1192
772
|
title: "Section contains data",
|
|
1193
773
|
class: "bio-properties-panel-dot"
|
|
1194
774
|
});
|
|
@@ -1209,13 +789,13 @@ function Placeholder(props) {
|
|
|
1209
789
|
text,
|
|
1210
790
|
icon: Icon
|
|
1211
791
|
} = props;
|
|
1212
|
-
return
|
|
792
|
+
return jsxRuntime.jsx("div", {
|
|
1213
793
|
class: "bio-properties-panel open",
|
|
1214
|
-
children:
|
|
794
|
+
children: jsxRuntime.jsxs("section", {
|
|
1215
795
|
class: "bio-properties-panel-placeholder",
|
|
1216
|
-
children: [Icon &&
|
|
796
|
+
children: [Icon && jsxRuntime.jsx(Icon, {
|
|
1217
797
|
class: "bio-properties-panel-placeholder-icon"
|
|
1218
|
-
}),
|
|
798
|
+
}), jsxRuntime.jsx("p", {
|
|
1219
799
|
class: "bio-properties-panel-placeholder-text",
|
|
1220
800
|
children: text
|
|
1221
801
|
})]
|
|
@@ -1232,7 +812,7 @@ function Description(props) {
|
|
|
1232
812
|
const contextDescription = useDescriptionContext(forId, element);
|
|
1233
813
|
const description = value || contextDescription;
|
|
1234
814
|
if (description) {
|
|
1235
|
-
return
|
|
815
|
+
return jsxRuntime.jsx("div", {
|
|
1236
816
|
class: "bio-properties-panel-description",
|
|
1237
817
|
children: description
|
|
1238
818
|
});
|
|
@@ -1246,8 +826,8 @@ const noop$6 = () => {};
|
|
|
1246
826
|
* Set Focus inside when the editor is ready.
|
|
1247
827
|
*/
|
|
1248
828
|
const useBufferedFocus$1 = function (editor, ref) {
|
|
1249
|
-
const [buffer, setBuffer] =
|
|
1250
|
-
ref.current =
|
|
829
|
+
const [buffer, setBuffer] = hooks.useState(undefined);
|
|
830
|
+
ref.current = hooks.useMemo(() => ({
|
|
1251
831
|
focus: offset => {
|
|
1252
832
|
if (editor) {
|
|
1253
833
|
editor.focus(offset);
|
|
@@ -1259,14 +839,14 @@ const useBufferedFocus$1 = function (editor, ref) {
|
|
|
1259
839
|
}
|
|
1260
840
|
}
|
|
1261
841
|
}), [editor]);
|
|
1262
|
-
|
|
842
|
+
hooks.useEffect(() => {
|
|
1263
843
|
if (typeof buffer !== 'undefined' && editor) {
|
|
1264
844
|
editor.focus(buffer);
|
|
1265
845
|
setBuffer(false);
|
|
1266
846
|
}
|
|
1267
847
|
}, [editor, buffer]);
|
|
1268
848
|
};
|
|
1269
|
-
const CodeEditor$1 =
|
|
849
|
+
const CodeEditor$1 = compat.forwardRef((props, ref) => {
|
|
1270
850
|
const {
|
|
1271
851
|
onInput,
|
|
1272
852
|
disabled,
|
|
@@ -1280,15 +860,15 @@ const CodeEditor$1 = k((props, ref) => {
|
|
|
1280
860
|
hostLanguage = null,
|
|
1281
861
|
singleLine = false
|
|
1282
862
|
} = props;
|
|
1283
|
-
const inputRef =
|
|
1284
|
-
const [editor, setEditor] =
|
|
1285
|
-
const [localValue, setLocalValue] =
|
|
863
|
+
const inputRef = hooks.useRef();
|
|
864
|
+
const [editor, setEditor] = hooks.useState();
|
|
865
|
+
const [localValue, setLocalValue] = hooks.useState(value || '');
|
|
1286
866
|
useBufferedFocus$1(editor, ref);
|
|
1287
867
|
const handleInput = useStaticCallback(newValue => {
|
|
1288
868
|
onInput(newValue);
|
|
1289
869
|
setLocalValue(newValue);
|
|
1290
870
|
});
|
|
1291
|
-
|
|
871
|
+
hooks.useEffect(() => {
|
|
1292
872
|
let editor;
|
|
1293
873
|
editor = new feelers.FeelersEditor({
|
|
1294
874
|
container: inputRef.current,
|
|
@@ -1308,7 +888,7 @@ const CodeEditor$1 = k((props, ref) => {
|
|
|
1308
888
|
setEditor(null);
|
|
1309
889
|
};
|
|
1310
890
|
}, []);
|
|
1311
|
-
|
|
891
|
+
hooks.useEffect(() => {
|
|
1312
892
|
if (!editor) {
|
|
1313
893
|
return;
|
|
1314
894
|
}
|
|
@@ -1321,21 +901,21 @@ const CodeEditor$1 = k((props, ref) => {
|
|
|
1321
901
|
const handleClick = () => {
|
|
1322
902
|
ref.current.focus();
|
|
1323
903
|
};
|
|
1324
|
-
return
|
|
904
|
+
return jsxRuntime.jsxs("div", {
|
|
1325
905
|
class: classnames__default["default"]('bio-properties-panel-feelers-editor-container', popupOpen ? 'popupOpen' : null),
|
|
1326
|
-
children: [
|
|
906
|
+
children: [jsxRuntime.jsx("div", {
|
|
1327
907
|
class: "bio-properties-panel-feelers-editor__open-popup-placeholder",
|
|
1328
908
|
children: "Opened in editor"
|
|
1329
|
-
}),
|
|
909
|
+
}), jsxRuntime.jsx("div", {
|
|
1330
910
|
name: props.name,
|
|
1331
911
|
class: classnames__default["default"]('bio-properties-panel-feelers-editor bio-properties-panel-input', localValue ? 'edited' : null, disabled ? 'disabled' : null),
|
|
1332
912
|
ref: inputRef,
|
|
1333
913
|
onClick: handleClick
|
|
1334
|
-
}),
|
|
914
|
+
}), jsxRuntime.jsx("button", {
|
|
1335
915
|
title: "Open pop-up editor",
|
|
1336
916
|
class: "bio-properties-panel-open-feel-popup",
|
|
1337
917
|
onClick: () => onPopupOpen('feelers'),
|
|
1338
|
-
children:
|
|
918
|
+
children: jsxRuntime.jsx(ExternalLinkIcon, {})
|
|
1339
919
|
})]
|
|
1340
920
|
});
|
|
1341
921
|
});
|
|
@@ -1347,8 +927,8 @@ const noop$5 = () => {};
|
|
|
1347
927
|
* Set Focus inside when the editor is ready.
|
|
1348
928
|
*/
|
|
1349
929
|
const useBufferedFocus = function (editor, ref) {
|
|
1350
|
-
const [buffer, setBuffer] =
|
|
1351
|
-
ref.current =
|
|
930
|
+
const [buffer, setBuffer] = hooks.useState(undefined);
|
|
931
|
+
ref.current = hooks.useMemo(() => ({
|
|
1352
932
|
focus: offset => {
|
|
1353
933
|
if (editor) {
|
|
1354
934
|
editor.focus(offset);
|
|
@@ -1360,14 +940,14 @@ const useBufferedFocus = function (editor, ref) {
|
|
|
1360
940
|
}
|
|
1361
941
|
}
|
|
1362
942
|
}), [editor]);
|
|
1363
|
-
|
|
943
|
+
hooks.useEffect(() => {
|
|
1364
944
|
if (typeof buffer !== 'undefined' && editor) {
|
|
1365
945
|
editor.focus(buffer);
|
|
1366
946
|
setBuffer(false);
|
|
1367
947
|
}
|
|
1368
948
|
}, [editor, buffer]);
|
|
1369
949
|
};
|
|
1370
|
-
const CodeEditor =
|
|
950
|
+
const CodeEditor = compat.forwardRef((props, ref) => {
|
|
1371
951
|
const {
|
|
1372
952
|
enableGutters,
|
|
1373
953
|
value,
|
|
@@ -1380,15 +960,15 @@ const CodeEditor = k((props, ref) => {
|
|
|
1380
960
|
tooltipContainer,
|
|
1381
961
|
variables
|
|
1382
962
|
} = props;
|
|
1383
|
-
const inputRef =
|
|
1384
|
-
const [editor, setEditor] =
|
|
1385
|
-
const [localValue, setLocalValue] =
|
|
963
|
+
const inputRef = hooks.useRef();
|
|
964
|
+
const [editor, setEditor] = hooks.useState();
|
|
965
|
+
const [localValue, setLocalValue] = hooks.useState(value || '');
|
|
1386
966
|
useBufferedFocus(editor, ref);
|
|
1387
967
|
const handleInput = useStaticCallback(newValue => {
|
|
1388
968
|
onInput(newValue);
|
|
1389
969
|
setLocalValue(newValue);
|
|
1390
970
|
});
|
|
1391
|
-
|
|
971
|
+
hooks.useEffect(() => {
|
|
1392
972
|
let editor;
|
|
1393
973
|
|
|
1394
974
|
/* Trigger FEEL toggle when
|
|
@@ -1423,7 +1003,7 @@ const CodeEditor = k((props, ref) => {
|
|
|
1423
1003
|
setEditor(null);
|
|
1424
1004
|
};
|
|
1425
1005
|
}, []);
|
|
1426
|
-
|
|
1006
|
+
hooks.useEffect(() => {
|
|
1427
1007
|
if (!editor) {
|
|
1428
1008
|
return;
|
|
1429
1009
|
}
|
|
@@ -1433,7 +1013,7 @@ const CodeEditor = k((props, ref) => {
|
|
|
1433
1013
|
editor.setValue(value);
|
|
1434
1014
|
setLocalValue(value);
|
|
1435
1015
|
}, [value]);
|
|
1436
|
-
|
|
1016
|
+
hooks.useEffect(() => {
|
|
1437
1017
|
if (!editor) {
|
|
1438
1018
|
return;
|
|
1439
1019
|
}
|
|
@@ -1442,21 +1022,21 @@ const CodeEditor = k((props, ref) => {
|
|
|
1442
1022
|
const handleClick = () => {
|
|
1443
1023
|
ref.current.focus();
|
|
1444
1024
|
};
|
|
1445
|
-
return
|
|
1025
|
+
return jsxRuntime.jsxs("div", {
|
|
1446
1026
|
class: classnames__default["default"]('bio-properties-panel-feel-editor-container', disabled ? 'disabled' : null, popupOpen ? 'popupOpen' : null),
|
|
1447
|
-
children: [
|
|
1027
|
+
children: [jsxRuntime.jsx("div", {
|
|
1448
1028
|
class: "bio-properties-panel-feel-editor__open-popup-placeholder",
|
|
1449
1029
|
children: "Opened in editor"
|
|
1450
|
-
}),
|
|
1030
|
+
}), jsxRuntime.jsx("div", {
|
|
1451
1031
|
name: props.name,
|
|
1452
1032
|
class: classnames__default["default"]('bio-properties-panel-input', localValue ? 'edited' : null),
|
|
1453
1033
|
ref: inputRef,
|
|
1454
1034
|
onClick: handleClick
|
|
1455
|
-
}),
|
|
1035
|
+
}), jsxRuntime.jsx("button", {
|
|
1456
1036
|
title: "Open pop-up editor",
|
|
1457
1037
|
class: "bio-properties-panel-open-feel-popup",
|
|
1458
1038
|
onClick: () => onPopupOpen(),
|
|
1459
|
-
children:
|
|
1039
|
+
children: jsxRuntime.jsx(ExternalLinkIcon, {})
|
|
1460
1040
|
})]
|
|
1461
1041
|
});
|
|
1462
1042
|
});
|
|
@@ -1468,7 +1048,7 @@ function FeelIndicator(props) {
|
|
|
1468
1048
|
if (!active) {
|
|
1469
1049
|
return null;
|
|
1470
1050
|
}
|
|
1471
|
-
return
|
|
1051
|
+
return jsxRuntime.jsx("span", {
|
|
1472
1052
|
class: "bio-properties-panel-feel-indicator",
|
|
1473
1053
|
children: "="
|
|
1474
1054
|
});
|
|
@@ -1498,12 +1078,12 @@ function FeelIcon(props) {
|
|
|
1498
1078
|
e.stopPropagation();
|
|
1499
1079
|
}
|
|
1500
1080
|
};
|
|
1501
|
-
return
|
|
1081
|
+
return jsxRuntime.jsx("button", {
|
|
1502
1082
|
class: classnames__default["default"]('bio-properties-panel-feel-icon', active ? 'active' : null, feel === 'required' ? 'required' : 'optional'),
|
|
1503
1083
|
onClick: handleClick,
|
|
1504
1084
|
disabled: feel === 'required' || disabled,
|
|
1505
1085
|
title: feel === 'required' ? feelRequiredLabel : feelOptionalLabel,
|
|
1506
|
-
children:
|
|
1086
|
+
children: jsxRuntime.jsx(FeelIcon$1, {})
|
|
1507
1087
|
});
|
|
1508
1088
|
}
|
|
1509
1089
|
|
|
@@ -1616,10 +1196,10 @@ function PopupComponent(props, globalRef) {
|
|
|
1616
1196
|
closeOnEscape = true,
|
|
1617
1197
|
title
|
|
1618
1198
|
} = props;
|
|
1619
|
-
const focusTrapRef =
|
|
1620
|
-
const localRef =
|
|
1199
|
+
const focusTrapRef = hooks.useRef(null);
|
|
1200
|
+
const localRef = hooks.useRef(null);
|
|
1621
1201
|
const popupRef = globalRef || localRef;
|
|
1622
|
-
const containerNode =
|
|
1202
|
+
const containerNode = hooks.useMemo(() => getContainerNode(container), [container]);
|
|
1623
1203
|
const handleKeydown = event => {
|
|
1624
1204
|
// do not allow keyboard events to bubble
|
|
1625
1205
|
event.stopPropagation();
|
|
@@ -1648,7 +1228,7 @@ function PopupComponent(props, globalRef) {
|
|
|
1648
1228
|
if (height) {
|
|
1649
1229
|
style.height = height + 'px';
|
|
1650
1230
|
}
|
|
1651
|
-
|
|
1231
|
+
hooks.useEffect(() => {
|
|
1652
1232
|
if (popupRef.current) {
|
|
1653
1233
|
popupRef.current.addEventListener('focusin', handleFocus);
|
|
1654
1234
|
}
|
|
@@ -1656,7 +1236,7 @@ function PopupComponent(props, globalRef) {
|
|
|
1656
1236
|
popupRef.current.removeEventListener('focusin', handleFocus);
|
|
1657
1237
|
};
|
|
1658
1238
|
}, [popupRef]);
|
|
1659
|
-
|
|
1239
|
+
hooks.useEffect(() => {
|
|
1660
1240
|
if (popupRef.current) {
|
|
1661
1241
|
focusTrapRef.current = focusTrap__namespace.createFocusTrap(popupRef.current, {
|
|
1662
1242
|
clickOutsideDeactivates: true,
|
|
@@ -1670,7 +1250,7 @@ function PopupComponent(props, globalRef) {
|
|
|
1670
1250
|
}
|
|
1671
1251
|
return () => focusTrapRef.current && focusTrapRef.current.deactivate();
|
|
1672
1252
|
}, [popupRef]);
|
|
1673
|
-
return
|
|
1253
|
+
return compat.createPortal(jsxRuntime.jsx("div", {
|
|
1674
1254
|
"aria-label": title,
|
|
1675
1255
|
tabIndex: -1,
|
|
1676
1256
|
ref: popupRef,
|
|
@@ -1681,7 +1261,7 @@ function PopupComponent(props, globalRef) {
|
|
|
1681
1261
|
children: props.children
|
|
1682
1262
|
}), containerNode || document.body);
|
|
1683
1263
|
}
|
|
1684
|
-
const Popup =
|
|
1264
|
+
const Popup = compat.forwardRef(PopupComponent);
|
|
1685
1265
|
Popup.Title = Title;
|
|
1686
1266
|
Popup.Body = Body;
|
|
1687
1267
|
Popup.Footer = Footer;
|
|
@@ -1697,12 +1277,12 @@ function Title(props) {
|
|
|
1697
1277
|
|
|
1698
1278
|
// we can't use state as we need to
|
|
1699
1279
|
// manipulate this inside dragging events
|
|
1700
|
-
const context =
|
|
1280
|
+
const context = hooks.useRef({
|
|
1701
1281
|
startPosition: null,
|
|
1702
1282
|
newPosition: null
|
|
1703
1283
|
});
|
|
1704
|
-
const dragPreviewRef =
|
|
1705
|
-
const titleRef =
|
|
1284
|
+
const dragPreviewRef = hooks.useRef();
|
|
1285
|
+
const titleRef = hooks.useRef();
|
|
1706
1286
|
const onMove = (event, delta) => {
|
|
1707
1287
|
cancel(event);
|
|
1708
1288
|
const {
|
|
@@ -1744,22 +1324,22 @@ function Title(props) {
|
|
|
1744
1324
|
// notify interested parties
|
|
1745
1325
|
emit('dragend');
|
|
1746
1326
|
};
|
|
1747
|
-
return
|
|
1327
|
+
return jsxRuntime.jsxs("div", {
|
|
1748
1328
|
class: classnames__default["default"]('bio-properties-panel-popup__header', draggable && 'draggable', className),
|
|
1749
1329
|
ref: titleRef,
|
|
1750
1330
|
draggable: draggable,
|
|
1751
1331
|
onDragStart: onMoveStart,
|
|
1752
1332
|
onDragEnd: onMoveEnd,
|
|
1753
1333
|
...rest,
|
|
1754
|
-
children: [draggable &&
|
|
1755
|
-
children: [
|
|
1334
|
+
children: [draggable && jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
1335
|
+
children: [jsxRuntime.jsx("div", {
|
|
1756
1336
|
ref: dragPreviewRef,
|
|
1757
1337
|
class: "bio-properties-panel-popup__drag-preview"
|
|
1758
|
-
}),
|
|
1338
|
+
}), jsxRuntime.jsx("div", {
|
|
1759
1339
|
class: "bio-properties-panel-popup__drag-handle",
|
|
1760
|
-
children:
|
|
1340
|
+
children: jsxRuntime.jsx(DragIcon, {})
|
|
1761
1341
|
})]
|
|
1762
|
-
}),
|
|
1342
|
+
}), jsxRuntime.jsx("div", {
|
|
1763
1343
|
class: "bio-properties-panel-popup__title",
|
|
1764
1344
|
children: title
|
|
1765
1345
|
}), children]
|
|
@@ -1771,7 +1351,7 @@ function Body(props) {
|
|
|
1771
1351
|
className,
|
|
1772
1352
|
...rest
|
|
1773
1353
|
} = props;
|
|
1774
|
-
return
|
|
1354
|
+
return jsxRuntime.jsx("div", {
|
|
1775
1355
|
class: classnames__default["default"]('bio-properties-panel-popup__body', className),
|
|
1776
1356
|
...rest,
|
|
1777
1357
|
children: children
|
|
@@ -1783,7 +1363,7 @@ function Footer(props) {
|
|
|
1783
1363
|
className,
|
|
1784
1364
|
...rest
|
|
1785
1365
|
} = props;
|
|
1786
|
-
return
|
|
1366
|
+
return jsxRuntime.jsx("div", {
|
|
1787
1367
|
class: classnames__default["default"]('bio-properties-panel-popup__footer', className),
|
|
1788
1368
|
...rest,
|
|
1789
1369
|
children: props.children
|
|
@@ -1827,14 +1407,14 @@ function FEELPopupRoot(props) {
|
|
|
1827
1407
|
popupContainer
|
|
1828
1408
|
} = props;
|
|
1829
1409
|
const prevElement = usePrevious(element);
|
|
1830
|
-
const [popupConfig, setPopupConfig] =
|
|
1831
|
-
const [open, setOpen] =
|
|
1832
|
-
const [source, setSource] =
|
|
1833
|
-
const [sourceElement, setSourceElement] =
|
|
1410
|
+
const [popupConfig, setPopupConfig] = hooks.useState({});
|
|
1411
|
+
const [open, setOpen] = hooks.useState(false);
|
|
1412
|
+
const [source, setSource] = hooks.useState(null);
|
|
1413
|
+
const [sourceElement, setSourceElement] = hooks.useState(null);
|
|
1834
1414
|
const emit = (type, context) => {
|
|
1835
1415
|
eventBus.fire('feelPopup.' + type, context);
|
|
1836
1416
|
};
|
|
1837
|
-
const isOpen =
|
|
1417
|
+
const isOpen = hooks.useCallback(() => {
|
|
1838
1418
|
return !!open;
|
|
1839
1419
|
}, [open]);
|
|
1840
1420
|
useUpdateEffect(() => {
|
|
@@ -1860,14 +1440,14 @@ function FEELPopupRoot(props) {
|
|
|
1860
1440
|
};
|
|
1861
1441
|
|
|
1862
1442
|
// close popup on element change, cf. https://github.com/bpmn-io/properties-panel/issues/270
|
|
1863
|
-
|
|
1443
|
+
hooks.useEffect(() => {
|
|
1864
1444
|
if (element && prevElement && element !== prevElement) {
|
|
1865
1445
|
handleClose();
|
|
1866
1446
|
}
|
|
1867
1447
|
}, [element]);
|
|
1868
1448
|
|
|
1869
1449
|
// allow close and open via events
|
|
1870
|
-
|
|
1450
|
+
hooks.useEffect(() => {
|
|
1871
1451
|
const handlePopupOpen = context => {
|
|
1872
1452
|
const {
|
|
1873
1453
|
entryId,
|
|
@@ -1888,9 +1468,9 @@ function FEELPopupRoot(props) {
|
|
|
1888
1468
|
eventBus.off('feelPopup._isOpen', handleIsOpen);
|
|
1889
1469
|
};
|
|
1890
1470
|
}, [eventBus, isOpen]);
|
|
1891
|
-
return
|
|
1471
|
+
return jsxRuntime.jsxs(FeelPopupContext.Provider, {
|
|
1892
1472
|
value: feelPopupContext,
|
|
1893
|
-
children: [open &&
|
|
1473
|
+
children: [open && jsxRuntime.jsx(FeelPopupComponent, {
|
|
1894
1474
|
onClose: handleClose,
|
|
1895
1475
|
container: popupContainer,
|
|
1896
1476
|
sourceElement: sourceElement,
|
|
@@ -1916,9 +1496,9 @@ function FeelPopupComponent(props) {
|
|
|
1916
1496
|
variables,
|
|
1917
1497
|
emit
|
|
1918
1498
|
} = props;
|
|
1919
|
-
const editorRef =
|
|
1920
|
-
const popupRef =
|
|
1921
|
-
const isAutoCompletionOpen =
|
|
1499
|
+
const editorRef = hooks.useRef();
|
|
1500
|
+
const popupRef = hooks.useRef();
|
|
1501
|
+
const isAutoCompletionOpen = hooks.useRef(false);
|
|
1922
1502
|
const handleSetReturnFocus = () => {
|
|
1923
1503
|
sourceElement && sourceElement.focus();
|
|
1924
1504
|
};
|
|
@@ -1940,7 +1520,7 @@ function FeelPopupComponent(props) {
|
|
|
1940
1520
|
}
|
|
1941
1521
|
}
|
|
1942
1522
|
};
|
|
1943
|
-
|
|
1523
|
+
hooks.useEffect(() => {
|
|
1944
1524
|
emit('opened', {
|
|
1945
1525
|
domNode: popupRef.current
|
|
1946
1526
|
});
|
|
@@ -1948,7 +1528,7 @@ function FeelPopupComponent(props) {
|
|
|
1948
1528
|
domNode: popupRef.current
|
|
1949
1529
|
});
|
|
1950
1530
|
}, []);
|
|
1951
|
-
return
|
|
1531
|
+
return jsxRuntime.jsxs(Popup, {
|
|
1952
1532
|
container: container,
|
|
1953
1533
|
className: "bio-properties-panel-feel-popup",
|
|
1954
1534
|
emit: emit,
|
|
@@ -1965,16 +1545,16 @@ function FeelPopupComponent(props) {
|
|
|
1965
1545
|
height: FEEL_POPUP_HEIGHT,
|
|
1966
1546
|
width: FEEL_POPUP_WIDTH,
|
|
1967
1547
|
ref: popupRef,
|
|
1968
|
-
children: [
|
|
1548
|
+
children: [jsxRuntime.jsx(Popup.Title, {
|
|
1969
1549
|
title: title,
|
|
1970
1550
|
emit: emit,
|
|
1971
1551
|
draggable: true
|
|
1972
|
-
}),
|
|
1973
|
-
children:
|
|
1552
|
+
}), jsxRuntime.jsx(Popup.Body, {
|
|
1553
|
+
children: jsxRuntime.jsxs("div", {
|
|
1974
1554
|
onKeyDownCapture: onKeyDownCapture,
|
|
1975
1555
|
onKeyDown: onKeyDown,
|
|
1976
1556
|
class: "bio-properties-panel-feel-popup__body",
|
|
1977
|
-
children: [type === 'feel' &&
|
|
1557
|
+
children: [type === 'feel' && jsxRuntime.jsx(CodeEditor, {
|
|
1978
1558
|
enableGutters: true,
|
|
1979
1559
|
id: prefixId$8(id),
|
|
1980
1560
|
name: id,
|
|
@@ -1983,7 +1563,7 @@ function FeelPopupComponent(props) {
|
|
|
1983
1563
|
variables: variables,
|
|
1984
1564
|
ref: editorRef,
|
|
1985
1565
|
tooltipContainer: tooltipContainer
|
|
1986
|
-
}), type === 'feelers' &&
|
|
1566
|
+
}), type === 'feelers' && jsxRuntime.jsx(CodeEditor$1, {
|
|
1987
1567
|
id: prefixId$8(id),
|
|
1988
1568
|
contentAttributes: {
|
|
1989
1569
|
'aria-label': title
|
|
@@ -1998,8 +1578,8 @@ function FeelPopupComponent(props) {
|
|
|
1998
1578
|
tooltipContainer: tooltipContainer
|
|
1999
1579
|
})]
|
|
2000
1580
|
})
|
|
2001
|
-
}),
|
|
2002
|
-
children:
|
|
1581
|
+
}), jsxRuntime.jsx(Popup.Footer, {
|
|
1582
|
+
children: jsxRuntime.jsx("button", {
|
|
2003
1583
|
onClick: onClose,
|
|
2004
1584
|
title: "Close pop-up editor",
|
|
2005
1585
|
class: "bio-properties-panel-feel-popup__close-btn",
|
|
@@ -2025,8 +1605,8 @@ function autoCompletionOpen(element) {
|
|
|
2025
1605
|
* @param {Array} deps
|
|
2026
1606
|
*/
|
|
2027
1607
|
function useUpdateEffect(effect, deps) {
|
|
2028
|
-
const isMounted =
|
|
2029
|
-
|
|
1608
|
+
const isMounted = hooks.useRef(false);
|
|
1609
|
+
hooks.useEffect(() => {
|
|
2030
1610
|
if (isMounted.current) {
|
|
2031
1611
|
return effect();
|
|
2032
1612
|
} else {
|
|
@@ -2048,7 +1628,7 @@ function ToggleSwitch(props) {
|
|
|
2048
1628
|
inputRef,
|
|
2049
1629
|
tooltip
|
|
2050
1630
|
} = props;
|
|
2051
|
-
const [localValue, setLocalValue] =
|
|
1631
|
+
const [localValue, setLocalValue] = hooks.useState(value);
|
|
2052
1632
|
const handleInputCallback = async () => {
|
|
2053
1633
|
onInput(!value);
|
|
2054
1634
|
};
|
|
@@ -2056,30 +1636,30 @@ function ToggleSwitch(props) {
|
|
|
2056
1636
|
handleInputCallback();
|
|
2057
1637
|
setLocalValue(e.target.value);
|
|
2058
1638
|
};
|
|
2059
|
-
|
|
1639
|
+
hooks.useEffect(() => {
|
|
2060
1640
|
if (value === localValue) {
|
|
2061
1641
|
return;
|
|
2062
1642
|
}
|
|
2063
1643
|
setLocalValue(value);
|
|
2064
1644
|
}, [value]);
|
|
2065
|
-
return
|
|
1645
|
+
return jsxRuntime.jsxs("div", {
|
|
2066
1646
|
class: classnames__default["default"]('bio-properties-panel-toggle-switch', {
|
|
2067
1647
|
inline
|
|
2068
1648
|
}),
|
|
2069
|
-
children: [
|
|
1649
|
+
children: [jsxRuntime.jsx("label", {
|
|
2070
1650
|
class: "bio-properties-panel-label",
|
|
2071
1651
|
for: prefixId$7(id),
|
|
2072
|
-
children:
|
|
1652
|
+
children: jsxRuntime.jsx(TooltipWrapper, {
|
|
2073
1653
|
value: tooltip,
|
|
2074
1654
|
forId: id,
|
|
2075
1655
|
element: props.element,
|
|
2076
1656
|
children: label
|
|
2077
1657
|
})
|
|
2078
|
-
}),
|
|
1658
|
+
}), jsxRuntime.jsxs("div", {
|
|
2079
1659
|
class: "bio-properties-panel-field-wrapper",
|
|
2080
|
-
children: [
|
|
1660
|
+
children: [jsxRuntime.jsxs("label", {
|
|
2081
1661
|
class: "bio-properties-panel-toggle-switch__switcher",
|
|
2082
|
-
children: [
|
|
1662
|
+
children: [jsxRuntime.jsx("input", {
|
|
2083
1663
|
ref: inputRef,
|
|
2084
1664
|
id: prefixId$7(id),
|
|
2085
1665
|
class: "bio-properties-panel-input",
|
|
@@ -2089,10 +1669,10 @@ function ToggleSwitch(props) {
|
|
|
2089
1669
|
name: id,
|
|
2090
1670
|
onInput: handleInput,
|
|
2091
1671
|
checked: !!localValue
|
|
2092
|
-
}),
|
|
1672
|
+
}), jsxRuntime.jsx("span", {
|
|
2093
1673
|
class: "bio-properties-panel-toggle-switch__slider"
|
|
2094
1674
|
})]
|
|
2095
|
-
}), switcherLabel &&
|
|
1675
|
+
}), switcherLabel && jsxRuntime.jsx("p", {
|
|
2096
1676
|
class: "bio-properties-panel-toggle-switch__label",
|
|
2097
1677
|
children: switcherLabel
|
|
2098
1678
|
})]
|
|
@@ -2129,10 +1709,10 @@ function ToggleSwitchEntry(props) {
|
|
|
2129
1709
|
tooltip
|
|
2130
1710
|
} = props;
|
|
2131
1711
|
const value = getValue(element);
|
|
2132
|
-
return
|
|
1712
|
+
return jsxRuntime.jsxs("div", {
|
|
2133
1713
|
class: "bio-properties-panel-entry bio-properties-panel-toggle-switch-entry",
|
|
2134
1714
|
"data-entry-id": id,
|
|
2135
|
-
children: [
|
|
1715
|
+
children: [jsxRuntime.jsx(ToggleSwitch, {
|
|
2136
1716
|
id: id,
|
|
2137
1717
|
label: label,
|
|
2138
1718
|
value: value,
|
|
@@ -2143,7 +1723,7 @@ function ToggleSwitchEntry(props) {
|
|
|
2143
1723
|
inline: inline,
|
|
2144
1724
|
tooltip: tooltip,
|
|
2145
1725
|
element: element
|
|
2146
|
-
}),
|
|
1726
|
+
}), jsxRuntime.jsx(Description, {
|
|
2147
1727
|
forId: id,
|
|
2148
1728
|
element: element,
|
|
2149
1729
|
value: description
|
|
@@ -2176,8 +1756,8 @@ function NumberField(props) {
|
|
|
2176
1756
|
onFocus,
|
|
2177
1757
|
onBlur
|
|
2178
1758
|
} = props;
|
|
2179
|
-
const [localValue, setLocalValue] =
|
|
2180
|
-
const handleInputCallback =
|
|
1759
|
+
const [localValue, setLocalValue] = hooks.useState(value);
|
|
1760
|
+
const handleInputCallback = hooks.useMemo(() => {
|
|
2181
1761
|
return debounce(event => {
|
|
2182
1762
|
const {
|
|
2183
1763
|
validity,
|
|
@@ -2192,19 +1772,19 @@ function NumberField(props) {
|
|
|
2192
1772
|
handleInputCallback(e);
|
|
2193
1773
|
setLocalValue(e.target.value);
|
|
2194
1774
|
};
|
|
2195
|
-
|
|
1775
|
+
hooks.useEffect(() => {
|
|
2196
1776
|
if (value === localValue) {
|
|
2197
1777
|
return;
|
|
2198
1778
|
}
|
|
2199
1779
|
setLocalValue(value);
|
|
2200
1780
|
}, [value]);
|
|
2201
|
-
return
|
|
1781
|
+
return jsxRuntime.jsxs("div", {
|
|
2202
1782
|
class: "bio-properties-panel-numberfield",
|
|
2203
|
-
children: [displayLabel &&
|
|
1783
|
+
children: [displayLabel && jsxRuntime.jsx("label", {
|
|
2204
1784
|
for: prefixId$6(id),
|
|
2205
1785
|
class: "bio-properties-panel-label",
|
|
2206
1786
|
children: label
|
|
2207
|
-
}),
|
|
1787
|
+
}), jsxRuntime.jsx("input", {
|
|
2208
1788
|
id: prefixId$6(id),
|
|
2209
1789
|
ref: inputRef,
|
|
2210
1790
|
type: "number",
|
|
@@ -2259,9 +1839,9 @@ function NumberFieldEntry(props) {
|
|
|
2259
1839
|
validate
|
|
2260
1840
|
} = props;
|
|
2261
1841
|
const globalError = useError(id);
|
|
2262
|
-
const [localError, setLocalError] =
|
|
1842
|
+
const [localError, setLocalError] = hooks.useState(null);
|
|
2263
1843
|
let value = getValue(element);
|
|
2264
|
-
|
|
1844
|
+
hooks.useEffect(() => {
|
|
2265
1845
|
if (minDash.isFunction(validate)) {
|
|
2266
1846
|
const newValidationError = validate(value) || null;
|
|
2267
1847
|
setLocalError(newValidationError);
|
|
@@ -2276,10 +1856,10 @@ function NumberFieldEntry(props) {
|
|
|
2276
1856
|
setLocalError(newValidationError);
|
|
2277
1857
|
};
|
|
2278
1858
|
const error = globalError || localError;
|
|
2279
|
-
return
|
|
1859
|
+
return jsxRuntime.jsxs("div", {
|
|
2280
1860
|
class: classnames__default["default"]('bio-properties-panel-entry', error ? 'has-error' : ''),
|
|
2281
1861
|
"data-entry-id": id,
|
|
2282
|
-
children: [
|
|
1862
|
+
children: [jsxRuntime.jsx(NumberField, {
|
|
2283
1863
|
debounce: debounce,
|
|
2284
1864
|
disabled: disabled,
|
|
2285
1865
|
id: id,
|
|
@@ -2291,10 +1871,10 @@ function NumberFieldEntry(props) {
|
|
|
2291
1871
|
min: min,
|
|
2292
1872
|
step: step,
|
|
2293
1873
|
value: value
|
|
2294
|
-
}, element), error &&
|
|
1874
|
+
}, element), error && jsxRuntime.jsx("div", {
|
|
2295
1875
|
class: "bio-properties-panel-error",
|
|
2296
1876
|
children: error
|
|
2297
|
-
}),
|
|
1877
|
+
}), jsxRuntime.jsx(Description, {
|
|
2298
1878
|
forId: id,
|
|
2299
1879
|
element: element,
|
|
2300
1880
|
value: description
|
|
@@ -2330,16 +1910,16 @@ function FeelTextfield(props) {
|
|
|
2330
1910
|
OptionalComponent = OptionalFeelInput,
|
|
2331
1911
|
tooltip
|
|
2332
1912
|
} = props;
|
|
2333
|
-
const [localValue, _setLocalValue] =
|
|
1913
|
+
const [localValue, _setLocalValue] = hooks.useState(value);
|
|
2334
1914
|
const editorRef = useShowEntryEvent(id);
|
|
2335
|
-
const containerRef =
|
|
1915
|
+
const containerRef = hooks.useRef();
|
|
2336
1916
|
const feelActive = minDash.isString(localValue) && localValue.startsWith('=') || feel === 'required';
|
|
2337
1917
|
const feelOnlyValue = minDash.isString(localValue) && localValue.startsWith('=') ? localValue.substring(1) : localValue;
|
|
2338
|
-
const [focus, _setFocus] =
|
|
1918
|
+
const [focus, _setFocus] = hooks.useState(undefined);
|
|
2339
1919
|
const {
|
|
2340
1920
|
open: openPopup,
|
|
2341
1921
|
source: popupSource
|
|
2342
|
-
} =
|
|
1922
|
+
} = hooks.useContext(FeelPopupContext);
|
|
2343
1923
|
const popuOpen = popupSource === id;
|
|
2344
1924
|
const setFocus = (offset = 0) => {
|
|
2345
1925
|
const hasFocus = containerRef.current.contains(document.activeElement);
|
|
@@ -2348,7 +1928,7 @@ function FeelTextfield(props) {
|
|
|
2348
1928
|
const position = hasFocus ? document.activeElement.selectionStart : Infinity;
|
|
2349
1929
|
_setFocus(position + offset);
|
|
2350
1930
|
};
|
|
2351
|
-
const handleInputCallback =
|
|
1931
|
+
const handleInputCallback = hooks.useMemo(() => {
|
|
2352
1932
|
return debounce(newValue => {
|
|
2353
1933
|
onInput(newValue);
|
|
2354
1934
|
});
|
|
@@ -2408,13 +1988,13 @@ function FeelTextfield(props) {
|
|
|
2408
1988
|
};
|
|
2409
1989
|
openPopup(id, popupOptions, editorRef.current);
|
|
2410
1990
|
};
|
|
2411
|
-
|
|
1991
|
+
hooks.useEffect(() => {
|
|
2412
1992
|
if (typeof focus !== 'undefined') {
|
|
2413
1993
|
editorRef.current.focus(focus);
|
|
2414
1994
|
_setFocus(undefined);
|
|
2415
1995
|
}
|
|
2416
1996
|
}, [focus]);
|
|
2417
|
-
|
|
1997
|
+
hooks.useEffect(() => {
|
|
2418
1998
|
if (value === localValue) {
|
|
2419
1999
|
return;
|
|
2420
2000
|
}
|
|
@@ -2428,7 +2008,7 @@ function FeelTextfield(props) {
|
|
|
2428
2008
|
}, [value]);
|
|
2429
2009
|
|
|
2430
2010
|
// copy-paste integration
|
|
2431
|
-
|
|
2011
|
+
hooks.useEffect(() => {
|
|
2432
2012
|
const copyHandler = event => {
|
|
2433
2013
|
if (!feelActive) {
|
|
2434
2014
|
return;
|
|
@@ -2456,33 +2036,33 @@ function FeelTextfield(props) {
|
|
|
2456
2036
|
containerRef.current.removeEventListener('paste', pasteHandler);
|
|
2457
2037
|
};
|
|
2458
2038
|
}, [containerRef, feelActive, handleFeelToggle, setFocus]);
|
|
2459
|
-
return
|
|
2039
|
+
return jsxRuntime.jsxs("div", {
|
|
2460
2040
|
class: classnames__default["default"]('bio-properties-panel-feel-entry', {
|
|
2461
2041
|
'feel-active': feelActive
|
|
2462
2042
|
}),
|
|
2463
|
-
children: [
|
|
2043
|
+
children: [jsxRuntime.jsxs("label", {
|
|
2464
2044
|
for: prefixId$5(id),
|
|
2465
2045
|
class: "bio-properties-panel-label",
|
|
2466
2046
|
onClick: () => setFocus(),
|
|
2467
|
-
children: [
|
|
2047
|
+
children: [jsxRuntime.jsx(TooltipWrapper, {
|
|
2468
2048
|
value: tooltip,
|
|
2469
2049
|
forId: id,
|
|
2470
2050
|
element: props.element,
|
|
2471
2051
|
children: label
|
|
2472
|
-
}),
|
|
2052
|
+
}), jsxRuntime.jsx(FeelIcon, {
|
|
2473
2053
|
label: label,
|
|
2474
2054
|
feel: feel,
|
|
2475
2055
|
onClick: handleFeelToggle,
|
|
2476
2056
|
active: feelActive
|
|
2477
2057
|
})]
|
|
2478
|
-
}),
|
|
2058
|
+
}), jsxRuntime.jsxs("div", {
|
|
2479
2059
|
class: "bio-properties-panel-feel-container",
|
|
2480
2060
|
ref: containerRef,
|
|
2481
|
-
children: [
|
|
2061
|
+
children: [jsxRuntime.jsx(FeelIndicator, {
|
|
2482
2062
|
active: feelActive,
|
|
2483
2063
|
disabled: feel !== 'optional' || disabled,
|
|
2484
2064
|
onClick: handleFeelToggle
|
|
2485
|
-
}), feelActive ?
|
|
2065
|
+
}), feelActive ? jsxRuntime.jsx(CodeEditor, {
|
|
2486
2066
|
id: prefixId$5(id),
|
|
2487
2067
|
name: id,
|
|
2488
2068
|
onInput: handleLocalInput,
|
|
@@ -2498,7 +2078,7 @@ function FeelTextfield(props) {
|
|
|
2498
2078
|
variables: variables,
|
|
2499
2079
|
ref: editorRef,
|
|
2500
2080
|
tooltipContainer: tooltipContainer
|
|
2501
|
-
}) :
|
|
2081
|
+
}) : jsxRuntime.jsx(OptionalComponent, {
|
|
2502
2082
|
...props,
|
|
2503
2083
|
popupOpen: popuOpen,
|
|
2504
2084
|
onInput: handleLocalInput,
|
|
@@ -2514,7 +2094,7 @@ function FeelTextfield(props) {
|
|
|
2514
2094
|
})]
|
|
2515
2095
|
});
|
|
2516
2096
|
}
|
|
2517
|
-
const OptionalFeelInput =
|
|
2097
|
+
const OptionalFeelInput = compat.forwardRef((props, ref) => {
|
|
2518
2098
|
const {
|
|
2519
2099
|
id,
|
|
2520
2100
|
disabled,
|
|
@@ -2523,7 +2103,7 @@ const OptionalFeelInput = k((props, ref) => {
|
|
|
2523
2103
|
onFocus,
|
|
2524
2104
|
onBlur
|
|
2525
2105
|
} = props;
|
|
2526
|
-
const inputRef =
|
|
2106
|
+
const inputRef = hooks.useRef();
|
|
2527
2107
|
|
|
2528
2108
|
// To be consistent with the FEEL editor, set focus at start of input
|
|
2529
2109
|
// this ensures clean editing experience when switching with the keyboard
|
|
@@ -2542,7 +2122,7 @@ const OptionalFeelInput = k((props, ref) => {
|
|
|
2542
2122
|
}
|
|
2543
2123
|
}
|
|
2544
2124
|
};
|
|
2545
|
-
return
|
|
2125
|
+
return jsxRuntime.jsx("input", {
|
|
2546
2126
|
id: prefixId$5(id),
|
|
2547
2127
|
type: "text",
|
|
2548
2128
|
ref: inputRef,
|
|
@@ -2557,7 +2137,7 @@ const OptionalFeelInput = k((props, ref) => {
|
|
|
2557
2137
|
value: value || ''
|
|
2558
2138
|
});
|
|
2559
2139
|
});
|
|
2560
|
-
const OptionalFeelNumberField =
|
|
2140
|
+
const OptionalFeelNumberField = compat.forwardRef((props, ref) => {
|
|
2561
2141
|
const {
|
|
2562
2142
|
id,
|
|
2563
2143
|
debounce,
|
|
@@ -2570,7 +2150,7 @@ const OptionalFeelNumberField = k((props, ref) => {
|
|
|
2570
2150
|
onFocus,
|
|
2571
2151
|
onBlur
|
|
2572
2152
|
} = props;
|
|
2573
|
-
const inputRef =
|
|
2153
|
+
const inputRef = hooks.useRef();
|
|
2574
2154
|
|
|
2575
2155
|
// To be consistent with the FEEL editor, set focus at start of input
|
|
2576
2156
|
// this ensures clean editing experience when switching with the keyboard
|
|
@@ -2589,7 +2169,7 @@ const OptionalFeelNumberField = k((props, ref) => {
|
|
|
2589
2169
|
}
|
|
2590
2170
|
}
|
|
2591
2171
|
};
|
|
2592
|
-
return
|
|
2172
|
+
return jsxRuntime.jsx(NumberField, {
|
|
2593
2173
|
id: id,
|
|
2594
2174
|
debounce: debounce,
|
|
2595
2175
|
disabled: disabled,
|
|
@@ -2604,7 +2184,7 @@ const OptionalFeelNumberField = k((props, ref) => {
|
|
|
2604
2184
|
onBlur: onBlur
|
|
2605
2185
|
});
|
|
2606
2186
|
});
|
|
2607
|
-
const OptionalFeelTextArea =
|
|
2187
|
+
const OptionalFeelTextArea = compat.forwardRef((props, ref) => {
|
|
2608
2188
|
const {
|
|
2609
2189
|
id,
|
|
2610
2190
|
disabled,
|
|
@@ -2613,7 +2193,7 @@ const OptionalFeelTextArea = k((props, ref) => {
|
|
|
2613
2193
|
onFocus,
|
|
2614
2194
|
onBlur
|
|
2615
2195
|
} = props;
|
|
2616
|
-
const inputRef =
|
|
2196
|
+
const inputRef = hooks.useRef();
|
|
2617
2197
|
|
|
2618
2198
|
// To be consistent with the FEEL editor, set focus at start of input
|
|
2619
2199
|
// this ensures clean editing experience when switching with the keyboard
|
|
@@ -2627,7 +2207,7 @@ const OptionalFeelTextArea = k((props, ref) => {
|
|
|
2627
2207
|
input.setSelectionRange(0, 0);
|
|
2628
2208
|
}
|
|
2629
2209
|
};
|
|
2630
|
-
return
|
|
2210
|
+
return jsxRuntime.jsx("textarea", {
|
|
2631
2211
|
id: prefixId$5(id),
|
|
2632
2212
|
type: "text",
|
|
2633
2213
|
ref: inputRef,
|
|
@@ -2643,7 +2223,7 @@ const OptionalFeelTextArea = k((props, ref) => {
|
|
|
2643
2223
|
"data-gramm": "false"
|
|
2644
2224
|
});
|
|
2645
2225
|
});
|
|
2646
|
-
const OptionalFeelToggleSwitch =
|
|
2226
|
+
const OptionalFeelToggleSwitch = compat.forwardRef((props, ref) => {
|
|
2647
2227
|
const {
|
|
2648
2228
|
id,
|
|
2649
2229
|
onInput,
|
|
@@ -2652,7 +2232,7 @@ const OptionalFeelToggleSwitch = k((props, ref) => {
|
|
|
2652
2232
|
onBlur,
|
|
2653
2233
|
switcherLabel
|
|
2654
2234
|
} = props;
|
|
2655
|
-
const inputRef =
|
|
2235
|
+
const inputRef = hooks.useRef();
|
|
2656
2236
|
|
|
2657
2237
|
// To be consistent with the FEEL editor, set focus at start of input
|
|
2658
2238
|
// this ensures clean editing experience when switching with the keyboard
|
|
@@ -2665,7 +2245,7 @@ const OptionalFeelToggleSwitch = k((props, ref) => {
|
|
|
2665
2245
|
input.focus();
|
|
2666
2246
|
}
|
|
2667
2247
|
};
|
|
2668
|
-
return
|
|
2248
|
+
return jsxRuntime.jsx(ToggleSwitch, {
|
|
2669
2249
|
id: id,
|
|
2670
2250
|
value: value,
|
|
2671
2251
|
inputRef: inputRef,
|
|
@@ -2675,7 +2255,7 @@ const OptionalFeelToggleSwitch = k((props, ref) => {
|
|
|
2675
2255
|
switcherLabel: switcherLabel
|
|
2676
2256
|
});
|
|
2677
2257
|
});
|
|
2678
|
-
const OptionalFeelCheckbox =
|
|
2258
|
+
const OptionalFeelCheckbox = compat.forwardRef((props, ref) => {
|
|
2679
2259
|
const {
|
|
2680
2260
|
id,
|
|
2681
2261
|
disabled,
|
|
@@ -2684,7 +2264,7 @@ const OptionalFeelCheckbox = k((props, ref) => {
|
|
|
2684
2264
|
onFocus,
|
|
2685
2265
|
onBlur
|
|
2686
2266
|
} = props;
|
|
2687
|
-
const inputRef =
|
|
2267
|
+
const inputRef = hooks.useRef();
|
|
2688
2268
|
const handleChange = ({
|
|
2689
2269
|
target
|
|
2690
2270
|
}) => {
|
|
@@ -2702,7 +2282,7 @@ const OptionalFeelCheckbox = k((props, ref) => {
|
|
|
2702
2282
|
input.focus();
|
|
2703
2283
|
}
|
|
2704
2284
|
};
|
|
2705
|
-
return
|
|
2285
|
+
return jsxRuntime.jsx("input", {
|
|
2706
2286
|
ref: inputRef,
|
|
2707
2287
|
id: prefixId$5(id),
|
|
2708
2288
|
name: id,
|
|
@@ -2758,10 +2338,10 @@ function FeelEntry(props) {
|
|
|
2758
2338
|
onBlur,
|
|
2759
2339
|
tooltip
|
|
2760
2340
|
} = props;
|
|
2761
|
-
const [validationError, setValidationError] =
|
|
2762
|
-
const [localError, setLocalError] =
|
|
2341
|
+
const [validationError, setValidationError] = hooks.useState(null);
|
|
2342
|
+
const [localError, setLocalError] = hooks.useState(null);
|
|
2763
2343
|
let value = getValue(element);
|
|
2764
|
-
|
|
2344
|
+
hooks.useEffect(() => {
|
|
2765
2345
|
if (minDash.isFunction(validate)) {
|
|
2766
2346
|
const newValidationError = validate(value) || null;
|
|
2767
2347
|
setValidationError(newValidationError);
|
|
@@ -2779,12 +2359,12 @@ function FeelEntry(props) {
|
|
|
2779
2359
|
}
|
|
2780
2360
|
setValidationError(newValidationError);
|
|
2781
2361
|
});
|
|
2782
|
-
const onError =
|
|
2362
|
+
const onError = hooks.useCallback(err => {
|
|
2783
2363
|
setLocalError(err);
|
|
2784
2364
|
}, []);
|
|
2785
2365
|
const temporaryError = useError(id);
|
|
2786
2366
|
const error = temporaryError || localError || validationError;
|
|
2787
|
-
return
|
|
2367
|
+
return jsxRuntime.jsxs("div", {
|
|
2788
2368
|
class: classnames__default["default"](props.class, 'bio-properties-panel-entry', error ? 'has-error' : ''),
|
|
2789
2369
|
"data-entry-id": id,
|
|
2790
2370
|
children: [preact.createElement(FeelTextfield, {
|
|
@@ -2808,10 +2388,10 @@ function FeelEntry(props) {
|
|
|
2808
2388
|
tooltipContainer: tooltipContainer,
|
|
2809
2389
|
OptionalComponent: props.OptionalComponent,
|
|
2810
2390
|
tooltip: tooltip
|
|
2811
|
-
}), error &&
|
|
2391
|
+
}), error && jsxRuntime.jsx("div", {
|
|
2812
2392
|
class: "bio-properties-panel-error",
|
|
2813
2393
|
children: error
|
|
2814
|
-
}),
|
|
2394
|
+
}), jsxRuntime.jsx(Description, {
|
|
2815
2395
|
forId: id,
|
|
2816
2396
|
element: element,
|
|
2817
2397
|
value: description
|
|
@@ -2842,7 +2422,7 @@ function FeelEntry(props) {
|
|
|
2842
2422
|
* @param {Function} props.onBlur
|
|
2843
2423
|
*/
|
|
2844
2424
|
function FeelNumberEntry(props) {
|
|
2845
|
-
return
|
|
2425
|
+
return jsxRuntime.jsx(FeelEntry, {
|
|
2846
2426
|
class: "bio-properties-panel-feel-number",
|
|
2847
2427
|
OptionalComponent: OptionalFeelNumberField,
|
|
2848
2428
|
...props
|
|
@@ -2869,7 +2449,7 @@ function FeelNumberEntry(props) {
|
|
|
2869
2449
|
* @param {Function} props.onBlur
|
|
2870
2450
|
*/
|
|
2871
2451
|
function FeelTextAreaEntry(props) {
|
|
2872
|
-
return
|
|
2452
|
+
return jsxRuntime.jsx(FeelEntry, {
|
|
2873
2453
|
class: "bio-properties-panel-feel-textarea",
|
|
2874
2454
|
OptionalComponent: OptionalFeelTextArea,
|
|
2875
2455
|
...props
|
|
@@ -2896,7 +2476,7 @@ function FeelTextAreaEntry(props) {
|
|
|
2896
2476
|
* @param {Function} props.onBlur
|
|
2897
2477
|
*/
|
|
2898
2478
|
function FeelToggleSwitchEntry(props) {
|
|
2899
|
-
return
|
|
2479
|
+
return jsxRuntime.jsx(FeelEntry, {
|
|
2900
2480
|
class: "bio-properties-panel-feel-toggle-switch",
|
|
2901
2481
|
OptionalComponent: OptionalFeelToggleSwitch,
|
|
2902
2482
|
...props
|
|
@@ -2923,7 +2503,7 @@ function FeelToggleSwitchEntry(props) {
|
|
|
2923
2503
|
* @param {Function} props.onBlur
|
|
2924
2504
|
*/
|
|
2925
2505
|
function FeelCheckboxEntry(props) {
|
|
2926
|
-
return
|
|
2506
|
+
return jsxRuntime.jsx(FeelEntry, {
|
|
2927
2507
|
class: "bio-properties-panel-feel-checkbox",
|
|
2928
2508
|
OptionalComponent: OptionalFeelCheckbox,
|
|
2929
2509
|
...props
|
|
@@ -2952,7 +2532,7 @@ function FeelCheckboxEntry(props) {
|
|
|
2952
2532
|
* @param {Function} props.onBlur
|
|
2953
2533
|
*/
|
|
2954
2534
|
function FeelTemplatingEntry(props) {
|
|
2955
|
-
return
|
|
2535
|
+
return jsxRuntime.jsx(FeelEntry, {
|
|
2956
2536
|
class: "bio-properties-panel-feel-templating",
|
|
2957
2537
|
OptionalComponent: CodeEditor$1,
|
|
2958
2538
|
...props
|
|
@@ -3094,14 +2674,14 @@ function PropertiesPanel(props) {
|
|
|
3094
2674
|
} = props;
|
|
3095
2675
|
|
|
3096
2676
|
// set-up layout context
|
|
3097
|
-
const [layout, setLayout] =
|
|
2677
|
+
const [layout, setLayout] = hooks.useState(createLayout(layoutConfig));
|
|
3098
2678
|
|
|
3099
2679
|
// react to external changes in the layout config
|
|
3100
2680
|
useUpdateLayoutEffect(() => {
|
|
3101
2681
|
const newLayout = createLayout(layoutConfig);
|
|
3102
2682
|
setLayout(newLayout);
|
|
3103
2683
|
}, [layoutConfig]);
|
|
3104
|
-
|
|
2684
|
+
hooks.useEffect(() => {
|
|
3105
2685
|
if (typeof layoutChanged === 'function') {
|
|
3106
2686
|
layoutChanged(layout);
|
|
3107
2687
|
}
|
|
@@ -3122,8 +2702,8 @@ function PropertiesPanel(props) {
|
|
|
3122
2702
|
};
|
|
3123
2703
|
|
|
3124
2704
|
// set-up description context
|
|
3125
|
-
const description =
|
|
3126
|
-
|
|
2705
|
+
const description = hooks.useMemo(() => createDescriptionContext(descriptionConfig), [descriptionConfig]);
|
|
2706
|
+
hooks.useEffect(() => {
|
|
3127
2707
|
if (typeof descriptionLoaded === 'function') {
|
|
3128
2708
|
descriptionLoaded(description);
|
|
3129
2709
|
}
|
|
@@ -3137,8 +2717,8 @@ function PropertiesPanel(props) {
|
|
|
3137
2717
|
};
|
|
3138
2718
|
|
|
3139
2719
|
// set-up tooltip context
|
|
3140
|
-
const tooltip =
|
|
3141
|
-
|
|
2720
|
+
const tooltip = hooks.useMemo(() => createTooltipContext(tooltipConfig), [tooltipConfig]);
|
|
2721
|
+
hooks.useEffect(() => {
|
|
3142
2722
|
if (typeof tooltipLoaded === 'function') {
|
|
3143
2723
|
tooltipLoaded(tooltip);
|
|
3144
2724
|
}
|
|
@@ -3150,7 +2730,7 @@ function PropertiesPanel(props) {
|
|
|
3150
2730
|
tooltip,
|
|
3151
2731
|
getTooltipForId
|
|
3152
2732
|
};
|
|
3153
|
-
const [errors, setErrors] =
|
|
2733
|
+
const [errors, setErrors] = hooks.useState({});
|
|
3154
2734
|
const onSetErrors = ({
|
|
3155
2735
|
errors
|
|
3156
2736
|
}) => setErrors(errors);
|
|
@@ -3167,39 +2747,39 @@ function PropertiesPanel(props) {
|
|
|
3167
2747
|
|
|
3168
2748
|
// empty state
|
|
3169
2749
|
if (placeholderProvider && !element) {
|
|
3170
|
-
return
|
|
2750
|
+
return jsxRuntime.jsx(Placeholder, {
|
|
3171
2751
|
...placeholderProvider.getEmpty()
|
|
3172
2752
|
});
|
|
3173
2753
|
}
|
|
3174
2754
|
|
|
3175
2755
|
// multiple state
|
|
3176
2756
|
if (placeholderProvider && minDash.isArray(element)) {
|
|
3177
|
-
return
|
|
2757
|
+
return jsxRuntime.jsx(Placeholder, {
|
|
3178
2758
|
...placeholderProvider.getMultiple()
|
|
3179
2759
|
});
|
|
3180
2760
|
}
|
|
3181
|
-
return
|
|
2761
|
+
return jsxRuntime.jsx(LayoutContext.Provider, {
|
|
3182
2762
|
value: propertiesPanelContext,
|
|
3183
|
-
children:
|
|
2763
|
+
children: jsxRuntime.jsx(ErrorsContext.Provider, {
|
|
3184
2764
|
value: errorsContext,
|
|
3185
|
-
children:
|
|
2765
|
+
children: jsxRuntime.jsx(DescriptionContext.Provider, {
|
|
3186
2766
|
value: descriptionContext,
|
|
3187
|
-
children:
|
|
2767
|
+
children: jsxRuntime.jsx(TooltipContext.Provider, {
|
|
3188
2768
|
value: tooltipContext,
|
|
3189
|
-
children:
|
|
2769
|
+
children: jsxRuntime.jsx(LayoutContext.Provider, {
|
|
3190
2770
|
value: layoutContext,
|
|
3191
|
-
children:
|
|
2771
|
+
children: jsxRuntime.jsx(EventContext.Provider, {
|
|
3192
2772
|
value: eventContext,
|
|
3193
|
-
children:
|
|
2773
|
+
children: jsxRuntime.jsx(FEELPopupRoot, {
|
|
3194
2774
|
element: element,
|
|
3195
2775
|
eventBus: eventBus,
|
|
3196
2776
|
popupContainer: feelPopupContainer,
|
|
3197
|
-
children:
|
|
2777
|
+
children: jsxRuntime.jsxs("div", {
|
|
3198
2778
|
class: "bio-properties-panel",
|
|
3199
|
-
children: [
|
|
2779
|
+
children: [jsxRuntime.jsx(Header, {
|
|
3200
2780
|
element: element,
|
|
3201
2781
|
headerProvider: headerProvider
|
|
3202
|
-
}),
|
|
2782
|
+
}), jsxRuntime.jsx("div", {
|
|
3203
2783
|
class: "bio-properties-panel-scroll-container",
|
|
3204
2784
|
children: groups.map(group => {
|
|
3205
2785
|
const {
|
|
@@ -3253,8 +2833,8 @@ function createTooltipContext(overrides = {}) {
|
|
|
3253
2833
|
* @param {Array} deps
|
|
3254
2834
|
*/
|
|
3255
2835
|
function useUpdateLayoutEffect(effect, deps) {
|
|
3256
|
-
const isMounted =
|
|
3257
|
-
|
|
2836
|
+
const isMounted = hooks.useRef(false);
|
|
2837
|
+
hooks.useLayoutEffect(() => {
|
|
3258
2838
|
if (isMounted.current) {
|
|
3259
2839
|
return effect();
|
|
3260
2840
|
} else {
|
|
@@ -3269,9 +2849,9 @@ function DropdownButton(props) {
|
|
|
3269
2849
|
children,
|
|
3270
2850
|
menuItems = []
|
|
3271
2851
|
} = props;
|
|
3272
|
-
const dropdownRef =
|
|
3273
|
-
const menuRef =
|
|
3274
|
-
const [open, setOpen] =
|
|
2852
|
+
const dropdownRef = hooks.useRef(null);
|
|
2853
|
+
const menuRef = hooks.useRef(null);
|
|
2854
|
+
const [open, setOpen] = hooks.useState(false);
|
|
3275
2855
|
const close = () => setOpen(false);
|
|
3276
2856
|
function onDropdownToggle(event) {
|
|
3277
2857
|
if (menuRef.current && menuRef.current.contains(event.target)) {
|
|
@@ -3286,16 +2866,16 @@ function DropdownButton(props) {
|
|
|
3286
2866
|
action();
|
|
3287
2867
|
}
|
|
3288
2868
|
useGlobalClick([dropdownRef.current], () => close());
|
|
3289
|
-
return
|
|
2869
|
+
return jsxRuntime.jsxs("div", {
|
|
3290
2870
|
class: classnames__default["default"]('bio-properties-panel-dropdown-button', {
|
|
3291
2871
|
open
|
|
3292
2872
|
}, className),
|
|
3293
2873
|
onClick: onDropdownToggle,
|
|
3294
2874
|
ref: dropdownRef,
|
|
3295
|
-
children: [children,
|
|
2875
|
+
children: [children, jsxRuntime.jsx("div", {
|
|
3296
2876
|
class: "bio-properties-panel-dropdown-button__menu",
|
|
3297
2877
|
ref: menuRef,
|
|
3298
|
-
children: menuItems.map((item, index) =>
|
|
2878
|
+
children: menuItems.map((item, index) => jsxRuntime.jsx(MenuItem, {
|
|
3299
2879
|
onClick: onActionClick,
|
|
3300
2880
|
item: item
|
|
3301
2881
|
}, index))
|
|
@@ -3307,18 +2887,18 @@ function MenuItem({
|
|
|
3307
2887
|
onClick
|
|
3308
2888
|
}) {
|
|
3309
2889
|
if (item.separator) {
|
|
3310
|
-
return
|
|
2890
|
+
return jsxRuntime.jsx("div", {
|
|
3311
2891
|
class: "bio-properties-panel-dropdown-button__menu-item bio-properties-panel-dropdown-button__menu-item--separator"
|
|
3312
2892
|
});
|
|
3313
2893
|
}
|
|
3314
2894
|
if (item.action) {
|
|
3315
|
-
return
|
|
2895
|
+
return jsxRuntime.jsx("button", {
|
|
3316
2896
|
class: "bio-properties-panel-dropdown-button__menu-item bio-properties-panel-dropdown-button__menu-item--actionable",
|
|
3317
2897
|
onClick: event => onClick(event, item.action),
|
|
3318
2898
|
children: item.entry
|
|
3319
2899
|
});
|
|
3320
2900
|
}
|
|
3321
|
-
return
|
|
2901
|
+
return jsxRuntime.jsx("div", {
|
|
3322
2902
|
class: "bio-properties-panel-dropdown-button__menu-item",
|
|
3323
2903
|
children: item.entry
|
|
3324
2904
|
});
|
|
@@ -3330,7 +2910,7 @@ function MenuItem({
|
|
|
3330
2910
|
* @param {Function} callback
|
|
3331
2911
|
*/
|
|
3332
2912
|
function useGlobalClick(ignoredElements, callback) {
|
|
3333
|
-
|
|
2913
|
+
hooks.useEffect(() => {
|
|
3334
2914
|
/**
|
|
3335
2915
|
* @param {MouseEvent} event
|
|
3336
2916
|
*/
|
|
@@ -3356,7 +2936,7 @@ function HeaderButton(props) {
|
|
|
3356
2936
|
onClick = () => {},
|
|
3357
2937
|
...otherProps
|
|
3358
2938
|
} = props;
|
|
3359
|
-
return
|
|
2939
|
+
return jsxRuntime.jsx("button", {
|
|
3360
2940
|
...otherProps,
|
|
3361
2941
|
onClick: onClick,
|
|
3362
2942
|
class: classnames__default["default"]('bio-properties-panel-group-header-button', classname),
|
|
@@ -3373,14 +2953,14 @@ function CollapsibleEntry(props) {
|
|
|
3373
2953
|
open: shouldOpen,
|
|
3374
2954
|
remove
|
|
3375
2955
|
} = props;
|
|
3376
|
-
const [open, setOpen] =
|
|
2956
|
+
const [open, setOpen] = hooks.useState(shouldOpen);
|
|
3377
2957
|
const toggleOpen = () => setOpen(!open);
|
|
3378
2958
|
const {
|
|
3379
2959
|
onShow
|
|
3380
|
-
} =
|
|
2960
|
+
} = hooks.useContext(LayoutContext);
|
|
3381
2961
|
const propertiesPanelContext = {
|
|
3382
|
-
...
|
|
3383
|
-
onShow:
|
|
2962
|
+
...hooks.useContext(LayoutContext),
|
|
2963
|
+
onShow: hooks.useCallback(() => {
|
|
3384
2964
|
setOpen(true);
|
|
3385
2965
|
if (minDash.isFunction(onShow)) {
|
|
3386
2966
|
onShow();
|
|
@@ -3390,31 +2970,31 @@ function CollapsibleEntry(props) {
|
|
|
3390
2970
|
|
|
3391
2971
|
// todo(pinussilvestrus): translate once we have a translate mechanism for the core
|
|
3392
2972
|
const placeholderLabel = '<empty>';
|
|
3393
|
-
return
|
|
2973
|
+
return jsxRuntime.jsxs("div", {
|
|
3394
2974
|
"data-entry-id": id,
|
|
3395
2975
|
class: classnames__default["default"]('bio-properties-panel-collapsible-entry', open ? 'open' : ''),
|
|
3396
|
-
children: [
|
|
2976
|
+
children: [jsxRuntime.jsxs("div", {
|
|
3397
2977
|
class: "bio-properties-panel-collapsible-entry-header",
|
|
3398
2978
|
onClick: toggleOpen,
|
|
3399
|
-
children: [
|
|
2979
|
+
children: [jsxRuntime.jsx("div", {
|
|
3400
2980
|
title: label || placeholderLabel,
|
|
3401
2981
|
class: classnames__default["default"]('bio-properties-panel-collapsible-entry-header-title', !label && 'empty'),
|
|
3402
2982
|
children: label || placeholderLabel
|
|
3403
|
-
}),
|
|
2983
|
+
}), jsxRuntime.jsx("button", {
|
|
3404
2984
|
title: "Toggle list item",
|
|
3405
2985
|
class: "bio-properties-panel-arrow bio-properties-panel-collapsible-entry-arrow",
|
|
3406
|
-
children:
|
|
2986
|
+
children: jsxRuntime.jsx(ArrowIcon, {
|
|
3407
2987
|
class: open ? 'bio-properties-panel-arrow-down' : 'bio-properties-panel-arrow-right'
|
|
3408
2988
|
})
|
|
3409
|
-
}), remove ?
|
|
2989
|
+
}), remove ? jsxRuntime.jsx("button", {
|
|
3410
2990
|
title: "Delete item",
|
|
3411
2991
|
class: "bio-properties-panel-remove-entry",
|
|
3412
2992
|
onClick: remove,
|
|
3413
|
-
children:
|
|
2993
|
+
children: jsxRuntime.jsx(DeleteIcon, {})
|
|
3414
2994
|
}) : null]
|
|
3415
|
-
}),
|
|
2995
|
+
}), jsxRuntime.jsx("div", {
|
|
3416
2996
|
class: classnames__default["default"]('bio-properties-panel-collapsible-entry-entries', open ? 'open' : ''),
|
|
3417
|
-
children:
|
|
2997
|
+
children: jsxRuntime.jsx(LayoutContext.Provider, {
|
|
3418
2998
|
value: propertiesPanelContext,
|
|
3419
2999
|
children: entries.map(entry => {
|
|
3420
3000
|
const {
|
|
@@ -3439,7 +3019,7 @@ function ListItem(props) {
|
|
|
3439
3019
|
} = props;
|
|
3440
3020
|
|
|
3441
3021
|
// focus specified entry on auto open
|
|
3442
|
-
|
|
3022
|
+
hooks.useEffect(() => {
|
|
3443
3023
|
if (autoOpen && autoFocusEntry) {
|
|
3444
3024
|
const entry = minDom.query(`[data-entry-id="${autoFocusEntry}"]`);
|
|
3445
3025
|
const focusableInput = minDom.query('.bio-properties-panel-input', entry);
|
|
@@ -3452,9 +3032,9 @@ function ListItem(props) {
|
|
|
3452
3032
|
}
|
|
3453
3033
|
}
|
|
3454
3034
|
}, [autoOpen, autoFocusEntry]);
|
|
3455
|
-
return
|
|
3035
|
+
return jsxRuntime.jsx("div", {
|
|
3456
3036
|
class: "bio-properties-panel-list-item",
|
|
3457
|
-
children:
|
|
3037
|
+
children: jsxRuntime.jsx(CollapsibleEntry, {
|
|
3458
3038
|
...props,
|
|
3459
3039
|
open: autoOpen
|
|
3460
3040
|
})
|
|
@@ -3476,15 +3056,15 @@ function ListGroup(props) {
|
|
|
3476
3056
|
shouldOpen = true,
|
|
3477
3057
|
shouldSort = true
|
|
3478
3058
|
} = props;
|
|
3479
|
-
const groupRef =
|
|
3059
|
+
const groupRef = hooks.useRef(null);
|
|
3480
3060
|
const [open, setOpen] = useLayoutState(['groups', id, 'open'], false);
|
|
3481
|
-
const [sticky, setSticky] =
|
|
3482
|
-
const onShow =
|
|
3483
|
-
const [ordering, setOrdering] =
|
|
3484
|
-
const [newItemAdded, setNewItemAdded] =
|
|
3061
|
+
const [sticky, setSticky] = hooks.useState(false);
|
|
3062
|
+
const onShow = hooks.useCallback(() => setOpen(true), [setOpen]);
|
|
3063
|
+
const [ordering, setOrdering] = hooks.useState([]);
|
|
3064
|
+
const [newItemAdded, setNewItemAdded] = hooks.useState(false);
|
|
3485
3065
|
|
|
3486
3066
|
// Flag to mark that add button was clicked in the last render cycle
|
|
3487
|
-
const [addTriggered, setAddTriggered] =
|
|
3067
|
+
const [addTriggered, setAddTriggered] = hooks.useState(false);
|
|
3488
3068
|
const prevItems = usePrevious(items);
|
|
3489
3069
|
const prevElement = usePrevious(element);
|
|
3490
3070
|
const elementChanged = element !== prevElement;
|
|
@@ -3498,14 +3078,14 @@ function ListGroup(props) {
|
|
|
3498
3078
|
// keep ordering in sync to items - and open changes
|
|
3499
3079
|
|
|
3500
3080
|
// (0) set initial ordering from given items
|
|
3501
|
-
|
|
3081
|
+
hooks.useEffect(() => {
|
|
3502
3082
|
if (!prevItems || !shouldSort) {
|
|
3503
3083
|
setOrdering(createOrdering(items));
|
|
3504
3084
|
}
|
|
3505
3085
|
}, [items, element]);
|
|
3506
3086
|
|
|
3507
3087
|
// (1) items were added
|
|
3508
|
-
|
|
3088
|
+
hooks.useEffect(() => {
|
|
3509
3089
|
// reset addTriggered flag
|
|
3510
3090
|
setAddTriggered(false);
|
|
3511
3091
|
if (shouldHandleEffects && prevItems && items.length > prevItems.length) {
|
|
@@ -3546,14 +3126,14 @@ function ListGroup(props) {
|
|
|
3546
3126
|
}, [items, open, shouldHandleEffects, addTriggered]);
|
|
3547
3127
|
|
|
3548
3128
|
// (2) sort items on open if shouldSort is set
|
|
3549
|
-
|
|
3129
|
+
hooks.useEffect(() => {
|
|
3550
3130
|
if (shouldSort && open && !newItemAdded) {
|
|
3551
3131
|
setOrdering(createOrdering(sortItems(items)));
|
|
3552
3132
|
}
|
|
3553
3133
|
}, [open, shouldSort]);
|
|
3554
3134
|
|
|
3555
3135
|
// (3) items were deleted
|
|
3556
|
-
|
|
3136
|
+
hooks.useEffect(() => {
|
|
3557
3137
|
if (shouldHandleEffects && prevItems && items.length < prevItems.length) {
|
|
3558
3138
|
let keep = [];
|
|
3559
3139
|
ordering.forEach(o => {
|
|
@@ -3570,7 +3150,7 @@ function ListGroup(props) {
|
|
|
3570
3150
|
const toggleOpen = () => setOpen(!open);
|
|
3571
3151
|
const hasItems = !!items.length;
|
|
3572
3152
|
const propertiesPanelContext = {
|
|
3573
|
-
...
|
|
3153
|
+
...hooks.useContext(LayoutContext),
|
|
3574
3154
|
onShow
|
|
3575
3155
|
};
|
|
3576
3156
|
const handleAddClick = e => {
|
|
@@ -3589,49 +3169,49 @@ function ListGroup(props) {
|
|
|
3589
3169
|
// also check if the error is nested, e.g. for name-value entries
|
|
3590
3170
|
return item.entries.some(entry => allErrors[entry.id]);
|
|
3591
3171
|
});
|
|
3592
|
-
return
|
|
3172
|
+
return jsxRuntime.jsxs("div", {
|
|
3593
3173
|
class: "bio-properties-panel-group",
|
|
3594
3174
|
"data-group-id": 'group-' + id,
|
|
3595
3175
|
ref: groupRef,
|
|
3596
|
-
children: [
|
|
3176
|
+
children: [jsxRuntime.jsxs("div", {
|
|
3597
3177
|
class: classnames__default["default"]('bio-properties-panel-group-header', hasItems ? '' : 'empty', hasItems && open ? 'open' : '', sticky && open ? 'sticky' : ''),
|
|
3598
3178
|
onClick: hasItems ? toggleOpen : noop$1,
|
|
3599
|
-
children: [
|
|
3179
|
+
children: [jsxRuntime.jsx("div", {
|
|
3600
3180
|
title: props.tooltip ? null : label,
|
|
3601
3181
|
"data-title": label,
|
|
3602
3182
|
class: "bio-properties-panel-group-header-title",
|
|
3603
|
-
children:
|
|
3183
|
+
children: jsxRuntime.jsx(TooltipWrapper, {
|
|
3604
3184
|
value: props.tooltip,
|
|
3605
3185
|
forId: 'group-' + id,
|
|
3606
3186
|
element: element,
|
|
3607
3187
|
parent: groupRef,
|
|
3608
3188
|
children: label
|
|
3609
3189
|
})
|
|
3610
|
-
}),
|
|
3190
|
+
}), jsxRuntime.jsxs("div", {
|
|
3611
3191
|
class: "bio-properties-panel-group-header-buttons",
|
|
3612
|
-
children: [add ?
|
|
3192
|
+
children: [add ? jsxRuntime.jsxs("button", {
|
|
3613
3193
|
title: "Create new list item",
|
|
3614
3194
|
class: "bio-properties-panel-group-header-button bio-properties-panel-add-entry",
|
|
3615
3195
|
onClick: handleAddClick,
|
|
3616
|
-
children: [
|
|
3196
|
+
children: [jsxRuntime.jsx(CreateIcon, {}), !hasItems ? jsxRuntime.jsx("span", {
|
|
3617
3197
|
class: "bio-properties-panel-add-entry-label",
|
|
3618
3198
|
children: "Create"
|
|
3619
3199
|
}) : null]
|
|
3620
|
-
}) : null, hasItems ?
|
|
3200
|
+
}) : null, hasItems ? jsxRuntime.jsx("div", {
|
|
3621
3201
|
title: `List contains ${items.length} item${items.length != 1 ? 's' : ''}`,
|
|
3622
3202
|
class: classnames__default["default"]('bio-properties-panel-list-badge', hasError ? 'bio-properties-panel-list-badge--error' : ''),
|
|
3623
3203
|
children: items.length
|
|
3624
|
-
}) : null, hasItems ?
|
|
3204
|
+
}) : null, hasItems ? jsxRuntime.jsx("button", {
|
|
3625
3205
|
title: "Toggle section",
|
|
3626
3206
|
class: "bio-properties-panel-group-header-button bio-properties-panel-arrow",
|
|
3627
|
-
children:
|
|
3207
|
+
children: jsxRuntime.jsx(ArrowIcon, {
|
|
3628
3208
|
class: open ? 'bio-properties-panel-arrow-down' : 'bio-properties-panel-arrow-right'
|
|
3629
3209
|
})
|
|
3630
3210
|
}) : null]
|
|
3631
3211
|
})]
|
|
3632
|
-
}),
|
|
3212
|
+
}), jsxRuntime.jsx("div", {
|
|
3633
3213
|
class: classnames__default["default"]('bio-properties-panel-list', open && hasItems ? 'open' : ''),
|
|
3634
|
-
children:
|
|
3214
|
+
children: jsxRuntime.jsx(LayoutContext.Provider, {
|
|
3635
3215
|
value: propertiesPanelContext,
|
|
3636
3216
|
children: ordering.map((o, index) => {
|
|
3637
3217
|
const item = getItem(items, o);
|
|
@@ -3684,7 +3264,7 @@ function Checkbox(props) {
|
|
|
3684
3264
|
onBlur,
|
|
3685
3265
|
tooltip
|
|
3686
3266
|
} = props;
|
|
3687
|
-
const [localValue, setLocalValue] =
|
|
3267
|
+
const [localValue, setLocalValue] = hooks.useState(value);
|
|
3688
3268
|
const handleChangeCallback = ({
|
|
3689
3269
|
target
|
|
3690
3270
|
}) => {
|
|
@@ -3694,16 +3274,16 @@ function Checkbox(props) {
|
|
|
3694
3274
|
handleChangeCallback(e);
|
|
3695
3275
|
setLocalValue(e.target.value);
|
|
3696
3276
|
};
|
|
3697
|
-
|
|
3277
|
+
hooks.useEffect(() => {
|
|
3698
3278
|
if (value === localValue) {
|
|
3699
3279
|
return;
|
|
3700
3280
|
}
|
|
3701
3281
|
setLocalValue(value);
|
|
3702
3282
|
}, [value]);
|
|
3703
3283
|
const ref = useShowEntryEvent(id);
|
|
3704
|
-
return
|
|
3284
|
+
return jsxRuntime.jsxs("div", {
|
|
3705
3285
|
class: "bio-properties-panel-checkbox",
|
|
3706
|
-
children: [
|
|
3286
|
+
children: [jsxRuntime.jsx("input", {
|
|
3707
3287
|
ref: ref,
|
|
3708
3288
|
id: prefixId$4(id),
|
|
3709
3289
|
name: id,
|
|
@@ -3714,10 +3294,10 @@ function Checkbox(props) {
|
|
|
3714
3294
|
onChange: handleChange,
|
|
3715
3295
|
checked: localValue,
|
|
3716
3296
|
disabled: disabled
|
|
3717
|
-
}),
|
|
3297
|
+
}), jsxRuntime.jsx("label", {
|
|
3718
3298
|
for: prefixId$4(id),
|
|
3719
3299
|
class: "bio-properties-panel-label",
|
|
3720
|
-
children:
|
|
3300
|
+
children: jsxRuntime.jsx(TooltipWrapper, {
|
|
3721
3301
|
value: tooltip,
|
|
3722
3302
|
forId: id,
|
|
3723
3303
|
element: props.element,
|
|
@@ -3755,10 +3335,10 @@ function CheckboxEntry(props) {
|
|
|
3755
3335
|
} = props;
|
|
3756
3336
|
const value = getValue(element);
|
|
3757
3337
|
const error = useError(id);
|
|
3758
|
-
return
|
|
3338
|
+
return jsxRuntime.jsxs("div", {
|
|
3759
3339
|
class: "bio-properties-panel-entry bio-properties-panel-checkbox-entry",
|
|
3760
3340
|
"data-entry-id": id,
|
|
3761
|
-
children: [
|
|
3341
|
+
children: [jsxRuntime.jsx(Checkbox, {
|
|
3762
3342
|
disabled: disabled,
|
|
3763
3343
|
id: id,
|
|
3764
3344
|
label: label,
|
|
@@ -3768,10 +3348,10 @@ function CheckboxEntry(props) {
|
|
|
3768
3348
|
value: value,
|
|
3769
3349
|
tooltip: tooltip,
|
|
3770
3350
|
element: element
|
|
3771
|
-
}, element), error &&
|
|
3351
|
+
}, element), error && jsxRuntime.jsx("div", {
|
|
3772
3352
|
class: "bio-properties-panel-error",
|
|
3773
3353
|
children: error
|
|
3774
|
-
}),
|
|
3354
|
+
}), jsxRuntime.jsx(Description, {
|
|
3775
3355
|
forId: id,
|
|
3776
3356
|
element: element,
|
|
3777
3357
|
value: description
|
|
@@ -3818,10 +3398,10 @@ function TemplatingEntry(props) {
|
|
|
3818
3398
|
validate,
|
|
3819
3399
|
show = noop
|
|
3820
3400
|
} = props;
|
|
3821
|
-
const [validationError, setValidationError] =
|
|
3822
|
-
const [localError, setLocalError] =
|
|
3401
|
+
const [validationError, setValidationError] = hooks.useState(null);
|
|
3402
|
+
const [localError, setLocalError] = hooks.useState(null);
|
|
3823
3403
|
let value = getValue(element);
|
|
3824
|
-
|
|
3404
|
+
hooks.useEffect(() => {
|
|
3825
3405
|
if (minDash.isFunction(validate)) {
|
|
3826
3406
|
const newValidationError = validate(value) || null;
|
|
3827
3407
|
setValidationError(newValidationError);
|
|
@@ -3839,15 +3419,15 @@ function TemplatingEntry(props) {
|
|
|
3839
3419
|
}
|
|
3840
3420
|
setValidationError(newValidationError);
|
|
3841
3421
|
});
|
|
3842
|
-
const onError =
|
|
3422
|
+
const onError = hooks.useCallback(err => {
|
|
3843
3423
|
setLocalError(err);
|
|
3844
3424
|
}, []);
|
|
3845
3425
|
const temporaryError = useError(id);
|
|
3846
3426
|
const error = localError || temporaryError || validationError;
|
|
3847
|
-
return
|
|
3427
|
+
return jsxRuntime.jsxs("div", {
|
|
3848
3428
|
class: classnames__default["default"]('bio-properties-panel-entry', error ? 'has-error' : ''),
|
|
3849
3429
|
"data-entry-id": id,
|
|
3850
|
-
children: [
|
|
3430
|
+
children: [jsxRuntime.jsx(Templating, {
|
|
3851
3431
|
debounce: debounce,
|
|
3852
3432
|
disabled: disabled,
|
|
3853
3433
|
id: id,
|
|
@@ -3857,10 +3437,10 @@ function TemplatingEntry(props) {
|
|
|
3857
3437
|
show: show,
|
|
3858
3438
|
value: value,
|
|
3859
3439
|
tooltipContainer: tooltipContainer
|
|
3860
|
-
}, element), error &&
|
|
3440
|
+
}, element), error && jsxRuntime.jsx("div", {
|
|
3861
3441
|
class: "bio-properties-panel-error",
|
|
3862
3442
|
children: error
|
|
3863
|
-
}),
|
|
3443
|
+
}), jsxRuntime.jsx(Description, {
|
|
3864
3444
|
forId: id,
|
|
3865
3445
|
element: element,
|
|
3866
3446
|
value: description
|
|
@@ -3878,10 +3458,10 @@ function Templating(props) {
|
|
|
3878
3458
|
disabled = false,
|
|
3879
3459
|
tooltipContainer
|
|
3880
3460
|
} = props;
|
|
3881
|
-
const [localValue, setLocalValue] =
|
|
3461
|
+
const [localValue, setLocalValue] = hooks.useState(value);
|
|
3882
3462
|
const editorRef = useShowEntryEvent(id);
|
|
3883
|
-
const containerRef =
|
|
3884
|
-
const [focus, _setFocus] =
|
|
3463
|
+
const containerRef = hooks.useRef();
|
|
3464
|
+
const [focus, _setFocus] = hooks.useState(undefined);
|
|
3885
3465
|
const setFocus = (offset = 0) => {
|
|
3886
3466
|
const hasFocus = containerRef.current.contains(document.activeElement);
|
|
3887
3467
|
|
|
@@ -3889,7 +3469,7 @@ function Templating(props) {
|
|
|
3889
3469
|
const position = hasFocus ? document.activeElement.selectionStart : Infinity;
|
|
3890
3470
|
_setFocus(position + offset);
|
|
3891
3471
|
};
|
|
3892
|
-
const handleInputCallback =
|
|
3472
|
+
const handleInputCallback = hooks.useMemo(() => {
|
|
3893
3473
|
return debounce(newValue => onInput(newValue.length ? newValue : undefined));
|
|
3894
3474
|
}, [onInput, debounce]);
|
|
3895
3475
|
const handleInput = newValue => {
|
|
@@ -3906,29 +3486,29 @@ function Templating(props) {
|
|
|
3906
3486
|
const message = `${error.source}: ${error.message}`;
|
|
3907
3487
|
onError(message);
|
|
3908
3488
|
});
|
|
3909
|
-
|
|
3489
|
+
hooks.useEffect(() => {
|
|
3910
3490
|
if (typeof focus !== 'undefined') {
|
|
3911
3491
|
editorRef.current.focus(focus);
|
|
3912
3492
|
_setFocus(undefined);
|
|
3913
3493
|
}
|
|
3914
3494
|
}, [focus]);
|
|
3915
|
-
|
|
3495
|
+
hooks.useEffect(() => {
|
|
3916
3496
|
if (value === localValue) {
|
|
3917
3497
|
return;
|
|
3918
3498
|
}
|
|
3919
3499
|
setLocalValue(value ? value : '');
|
|
3920
3500
|
}, [value]);
|
|
3921
|
-
return
|
|
3501
|
+
return jsxRuntime.jsxs("div", {
|
|
3922
3502
|
class: "bio-properties-panel-feelers",
|
|
3923
|
-
children: [
|
|
3503
|
+
children: [jsxRuntime.jsx("label", {
|
|
3924
3504
|
id: prefixIdLabel(id),
|
|
3925
3505
|
class: "bio-properties-panel-label",
|
|
3926
3506
|
onClick: () => setFocus(),
|
|
3927
3507
|
children: label
|
|
3928
|
-
}),
|
|
3508
|
+
}), jsxRuntime.jsx("div", {
|
|
3929
3509
|
class: "bio-properties-panel-feelers-input",
|
|
3930
3510
|
ref: containerRef,
|
|
3931
|
-
children:
|
|
3511
|
+
children: jsxRuntime.jsx(CodeEditor$1, {
|
|
3932
3512
|
name: id,
|
|
3933
3513
|
onInput: handleInput,
|
|
3934
3514
|
contentAttributes: {
|
|
@@ -3967,7 +3547,7 @@ function List(props) {
|
|
|
3967
3547
|
compareFn,
|
|
3968
3548
|
...restProps
|
|
3969
3549
|
} = props;
|
|
3970
|
-
const [open, setOpen] =
|
|
3550
|
+
const [open, setOpen] = hooks.useState(!!shouldOpen);
|
|
3971
3551
|
const hasItems = !!items.length;
|
|
3972
3552
|
const toggleOpen = () => hasItems && setOpen(!open);
|
|
3973
3553
|
const opening = !usePrevious(open) && open;
|
|
@@ -3975,7 +3555,7 @@ function List(props) {
|
|
|
3975
3555
|
const shouldReset = opening || elementChanged;
|
|
3976
3556
|
const sortedItems = useSortedItems(items, compareFn, shouldReset);
|
|
3977
3557
|
const newItems = useNewItems(items, elementChanged);
|
|
3978
|
-
|
|
3558
|
+
hooks.useEffect(() => {
|
|
3979
3559
|
if (open && !hasItems) {
|
|
3980
3560
|
setOpen(false);
|
|
3981
3561
|
}
|
|
@@ -3991,39 +3571,39 @@ function List(props) {
|
|
|
3991
3571
|
setOpen(true);
|
|
3992
3572
|
}
|
|
3993
3573
|
}
|
|
3994
|
-
return
|
|
3574
|
+
return jsxRuntime.jsxs("div", {
|
|
3995
3575
|
"data-entry-id": id,
|
|
3996
3576
|
class: classnames__default["default"]('bio-properties-panel-entry', 'bio-properties-panel-list-entry', hasItems ? '' : 'empty', open ? 'open' : ''),
|
|
3997
|
-
children: [
|
|
3577
|
+
children: [jsxRuntime.jsxs("div", {
|
|
3998
3578
|
class: "bio-properties-panel-list-entry-header",
|
|
3999
3579
|
onClick: toggleOpen,
|
|
4000
|
-
children: [
|
|
3580
|
+
children: [jsxRuntime.jsx("div", {
|
|
4001
3581
|
title: label,
|
|
4002
3582
|
class: classnames__default["default"]('bio-properties-panel-list-entry-header-title', open && 'open'),
|
|
4003
3583
|
children: label
|
|
4004
|
-
}),
|
|
3584
|
+
}), jsxRuntime.jsxs("div", {
|
|
4005
3585
|
class: "bio-properties-panel-list-entry-header-buttons",
|
|
4006
|
-
children: [
|
|
3586
|
+
children: [jsxRuntime.jsxs("button", {
|
|
4007
3587
|
title: "Create new list item",
|
|
4008
3588
|
onClick: addItem,
|
|
4009
3589
|
class: "bio-properties-panel-add-entry",
|
|
4010
|
-
children: [
|
|
3590
|
+
children: [jsxRuntime.jsx(CreateIcon, {}), !hasItems ? jsxRuntime.jsx("span", {
|
|
4011
3591
|
class: "bio-properties-panel-add-entry-label",
|
|
4012
3592
|
children: "Create"
|
|
4013
3593
|
}) : null]
|
|
4014
|
-
}), hasItems &&
|
|
3594
|
+
}), hasItems && jsxRuntime.jsx("div", {
|
|
4015
3595
|
title: `List contains ${items.length} item${items.length != 1 ? 's' : ''}`,
|
|
4016
3596
|
class: "bio-properties-panel-list-badge",
|
|
4017
3597
|
children: items.length
|
|
4018
|
-
}), hasItems &&
|
|
3598
|
+
}), hasItems && jsxRuntime.jsx("button", {
|
|
4019
3599
|
title: "Toggle list item",
|
|
4020
3600
|
class: "bio-properties-panel-arrow",
|
|
4021
|
-
children:
|
|
3601
|
+
children: jsxRuntime.jsx(ArrowIcon, {
|
|
4022
3602
|
class: open ? 'bio-properties-panel-arrow-down' : 'bio-properties-panel-arrow-right'
|
|
4023
3603
|
})
|
|
4024
3604
|
})]
|
|
4025
3605
|
})]
|
|
4026
|
-
}), hasItems &&
|
|
3606
|
+
}), hasItems && jsxRuntime.jsx(ItemsList, {
|
|
4027
3607
|
...restProps,
|
|
4028
3608
|
autoFocusEntry: autoFocusEntry,
|
|
4029
3609
|
component: component,
|
|
@@ -4050,7 +3630,7 @@ function ItemsList(props) {
|
|
|
4050
3630
|
} = props;
|
|
4051
3631
|
const getKey = useKeyFactory();
|
|
4052
3632
|
const newItem = newItems[0];
|
|
4053
|
-
|
|
3633
|
+
hooks.useEffect(() => {
|
|
4054
3634
|
if (newItem && autoFocusEntry) {
|
|
4055
3635
|
// (0) select the parent entry (containing all list items)
|
|
4056
3636
|
const entry = minDom.query(`[data-entry-id="${id}"]`);
|
|
@@ -4069,25 +3649,25 @@ function ItemsList(props) {
|
|
|
4069
3649
|
}
|
|
4070
3650
|
}
|
|
4071
3651
|
}, [newItem, autoFocusEntry, id]);
|
|
4072
|
-
return
|
|
3652
|
+
return jsxRuntime.jsx("ol", {
|
|
4073
3653
|
class: classnames__default["default"]('bio-properties-panel-list-entry-items', open ? 'open' : ''),
|
|
4074
3654
|
children: items.map((item, index) => {
|
|
4075
3655
|
const key = getKey(item);
|
|
4076
|
-
return
|
|
3656
|
+
return jsxRuntime.jsxs("li", {
|
|
4077
3657
|
class: "bio-properties-panel-list-entry-item",
|
|
4078
|
-
children: [
|
|
3658
|
+
children: [jsxRuntime.jsx(Component, {
|
|
4079
3659
|
...restProps,
|
|
4080
3660
|
element: element,
|
|
4081
3661
|
id: id,
|
|
4082
3662
|
index: index,
|
|
4083
3663
|
item: item,
|
|
4084
3664
|
open: item === newItem
|
|
4085
|
-
}), onRemove &&
|
|
3665
|
+
}), onRemove && jsxRuntime.jsx("button", {
|
|
4086
3666
|
type: "button",
|
|
4087
3667
|
title: "Delete item",
|
|
4088
3668
|
class: "bio-properties-panel-remove-entry bio-properties-panel-remove-list-entry",
|
|
4089
3669
|
onClick: () => onRemove && onRemove(item),
|
|
4090
|
-
children:
|
|
3670
|
+
children: jsxRuntime.jsx(DeleteIcon, {})
|
|
4091
3671
|
})]
|
|
4092
3672
|
}, key);
|
|
4093
3673
|
})
|
|
@@ -4104,7 +3684,7 @@ function ItemsList(props) {
|
|
|
4104
3684
|
* @returns {Item[]}
|
|
4105
3685
|
*/
|
|
4106
3686
|
function useSortedItems(currentItems, compareFn, shouldReset = false) {
|
|
4107
|
-
const itemsRef =
|
|
3687
|
+
const itemsRef = hooks.useRef(currentItems.slice());
|
|
4108
3688
|
|
|
4109
3689
|
// (1) Reset and optionally sort.
|
|
4110
3690
|
if (shouldReset) {
|
|
@@ -4149,7 +3729,7 @@ function Select(props) {
|
|
|
4149
3729
|
tooltip
|
|
4150
3730
|
} = props;
|
|
4151
3731
|
const ref = useShowEntryEvent(id);
|
|
4152
|
-
const [localValue, setLocalValue] =
|
|
3732
|
+
const [localValue, setLocalValue] = hooks.useState(value);
|
|
4153
3733
|
const handleChangeCallback = ({
|
|
4154
3734
|
target
|
|
4155
3735
|
}) => {
|
|
@@ -4159,24 +3739,24 @@ function Select(props) {
|
|
|
4159
3739
|
handleChangeCallback(e);
|
|
4160
3740
|
setLocalValue(e.target.value);
|
|
4161
3741
|
};
|
|
4162
|
-
|
|
3742
|
+
hooks.useEffect(() => {
|
|
4163
3743
|
if (value === localValue) {
|
|
4164
3744
|
return;
|
|
4165
3745
|
}
|
|
4166
3746
|
setLocalValue(value);
|
|
4167
3747
|
}, [value]);
|
|
4168
|
-
return
|
|
3748
|
+
return jsxRuntime.jsxs("div", {
|
|
4169
3749
|
class: "bio-properties-panel-select",
|
|
4170
|
-
children: [
|
|
3750
|
+
children: [jsxRuntime.jsx("label", {
|
|
4171
3751
|
for: prefixId$3(id),
|
|
4172
3752
|
class: "bio-properties-panel-label",
|
|
4173
|
-
children:
|
|
3753
|
+
children: jsxRuntime.jsx(TooltipWrapper, {
|
|
4174
3754
|
value: tooltip,
|
|
4175
3755
|
forId: id,
|
|
4176
3756
|
element: props.element,
|
|
4177
3757
|
children: label
|
|
4178
3758
|
})
|
|
4179
|
-
}),
|
|
3759
|
+
}), jsxRuntime.jsx("select", {
|
|
4180
3760
|
ref: ref,
|
|
4181
3761
|
id: prefixId$3(id),
|
|
4182
3762
|
name: id,
|
|
@@ -4188,16 +3768,16 @@ function Select(props) {
|
|
|
4188
3768
|
disabled: disabled,
|
|
4189
3769
|
children: options.map((option, idx) => {
|
|
4190
3770
|
if (option.children) {
|
|
4191
|
-
return
|
|
3771
|
+
return jsxRuntime.jsx("optgroup", {
|
|
4192
3772
|
label: option.label,
|
|
4193
|
-
children: option.children.map((child, idx) =>
|
|
3773
|
+
children: option.children.map((child, idx) => jsxRuntime.jsx("option", {
|
|
4194
3774
|
value: child.value,
|
|
4195
3775
|
disabled: child.disabled,
|
|
4196
3776
|
children: child.label
|
|
4197
3777
|
}, idx))
|
|
4198
3778
|
}, idx);
|
|
4199
3779
|
}
|
|
4200
|
-
return
|
|
3780
|
+
return jsxRuntime.jsx("option", {
|
|
4201
3781
|
value: option.value,
|
|
4202
3782
|
disabled: option.disabled,
|
|
4203
3783
|
children: option.label
|
|
@@ -4239,9 +3819,9 @@ function SelectEntry(props) {
|
|
|
4239
3819
|
} = props;
|
|
4240
3820
|
const options = getOptions(element);
|
|
4241
3821
|
const globalError = useError(id);
|
|
4242
|
-
const [localError, setLocalError] =
|
|
3822
|
+
const [localError, setLocalError] = hooks.useState(null);
|
|
4243
3823
|
let value = getValue(element);
|
|
4244
|
-
|
|
3824
|
+
hooks.useEffect(() => {
|
|
4245
3825
|
if (minDash.isFunction(validate)) {
|
|
4246
3826
|
const newValidationError = validate(value) || null;
|
|
4247
3827
|
setLocalError(newValidationError);
|
|
@@ -4256,10 +3836,10 @@ function SelectEntry(props) {
|
|
|
4256
3836
|
setLocalError(newValidationError);
|
|
4257
3837
|
};
|
|
4258
3838
|
const error = globalError || localError;
|
|
4259
|
-
return
|
|
3839
|
+
return jsxRuntime.jsxs("div", {
|
|
4260
3840
|
class: classnames__default["default"]('bio-properties-panel-entry', error ? 'has-error' : ''),
|
|
4261
3841
|
"data-entry-id": id,
|
|
4262
|
-
children: [
|
|
3842
|
+
children: [jsxRuntime.jsx(Select, {
|
|
4263
3843
|
id: id,
|
|
4264
3844
|
label: label,
|
|
4265
3845
|
value: value,
|
|
@@ -4270,10 +3850,10 @@ function SelectEntry(props) {
|
|
|
4270
3850
|
disabled: disabled,
|
|
4271
3851
|
tooltip: tooltip,
|
|
4272
3852
|
element: element
|
|
4273
|
-
}, element), error &&
|
|
3853
|
+
}, element), error && jsxRuntime.jsx("div", {
|
|
4274
3854
|
class: "bio-properties-panel-error",
|
|
4275
3855
|
children: error
|
|
4276
|
-
}),
|
|
3856
|
+
}), jsxRuntime.jsx(Description, {
|
|
4277
3857
|
forId: id,
|
|
4278
3858
|
element: element,
|
|
4279
3859
|
value: description
|
|
@@ -4302,8 +3882,8 @@ function Simple(props) {
|
|
|
4302
3882
|
setValue
|
|
4303
3883
|
} = props;
|
|
4304
3884
|
const value = getValue(element);
|
|
4305
|
-
const [localValue, setLocalValue] =
|
|
4306
|
-
const handleInputCallback =
|
|
3885
|
+
const [localValue, setLocalValue] = hooks.useState(value);
|
|
3886
|
+
const handleInputCallback = hooks.useMemo(() => {
|
|
4307
3887
|
return debounce(({
|
|
4308
3888
|
target
|
|
4309
3889
|
}) => setValue(target.value.length ? target.value : undefined));
|
|
@@ -4312,15 +3892,15 @@ function Simple(props) {
|
|
|
4312
3892
|
handleInputCallback(e);
|
|
4313
3893
|
setLocalValue(e.target.value);
|
|
4314
3894
|
};
|
|
4315
|
-
|
|
3895
|
+
hooks.useEffect(() => {
|
|
4316
3896
|
if (value === localValue) {
|
|
4317
3897
|
return;
|
|
4318
3898
|
}
|
|
4319
3899
|
setLocalValue(value);
|
|
4320
3900
|
}, [value]);
|
|
4321
|
-
return
|
|
3901
|
+
return jsxRuntime.jsx("div", {
|
|
4322
3902
|
class: "bio-properties-panel-simple",
|
|
4323
|
-
children:
|
|
3903
|
+
children: jsxRuntime.jsx("input", {
|
|
4324
3904
|
id: prefixId$2(id),
|
|
4325
3905
|
type: "text",
|
|
4326
3906
|
name: id,
|
|
@@ -4368,9 +3948,9 @@ function TextArea(props) {
|
|
|
4368
3948
|
rows = autoResize ? 1 : 2,
|
|
4369
3949
|
tooltip
|
|
4370
3950
|
} = props;
|
|
4371
|
-
const [localValue, setLocalValue] =
|
|
3951
|
+
const [localValue, setLocalValue] = hooks.useState(value);
|
|
4372
3952
|
const ref = useShowEntryEvent(id);
|
|
4373
|
-
const handleInputCallback =
|
|
3953
|
+
const handleInputCallback = hooks.useMemo(() => {
|
|
4374
3954
|
return debounce(({
|
|
4375
3955
|
target
|
|
4376
3956
|
}) => onInput(target.value.length ? target.value : undefined));
|
|
@@ -4380,27 +3960,27 @@ function TextArea(props) {
|
|
|
4380
3960
|
autoResize && resizeToContents(e.target);
|
|
4381
3961
|
setLocalValue(e.target.value);
|
|
4382
3962
|
};
|
|
4383
|
-
|
|
3963
|
+
hooks.useLayoutEffect(() => {
|
|
4384
3964
|
autoResize && resizeToContents(ref.current);
|
|
4385
3965
|
}, []);
|
|
4386
|
-
|
|
3966
|
+
hooks.useEffect(() => {
|
|
4387
3967
|
if (value === localValue) {
|
|
4388
3968
|
return;
|
|
4389
3969
|
}
|
|
4390
3970
|
setLocalValue(value);
|
|
4391
3971
|
}, [value]);
|
|
4392
|
-
return
|
|
3972
|
+
return jsxRuntime.jsxs("div", {
|
|
4393
3973
|
class: "bio-properties-panel-textarea",
|
|
4394
|
-
children: [
|
|
3974
|
+
children: [jsxRuntime.jsx("label", {
|
|
4395
3975
|
for: prefixId$1(id),
|
|
4396
3976
|
class: "bio-properties-panel-label",
|
|
4397
|
-
children:
|
|
3977
|
+
children: jsxRuntime.jsx(TooltipWrapper, {
|
|
4398
3978
|
value: tooltip,
|
|
4399
3979
|
forId: id,
|
|
4400
3980
|
element: props.element,
|
|
4401
3981
|
children: label
|
|
4402
3982
|
})
|
|
4403
|
-
}),
|
|
3983
|
+
}), jsxRuntime.jsx("textarea", {
|
|
4404
3984
|
ref: ref,
|
|
4405
3985
|
id: prefixId$1(id),
|
|
4406
3986
|
name: id,
|
|
@@ -4452,9 +4032,9 @@ function TextAreaEntry(props) {
|
|
|
4452
4032
|
tooltip
|
|
4453
4033
|
} = props;
|
|
4454
4034
|
const globalError = useError(id);
|
|
4455
|
-
const [localError, setLocalError] =
|
|
4035
|
+
const [localError, setLocalError] = hooks.useState(null);
|
|
4456
4036
|
let value = getValue(element);
|
|
4457
|
-
|
|
4037
|
+
hooks.useEffect(() => {
|
|
4458
4038
|
if (minDash.isFunction(validate)) {
|
|
4459
4039
|
const newValidationError = validate(value) || null;
|
|
4460
4040
|
setLocalError(newValidationError);
|
|
@@ -4469,10 +4049,10 @@ function TextAreaEntry(props) {
|
|
|
4469
4049
|
setLocalError(newValidationError);
|
|
4470
4050
|
};
|
|
4471
4051
|
const error = globalError || localError;
|
|
4472
|
-
return
|
|
4052
|
+
return jsxRuntime.jsxs("div", {
|
|
4473
4053
|
class: classnames__default["default"]('bio-properties-panel-entry', error ? 'has-error' : ''),
|
|
4474
4054
|
"data-entry-id": id,
|
|
4475
|
-
children: [
|
|
4055
|
+
children: [jsxRuntime.jsx(TextArea, {
|
|
4476
4056
|
id: id,
|
|
4477
4057
|
label: label,
|
|
4478
4058
|
value: value,
|
|
@@ -4486,10 +4066,10 @@ function TextAreaEntry(props) {
|
|
|
4486
4066
|
autoResize: autoResize,
|
|
4487
4067
|
tooltip: tooltip,
|
|
4488
4068
|
element: element
|
|
4489
|
-
}, element), error &&
|
|
4069
|
+
}, element), error && jsxRuntime.jsx("div", {
|
|
4490
4070
|
class: "bio-properties-panel-error",
|
|
4491
4071
|
children: error
|
|
4492
|
-
}),
|
|
4072
|
+
}), jsxRuntime.jsx(Description, {
|
|
4493
4073
|
forId: id,
|
|
4494
4074
|
element: element,
|
|
4495
4075
|
value: description
|
|
@@ -4518,9 +4098,9 @@ function Textfield(props) {
|
|
|
4518
4098
|
value = '',
|
|
4519
4099
|
tooltip
|
|
4520
4100
|
} = props;
|
|
4521
|
-
const [localValue, setLocalValue] =
|
|
4101
|
+
const [localValue, setLocalValue] = hooks.useState(value || '');
|
|
4522
4102
|
const ref = useShowEntryEvent(id);
|
|
4523
|
-
const handleInputCallback =
|
|
4103
|
+
const handleInputCallback = hooks.useMemo(() => {
|
|
4524
4104
|
return debounce(({
|
|
4525
4105
|
target
|
|
4526
4106
|
}) => onInput(target.value.length ? target.value : undefined));
|
|
@@ -4529,24 +4109,24 @@ function Textfield(props) {
|
|
|
4529
4109
|
handleInputCallback(e);
|
|
4530
4110
|
setLocalValue(e.target.value);
|
|
4531
4111
|
};
|
|
4532
|
-
|
|
4112
|
+
hooks.useEffect(() => {
|
|
4533
4113
|
if (value === localValue) {
|
|
4534
4114
|
return;
|
|
4535
4115
|
}
|
|
4536
4116
|
setLocalValue(value);
|
|
4537
4117
|
}, [value]);
|
|
4538
|
-
return
|
|
4118
|
+
return jsxRuntime.jsxs("div", {
|
|
4539
4119
|
class: "bio-properties-panel-textfield",
|
|
4540
|
-
children: [
|
|
4120
|
+
children: [jsxRuntime.jsx("label", {
|
|
4541
4121
|
for: prefixId(id),
|
|
4542
4122
|
class: "bio-properties-panel-label",
|
|
4543
|
-
children:
|
|
4123
|
+
children: jsxRuntime.jsx(TooltipWrapper, {
|
|
4544
4124
|
value: tooltip,
|
|
4545
4125
|
forId: id,
|
|
4546
4126
|
element: props.element,
|
|
4547
4127
|
children: label
|
|
4548
4128
|
})
|
|
4549
|
-
}),
|
|
4129
|
+
}), jsxRuntime.jsx("input", {
|
|
4550
4130
|
ref: ref,
|
|
4551
4131
|
id: prefixId(id),
|
|
4552
4132
|
type: "text",
|
|
@@ -4594,9 +4174,9 @@ function TextfieldEntry(props) {
|
|
|
4594
4174
|
tooltip
|
|
4595
4175
|
} = props;
|
|
4596
4176
|
const globalError = useError(id);
|
|
4597
|
-
const [localError, setLocalError] =
|
|
4177
|
+
const [localError, setLocalError] = hooks.useState(null);
|
|
4598
4178
|
let value = getValue(element);
|
|
4599
|
-
|
|
4179
|
+
hooks.useEffect(() => {
|
|
4600
4180
|
if (minDash.isFunction(validate)) {
|
|
4601
4181
|
const newValidationError = validate(value) || null;
|
|
4602
4182
|
setLocalError(newValidationError);
|
|
@@ -4611,10 +4191,10 @@ function TextfieldEntry(props) {
|
|
|
4611
4191
|
setLocalError(newValidationError);
|
|
4612
4192
|
};
|
|
4613
4193
|
const error = globalError || localError;
|
|
4614
|
-
return
|
|
4194
|
+
return jsxRuntime.jsxs("div", {
|
|
4615
4195
|
class: classnames__default["default"]('bio-properties-panel-entry', error ? 'has-error' : ''),
|
|
4616
4196
|
"data-entry-id": id,
|
|
4617
|
-
children: [
|
|
4197
|
+
children: [jsxRuntime.jsx(Textfield, {
|
|
4618
4198
|
debounce: debounce,
|
|
4619
4199
|
disabled: disabled,
|
|
4620
4200
|
id: id,
|
|
@@ -4625,10 +4205,10 @@ function TextfieldEntry(props) {
|
|
|
4625
4205
|
value: value,
|
|
4626
4206
|
tooltip: tooltip,
|
|
4627
4207
|
element: element
|
|
4628
|
-
}, element), error &&
|
|
4208
|
+
}, element), error && jsxRuntime.jsx("div", {
|
|
4629
4209
|
class: "bio-properties-panel-error",
|
|
4630
4210
|
children: error
|
|
4631
|
-
}),
|
|
4211
|
+
}), jsxRuntime.jsx(Description, {
|
|
4632
4212
|
forId: id,
|
|
4633
4213
|
element: element,
|
|
4634
4214
|
value: description
|