@bpmn-io/properties-panel 3.25.0 → 3.25.1
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/LICENSE +20 -20
- package/README.md +35 -35
- package/assets/properties-panel.css +3 -3
- package/dist/assets/properties-panel.css +1517 -1509
- package/dist/index.esm.js +492 -492
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +492 -492
- package/dist/index.js.map +1 -1
- package/package.json +91 -91
package/dist/index.js
CHANGED
|
@@ -238,19 +238,19 @@ const ErrorsContext = preact.createContext({
|
|
|
238
238
|
errors: {}
|
|
239
239
|
});
|
|
240
240
|
|
|
241
|
-
/**
|
|
242
|
-
* @typedef {Function} <propertiesPanel.showEntry> callback
|
|
243
|
-
*
|
|
244
|
-
* @example
|
|
245
|
-
*
|
|
246
|
-
* useEvent('propertiesPanel.showEntry', ({ focus = false, ...rest }) => {
|
|
247
|
-
* // ...
|
|
248
|
-
* });
|
|
249
|
-
*
|
|
250
|
-
* @param {Object} context
|
|
251
|
-
* @param {boolean} [context.focus]
|
|
252
|
-
*
|
|
253
|
-
* @returns void
|
|
241
|
+
/**
|
|
242
|
+
* @typedef {Function} <propertiesPanel.showEntry> callback
|
|
243
|
+
*
|
|
244
|
+
* @example
|
|
245
|
+
*
|
|
246
|
+
* useEvent('propertiesPanel.showEntry', ({ focus = false, ...rest }) => {
|
|
247
|
+
* // ...
|
|
248
|
+
* });
|
|
249
|
+
*
|
|
250
|
+
* @param {Object} context
|
|
251
|
+
* @param {boolean} [context.focus]
|
|
252
|
+
*
|
|
253
|
+
* @returns void
|
|
254
254
|
*/
|
|
255
255
|
|
|
256
256
|
const EventContext = preact.createContext({
|
|
@@ -269,20 +269,20 @@ const TooltipContext = preact.createContext({
|
|
|
269
269
|
getTooltipForId: () => {}
|
|
270
270
|
});
|
|
271
271
|
|
|
272
|
-
/**
|
|
273
|
-
* Accesses the global TooltipContext and returns a tooltip for a given id and element.
|
|
274
|
-
*
|
|
275
|
-
* @example
|
|
276
|
-
* ```jsx
|
|
277
|
-
* function TextField(props) {
|
|
278
|
-
* const tooltip = useTooltipContext('input1', element);
|
|
279
|
-
* }
|
|
280
|
-
* ```
|
|
281
|
-
*
|
|
282
|
-
* @param {string} id
|
|
283
|
-
* @param {object} element
|
|
284
|
-
*
|
|
285
|
-
* @returns {string}
|
|
272
|
+
/**
|
|
273
|
+
* Accesses the global TooltipContext and returns a tooltip for a given id and element.
|
|
274
|
+
*
|
|
275
|
+
* @example
|
|
276
|
+
* ```jsx
|
|
277
|
+
* function TextField(props) {
|
|
278
|
+
* const tooltip = useTooltipContext('input1', element);
|
|
279
|
+
* }
|
|
280
|
+
* ```
|
|
281
|
+
*
|
|
282
|
+
* @param {string} id
|
|
283
|
+
* @param {object} element
|
|
284
|
+
*
|
|
285
|
+
* @returns {string}
|
|
286
286
|
*/
|
|
287
287
|
function useTooltipContext(id, element) {
|
|
288
288
|
const {
|
|
@@ -435,20 +435,20 @@ function prefixId$9(id) {
|
|
|
435
435
|
return `bio-properties-panel-${id}`;
|
|
436
436
|
}
|
|
437
437
|
|
|
438
|
-
/**
|
|
439
|
-
* Accesses the global DescriptionContext and returns a description for a given id and element.
|
|
440
|
-
*
|
|
441
|
-
* @example
|
|
442
|
-
* ```jsx
|
|
443
|
-
* function TextField(props) {
|
|
444
|
-
* const description = useDescriptionContext('input1', element);
|
|
445
|
-
* }
|
|
446
|
-
* ```
|
|
447
|
-
*
|
|
448
|
-
* @param {string} id
|
|
449
|
-
* @param {object} element
|
|
450
|
-
*
|
|
451
|
-
* @returns {string}
|
|
438
|
+
/**
|
|
439
|
+
* Accesses the global DescriptionContext and returns a description for a given id and element.
|
|
440
|
+
*
|
|
441
|
+
* @example
|
|
442
|
+
* ```jsx
|
|
443
|
+
* function TextField(props) {
|
|
444
|
+
* const description = useDescriptionContext('input1', element);
|
|
445
|
+
* }
|
|
446
|
+
* ```
|
|
447
|
+
*
|
|
448
|
+
* @param {string} id
|
|
449
|
+
* @param {object} element
|
|
450
|
+
*
|
|
451
|
+
* @returns {string}
|
|
452
452
|
*/
|
|
453
453
|
function useDescriptionContext(id, element) {
|
|
454
454
|
const {
|
|
@@ -470,11 +470,11 @@ function useErrors() {
|
|
|
470
470
|
return errors;
|
|
471
471
|
}
|
|
472
472
|
|
|
473
|
-
/**
|
|
474
|
-
* Subscribe to an event immediately. Update subscription after inputs changed.
|
|
475
|
-
*
|
|
476
|
-
* @param {string} event
|
|
477
|
-
* @param {Function} callback
|
|
473
|
+
/**
|
|
474
|
+
* Subscribe to an event immediately. Update subscription after inputs changed.
|
|
475
|
+
*
|
|
476
|
+
* @param {string} event
|
|
477
|
+
* @param {Function} callback
|
|
478
478
|
*/
|
|
479
479
|
function useEvent(event, callback, eventBus) {
|
|
480
480
|
const eventContext = hooks.useContext(EventContext);
|
|
@@ -506,24 +506,24 @@ function useEvent(event, callback, eventBus) {
|
|
|
506
506
|
|
|
507
507
|
const KEY_LENGTH = 6;
|
|
508
508
|
|
|
509
|
-
/**
|
|
510
|
-
* Create a persistent key factory for plain objects without id.
|
|
511
|
-
*
|
|
512
|
-
* @example
|
|
513
|
-
* ```jsx
|
|
514
|
-
* function List({ objects }) {
|
|
515
|
-
* const getKey = useKeyFactory();
|
|
516
|
-
* return (<ol>{
|
|
517
|
-
* objects.map(obj => {
|
|
518
|
-
* const key = getKey(obj);
|
|
519
|
-
* return <li key={key}>obj.name</li>
|
|
520
|
-
* })
|
|
521
|
-
* }</ol>);
|
|
522
|
-
* }
|
|
523
|
-
* ```
|
|
524
|
-
*
|
|
525
|
-
* @param {any[]} dependencies
|
|
526
|
-
* @returns {(element: object) => string}
|
|
509
|
+
/**
|
|
510
|
+
* Create a persistent key factory for plain objects without id.
|
|
511
|
+
*
|
|
512
|
+
* @example
|
|
513
|
+
* ```jsx
|
|
514
|
+
* function List({ objects }) {
|
|
515
|
+
* const getKey = useKeyFactory();
|
|
516
|
+
* return (<ol>{
|
|
517
|
+
* objects.map(obj => {
|
|
518
|
+
* const key = getKey(obj);
|
|
519
|
+
* return <li key={key}>obj.name</li>
|
|
520
|
+
* })
|
|
521
|
+
* }</ol>);
|
|
522
|
+
* }
|
|
523
|
+
* ```
|
|
524
|
+
*
|
|
525
|
+
* @param {any[]} dependencies
|
|
526
|
+
* @returns {(element: object) => string}
|
|
527
527
|
*/
|
|
528
528
|
function useKeyFactory(dependencies = []) {
|
|
529
529
|
const map = hooks.useMemo(() => new Map(), dependencies);
|
|
@@ -538,20 +538,20 @@ function useKeyFactory(dependencies = []) {
|
|
|
538
538
|
return getKey;
|
|
539
539
|
}
|
|
540
540
|
|
|
541
|
-
/**
|
|
542
|
-
* Creates a state that persists in the global LayoutContext.
|
|
543
|
-
*
|
|
544
|
-
* @example
|
|
545
|
-
* ```jsx
|
|
546
|
-
* function Group(props) {
|
|
547
|
-
* const [ open, setOpen ] = useLayoutState([ 'groups', 'foo', 'open' ], false);
|
|
548
|
-
* }
|
|
549
|
-
* ```
|
|
550
|
-
*
|
|
551
|
-
* @param {(string|number)[]} path
|
|
552
|
-
* @param {any} [defaultValue]
|
|
553
|
-
*
|
|
554
|
-
* @returns {[ any, Function ]}
|
|
541
|
+
/**
|
|
542
|
+
* Creates a state that persists in the global LayoutContext.
|
|
543
|
+
*
|
|
544
|
+
* @example
|
|
545
|
+
* ```jsx
|
|
546
|
+
* function Group(props) {
|
|
547
|
+
* const [ open, setOpen ] = useLayoutState([ 'groups', 'foo', 'open' ], false);
|
|
548
|
+
* }
|
|
549
|
+
* ```
|
|
550
|
+
*
|
|
551
|
+
* @param {(string|number)[]} path
|
|
552
|
+
* @param {any} [defaultValue]
|
|
553
|
+
*
|
|
554
|
+
* @returns {[ any, Function ]}
|
|
555
555
|
*/
|
|
556
556
|
function useLayoutState(path, defaultValue) {
|
|
557
557
|
const {
|
|
@@ -565,11 +565,11 @@ function useLayoutState(path, defaultValue) {
|
|
|
565
565
|
return [layoutForKey, setState];
|
|
566
566
|
}
|
|
567
567
|
|
|
568
|
-
/**
|
|
569
|
-
* @pinussilvestrus: we need to introduce our own hook to persist the previous
|
|
570
|
-
* state on updates.
|
|
571
|
-
*
|
|
572
|
-
* cf. https://reactjs.org/docs/hooks-faq.html#how-to-get-the-previous-props-or-state
|
|
568
|
+
/**
|
|
569
|
+
* @pinussilvestrus: we need to introduce our own hook to persist the previous
|
|
570
|
+
* state on updates.
|
|
571
|
+
*
|
|
572
|
+
* cf. https://reactjs.org/docs/hooks-faq.html#how-to-get-the-previous-props-or-state
|
|
573
573
|
*/
|
|
574
574
|
|
|
575
575
|
function usePrevious(value) {
|
|
@@ -580,12 +580,12 @@ function usePrevious(value) {
|
|
|
580
580
|
return ref.current;
|
|
581
581
|
}
|
|
582
582
|
|
|
583
|
-
/**
|
|
584
|
-
* Subscribe to `propertiesPanel.showEntry`.
|
|
585
|
-
*
|
|
586
|
-
* @param {string} id
|
|
587
|
-
*
|
|
588
|
-
* @returns {import('preact').Ref}
|
|
583
|
+
/**
|
|
584
|
+
* Subscribe to `propertiesPanel.showEntry`.
|
|
585
|
+
*
|
|
586
|
+
* @param {string} id
|
|
587
|
+
*
|
|
588
|
+
* @returns {import('preact').Ref}
|
|
589
589
|
*/
|
|
590
590
|
function useShowEntryEvent(id) {
|
|
591
591
|
const {
|
|
@@ -616,20 +616,20 @@ function useShowEntryEvent(id) {
|
|
|
616
616
|
return ref;
|
|
617
617
|
}
|
|
618
618
|
|
|
619
|
-
/**
|
|
620
|
-
* @callback setSticky
|
|
621
|
-
* @param {boolean} value
|
|
619
|
+
/**
|
|
620
|
+
* @callback setSticky
|
|
621
|
+
* @param {boolean} value
|
|
622
622
|
*/
|
|
623
623
|
|
|
624
|
-
/**
|
|
625
|
-
* Use IntersectionObserver to identify when DOM element is in sticky mode.
|
|
626
|
-
* If sticky is observered setSticky(true) will be called.
|
|
627
|
-
* If sticky mode is left, setSticky(false) will be called.
|
|
628
|
-
*
|
|
629
|
-
*
|
|
630
|
-
* @param {Object} ref
|
|
631
|
-
* @param {string} scrollContainerSelector
|
|
632
|
-
* @param {setSticky} setSticky
|
|
624
|
+
/**
|
|
625
|
+
* Use IntersectionObserver to identify when DOM element is in sticky mode.
|
|
626
|
+
* If sticky is observered setSticky(true) will be called.
|
|
627
|
+
* If sticky mode is left, setSticky(false) will be called.
|
|
628
|
+
*
|
|
629
|
+
*
|
|
630
|
+
* @param {Object} ref
|
|
631
|
+
* @param {string} scrollContainerSelector
|
|
632
|
+
* @param {setSticky} setSticky
|
|
633
633
|
*/
|
|
634
634
|
function useStickyIntersectionObserver(ref, scrollContainerSelector, setSticky) {
|
|
635
635
|
const [scrollContainer, setScrollContainer] = hooks.useState(minDom.query(scrollContainerSelector));
|
|
@@ -683,19 +683,19 @@ function useStickyIntersectionObserver(ref, scrollContainerSelector, setSticky)
|
|
|
683
683
|
}, [ref.current, scrollContainer, setSticky]);
|
|
684
684
|
}
|
|
685
685
|
|
|
686
|
-
/**
|
|
687
|
-
* Creates a static function reference with changing body.
|
|
688
|
-
* This is necessary when external libraries require a callback function
|
|
689
|
-
* that has references to state variables.
|
|
690
|
-
*
|
|
691
|
-
* Usage:
|
|
692
|
-
* const callback = useStaticCallback((val) => {val === currentState});
|
|
693
|
-
*
|
|
694
|
-
* The `callback` reference is static and can be safely used in external
|
|
695
|
-
* libraries or as a prop that does not cause rerendering of children.
|
|
696
|
-
*
|
|
697
|
-
* @param {Function} callback function with changing reference
|
|
698
|
-
* @returns {Function} static function reference
|
|
686
|
+
/**
|
|
687
|
+
* Creates a static function reference with changing body.
|
|
688
|
+
* This is necessary when external libraries require a callback function
|
|
689
|
+
* that has references to state variables.
|
|
690
|
+
*
|
|
691
|
+
* Usage:
|
|
692
|
+
* const callback = useStaticCallback((val) => {val === currentState});
|
|
693
|
+
*
|
|
694
|
+
* The `callback` reference is static and can be safely used in external
|
|
695
|
+
* libraries or as a prop that does not cause rerendering of children.
|
|
696
|
+
*
|
|
697
|
+
* @param {Function} callback function with changing reference
|
|
698
|
+
* @returns {Function} static function reference
|
|
699
699
|
*/
|
|
700
700
|
function useStaticCallback(callback) {
|
|
701
701
|
const callbackRef = hooks.useRef(callback);
|
|
@@ -838,13 +838,13 @@ function DataMarker(props) {
|
|
|
838
838
|
return null;
|
|
839
839
|
}
|
|
840
840
|
|
|
841
|
-
/**
|
|
842
|
-
* @typedef { {
|
|
843
|
-
* text: (element: object) => string,
|
|
844
|
-
* icon?: (element: Object) => import('preact').Component
|
|
845
|
-
* } } PlaceholderDefinition
|
|
846
|
-
*
|
|
847
|
-
* @param { PlaceholderDefinition } props
|
|
841
|
+
/**
|
|
842
|
+
* @typedef { {
|
|
843
|
+
* text: (element: object) => string,
|
|
844
|
+
* icon?: (element: Object) => import('preact').Component
|
|
845
|
+
* } } PlaceholderDefinition
|
|
846
|
+
*
|
|
847
|
+
* @param { PlaceholderDefinition } props
|
|
848
848
|
*/
|
|
849
849
|
function Placeholder(props) {
|
|
850
850
|
const {
|
|
@@ -883,9 +883,9 @@ function Description(props) {
|
|
|
883
883
|
|
|
884
884
|
const noop$6 = () => {};
|
|
885
885
|
|
|
886
|
-
/**
|
|
887
|
-
* Buffer `.focus()` calls while the editor is not initialized.
|
|
888
|
-
* Set Focus inside when the editor is ready.
|
|
886
|
+
/**
|
|
887
|
+
* Buffer `.focus()` calls while the editor is not initialized.
|
|
888
|
+
* Set Focus inside when the editor is ready.
|
|
889
889
|
*/
|
|
890
890
|
const useBufferedFocus$1 = function (editor, ref) {
|
|
891
891
|
const [buffer, setBuffer] = hooks.useState(undefined);
|
|
@@ -986,9 +986,9 @@ const CodeEditor$1 = compat.forwardRef((props, ref) => {
|
|
|
986
986
|
|
|
987
987
|
const noop$5 = () => {};
|
|
988
988
|
|
|
989
|
-
/**
|
|
990
|
-
* Buffer `.focus()` calls while the editor is not initialized.
|
|
991
|
-
* Set Focus inside when the editor is ready.
|
|
989
|
+
/**
|
|
990
|
+
* Buffer `.focus()` calls while the editor is not initialized.
|
|
991
|
+
* Set Focus inside when the editor is ready.
|
|
992
992
|
*/
|
|
993
993
|
const useBufferedFocus = function (editor, ref) {
|
|
994
994
|
const [buffer, setBuffer] = hooks.useState(undefined);
|
|
@@ -1037,10 +1037,10 @@ const CodeEditor = compat.forwardRef((props, ref) => {
|
|
|
1037
1037
|
hooks.useEffect(() => {
|
|
1038
1038
|
let editor;
|
|
1039
1039
|
|
|
1040
|
-
/* Trigger FEEL toggle when
|
|
1041
|
-
*
|
|
1042
|
-
* - `backspace` is pressed
|
|
1043
|
-
* - AND the cursor is at the beginning of the input
|
|
1040
|
+
/* Trigger FEEL toggle when
|
|
1041
|
+
*
|
|
1042
|
+
* - `backspace` is pressed
|
|
1043
|
+
* - AND the cursor is at the beginning of the input
|
|
1044
1044
|
*/
|
|
1045
1045
|
const onKeyDown = e => {
|
|
1046
1046
|
if (e.key !== 'Backspace' || !editor) {
|
|
@@ -1131,10 +1131,10 @@ function FeelIndicator(props) {
|
|
|
1131
1131
|
|
|
1132
1132
|
const noop$4 = () => {};
|
|
1133
1133
|
|
|
1134
|
-
/**
|
|
1135
|
-
* @param {Object} props
|
|
1136
|
-
* @param {Object} props.label
|
|
1137
|
-
* @param {String} props.feel
|
|
1134
|
+
/**
|
|
1135
|
+
* @param {Object} props
|
|
1136
|
+
* @param {Object} props.label
|
|
1137
|
+
* @param {String} props.feel
|
|
1138
1138
|
*/
|
|
1139
1139
|
function FeelIcon(props) {
|
|
1140
1140
|
const {
|
|
@@ -1169,22 +1169,22 @@ const FeelPopupContext = preact.createContext({
|
|
|
1169
1169
|
source: null
|
|
1170
1170
|
});
|
|
1171
1171
|
|
|
1172
|
-
/**
|
|
1173
|
-
* Add a dragger that calls back the passed function with
|
|
1174
|
-
* { event, delta } on drag.
|
|
1175
|
-
*
|
|
1176
|
-
* @example
|
|
1177
|
-
*
|
|
1178
|
-
* function dragMove(event, delta) {
|
|
1179
|
-
* // we are dragging (!!)
|
|
1180
|
-
* }
|
|
1181
|
-
*
|
|
1182
|
-
* domElement.addEventListener('dragstart', dragger(dragMove));
|
|
1183
|
-
*
|
|
1184
|
-
* @param {Function} fn
|
|
1185
|
-
* @param {Element} [dragPreview]
|
|
1186
|
-
*
|
|
1187
|
-
* @return {Function} drag start callback function
|
|
1172
|
+
/**
|
|
1173
|
+
* Add a dragger that calls back the passed function with
|
|
1174
|
+
* { event, delta } on drag.
|
|
1175
|
+
*
|
|
1176
|
+
* @example
|
|
1177
|
+
*
|
|
1178
|
+
* function dragMove(event, delta) {
|
|
1179
|
+
* // we are dragging (!!)
|
|
1180
|
+
* }
|
|
1181
|
+
*
|
|
1182
|
+
* domElement.addEventListener('dragstart', dragger(dragMove));
|
|
1183
|
+
*
|
|
1184
|
+
* @param {Function} fn
|
|
1185
|
+
* @param {Element} [dragPreview]
|
|
1186
|
+
*
|
|
1187
|
+
* @return {Function} drag start callback function
|
|
1188
1188
|
*/
|
|
1189
1189
|
function createDragger(fn, dragPreview) {
|
|
1190
1190
|
let self;
|
|
@@ -1239,23 +1239,23 @@ function emptyCanvas() {
|
|
|
1239
1239
|
|
|
1240
1240
|
const noop$3 = () => {};
|
|
1241
1241
|
|
|
1242
|
-
/**
|
|
1243
|
-
* A generic popup component.
|
|
1244
|
-
*
|
|
1245
|
-
* @param {Object} props
|
|
1246
|
-
* @param {HTMLElement} [props.container]
|
|
1247
|
-
* @param {string} [props.className]
|
|
1248
|
-
* @param {boolean} [props.delayInitialFocus]
|
|
1249
|
-
* @param {{x: number, y: number}} [props.position]
|
|
1250
|
-
* @param {number} [props.width]
|
|
1251
|
-
* @param {number} [props.height]
|
|
1252
|
-
* @param {Function} props.onClose
|
|
1253
|
-
* @param {Function} [props.onPostActivate]
|
|
1254
|
-
* @param {Function} [props.onPostDeactivate]
|
|
1255
|
-
* @param {boolean} [props.returnFocus]
|
|
1256
|
-
* @param {boolean} [props.closeOnEscape]
|
|
1257
|
-
* @param {string} props.title
|
|
1258
|
-
* @param {Ref} [ref]
|
|
1242
|
+
/**
|
|
1243
|
+
* A generic popup component.
|
|
1244
|
+
*
|
|
1245
|
+
* @param {Object} props
|
|
1246
|
+
* @param {HTMLElement} [props.container]
|
|
1247
|
+
* @param {string} [props.className]
|
|
1248
|
+
* @param {boolean} [props.delayInitialFocus]
|
|
1249
|
+
* @param {{x: number, y: number}} [props.position]
|
|
1250
|
+
* @param {number} [props.width]
|
|
1251
|
+
* @param {number} [props.height]
|
|
1252
|
+
* @param {Function} props.onClose
|
|
1253
|
+
* @param {Function} [props.onPostActivate]
|
|
1254
|
+
* @param {Function} [props.onPostDeactivate]
|
|
1255
|
+
* @param {boolean} [props.returnFocus]
|
|
1256
|
+
* @param {boolean} [props.closeOnEscape]
|
|
1257
|
+
* @param {string} props.title
|
|
1258
|
+
* @param {Ref} [ref]
|
|
1259
1259
|
*/
|
|
1260
1260
|
function PopupComponent(props, globalRef) {
|
|
1261
1261
|
const {
|
|
@@ -1474,12 +1474,12 @@ function getContainerNode(node) {
|
|
|
1474
1474
|
const FEEL_POPUP_WIDTH = 700;
|
|
1475
1475
|
const FEEL_POPUP_HEIGHT = 250;
|
|
1476
1476
|
|
|
1477
|
-
/**
|
|
1478
|
-
* FEEL popup component, built as a singleton. Emits lifecycle events as follows:
|
|
1479
|
-
* - `feelPopup.open` - fired before the popup is mounted
|
|
1480
|
-
* - `feelPopup.opened` - fired after the popup is mounted. Event context contains the DOM node of the popup
|
|
1481
|
-
* - `feelPopup.close` - fired before the popup is unmounted. Event context contains the DOM node of the popup
|
|
1482
|
-
* - `feelPopup.closed` - fired after the popup is unmounted
|
|
1477
|
+
/**
|
|
1478
|
+
* FEEL popup component, built as a singleton. Emits lifecycle events as follows:
|
|
1479
|
+
* - `feelPopup.open` - fired before the popup is mounted
|
|
1480
|
+
* - `feelPopup.opened` - fired after the popup is mounted. Event context contains the DOM node of the popup
|
|
1481
|
+
* - `feelPopup.close` - fired before the popup is unmounted. Event context contains the DOM node of the popup
|
|
1482
|
+
* - `feelPopup.closed` - fired after the popup is unmounted
|
|
1483
1483
|
*/
|
|
1484
1484
|
function FEELPopupRoot(props) {
|
|
1485
1485
|
const {
|
|
@@ -1705,11 +1705,11 @@ function autoCompletionOpen(element) {
|
|
|
1705
1705
|
return element.closest('.cm-editor').querySelector('.cm-tooltip-autocomplete');
|
|
1706
1706
|
}
|
|
1707
1707
|
|
|
1708
|
-
/**
|
|
1709
|
-
* This hook behaves like useEffect, but does not trigger on the first render.
|
|
1710
|
-
*
|
|
1711
|
-
* @param {Function} effect
|
|
1712
|
-
* @param {Array} deps
|
|
1708
|
+
/**
|
|
1709
|
+
* This hook behaves like useEffect, but does not trigger on the first render.
|
|
1710
|
+
*
|
|
1711
|
+
* @param {Function} effect
|
|
1712
|
+
* @param {Array} deps
|
|
1713
1713
|
*/
|
|
1714
1714
|
function useUpdateEffect(effect, deps) {
|
|
1715
1715
|
const isMounted = hooks.useRef(false);
|
|
@@ -1787,19 +1787,19 @@ function ToggleSwitch(props) {
|
|
|
1787
1787
|
});
|
|
1788
1788
|
}
|
|
1789
1789
|
|
|
1790
|
-
/**
|
|
1791
|
-
* @param {Object} props
|
|
1792
|
-
* @param {Object} props.element
|
|
1793
|
-
* @param {String} props.id
|
|
1794
|
-
* @param {String} props.description
|
|
1795
|
-
* @param {String} props.label
|
|
1796
|
-
* @param {String} props.switcherLabel
|
|
1797
|
-
* @param {Boolean} props.inline
|
|
1798
|
-
* @param {Function} props.getValue
|
|
1799
|
-
* @param {Function} props.setValue
|
|
1800
|
-
* @param {Function} props.onFocus
|
|
1801
|
-
* @param {Function} props.onBlur
|
|
1802
|
-
* @param {string|import('preact').Component} props.tooltip
|
|
1790
|
+
/**
|
|
1791
|
+
* @param {Object} props
|
|
1792
|
+
* @param {Object} props.element
|
|
1793
|
+
* @param {String} props.id
|
|
1794
|
+
* @param {String} props.description
|
|
1795
|
+
* @param {String} props.label
|
|
1796
|
+
* @param {String} props.switcherLabel
|
|
1797
|
+
* @param {Boolean} props.inline
|
|
1798
|
+
* @param {Function} props.getValue
|
|
1799
|
+
* @param {Function} props.setValue
|
|
1800
|
+
* @param {Function} props.onFocus
|
|
1801
|
+
* @param {Function} props.onBlur
|
|
1802
|
+
* @param {string|import('preact').Component} props.tooltip
|
|
1803
1803
|
*/
|
|
1804
1804
|
function ToggleSwitchEntry(props) {
|
|
1805
1805
|
const {
|
|
@@ -1907,22 +1907,22 @@ function NumberField(props) {
|
|
|
1907
1907
|
});
|
|
1908
1908
|
}
|
|
1909
1909
|
|
|
1910
|
-
/**
|
|
1911
|
-
* @param {Object} props
|
|
1912
|
-
* @param {Boolean} props.debounce
|
|
1913
|
-
* @param {String} props.description
|
|
1914
|
-
* @param {Boolean} props.disabled
|
|
1915
|
-
* @param {Object} props.element
|
|
1916
|
-
* @param {Function} props.getValue
|
|
1917
|
-
* @param {String} props.id
|
|
1918
|
-
* @param {String} props.label
|
|
1919
|
-
* @param {String} props.max
|
|
1920
|
-
* @param {String} props.min
|
|
1921
|
-
* @param {Function} props.setValue
|
|
1922
|
-
* @param {Function} props.onFocus
|
|
1923
|
-
* @param {Function} props.onBlur
|
|
1924
|
-
* @param {String} props.step
|
|
1925
|
-
* @param {Function} props.validate
|
|
1910
|
+
/**
|
|
1911
|
+
* @param {Object} props
|
|
1912
|
+
* @param {Boolean} props.debounce
|
|
1913
|
+
* @param {String} props.description
|
|
1914
|
+
* @param {Boolean} props.disabled
|
|
1915
|
+
* @param {Object} props.element
|
|
1916
|
+
* @param {Function} props.getValue
|
|
1917
|
+
* @param {String} props.id
|
|
1918
|
+
* @param {String} props.label
|
|
1919
|
+
* @param {String} props.max
|
|
1920
|
+
* @param {String} props.min
|
|
1921
|
+
* @param {Function} props.setValue
|
|
1922
|
+
* @param {Function} props.onFocus
|
|
1923
|
+
* @param {Function} props.onBlur
|
|
1924
|
+
* @param {String} props.step
|
|
1925
|
+
* @param {Function} props.validate
|
|
1926
1926
|
*/
|
|
1927
1927
|
function NumberFieldEntry(props) {
|
|
1928
1928
|
const {
|
|
@@ -2408,26 +2408,26 @@ const OptionalFeelCheckbox = compat.forwardRef((props, ref) => {
|
|
|
2408
2408
|
});
|
|
2409
2409
|
});
|
|
2410
2410
|
|
|
2411
|
-
/**
|
|
2412
|
-
* @param {Object} props
|
|
2413
|
-
* @param {Object} props.element
|
|
2414
|
-
* @param {String} props.id
|
|
2415
|
-
* @param {String} props.description
|
|
2416
|
-
* @param {Boolean} props.debounce
|
|
2417
|
-
* @param {Boolean} props.disabled
|
|
2418
|
-
* @param {Boolean} props.feel
|
|
2419
|
-
* @param {String} props.label
|
|
2420
|
-
* @param {Function} props.getValue
|
|
2421
|
-
* @param {Function} props.setValue
|
|
2422
|
-
* @param {Function} props.tooltipContainer
|
|
2423
|
-
* @param {Function} props.validate
|
|
2424
|
-
* @param {Function} props.show
|
|
2425
|
-
* @param {Function} props.example
|
|
2426
|
-
* @param {Function} props.variables
|
|
2427
|
-
* @param {Function} props.onFocus
|
|
2428
|
-
* @param {Function} props.onBlur
|
|
2429
|
-
* @param {string} [props.placeholder]
|
|
2430
|
-
* @param {string|import('preact').Component} props.tooltip
|
|
2411
|
+
/**
|
|
2412
|
+
* @param {Object} props
|
|
2413
|
+
* @param {Object} props.element
|
|
2414
|
+
* @param {String} props.id
|
|
2415
|
+
* @param {String} props.description
|
|
2416
|
+
* @param {Boolean} props.debounce
|
|
2417
|
+
* @param {Boolean} props.disabled
|
|
2418
|
+
* @param {Boolean} props.feel
|
|
2419
|
+
* @param {String} props.label
|
|
2420
|
+
* @param {Function} props.getValue
|
|
2421
|
+
* @param {Function} props.setValue
|
|
2422
|
+
* @param {Function} props.tooltipContainer
|
|
2423
|
+
* @param {Function} props.validate
|
|
2424
|
+
* @param {Function} props.show
|
|
2425
|
+
* @param {Function} props.example
|
|
2426
|
+
* @param {Function} props.variables
|
|
2427
|
+
* @param {Function} props.onFocus
|
|
2428
|
+
* @param {Function} props.onBlur
|
|
2429
|
+
* @param {string} [props.placeholder]
|
|
2430
|
+
* @param {string|import('preact').Component} props.tooltip
|
|
2431
2431
|
*/
|
|
2432
2432
|
function FeelEntry(props) {
|
|
2433
2433
|
const {
|
|
@@ -2514,27 +2514,27 @@ function FeelEntry(props) {
|
|
|
2514
2514
|
});
|
|
2515
2515
|
}
|
|
2516
2516
|
|
|
2517
|
-
/**
|
|
2518
|
-
* @param {Object} props
|
|
2519
|
-
* @param {Object} props.element
|
|
2520
|
-
* @param {String} props.id
|
|
2521
|
-
* @param {String} props.description
|
|
2522
|
-
* @param {Boolean} props.debounce
|
|
2523
|
-
* @param {Boolean} props.disabled
|
|
2524
|
-
* @param {String} props.max
|
|
2525
|
-
* @param {String} props.min
|
|
2526
|
-
* @param {String} props.step
|
|
2527
|
-
* @param {Boolean} props.feel
|
|
2528
|
-
* @param {String} props.label
|
|
2529
|
-
* @param {Function} props.getValue
|
|
2530
|
-
* @param {Function} props.setValue
|
|
2531
|
-
* @param {Function} props.tooltipContainer
|
|
2532
|
-
* @param {Function} props.validate
|
|
2533
|
-
* @param {Function} props.show
|
|
2534
|
-
* @param {Function} props.example
|
|
2535
|
-
* @param {Function} props.variables
|
|
2536
|
-
* @param {Function} props.onFocus
|
|
2537
|
-
* @param {Function} props.onBlur
|
|
2517
|
+
/**
|
|
2518
|
+
* @param {Object} props
|
|
2519
|
+
* @param {Object} props.element
|
|
2520
|
+
* @param {String} props.id
|
|
2521
|
+
* @param {String} props.description
|
|
2522
|
+
* @param {Boolean} props.debounce
|
|
2523
|
+
* @param {Boolean} props.disabled
|
|
2524
|
+
* @param {String} props.max
|
|
2525
|
+
* @param {String} props.min
|
|
2526
|
+
* @param {String} props.step
|
|
2527
|
+
* @param {Boolean} props.feel
|
|
2528
|
+
* @param {String} props.label
|
|
2529
|
+
* @param {Function} props.getValue
|
|
2530
|
+
* @param {Function} props.setValue
|
|
2531
|
+
* @param {Function} props.tooltipContainer
|
|
2532
|
+
* @param {Function} props.validate
|
|
2533
|
+
* @param {Function} props.show
|
|
2534
|
+
* @param {Function} props.example
|
|
2535
|
+
* @param {Function} props.variables
|
|
2536
|
+
* @param {Function} props.onFocus
|
|
2537
|
+
* @param {Function} props.onBlur
|
|
2538
2538
|
*/
|
|
2539
2539
|
function FeelNumberEntry(props) {
|
|
2540
2540
|
return jsxRuntime.jsx(FeelEntry, {
|
|
@@ -2544,25 +2544,25 @@ function FeelNumberEntry(props) {
|
|
|
2544
2544
|
});
|
|
2545
2545
|
}
|
|
2546
2546
|
|
|
2547
|
-
/**
|
|
2548
|
-
* @param {Object} props
|
|
2549
|
-
* @param {Object} props.element
|
|
2550
|
-
* @param {String} props.id
|
|
2551
|
-
* @param {String} props.description
|
|
2552
|
-
* @param {Boolean} props.debounce
|
|
2553
|
-
* @param {Boolean} props.disabled
|
|
2554
|
-
* @param {Boolean} props.feel
|
|
2555
|
-
* @param {String} props.label
|
|
2556
|
-
* @param {Function} props.getValue
|
|
2557
|
-
* @param {Function} props.setValue
|
|
2558
|
-
* @param {Function} props.tooltipContainer
|
|
2559
|
-
* @param {Function} props.validate
|
|
2560
|
-
* @param {Function} props.show
|
|
2561
|
-
* @param {Function} props.example
|
|
2562
|
-
* @param {Function} props.variables
|
|
2563
|
-
* @param {Function} props.onFocus
|
|
2564
|
-
* @param {Function} props.onBlur
|
|
2565
|
-
* @param {string} [props.placeholder]
|
|
2547
|
+
/**
|
|
2548
|
+
* @param {Object} props
|
|
2549
|
+
* @param {Object} props.element
|
|
2550
|
+
* @param {String} props.id
|
|
2551
|
+
* @param {String} props.description
|
|
2552
|
+
* @param {Boolean} props.debounce
|
|
2553
|
+
* @param {Boolean} props.disabled
|
|
2554
|
+
* @param {Boolean} props.feel
|
|
2555
|
+
* @param {String} props.label
|
|
2556
|
+
* @param {Function} props.getValue
|
|
2557
|
+
* @param {Function} props.setValue
|
|
2558
|
+
* @param {Function} props.tooltipContainer
|
|
2559
|
+
* @param {Function} props.validate
|
|
2560
|
+
* @param {Function} props.show
|
|
2561
|
+
* @param {Function} props.example
|
|
2562
|
+
* @param {Function} props.variables
|
|
2563
|
+
* @param {Function} props.onFocus
|
|
2564
|
+
* @param {Function} props.onBlur
|
|
2565
|
+
* @param {string} [props.placeholder]
|
|
2566
2566
|
*/
|
|
2567
2567
|
function FeelTextAreaEntry(props) {
|
|
2568
2568
|
return jsxRuntime.jsx(FeelEntry, {
|
|
@@ -2572,24 +2572,24 @@ function FeelTextAreaEntry(props) {
|
|
|
2572
2572
|
});
|
|
2573
2573
|
}
|
|
2574
2574
|
|
|
2575
|
-
/**
|
|
2576
|
-
* @param {Object} props
|
|
2577
|
-
* @param {Object} props.element
|
|
2578
|
-
* @param {String} props.id
|
|
2579
|
-
* @param {String} props.description
|
|
2580
|
-
* @param {Boolean} props.debounce
|
|
2581
|
-
* @param {Boolean} props.disabled
|
|
2582
|
-
* @param {Boolean} props.feel
|
|
2583
|
-
* @param {String} props.label
|
|
2584
|
-
* @param {Function} props.getValue
|
|
2585
|
-
* @param {Function} props.setValue
|
|
2586
|
-
* @param {Function} props.tooltipContainer
|
|
2587
|
-
* @param {Function} props.validate
|
|
2588
|
-
* @param {Function} props.show
|
|
2589
|
-
* @param {Function} props.example
|
|
2590
|
-
* @param {Function} props.variables
|
|
2591
|
-
* @param {Function} props.onFocus
|
|
2592
|
-
* @param {Function} props.onBlur
|
|
2575
|
+
/**
|
|
2576
|
+
* @param {Object} props
|
|
2577
|
+
* @param {Object} props.element
|
|
2578
|
+
* @param {String} props.id
|
|
2579
|
+
* @param {String} props.description
|
|
2580
|
+
* @param {Boolean} props.debounce
|
|
2581
|
+
* @param {Boolean} props.disabled
|
|
2582
|
+
* @param {Boolean} props.feel
|
|
2583
|
+
* @param {String} props.label
|
|
2584
|
+
* @param {Function} props.getValue
|
|
2585
|
+
* @param {Function} props.setValue
|
|
2586
|
+
* @param {Function} props.tooltipContainer
|
|
2587
|
+
* @param {Function} props.validate
|
|
2588
|
+
* @param {Function} props.show
|
|
2589
|
+
* @param {Function} props.example
|
|
2590
|
+
* @param {Function} props.variables
|
|
2591
|
+
* @param {Function} props.onFocus
|
|
2592
|
+
* @param {Function} props.onBlur
|
|
2593
2593
|
*/
|
|
2594
2594
|
function FeelToggleSwitchEntry(props) {
|
|
2595
2595
|
return jsxRuntime.jsx(FeelEntry, {
|
|
@@ -2599,24 +2599,24 @@ function FeelToggleSwitchEntry(props) {
|
|
|
2599
2599
|
});
|
|
2600
2600
|
}
|
|
2601
2601
|
|
|
2602
|
-
/**
|
|
2603
|
-
* @param {Object} props
|
|
2604
|
-
* @param {Object} props.element
|
|
2605
|
-
* @param {String} props.id
|
|
2606
|
-
* @param {String} props.description
|
|
2607
|
-
* @param {Boolean} props.debounce
|
|
2608
|
-
* @param {Boolean} props.disabled
|
|
2609
|
-
* @param {Boolean} props.feel
|
|
2610
|
-
* @param {String} props.label
|
|
2611
|
-
* @param {Function} props.getValue
|
|
2612
|
-
* @param {Function} props.setValue
|
|
2613
|
-
* @param {Function} props.tooltipContainer
|
|
2614
|
-
* @param {Function} props.validate
|
|
2615
|
-
* @param {Function} props.show
|
|
2616
|
-
* @param {Function} props.example
|
|
2617
|
-
* @param {Function} props.variables
|
|
2618
|
-
* @param {Function} props.onFocus
|
|
2619
|
-
* @param {Function} props.onBlur
|
|
2602
|
+
/**
|
|
2603
|
+
* @param {Object} props
|
|
2604
|
+
* @param {Object} props.element
|
|
2605
|
+
* @param {String} props.id
|
|
2606
|
+
* @param {String} props.description
|
|
2607
|
+
* @param {Boolean} props.debounce
|
|
2608
|
+
* @param {Boolean} props.disabled
|
|
2609
|
+
* @param {Boolean} props.feel
|
|
2610
|
+
* @param {String} props.label
|
|
2611
|
+
* @param {Function} props.getValue
|
|
2612
|
+
* @param {Function} props.setValue
|
|
2613
|
+
* @param {Function} props.tooltipContainer
|
|
2614
|
+
* @param {Function} props.validate
|
|
2615
|
+
* @param {Function} props.show
|
|
2616
|
+
* @param {Function} props.example
|
|
2617
|
+
* @param {Function} props.variables
|
|
2618
|
+
* @param {Function} props.onFocus
|
|
2619
|
+
* @param {Function} props.onBlur
|
|
2620
2620
|
*/
|
|
2621
2621
|
function FeelCheckboxEntry(props) {
|
|
2622
2622
|
return jsxRuntime.jsx(FeelEntry, {
|
|
@@ -2626,26 +2626,26 @@ function FeelCheckboxEntry(props) {
|
|
|
2626
2626
|
});
|
|
2627
2627
|
}
|
|
2628
2628
|
|
|
2629
|
-
/**
|
|
2630
|
-
* @param {Object} props
|
|
2631
|
-
* @param {Object} props.element
|
|
2632
|
-
* @param {String} props.id
|
|
2633
|
-
* @param {String} props.description
|
|
2634
|
-
* @param {String} props.hostLanguage
|
|
2635
|
-
* @param {Boolean} props.singleLine
|
|
2636
|
-
* @param {Boolean} props.debounce
|
|
2637
|
-
* @param {Boolean} props.disabled
|
|
2638
|
-
* @param {Boolean} props.feel
|
|
2639
|
-
* @param {String} props.label
|
|
2640
|
-
* @param {Function} props.getValue
|
|
2641
|
-
* @param {Function} props.setValue
|
|
2642
|
-
* @param {Function} props.tooltipContainer
|
|
2643
|
-
* @param {Function} props.validate
|
|
2644
|
-
* @param {Function} props.show
|
|
2645
|
-
* @param {Function} props.example
|
|
2646
|
-
* @param {Function} props.variables
|
|
2647
|
-
* @param {Function} props.onFocus
|
|
2648
|
-
* @param {Function} props.onBlur
|
|
2629
|
+
/**
|
|
2630
|
+
* @param {Object} props
|
|
2631
|
+
* @param {Object} props.element
|
|
2632
|
+
* @param {String} props.id
|
|
2633
|
+
* @param {String} props.description
|
|
2634
|
+
* @param {String} props.hostLanguage
|
|
2635
|
+
* @param {Boolean} props.singleLine
|
|
2636
|
+
* @param {Boolean} props.debounce
|
|
2637
|
+
* @param {Boolean} props.disabled
|
|
2638
|
+
* @param {Boolean} props.feel
|
|
2639
|
+
* @param {String} props.label
|
|
2640
|
+
* @param {Function} props.getValue
|
|
2641
|
+
* @param {Function} props.setValue
|
|
2642
|
+
* @param {Function} props.tooltipContainer
|
|
2643
|
+
* @param {Function} props.validate
|
|
2644
|
+
* @param {Function} props.show
|
|
2645
|
+
* @param {Function} props.example
|
|
2646
|
+
* @param {Function} props.variables
|
|
2647
|
+
* @param {Function} props.onFocus
|
|
2648
|
+
* @param {Function} props.onBlur
|
|
2649
2649
|
*/
|
|
2650
2650
|
function FeelTemplatingEntry(props) {
|
|
2651
2651
|
return jsxRuntime.jsx(FeelEntry, {
|
|
@@ -2714,85 +2714,85 @@ const DEFAULT_LAYOUT = {};
|
|
|
2714
2714
|
const DEFAULT_DESCRIPTION = {};
|
|
2715
2715
|
const DEFAULT_TOOLTIP = {};
|
|
2716
2716
|
|
|
2717
|
-
/**
|
|
2718
|
-
* @typedef { {
|
|
2719
|
-
* component: import('preact').Component,
|
|
2720
|
-
* id: String,
|
|
2721
|
-
* isEdited?: Function
|
|
2722
|
-
* } } EntryDefinition
|
|
2723
|
-
*
|
|
2724
|
-
* @typedef { {
|
|
2725
|
-
* autoFocusEntry: String,
|
|
2726
|
-
* autoOpen?: Boolean,
|
|
2727
|
-
* entries: Array<EntryDefinition>,
|
|
2728
|
-
* id: String,
|
|
2729
|
-
* label: String,
|
|
2730
|
-
* remove: (event: MouseEvent) => void
|
|
2731
|
-
* } } ListItemDefinition
|
|
2732
|
-
*
|
|
2733
|
-
* @typedef { {
|
|
2734
|
-
* add: (event: MouseEvent) => void,
|
|
2735
|
-
* component: import('preact').Component,
|
|
2736
|
-
* element: Object,
|
|
2737
|
-
* id: String,
|
|
2738
|
-
* items: Array<ListItemDefinition>,
|
|
2739
|
-
* label: String,
|
|
2740
|
-
* shouldOpen?: Boolean
|
|
2741
|
-
* } } ListGroupDefinition
|
|
2742
|
-
*
|
|
2743
|
-
* @typedef { {
|
|
2744
|
-
* component?: import('preact').Component,
|
|
2745
|
-
* entries: Array<EntryDefinition>,
|
|
2746
|
-
* id: String,
|
|
2747
|
-
* label: String,
|
|
2748
|
-
* shouldOpen?: Boolean
|
|
2749
|
-
* } } GroupDefinition
|
|
2750
|
-
*
|
|
2751
|
-
* @typedef { {
|
|
2752
|
-
* [id: String]: GetDescriptionFunction
|
|
2753
|
-
* } } DescriptionConfig
|
|
2754
|
-
*
|
|
2755
|
-
* @typedef { {
|
|
2756
|
-
* [id: String]: GetTooltipFunction
|
|
2757
|
-
* } } TooltipConfig
|
|
2758
|
-
*
|
|
2759
|
-
* @callback { {
|
|
2760
|
-
* @param {string} id
|
|
2761
|
-
* @param {Object} element
|
|
2762
|
-
* @returns {string}
|
|
2763
|
-
* } } GetDescriptionFunction
|
|
2764
|
-
*
|
|
2765
|
-
* @callback { {
|
|
2766
|
-
* @param {string} id
|
|
2767
|
-
* @param {Object} element
|
|
2768
|
-
* @returns {string}
|
|
2769
|
-
* } } GetTooltipFunction
|
|
2770
|
-
*
|
|
2771
|
-
* @typedef { {
|
|
2772
|
-
* getEmpty: (element: object) => import('./components/Placeholder').PlaceholderDefinition,
|
|
2773
|
-
* getMultiple: (element: Object) => import('./components/Placeholder').PlaceholderDefinition
|
|
2774
|
-
* } } PlaceholderProvider
|
|
2775
|
-
*
|
|
2717
|
+
/**
|
|
2718
|
+
* @typedef { {
|
|
2719
|
+
* component: import('preact').Component,
|
|
2720
|
+
* id: String,
|
|
2721
|
+
* isEdited?: Function
|
|
2722
|
+
* } } EntryDefinition
|
|
2723
|
+
*
|
|
2724
|
+
* @typedef { {
|
|
2725
|
+
* autoFocusEntry: String,
|
|
2726
|
+
* autoOpen?: Boolean,
|
|
2727
|
+
* entries: Array<EntryDefinition>,
|
|
2728
|
+
* id: String,
|
|
2729
|
+
* label: String,
|
|
2730
|
+
* remove: (event: MouseEvent) => void
|
|
2731
|
+
* } } ListItemDefinition
|
|
2732
|
+
*
|
|
2733
|
+
* @typedef { {
|
|
2734
|
+
* add: (event: MouseEvent) => void,
|
|
2735
|
+
* component: import('preact').Component,
|
|
2736
|
+
* element: Object,
|
|
2737
|
+
* id: String,
|
|
2738
|
+
* items: Array<ListItemDefinition>,
|
|
2739
|
+
* label: String,
|
|
2740
|
+
* shouldOpen?: Boolean
|
|
2741
|
+
* } } ListGroupDefinition
|
|
2742
|
+
*
|
|
2743
|
+
* @typedef { {
|
|
2744
|
+
* component?: import('preact').Component,
|
|
2745
|
+
* entries: Array<EntryDefinition>,
|
|
2746
|
+
* id: String,
|
|
2747
|
+
* label: String,
|
|
2748
|
+
* shouldOpen?: Boolean
|
|
2749
|
+
* } } GroupDefinition
|
|
2750
|
+
*
|
|
2751
|
+
* @typedef { {
|
|
2752
|
+
* [id: String]: GetDescriptionFunction
|
|
2753
|
+
* } } DescriptionConfig
|
|
2754
|
+
*
|
|
2755
|
+
* @typedef { {
|
|
2756
|
+
* [id: String]: GetTooltipFunction
|
|
2757
|
+
* } } TooltipConfig
|
|
2758
|
+
*
|
|
2759
|
+
* @callback { {
|
|
2760
|
+
* @param {string} id
|
|
2761
|
+
* @param {Object} element
|
|
2762
|
+
* @returns {string}
|
|
2763
|
+
* } } GetDescriptionFunction
|
|
2764
|
+
*
|
|
2765
|
+
* @callback { {
|
|
2766
|
+
* @param {string} id
|
|
2767
|
+
* @param {Object} element
|
|
2768
|
+
* @returns {string}
|
|
2769
|
+
* } } GetTooltipFunction
|
|
2770
|
+
*
|
|
2771
|
+
* @typedef { {
|
|
2772
|
+
* getEmpty: (element: object) => import('./components/Placeholder').PlaceholderDefinition,
|
|
2773
|
+
* getMultiple: (element: Object) => import('./components/Placeholder').PlaceholderDefinition
|
|
2774
|
+
* } } PlaceholderProvider
|
|
2775
|
+
*
|
|
2776
2776
|
*/
|
|
2777
2777
|
|
|
2778
|
-
/**
|
|
2779
|
-
* A basic properties panel component. Describes *how* content will be rendered, accepts
|
|
2780
|
-
* data from implementor to describe *what* will be rendered.
|
|
2781
|
-
*
|
|
2782
|
-
* @param {Object} props
|
|
2783
|
-
* @param {Object|Array} props.element
|
|
2784
|
-
* @param {import('./components/Header').HeaderProvider} props.headerProvider
|
|
2785
|
-
* @param {PlaceholderProvider} [props.placeholderProvider]
|
|
2786
|
-
* @param {Array<GroupDefinition|ListGroupDefinition>} props.groups
|
|
2787
|
-
* @param {Object} [props.layoutConfig]
|
|
2788
|
-
* @param {Function} [props.layoutChanged]
|
|
2789
|
-
* @param {DescriptionConfig} [props.descriptionConfig]
|
|
2790
|
-
* @param {Function} [props.descriptionLoaded]
|
|
2791
|
-
* @param {TooltipConfig} [props.tooltipConfig]
|
|
2792
|
-
* @param {Function} [props.tooltipLoaded]
|
|
2793
|
-
* @param {HTMLElement} [props.feelPopupContainer]
|
|
2794
|
-
* @param {Function} [props.getFeelPopupLinks]
|
|
2795
|
-
* @param {Object} [props.eventBus]
|
|
2778
|
+
/**
|
|
2779
|
+
* A basic properties panel component. Describes *how* content will be rendered, accepts
|
|
2780
|
+
* data from implementor to describe *what* will be rendered.
|
|
2781
|
+
*
|
|
2782
|
+
* @param {Object} props
|
|
2783
|
+
* @param {Object|Array} props.element
|
|
2784
|
+
* @param {import('./components/Header').HeaderProvider} props.headerProvider
|
|
2785
|
+
* @param {PlaceholderProvider} [props.placeholderProvider]
|
|
2786
|
+
* @param {Array<GroupDefinition|ListGroupDefinition>} props.groups
|
|
2787
|
+
* @param {Object} [props.layoutConfig]
|
|
2788
|
+
* @param {Function} [props.layoutChanged]
|
|
2789
|
+
* @param {DescriptionConfig} [props.descriptionConfig]
|
|
2790
|
+
* @param {Function} [props.descriptionLoaded]
|
|
2791
|
+
* @param {TooltipConfig} [props.tooltipConfig]
|
|
2792
|
+
* @param {Function} [props.tooltipLoaded]
|
|
2793
|
+
* @param {HTMLElement} [props.feelPopupContainer]
|
|
2794
|
+
* @param {Function} [props.getFeelPopupLinks]
|
|
2795
|
+
* @param {Object} [props.eventBus]
|
|
2796
2796
|
*/
|
|
2797
2797
|
function PropertiesPanel(props) {
|
|
2798
2798
|
const {
|
|
@@ -2965,11 +2965,11 @@ function createTooltipContext(overrides = {}) {
|
|
|
2965
2965
|
|
|
2966
2966
|
// hooks //////////////////
|
|
2967
2967
|
|
|
2968
|
-
/**
|
|
2969
|
-
* This hook behaves like useLayoutEffect, but does not trigger on the first render.
|
|
2970
|
-
*
|
|
2971
|
-
* @param {Function} effect
|
|
2972
|
-
* @param {Array} deps
|
|
2968
|
+
/**
|
|
2969
|
+
* This hook behaves like useLayoutEffect, but does not trigger on the first render.
|
|
2970
|
+
*
|
|
2971
|
+
* @param {Function} effect
|
|
2972
|
+
* @param {Array} deps
|
|
2973
2973
|
*/
|
|
2974
2974
|
function useUpdateLayoutEffect(effect, deps) {
|
|
2975
2975
|
const isMounted = hooks.useRef(false);
|
|
@@ -3044,15 +3044,15 @@ function MenuItem({
|
|
|
3044
3044
|
});
|
|
3045
3045
|
}
|
|
3046
3046
|
|
|
3047
|
-
/**
|
|
3048
|
-
*
|
|
3049
|
-
* @param {Array<null | Element>} ignoredElements
|
|
3050
|
-
* @param {Function} callback
|
|
3047
|
+
/**
|
|
3048
|
+
*
|
|
3049
|
+
* @param {Array<null | Element>} ignoredElements
|
|
3050
|
+
* @param {Function} callback
|
|
3051
3051
|
*/
|
|
3052
3052
|
function useGlobalClick(ignoredElements, callback) {
|
|
3053
3053
|
hooks.useEffect(() => {
|
|
3054
|
-
/**
|
|
3055
|
-
* @param {MouseEvent} event
|
|
3054
|
+
/**
|
|
3055
|
+
* @param {MouseEvent} event
|
|
3056
3056
|
*/
|
|
3057
3057
|
function listener(event) {
|
|
3058
3058
|
if (ignoredElements.some(element => element && element.contains(event.target))) {
|
|
@@ -3085,20 +3085,20 @@ function HeaderButton(props) {
|
|
|
3085
3085
|
});
|
|
3086
3086
|
}
|
|
3087
3087
|
|
|
3088
|
-
/**
|
|
3089
|
-
* @typedef { {
|
|
3090
|
-
* [key: string]: string;
|
|
3091
|
-
* } } TranslateReplacements
|
|
3088
|
+
/**
|
|
3089
|
+
* @typedef { {
|
|
3090
|
+
* [key: string]: string;
|
|
3091
|
+
* } } TranslateReplacements
|
|
3092
3092
|
*/
|
|
3093
3093
|
|
|
3094
|
-
/**
|
|
3095
|
-
* A simple translation stub to be used for multi-language support.
|
|
3096
|
-
* Can be easily replaced with a more sophisticated solution.
|
|
3097
|
-
*
|
|
3098
|
-
* @param {string} template to interpolate
|
|
3099
|
-
* @param {TranslateReplacements} [replacements] a map with substitutes
|
|
3100
|
-
*
|
|
3101
|
-
* @return {string} the translated string
|
|
3094
|
+
/**
|
|
3095
|
+
* A simple translation stub to be used for multi-language support.
|
|
3096
|
+
* Can be easily replaced with a more sophisticated solution.
|
|
3097
|
+
*
|
|
3098
|
+
* @param {string} template to interpolate
|
|
3099
|
+
* @param {TranslateReplacements} [replacements] a map with substitutes
|
|
3100
|
+
*
|
|
3101
|
+
* @return {string} the translated string
|
|
3102
3102
|
*/
|
|
3103
3103
|
function translateFallback(template, replacements) {
|
|
3104
3104
|
replacements = replacements || {};
|
|
@@ -3210,8 +3210,8 @@ function ListItem(props) {
|
|
|
3210
3210
|
|
|
3211
3211
|
const noop$1 = () => {};
|
|
3212
3212
|
|
|
3213
|
-
/**
|
|
3214
|
-
* @param {import('../PropertiesPanel').ListGroupDefinition} props
|
|
3213
|
+
/**
|
|
3214
|
+
* @param {import('../PropertiesPanel').ListGroupDefinition} props
|
|
3215
3215
|
*/
|
|
3216
3216
|
function ListGroup(props) {
|
|
3217
3217
|
const {
|
|
@@ -3403,18 +3403,18 @@ function Checkbox(props) {
|
|
|
3403
3403
|
});
|
|
3404
3404
|
}
|
|
3405
3405
|
|
|
3406
|
-
/**
|
|
3407
|
-
* @param {Object} props
|
|
3408
|
-
* @param {Object} props.element
|
|
3409
|
-
* @param {String} props.id
|
|
3410
|
-
* @param {String} props.description
|
|
3411
|
-
* @param {String} props.label
|
|
3412
|
-
* @param {Function} props.getValue
|
|
3413
|
-
* @param {Function} props.setValue
|
|
3414
|
-
* @param {Function} props.onFocus
|
|
3415
|
-
* @param {Function} props.onBlur
|
|
3416
|
-
* @param {string|import('preact').Component} props.tooltip
|
|
3417
|
-
* @param {boolean} [props.disabled]
|
|
3406
|
+
/**
|
|
3407
|
+
* @param {Object} props
|
|
3408
|
+
* @param {Object} props.element
|
|
3409
|
+
* @param {String} props.id
|
|
3410
|
+
* @param {String} props.description
|
|
3411
|
+
* @param {String} props.label
|
|
3412
|
+
* @param {Function} props.getValue
|
|
3413
|
+
* @param {Function} props.setValue
|
|
3414
|
+
* @param {Function} props.onFocus
|
|
3415
|
+
* @param {Function} props.onBlur
|
|
3416
|
+
* @param {string|import('preact').Component} props.tooltip
|
|
3417
|
+
* @param {boolean} [props.disabled]
|
|
3418
3418
|
*/
|
|
3419
3419
|
function CheckboxEntry(props) {
|
|
3420
3420
|
const {
|
|
@@ -3466,19 +3466,19 @@ function prefixId$4(id) {
|
|
|
3466
3466
|
|
|
3467
3467
|
const noop = () => {};
|
|
3468
3468
|
|
|
3469
|
-
/**
|
|
3470
|
-
* @param {Object} props
|
|
3471
|
-
* @param {Object} props.element
|
|
3472
|
-
* @param {String} props.id
|
|
3473
|
-
* @param {String} props.description
|
|
3474
|
-
* @param {Boolean} props.debounce
|
|
3475
|
-
* @param {Boolean} props.disabled
|
|
3476
|
-
* @param {String} props.label
|
|
3477
|
-
* @param {Function} props.getValue
|
|
3478
|
-
* @param {Function} props.setValue
|
|
3479
|
-
* @param {Function} props.tooltipContainer
|
|
3480
|
-
* @param {Function} props.validate
|
|
3481
|
-
* @param {Function} props.show
|
|
3469
|
+
/**
|
|
3470
|
+
* @param {Object} props
|
|
3471
|
+
* @param {Object} props.element
|
|
3472
|
+
* @param {String} props.id
|
|
3473
|
+
* @param {String} props.description
|
|
3474
|
+
* @param {Boolean} props.debounce
|
|
3475
|
+
* @param {Boolean} props.disabled
|
|
3476
|
+
* @param {String} props.label
|
|
3477
|
+
* @param {Function} props.getValue
|
|
3478
|
+
* @param {Function} props.setValue
|
|
3479
|
+
* @param {Function} props.tooltipContainer
|
|
3480
|
+
* @param {Function} props.validate
|
|
3481
|
+
* @param {Function} props.show
|
|
3482
3482
|
*/
|
|
3483
3483
|
function TemplatingEntry(props) {
|
|
3484
3484
|
const {
|
|
@@ -3653,8 +3653,8 @@ function List(props) {
|
|
|
3653
3653
|
}
|
|
3654
3654
|
}, [open, hasItems]);
|
|
3655
3655
|
|
|
3656
|
-
/**
|
|
3657
|
-
* @param {MouseEvent} event
|
|
3656
|
+
/**
|
|
3657
|
+
* @param {MouseEvent} event
|
|
3658
3658
|
*/
|
|
3659
3659
|
function addItem(event) {
|
|
3660
3660
|
event.stopPropagation();
|
|
@@ -3846,20 +3846,20 @@ function Select(props) {
|
|
|
3846
3846
|
});
|
|
3847
3847
|
}
|
|
3848
3848
|
|
|
3849
|
-
/**
|
|
3850
|
-
* @param {object} props
|
|
3851
|
-
* @param {object} props.element
|
|
3852
|
-
* @param {string} props.id
|
|
3853
|
-
* @param {string} [props.description]
|
|
3854
|
-
* @param {string} props.label
|
|
3855
|
-
* @param {Function} props.getValue
|
|
3856
|
-
* @param {Function} props.setValue
|
|
3857
|
-
* @param {Function} props.onFocus
|
|
3858
|
-
* @param {Function} props.onBlur
|
|
3859
|
-
* @param {Function} props.getOptions
|
|
3860
|
-
* @param {boolean} [props.disabled]
|
|
3861
|
-
* @param {Function} [props.validate]
|
|
3862
|
-
* @param {string|import('preact').Component} props.tooltip
|
|
3849
|
+
/**
|
|
3850
|
+
* @param {object} props
|
|
3851
|
+
* @param {object} props.element
|
|
3852
|
+
* @param {string} props.id
|
|
3853
|
+
* @param {string} [props.description]
|
|
3854
|
+
* @param {string} props.label
|
|
3855
|
+
* @param {Function} props.getValue
|
|
3856
|
+
* @param {Function} props.setValue
|
|
3857
|
+
* @param {Function} props.onFocus
|
|
3858
|
+
* @param {Function} props.onBlur
|
|
3859
|
+
* @param {Function} props.getOptions
|
|
3860
|
+
* @param {boolean} [props.disabled]
|
|
3861
|
+
* @param {Function} [props.validate]
|
|
3862
|
+
* @param {string|import('preact').Component} props.tooltip
|
|
3863
3863
|
*/
|
|
3864
3864
|
function SelectEntry(props) {
|
|
3865
3865
|
const {
|
|
@@ -4206,20 +4206,20 @@ function Textfield(props) {
|
|
|
4206
4206
|
});
|
|
4207
4207
|
}
|
|
4208
4208
|
|
|
4209
|
-
/**
|
|
4210
|
-
* @param {Object} props
|
|
4211
|
-
* @param {Object} props.element
|
|
4212
|
-
* @param {String} props.id
|
|
4213
|
-
* @param {String} props.description
|
|
4214
|
-
* @param {Boolean} props.debounce
|
|
4215
|
-
* @param {Boolean} props.disabled
|
|
4216
|
-
* @param {String} props.label
|
|
4217
|
-
* @param {Function} props.getValue
|
|
4218
|
-
* @param {Function} props.setValue
|
|
4219
|
-
* @param {Function} props.onFocus
|
|
4220
|
-
* @param {Function} props.onBlur
|
|
4221
|
-
* @param {string|import('preact').Component} props.tooltip
|
|
4222
|
-
* @param {Function} props.validate
|
|
4209
|
+
/**
|
|
4210
|
+
* @param {Object} props
|
|
4211
|
+
* @param {Object} props.element
|
|
4212
|
+
* @param {String} props.id
|
|
4213
|
+
* @param {String} props.description
|
|
4214
|
+
* @param {Boolean} props.debounce
|
|
4215
|
+
* @param {Boolean} props.disabled
|
|
4216
|
+
* @param {String} props.label
|
|
4217
|
+
* @param {Function} props.getValue
|
|
4218
|
+
* @param {Function} props.setValue
|
|
4219
|
+
* @param {Function} props.onFocus
|
|
4220
|
+
* @param {Function} props.onBlur
|
|
4221
|
+
* @param {string|import('preact').Component} props.tooltip
|
|
4222
|
+
* @param {Function} props.validate
|
|
4223
4223
|
*/
|
|
4224
4224
|
function TextfieldEntry(props) {
|
|
4225
4225
|
const {
|
|
@@ -4312,20 +4312,20 @@ class FeelPopupModule {
|
|
|
4312
4312
|
this._eventBus = eventBus;
|
|
4313
4313
|
}
|
|
4314
4314
|
|
|
4315
|
-
/**
|
|
4316
|
-
* Check if the FEEL popup is open.
|
|
4317
|
-
* @return {Boolean}
|
|
4315
|
+
/**
|
|
4316
|
+
* Check if the FEEL popup is open.
|
|
4317
|
+
* @return {Boolean}
|
|
4318
4318
|
*/
|
|
4319
4319
|
isOpen() {
|
|
4320
4320
|
return this._eventBus.fire('feelPopup._isOpen');
|
|
4321
4321
|
}
|
|
4322
4322
|
|
|
4323
|
-
/**
|
|
4324
|
-
* Open the FEEL popup.
|
|
4325
|
-
*
|
|
4326
|
-
* @param {String} entryId
|
|
4327
|
-
* @param {Object} popupConfig
|
|
4328
|
-
* @param {HTMLElement} sourceElement
|
|
4323
|
+
/**
|
|
4324
|
+
* Open the FEEL popup.
|
|
4325
|
+
*
|
|
4326
|
+
* @param {String} entryId
|
|
4327
|
+
* @param {Object} popupConfig
|
|
4328
|
+
* @param {HTMLElement} sourceElement
|
|
4329
4329
|
*/
|
|
4330
4330
|
open(entryId, popupConfig, sourceElement) {
|
|
4331
4331
|
return this._eventBus.fire('feelPopup._open', {
|
|
@@ -4335,8 +4335,8 @@ class FeelPopupModule {
|
|
|
4335
4335
|
});
|
|
4336
4336
|
}
|
|
4337
4337
|
|
|
4338
|
-
/**
|
|
4339
|
-
* Close the FEEL popup.
|
|
4338
|
+
/**
|
|
4339
|
+
* Close the FEEL popup.
|
|
4340
4340
|
*/
|
|
4341
4341
|
close() {
|
|
4342
4342
|
return this._eventBus.fire('feelPopup._close');
|