@bpmn-io/properties-panel 3.31.0 → 3.31.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/dist/index.js CHANGED
@@ -238,35 +238,35 @@ 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({
257
257
  eventBus: null
258
258
  });
259
259
 
260
- /**
261
- * @typedef { {
262
- * parserDialect?: import('@bpmn-io/feel-editor').ParserDialect,
263
- * builtins?: import('@bpmn-io/feel-editor').Variable[],
264
- * dialect?: import('@bpmn-io/feel-editor').Dialect
265
- * } } FeelLanguageContextType
260
+ /**
261
+ * @typedef { {
262
+ * parserDialect?: import('@bpmn-io/feel-editor').ParserDialect,
263
+ * builtins?: import('@bpmn-io/feel-editor').Variable[],
264
+ * dialect?: import('@bpmn-io/feel-editor').Dialect
265
+ * } } FeelLanguageContextType
266
266
  */
267
267
 
268
- /**
269
- * @type {import('preact').Context<FeelLanguageContextType>}
268
+ /**
269
+ * @type {import('preact').Context<FeelLanguageContextType>}
270
270
  */
271
271
  const FeelLanguageContext = preact.createContext({});
272
272
 
@@ -282,20 +282,20 @@ const TooltipContext = preact.createContext({
282
282
  getTooltipForId: () => {}
283
283
  });
284
284
 
285
- /**
286
- * Accesses the global TooltipContext and returns a tooltip for a given id and element.
287
- *
288
- * @example
289
- * ```jsx
290
- * function TextField(props) {
291
- * const tooltip = useTooltipContext('input1', element);
292
- * }
293
- * ```
294
- *
295
- * @param {string} id
296
- * @param {object} element
297
- *
298
- * @returns {string}
285
+ /**
286
+ * Accesses the global TooltipContext and returns a tooltip for a given id and element.
287
+ *
288
+ * @example
289
+ * ```jsx
290
+ * function TextField(props) {
291
+ * const tooltip = useTooltipContext('input1', element);
292
+ * }
293
+ * ```
294
+ *
295
+ * @param {string} id
296
+ * @param {object} element
297
+ *
298
+ * @returns {string}
299
299
  */
300
300
  function useTooltipContext(id, element) {
301
301
  const {
@@ -414,20 +414,20 @@ function getTooltipPosition(refElement) {
414
414
  return `right: ${right}; top: ${top};`;
415
415
  }
416
416
 
417
- /**
418
- * Accesses the global DescriptionContext and returns a description for a given id and element.
419
- *
420
- * @example
421
- * ```jsx
422
- * function TextField(props) {
423
- * const description = useDescriptionContext('input1', element);
424
- * }
425
- * ```
426
- *
427
- * @param {string} id
428
- * @param {object} element
429
- *
430
- * @returns {string}
417
+ /**
418
+ * Accesses the global DescriptionContext and returns a description for a given id and element.
419
+ *
420
+ * @example
421
+ * ```jsx
422
+ * function TextField(props) {
423
+ * const description = useDescriptionContext('input1', element);
424
+ * }
425
+ * ```
426
+ *
427
+ * @param {string} id
428
+ * @param {object} element
429
+ *
430
+ * @returns {string}
431
431
  */
432
432
  function useDescriptionContext(id, element) {
433
433
  const {
@@ -461,11 +461,11 @@ function useErrors() {
461
461
  return errors;
462
462
  }
463
463
 
464
- /**
465
- * Subscribe to an event immediately. Update subscription after inputs changed.
466
- *
467
- * @param {string} event
468
- * @param {Function} callback
464
+ /**
465
+ * Subscribe to an event immediately. Update subscription after inputs changed.
466
+ *
467
+ * @param {string} event
468
+ * @param {Function} callback
469
469
  */
470
470
  function useEvent(event, callback, eventBus) {
471
471
  const eventContext = hooks.useContext(EventContext);
@@ -497,24 +497,24 @@ function useEvent(event, callback, eventBus) {
497
497
 
498
498
  const KEY_LENGTH = 6;
499
499
 
500
- /**
501
- * Create a persistent key factory for plain objects without id.
502
- *
503
- * @example
504
- * ```jsx
505
- * function List({ objects }) {
506
- * const getKey = useKeyFactory();
507
- * return (<ol>{
508
- * objects.map(obj => {
509
- * const key = getKey(obj);
510
- * return <li key={key}>obj.name</li>
511
- * })
512
- * }</ol>);
513
- * }
514
- * ```
515
- *
516
- * @param {any[]} dependencies
517
- * @returns {(element: object) => string}
500
+ /**
501
+ * Create a persistent key factory for plain objects without id.
502
+ *
503
+ * @example
504
+ * ```jsx
505
+ * function List({ objects }) {
506
+ * const getKey = useKeyFactory();
507
+ * return (<ol>{
508
+ * objects.map(obj => {
509
+ * const key = getKey(obj);
510
+ * return <li key={key}>obj.name</li>
511
+ * })
512
+ * }</ol>);
513
+ * }
514
+ * ```
515
+ *
516
+ * @param {any[]} dependencies
517
+ * @returns {(element: object) => string}
518
518
  */
519
519
  function useKeyFactory(dependencies = []) {
520
520
  const map = hooks.useMemo(() => new Map(), dependencies);
@@ -529,20 +529,20 @@ function useKeyFactory(dependencies = []) {
529
529
  return getKey;
530
530
  }
531
531
 
532
- /**
533
- * Creates a state that persists in the global LayoutContext.
534
- *
535
- * @example
536
- * ```jsx
537
- * function Group(props) {
538
- * const [ open, setOpen ] = useLayoutState([ 'groups', 'foo', 'open' ], false);
539
- * }
540
- * ```
541
- *
542
- * @param {(string|number)[]} path
543
- * @param {any} [defaultValue]
544
- *
545
- * @returns {[ any, Function ]}
532
+ /**
533
+ * Creates a state that persists in the global LayoutContext.
534
+ *
535
+ * @example
536
+ * ```jsx
537
+ * function Group(props) {
538
+ * const [ open, setOpen ] = useLayoutState([ 'groups', 'foo', 'open' ], false);
539
+ * }
540
+ * ```
541
+ *
542
+ * @param {(string|number)[]} path
543
+ * @param {any} [defaultValue]
544
+ *
545
+ * @returns {[ any, Function ]}
546
546
  */
547
547
  function useLayoutState(path, defaultValue) {
548
548
  const {
@@ -556,11 +556,11 @@ function useLayoutState(path, defaultValue) {
556
556
  return [layoutForKey, setState];
557
557
  }
558
558
 
559
- /**
560
- * @pinussilvestrus: we need to introduce our own hook to persist the previous
561
- * state on updates.
562
- *
563
- * cf. https://reactjs.org/docs/hooks-faq.html#how-to-get-the-previous-props-or-state
559
+ /**
560
+ * @pinussilvestrus: we need to introduce our own hook to persist the previous
561
+ * state on updates.
562
+ *
563
+ * cf. https://reactjs.org/docs/hooks-faq.html#how-to-get-the-previous-props-or-state
564
564
  */
565
565
 
566
566
  function usePrevious(value) {
@@ -571,12 +571,12 @@ function usePrevious(value) {
571
571
  return ref.current;
572
572
  }
573
573
 
574
- /**
575
- * Subscribe to `propertiesPanel.showEntry`.
576
- *
577
- * @param {string} id
578
- *
579
- * @returns {import('preact').Ref}
574
+ /**
575
+ * Subscribe to `propertiesPanel.showEntry`.
576
+ *
577
+ * @param {string} id
578
+ *
579
+ * @returns {import('preact').Ref}
580
580
  */
581
581
  function useShowEntryEvent(id) {
582
582
  const {
@@ -607,20 +607,20 @@ function useShowEntryEvent(id) {
607
607
  return ref;
608
608
  }
609
609
 
610
- /**
611
- * @callback setSticky
612
- * @param {boolean} value
610
+ /**
611
+ * @callback setSticky
612
+ * @param {boolean} value
613
613
  */
614
614
 
615
- /**
616
- * Use IntersectionObserver to identify when DOM element is in sticky mode.
617
- * If sticky is observered setSticky(true) will be called.
618
- * If sticky mode is left, setSticky(false) will be called.
619
- *
620
- *
621
- * @param {Object} ref
622
- * @param {string} scrollContainerSelector
623
- * @param {setSticky} setSticky
615
+ /**
616
+ * Use IntersectionObserver to identify when DOM element is in sticky mode.
617
+ * If sticky is observered setSticky(true) will be called.
618
+ * If sticky mode is left, setSticky(false) will be called.
619
+ *
620
+ *
621
+ * @param {Object} ref
622
+ * @param {string} scrollContainerSelector
623
+ * @param {setSticky} setSticky
624
624
  */
625
625
  function useStickyIntersectionObserver(ref, scrollContainerSelector, setSticky) {
626
626
  const [scrollContainer, setScrollContainer] = hooks.useState(minDom.query(scrollContainerSelector));
@@ -674,19 +674,19 @@ function useStickyIntersectionObserver(ref, scrollContainerSelector, setSticky)
674
674
  }, [ref.current, scrollContainer, setSticky]);
675
675
  }
676
676
 
677
- /**
678
- * Creates a static function reference with changing body.
679
- * This is necessary when external libraries require a callback function
680
- * that has references to state variables.
681
- *
682
- * Usage:
683
- * const callback = useStaticCallback((val) => {val === currentState});
684
- *
685
- * The `callback` reference is static and can be safely used in external
686
- * libraries or as a prop that does not cause rerendering of children.
687
- *
688
- * @param {Function} callback function with changing reference
689
- * @returns {Function} static function reference
677
+ /**
678
+ * Creates a static function reference with changing body.
679
+ * This is necessary when external libraries require a callback function
680
+ * that has references to state variables.
681
+ *
682
+ * Usage:
683
+ * const callback = useStaticCallback((val) => {val === currentState});
684
+ *
685
+ * The `callback` reference is static and can be safely used in external
686
+ * libraries or as a prop that does not cause rerendering of children.
687
+ *
688
+ * @param {Function} callback function with changing reference
689
+ * @returns {Function} static function reference
690
690
  */
691
691
  function useStaticCallback(callback) {
692
692
  const callbackRef = hooks.useRef(callback);
@@ -829,13 +829,13 @@ function DataMarker(props) {
829
829
  return null;
830
830
  }
831
831
 
832
- /**
833
- * @typedef { {
834
- * text: (element: object) => string,
835
- * icon?: (element: Object) => import('preact').Component
836
- * } } PlaceholderDefinition
837
- *
838
- * @param { PlaceholderDefinition } props
832
+ /**
833
+ * @typedef { {
834
+ * text: (element: object) => string,
835
+ * icon?: (element: Object) => import('preact').Component
836
+ * } } PlaceholderDefinition
837
+ *
838
+ * @param { PlaceholderDefinition } props
839
839
  */
840
840
  function Placeholder(props) {
841
841
  const {
@@ -860,85 +860,85 @@ const DEFAULT_LAYOUT = {};
860
860
  const DEFAULT_DESCRIPTION = {};
861
861
  const DEFAULT_TOOLTIP = {};
862
862
 
863
- /**
864
- * @typedef { {
865
- * component: import('preact').Component,
866
- * id: String,
867
- * isEdited?: Function
868
- * } } EntryDefinition
869
- *
870
- * @typedef { {
871
- * autoFocusEntry: String,
872
- * autoOpen?: Boolean,
873
- * entries: Array<EntryDefinition>,
874
- * id: String,
875
- * label: String,
876
- * remove: (event: MouseEvent) => void
877
- * } } ListItemDefinition
878
- *
879
- * @typedef { {
880
- * add: (event: MouseEvent) => void,
881
- * component: import('preact').Component,
882
- * element: Object,
883
- * id: String,
884
- * items: Array<ListItemDefinition>,
885
- * label: String,
886
- * shouldOpen?: Boolean
887
- * } } ListGroupDefinition
888
- *
889
- * @typedef { {
890
- * component?: import('preact').Component,
891
- * entries: Array<EntryDefinition>,
892
- * id: String,
893
- * label: String,
894
- * shouldOpen?: Boolean
895
- * } } GroupDefinition
896
- *
897
- * @typedef { {
898
- * [id: String]: GetDescriptionFunction
899
- * } } DescriptionConfig
900
- *
901
- * @typedef { {
902
- * [id: String]: GetTooltipFunction
903
- * } } TooltipConfig
904
- *
905
- * @callback { {
906
- * @param {string} id
907
- * @param {Object} element
908
- * @returns {string}
909
- * } } GetDescriptionFunction
910
- *
911
- * @callback { {
912
- * @param {string} id
913
- * @param {Object} element
914
- * @returns {string}
915
- * } } GetTooltipFunction
916
- *
917
- * @typedef { {
918
- * getEmpty: (element: object) => import('./components/Placeholder').PlaceholderDefinition,
919
- * getMultiple: (element: Object) => import('./components/Placeholder').PlaceholderDefinition
920
- * } } PlaceholderProvider
921
- *
863
+ /**
864
+ * @typedef { {
865
+ * component: import('preact').Component,
866
+ * id: String,
867
+ * isEdited?: Function
868
+ * } } EntryDefinition
869
+ *
870
+ * @typedef { {
871
+ * autoFocusEntry: String,
872
+ * autoOpen?: Boolean,
873
+ * entries: Array<EntryDefinition>,
874
+ * id: String,
875
+ * label: String,
876
+ * remove: (event: MouseEvent) => void
877
+ * } } ListItemDefinition
878
+ *
879
+ * @typedef { {
880
+ * add: (event: MouseEvent) => void,
881
+ * component: import('preact').Component,
882
+ * element: Object,
883
+ * id: String,
884
+ * items: Array<ListItemDefinition>,
885
+ * label: String,
886
+ * shouldOpen?: Boolean
887
+ * } } ListGroupDefinition
888
+ *
889
+ * @typedef { {
890
+ * component?: import('preact').Component,
891
+ * entries: Array<EntryDefinition>,
892
+ * id: String,
893
+ * label: String,
894
+ * shouldOpen?: Boolean
895
+ * } } GroupDefinition
896
+ *
897
+ * @typedef { {
898
+ * [id: String]: GetDescriptionFunction
899
+ * } } DescriptionConfig
900
+ *
901
+ * @typedef { {
902
+ * [id: String]: GetTooltipFunction
903
+ * } } TooltipConfig
904
+ *
905
+ * @callback { {
906
+ * @param {string} id
907
+ * @param {Object} element
908
+ * @returns {string}
909
+ * } } GetDescriptionFunction
910
+ *
911
+ * @callback { {
912
+ * @param {string} id
913
+ * @param {Object} element
914
+ * @returns {string}
915
+ * } } GetTooltipFunction
916
+ *
917
+ * @typedef { {
918
+ * getEmpty: (element: object) => import('./components/Placeholder').PlaceholderDefinition,
919
+ * getMultiple: (element: Object) => import('./components/Placeholder').PlaceholderDefinition
920
+ * } } PlaceholderProvider
921
+ *
922
922
  */
923
923
 
924
- /**
925
- * A basic properties panel component. Describes *how* content will be rendered, accepts
926
- * data from implementor to describe *what* will be rendered.
927
- *
928
- * @param {Object} props
929
- * @param {Object|Array} props.element
930
- * @param {import('./components/Header').HeaderProvider} props.headerProvider
931
- * @param {PlaceholderProvider} [props.placeholderProvider]
932
- * @param {Array<GroupDefinition|ListGroupDefinition>} props.groups
933
- * @param {Object} [props.layoutConfig]
934
- * @param {Function} [props.layoutChanged]
935
- * @param {DescriptionConfig} [props.descriptionConfig]
936
- * @param {Function} [props.descriptionLoaded]
937
- * @param {TooltipConfig} [props.tooltipConfig]
938
- * @param {Function} [props.tooltipLoaded]
939
- * @param {HTMLElement} [props.feelPopupContainer]
940
- * @param {Function} [props.getFeelPopupLinks]
941
- * @param {Object} [props.eventBus]
924
+ /**
925
+ * A basic properties panel component. Describes *how* content will be rendered, accepts
926
+ * data from implementor to describe *what* will be rendered.
927
+ *
928
+ * @param {Object} props
929
+ * @param {Object|Array} props.element
930
+ * @param {import('./components/Header').HeaderProvider} props.headerProvider
931
+ * @param {PlaceholderProvider} [props.placeholderProvider]
932
+ * @param {Array<GroupDefinition|ListGroupDefinition>} props.groups
933
+ * @param {Object} [props.layoutConfig]
934
+ * @param {Function} [props.layoutChanged]
935
+ * @param {DescriptionConfig} [props.descriptionConfig]
936
+ * @param {Function} [props.descriptionLoaded]
937
+ * @param {TooltipConfig} [props.tooltipConfig]
938
+ * @param {Function} [props.tooltipLoaded]
939
+ * @param {HTMLElement} [props.feelPopupContainer]
940
+ * @param {Function} [props.getFeelPopupLinks]
941
+ * @param {Object} [props.eventBus]
942
942
  */
943
943
  function PropertiesPanel(props) {
944
944
  const {
@@ -1103,11 +1103,11 @@ function createTooltipContext(overrides = {}) {
1103
1103
 
1104
1104
  // hooks //////////////////
1105
1105
 
1106
- /**
1107
- * This hook behaves like useLayoutEffect, but does not trigger on the first render.
1108
- *
1109
- * @param {Function} effect
1110
- * @param {Array} deps
1106
+ /**
1107
+ * This hook behaves like useLayoutEffect, but does not trigger on the first render.
1108
+ *
1109
+ * @param {Function} effect
1110
+ * @param {Array} deps
1111
1111
  */
1112
1112
  function useUpdateLayoutEffect(effect, deps) {
1113
1113
  const isMounted = hooks.useRef(false);
@@ -1182,15 +1182,15 @@ function MenuItem({
1182
1182
  });
1183
1183
  }
1184
1184
 
1185
- /**
1186
- *
1187
- * @param {Array<null | Element>} ignoredElements
1188
- * @param {Function} callback
1185
+ /**
1186
+ *
1187
+ * @param {Array<null | Element>} ignoredElements
1188
+ * @param {Function} callback
1189
1189
  */
1190
1190
  function useGlobalClick(ignoredElements, callback) {
1191
1191
  hooks.useEffect(() => {
1192
- /**
1193
- * @param {MouseEvent} event
1192
+ /**
1193
+ * @param {MouseEvent} event
1194
1194
  */
1195
1195
  function listener(event) {
1196
1196
  if (ignoredElements.some(element => element && element.contains(event.target))) {
@@ -1223,20 +1223,20 @@ function HeaderButton(props) {
1223
1223
  });
1224
1224
  }
1225
1225
 
1226
- /**
1227
- * @typedef { {
1228
- * [key: string]: string;
1229
- * } } TranslateReplacements
1226
+ /**
1227
+ * @typedef { {
1228
+ * [key: string]: string;
1229
+ * } } TranslateReplacements
1230
1230
  */
1231
1231
 
1232
- /**
1233
- * A simple translation stub to be used for multi-language support.
1234
- * Can be easily replaced with a more sophisticated solution.
1235
- *
1236
- * @param {string} template to interpolate
1237
- * @param {TranslateReplacements} [replacements] a map with substitutes
1238
- *
1239
- * @return {string} the translated string
1232
+ /**
1233
+ * A simple translation stub to be used for multi-language support.
1234
+ * Can be easily replaced with a more sophisticated solution.
1235
+ *
1236
+ * @param {string} template to interpolate
1237
+ * @param {TranslateReplacements} [replacements] a map with substitutes
1238
+ *
1239
+ * @return {string} the translated string
1240
1240
  */
1241
1241
  function translateFallback(template, replacements) {
1242
1242
  replacements = replacements || {};
@@ -1348,8 +1348,8 @@ function ListItem(props) {
1348
1348
 
1349
1349
  const noop$6 = () => {};
1350
1350
 
1351
- /**
1352
- * @param {import('../PropertiesPanel').ListGroupDefinition} props
1351
+ /**
1352
+ * @param {import('../PropertiesPanel').ListGroupDefinition} props
1353
1353
  */
1354
1354
  function ListGroup(props) {
1355
1355
  const {
@@ -1557,18 +1557,18 @@ function Checkbox(props) {
1557
1557
  });
1558
1558
  }
1559
1559
 
1560
- /**
1561
- * @param {Object} props
1562
- * @param {Object} props.element
1563
- * @param {String} props.id
1564
- * @param {String} props.description
1565
- * @param {String} props.label
1566
- * @param {Function} props.getValue
1567
- * @param {Function} props.setValue
1568
- * @param {Function} props.onFocus
1569
- * @param {Function} props.onBlur
1570
- * @param {string|import('preact').Component} props.tooltip
1571
- * @param {boolean} [props.disabled]
1560
+ /**
1561
+ * @param {Object} props
1562
+ * @param {Object} props.element
1563
+ * @param {String} props.id
1564
+ * @param {String} props.description
1565
+ * @param {String} props.label
1566
+ * @param {Function} props.getValue
1567
+ * @param {Function} props.setValue
1568
+ * @param {Function} props.onFocus
1569
+ * @param {Function} props.onBlur
1570
+ * @param {string|import('preact').Component} props.tooltip
1571
+ * @param {boolean} [props.disabled]
1572
1572
  */
1573
1573
  function CheckboxEntry(props) {
1574
1574
  const {
@@ -1633,9 +1633,9 @@ function OpenPopupButton({
1633
1633
 
1634
1634
  const noop$5 = () => {};
1635
1635
 
1636
- /**
1637
- * Buffer `.focus()` calls while the editor is not initialized.
1638
- * Set Focus inside when the editor is ready.
1636
+ /**
1637
+ * Buffer `.focus()` calls while the editor is not initialized.
1638
+ * Set Focus inside when the editor is ready.
1639
1639
  */
1640
1640
  const useBufferedFocus$1 = function (editor, ref) {
1641
1641
  const [buffer, setBuffer] = hooks.useState(undefined);
@@ -1732,9 +1732,9 @@ const TemplatingEditor = compat.forwardRef((props, ref) => {
1732
1732
 
1733
1733
  const noop$4 = () => {};
1734
1734
 
1735
- /**
1736
- * Buffer `.focus()` calls while the editor is not initialized.
1737
- * Set Focus inside when the editor is ready.
1735
+ /**
1736
+ * Buffer `.focus()` calls while the editor is not initialized.
1737
+ * Set Focus inside when the editor is ready.
1738
1738
  */
1739
1739
  const useBufferedFocus = function (editor, ref) {
1740
1740
  const [buffer, setBuffer] = hooks.useState(undefined);
@@ -1789,10 +1789,10 @@ const FeelEditor = compat.forwardRef((props, ref) => {
1789
1789
  hooks.useEffect(() => {
1790
1790
  let editor;
1791
1791
 
1792
- /* Trigger FEEL toggle when
1793
- *
1794
- * - `backspace` is pressed
1795
- * - AND the cursor is at the beginning of the input
1792
+ /* Trigger FEEL toggle when
1793
+ *
1794
+ * - `backspace` is pressed
1795
+ * - AND the cursor is at the beginning of the input
1796
1796
  */
1797
1797
  const onKeyDown = e => {
1798
1798
  if (e.key !== 'Backspace' || !editor) {
@@ -1882,10 +1882,10 @@ function FeelIndicator(props) {
1882
1882
 
1883
1883
  const noop$3 = () => {};
1884
1884
 
1885
- /**
1886
- * @param {Object} props
1887
- * @param {Object} props.label
1888
- * @param {String} props.feel
1885
+ /**
1886
+ * @param {Object} props
1887
+ * @param {Object} props.label
1888
+ * @param {String} props.feel
1889
1889
  */
1890
1890
  function FeelIcon(props) {
1891
1891
  const {
@@ -1979,19 +1979,19 @@ function ToggleSwitch(props) {
1979
1979
  });
1980
1980
  }
1981
1981
 
1982
- /**
1983
- * @param {Object} props
1984
- * @param {Object} props.element
1985
- * @param {String} props.id
1986
- * @param {String} props.description
1987
- * @param {String} props.label
1988
- * @param {String} props.switcherLabel
1989
- * @param {Boolean} props.inline
1990
- * @param {Function} props.getValue
1991
- * @param {Function} props.setValue
1992
- * @param {Function} props.onFocus
1993
- * @param {Function} props.onBlur
1994
- * @param {string|import('preact').Component} props.tooltip
1982
+ /**
1983
+ * @param {Object} props
1984
+ * @param {Object} props.element
1985
+ * @param {String} props.id
1986
+ * @param {String} props.description
1987
+ * @param {String} props.label
1988
+ * @param {String} props.switcherLabel
1989
+ * @param {Boolean} props.inline
1990
+ * @param {Function} props.getValue
1991
+ * @param {Function} props.setValue
1992
+ * @param {Function} props.onFocus
1993
+ * @param {Function} props.onBlur
1994
+ * @param {string|import('preact').Component} props.tooltip
1995
1995
  */
1996
1996
  function ToggleSwitchEntry(props) {
1997
1997
  const {
@@ -2105,22 +2105,22 @@ function NumberField(props) {
2105
2105
  });
2106
2106
  }
2107
2107
 
2108
- /**
2109
- * @param {Object} props
2110
- * @param {Boolean} props.debounce
2111
- * @param {String} props.description
2112
- * @param {Boolean} props.disabled
2113
- * @param {Object} props.element
2114
- * @param {Function} props.getValue
2115
- * @param {String} props.id
2116
- * @param {String} props.label
2117
- * @param {String} props.max
2118
- * @param {String} props.min
2119
- * @param {Function} props.setValue
2120
- * @param {Function} props.onFocus
2121
- * @param {Function} props.onBlur
2122
- * @param {String} props.step
2123
- * @param {Function} props.validate
2108
+ /**
2109
+ * @param {Object} props
2110
+ * @param {Boolean} props.debounce
2111
+ * @param {String} props.description
2112
+ * @param {Boolean} props.disabled
2113
+ * @param {Object} props.element
2114
+ * @param {Function} props.getValue
2115
+ * @param {String} props.id
2116
+ * @param {String} props.label
2117
+ * @param {String} props.max
2118
+ * @param {String} props.min
2119
+ * @param {Function} props.setValue
2120
+ * @param {Function} props.onFocus
2121
+ * @param {Function} props.onBlur
2122
+ * @param {String} props.step
2123
+ * @param {Function} props.validate
2124
2124
  */
2125
2125
  function NumberFieldEntry(props) {
2126
2126
  const {
@@ -2196,29 +2196,29 @@ function prefixId$6(id) {
2196
2196
 
2197
2197
  const noop$2 = () => {};
2198
2198
 
2199
- /**
2200
- * @typedef {'required'|'optional'|'static'} FeelType
2199
+ /**
2200
+ * @typedef {'required'|'optional'|'static'} FeelType
2201
2201
  */
2202
2202
 
2203
- /**
2204
- * @param {Object} props
2205
- * @param {Boolean} props.debounce
2206
- * @param {String} props.id
2207
- * @param {Object} props.element
2208
- * @param {String} props.label
2209
- * @param {String} props.hostLanguage
2210
- * @param {Function} props.onInput
2211
- * @param {Function} props.onBlur
2212
- * @param {Function} props.onError
2213
- * @param {FeelType} [props.feel]
2214
- * @param {String} props.value
2215
- * @param {Boolean} [props.singleLine]
2216
- * @param {Function} props.tooltipContainer
2217
- * @param {Function | import('preact').Component} props.OptionalComponent
2218
- * @param {Boolean} props.disabled
2219
- * @param {Array} props.variables
2220
- * @param {string} [props.placeholder]
2221
- * @param {string | import('preact').Component} props.tooltip
2203
+ /**
2204
+ * @param {Object} props
2205
+ * @param {Boolean} props.debounce
2206
+ * @param {String} props.id
2207
+ * @param {Object} props.element
2208
+ * @param {String} props.label
2209
+ * @param {String} props.hostLanguage
2210
+ * @param {Function} props.onInput
2211
+ * @param {Function} props.onBlur
2212
+ * @param {Function} props.onError
2213
+ * @param {FeelType} [props.feel]
2214
+ * @param {String} props.value
2215
+ * @param {Boolean} [props.singleLine]
2216
+ * @param {Function} props.tooltipContainer
2217
+ * @param {Function | import('preact').Component} props.OptionalComponent
2218
+ * @param {Boolean} props.disabled
2219
+ * @param {Array} props.variables
2220
+ * @param {string} [props.placeholder]
2221
+ * @param {string | import('preact').Component} props.tooltip
2222
2222
  */
2223
2223
  function FeelTextfield(props) {
2224
2224
  const {
@@ -2259,8 +2259,8 @@ function FeelTextfield(props) {
2259
2259
  _setFocus(position + offset);
2260
2260
  };
2261
2261
 
2262
- /**
2263
- * @type { import('min-dash').DebouncedFunction }
2262
+ /**
2263
+ * @type { import('min-dash').DebouncedFunction }
2264
2264
  */
2265
2265
  const handleInputCallback = useDebounce(onInput, debounce);
2266
2266
  const handleInput = newValue => {
@@ -2659,26 +2659,26 @@ const OptionalFeelCheckbox = compat.forwardRef((props, ref) => {
2659
2659
  });
2660
2660
  });
2661
2661
 
2662
- /**
2663
- * @param {Object} props
2664
- * @param {Object} props.element
2665
- * @param {String} props.id
2666
- * @param {String} props.description
2667
- * @param {Boolean} props.debounce
2668
- * @param {Boolean} props.disabled
2669
- * @param {FeelType} [props.feel]
2670
- * @param {String} props.label
2671
- * @param {Function} props.getValue
2672
- * @param {Function} props.setValue
2673
- * @param {Function} props.tooltipContainer
2674
- * @param {Function} props.validate
2675
- * @param {Function} props.show
2676
- * @param {Function} props.example
2677
- * @param {Array} props.variables
2678
- * @param {Function} props.onFocus
2679
- * @param {Function} props.onBlur
2680
- * @param {string} [props.placeholder]
2681
- * @param {string|import('preact').Component} props.tooltip
2662
+ /**
2663
+ * @param {Object} props
2664
+ * @param {Object} props.element
2665
+ * @param {String} props.id
2666
+ * @param {String} props.description
2667
+ * @param {Boolean} props.debounce
2668
+ * @param {Boolean} props.disabled
2669
+ * @param {FeelType} [props.feel]
2670
+ * @param {String} props.label
2671
+ * @param {Function} props.getValue
2672
+ * @param {Function} props.setValue
2673
+ * @param {Function} props.tooltipContainer
2674
+ * @param {Function} props.validate
2675
+ * @param {Function} props.show
2676
+ * @param {Function} props.example
2677
+ * @param {Array} props.variables
2678
+ * @param {Function} props.onFocus
2679
+ * @param {Function} props.onBlur
2680
+ * @param {string} [props.placeholder]
2681
+ * @param {string|import('preact').Component} props.tooltip
2682
2682
  */
2683
2683
  function FeelEntry(props) {
2684
2684
  const {
@@ -2766,27 +2766,27 @@ function FeelEntry(props) {
2766
2766
  });
2767
2767
  }
2768
2768
 
2769
- /**
2770
- * @param {Object} props
2771
- * @param {Object} props.element
2772
- * @param {String} props.id
2773
- * @param {String} props.description
2774
- * @param {Boolean} props.debounce
2775
- * @param {Boolean} props.disabled
2776
- * @param {String} props.max
2777
- * @param {String} props.min
2778
- * @param {String} props.step
2779
- * @param {FeelType} [props.feel]
2780
- * @param {String} props.label
2781
- * @param {Function} props.getValue
2782
- * @param {Function} props.setValue
2783
- * @param {Function} props.tooltipContainer
2784
- * @param {Function} props.validate
2785
- * @param {Function} props.show
2786
- * @param {Function} props.example
2787
- * @param {Array} props.variables
2788
- * @param {Function} props.onFocus
2789
- * @param {Function} props.onBlur
2769
+ /**
2770
+ * @param {Object} props
2771
+ * @param {Object} props.element
2772
+ * @param {String} props.id
2773
+ * @param {String} props.description
2774
+ * @param {Boolean} props.debounce
2775
+ * @param {Boolean} props.disabled
2776
+ * @param {String} props.max
2777
+ * @param {String} props.min
2778
+ * @param {String} props.step
2779
+ * @param {FeelType} [props.feel]
2780
+ * @param {String} props.label
2781
+ * @param {Function} props.getValue
2782
+ * @param {Function} props.setValue
2783
+ * @param {Function} props.tooltipContainer
2784
+ * @param {Function} props.validate
2785
+ * @param {Function} props.show
2786
+ * @param {Function} props.example
2787
+ * @param {Array} props.variables
2788
+ * @param {Function} props.onFocus
2789
+ * @param {Function} props.onBlur
2790
2790
  */
2791
2791
  function FeelNumberEntry(props) {
2792
2792
  return jsxRuntime.jsx(FeelEntry, {
@@ -2796,25 +2796,25 @@ function FeelNumberEntry(props) {
2796
2796
  });
2797
2797
  }
2798
2798
 
2799
- /**
2800
- * @param {Object} props
2801
- * @param {Object} props.element
2802
- * @param {String} props.id
2803
- * @param {String} props.description
2804
- * @param {Boolean} props.debounce
2805
- * @param {Boolean} props.disabled
2806
- * @param {FeelType} [props.feel]
2807
- * @param {String} props.label
2808
- * @param {Function} props.getValue
2809
- * @param {Function} props.setValue
2810
- * @param {Function} props.tooltipContainer
2811
- * @param {Function} props.validate
2812
- * @param {Function} props.show
2813
- * @param {Function} props.example
2814
- * @param {Array} props.variables
2815
- * @param {Function} props.onFocus
2816
- * @param {Function} props.onBlur
2817
- * @param {string} [props.placeholder]
2799
+ /**
2800
+ * @param {Object} props
2801
+ * @param {Object} props.element
2802
+ * @param {String} props.id
2803
+ * @param {String} props.description
2804
+ * @param {Boolean} props.debounce
2805
+ * @param {Boolean} props.disabled
2806
+ * @param {FeelType} [props.feel]
2807
+ * @param {String} props.label
2808
+ * @param {Function} props.getValue
2809
+ * @param {Function} props.setValue
2810
+ * @param {Function} props.tooltipContainer
2811
+ * @param {Function} props.validate
2812
+ * @param {Function} props.show
2813
+ * @param {Function} props.example
2814
+ * @param {Array} props.variables
2815
+ * @param {Function} props.onFocus
2816
+ * @param {Function} props.onBlur
2817
+ * @param {string} [props.placeholder]
2818
2818
  */
2819
2819
  function FeelTextAreaEntry(props) {
2820
2820
  return jsxRuntime.jsx(FeelEntry, {
@@ -2824,24 +2824,24 @@ function FeelTextAreaEntry(props) {
2824
2824
  });
2825
2825
  }
2826
2826
 
2827
- /**
2828
- * @param {Object} props
2829
- * @param {Object} props.element
2830
- * @param {String} props.id
2831
- * @param {String} props.description
2832
- * @param {Boolean} props.debounce
2833
- * @param {Boolean} props.disabled
2834
- * @param {FeelType} [props.feel]
2835
- * @param {String} props.label
2836
- * @param {Function} props.getValue
2837
- * @param {Function} props.setValue
2838
- * @param {Function} props.tooltipContainer
2839
- * @param {Function} props.validate
2840
- * @param {Function} props.show
2841
- * @param {Function} props.example
2842
- * @param {Array} props.variables
2843
- * @param {Function} props.onFocus
2844
- * @param {Function} props.onBlur
2827
+ /**
2828
+ * @param {Object} props
2829
+ * @param {Object} props.element
2830
+ * @param {String} props.id
2831
+ * @param {String} props.description
2832
+ * @param {Boolean} props.debounce
2833
+ * @param {Boolean} props.disabled
2834
+ * @param {FeelType} [props.feel]
2835
+ * @param {String} props.label
2836
+ * @param {Function} props.getValue
2837
+ * @param {Function} props.setValue
2838
+ * @param {Function} props.tooltipContainer
2839
+ * @param {Function} props.validate
2840
+ * @param {Function} props.show
2841
+ * @param {Function} props.example
2842
+ * @param {Array} props.variables
2843
+ * @param {Function} props.onFocus
2844
+ * @param {Function} props.onBlur
2845
2845
  */
2846
2846
  function FeelToggleSwitchEntry(props) {
2847
2847
  return jsxRuntime.jsx(FeelEntry, {
@@ -2851,24 +2851,24 @@ function FeelToggleSwitchEntry(props) {
2851
2851
  });
2852
2852
  }
2853
2853
 
2854
- /**
2855
- * @param {Object} props
2856
- * @param {Object} props.element
2857
- * @param {String} props.id
2858
- * @param {String} props.description
2859
- * @param {Boolean} props.debounce
2860
- * @param {Boolean} props.disabled
2861
- * @param {FeelType} [props.feel]
2862
- * @param {String} props.label
2863
- * @param {Function} props.getValue
2864
- * @param {Function} props.setValue
2865
- * @param {Function} props.tooltipContainer
2866
- * @param {Function} props.validate
2867
- * @param {Function} props.show
2868
- * @param {Function} props.example
2869
- * @param {Array} props.variables
2870
- * @param {Function} props.onFocus
2871
- * @param {Function} props.onBlur
2854
+ /**
2855
+ * @param {Object} props
2856
+ * @param {Object} props.element
2857
+ * @param {String} props.id
2858
+ * @param {String} props.description
2859
+ * @param {Boolean} props.debounce
2860
+ * @param {Boolean} props.disabled
2861
+ * @param {FeelType} [props.feel]
2862
+ * @param {String} props.label
2863
+ * @param {Function} props.getValue
2864
+ * @param {Function} props.setValue
2865
+ * @param {Function} props.tooltipContainer
2866
+ * @param {Function} props.validate
2867
+ * @param {Function} props.show
2868
+ * @param {Function} props.example
2869
+ * @param {Array} props.variables
2870
+ * @param {Function} props.onFocus
2871
+ * @param {Function} props.onBlur
2872
2872
  */
2873
2873
  function FeelCheckboxEntry(props) {
2874
2874
  return jsxRuntime.jsx(FeelEntry, {
@@ -2878,26 +2878,26 @@ function FeelCheckboxEntry(props) {
2878
2878
  });
2879
2879
  }
2880
2880
 
2881
- /**
2882
- * @param {Object} props
2883
- * @param {Object} props.element
2884
- * @param {String} props.id
2885
- * @param {String} props.description
2886
- * @param {String} props.hostLanguage
2887
- * @param {Boolean} props.singleLine
2888
- * @param {Boolean} props.debounce
2889
- * @param {Boolean} props.disabled
2890
- * @param {FeelType} [props.feel]
2891
- * @param {String} props.label
2892
- * @param {Function} props.getValue
2893
- * @param {Function} props.setValue
2894
- * @param {Function} props.tooltipContainer
2895
- * @param {Function} props.validate
2896
- * @param {Function} props.show
2897
- * @param {Function} props.example
2898
- * @param {Array} props.variables
2899
- * @param {Function} props.onFocus
2900
- * @param {Function} props.onBlur
2881
+ /**
2882
+ * @param {Object} props
2883
+ * @param {Object} props.element
2884
+ * @param {String} props.id
2885
+ * @param {String} props.description
2886
+ * @param {String} props.hostLanguage
2887
+ * @param {Boolean} props.singleLine
2888
+ * @param {Boolean} props.debounce
2889
+ * @param {Boolean} props.disabled
2890
+ * @param {FeelType} [props.feel]
2891
+ * @param {String} props.label
2892
+ * @param {Function} props.getValue
2893
+ * @param {Function} props.setValue
2894
+ * @param {Function} props.tooltipContainer
2895
+ * @param {Function} props.validate
2896
+ * @param {Function} props.show
2897
+ * @param {Function} props.example
2898
+ * @param {Array} props.variables
2899
+ * @param {Function} props.onFocus
2900
+ * @param {Function} props.onBlur
2901
2901
  */
2902
2902
  function FeelTemplatingEntry(props) {
2903
2903
  return jsxRuntime.jsx(FeelEntry, {
@@ -2924,19 +2924,19 @@ function prefixId$5(id) {
2924
2924
 
2925
2925
  const noop$1 = () => {};
2926
2926
 
2927
- /**
2928
- * @param {Object} props
2929
- * @param {Object} props.element
2930
- * @param {String} props.id
2931
- * @param {String} props.description
2932
- * @param {Boolean} props.debounce
2933
- * @param {Boolean} props.disabled
2934
- * @param {String} props.label
2935
- * @param {Function} props.getValue
2936
- * @param {Function} props.setValue
2937
- * @param {Function} props.tooltipContainer
2938
- * @param {Function} props.validate
2939
- * @param {Function} props.show
2927
+ /**
2928
+ * @param {Object} props
2929
+ * @param {Object} props.element
2930
+ * @param {String} props.id
2931
+ * @param {String} props.description
2932
+ * @param {Boolean} props.debounce
2933
+ * @param {Boolean} props.disabled
2934
+ * @param {String} props.label
2935
+ * @param {Function} props.getValue
2936
+ * @param {Function} props.setValue
2937
+ * @param {Function} props.tooltipContainer
2938
+ * @param {Function} props.validate
2939
+ * @param {Function} props.show
2940
2940
  */
2941
2941
  function TemplatingEntry(props) {
2942
2942
  const {
@@ -3113,8 +3113,8 @@ function List(props) {
3113
3113
  }
3114
3114
  }, [open, hasItems]);
3115
3115
 
3116
- /**
3117
- * @param {MouseEvent} event
3116
+ /**
3117
+ * @param {MouseEvent} event
3118
3118
  */
3119
3119
  function addItem(event) {
3120
3120
  event.stopPropagation();
@@ -3310,20 +3310,20 @@ function Select(props) {
3310
3310
  });
3311
3311
  }
3312
3312
 
3313
- /**
3314
- * @param {object} props
3315
- * @param {object} props.element
3316
- * @param {string} props.id
3317
- * @param {string} [props.description]
3318
- * @param {string} props.label
3319
- * @param {Function} props.getValue
3320
- * @param {Function} props.setValue
3321
- * @param {Function} props.onFocus
3322
- * @param {Function} props.onBlur
3323
- * @param {Function} props.getOptions
3324
- * @param {boolean} [props.disabled]
3325
- * @param {Function} [props.validate]
3326
- * @param {string|import('preact').Component} props.tooltip
3313
+ /**
3314
+ * @param {object} props
3315
+ * @param {object} props.element
3316
+ * @param {string} props.id
3317
+ * @param {string} [props.description]
3318
+ * @param {string} props.label
3319
+ * @param {Function} props.getValue
3320
+ * @param {Function} props.setValue
3321
+ * @param {Function} props.onFocus
3322
+ * @param {Function} props.onBlur
3323
+ * @param {Function} props.getOptions
3324
+ * @param {boolean} [props.disabled]
3325
+ * @param {Function} [props.validate]
3326
+ * @param {string|import('preact').Component} props.tooltip
3327
3327
  */
3328
3328
  function SelectEntry(props) {
3329
3329
  const {
@@ -3474,8 +3474,8 @@ function TextArea(props) {
3474
3474
  const ref = useShowEntryEvent(id);
3475
3475
  const visible = useElementVisible(ref.current);
3476
3476
 
3477
- /**
3478
- * @type { import('min-dash').DebouncedFunction }
3477
+ /**
3478
+ * @type { import('min-dash').DebouncedFunction }
3479
3479
  */
3480
3480
  const handleInputCallback = useDebounce(onInput, debounce);
3481
3481
  const handleInput = newValue => {
@@ -3540,21 +3540,21 @@ function TextArea(props) {
3540
3540
  });
3541
3541
  }
3542
3542
 
3543
- /**
3544
- * @param {object} props
3545
- * @param {object} props.element
3546
- * @param {string} props.id
3547
- * @param {string} props.description
3548
- * @param {boolean} props.debounce
3549
- * @param {string} props.label
3550
- * @param {Function} props.getValue
3551
- * @param {Function} props.setValue
3552
- * @param {Function} props.onFocus
3553
- * @param {Function} props.onBlur
3554
- * @param {number} props.rows
3555
- * @param {boolean} props.monospace
3556
- * @param {Function} [props.validate]
3557
- * @param {boolean} [props.disabled]
3543
+ /**
3544
+ * @param {object} props
3545
+ * @param {object} props.element
3546
+ * @param {string} props.id
3547
+ * @param {string} props.description
3548
+ * @param {boolean} props.debounce
3549
+ * @param {string} props.label
3550
+ * @param {Function} props.getValue
3551
+ * @param {Function} props.setValue
3552
+ * @param {Function} props.onFocus
3553
+ * @param {Function} props.onBlur
3554
+ * @param {number} props.rows
3555
+ * @param {boolean} props.monospace
3556
+ * @param {Function} [props.validate]
3557
+ * @param {boolean} [props.disabled]
3558
3558
  */
3559
3559
  function TextAreaEntry(props) {
3560
3560
  const {
@@ -3650,8 +3650,8 @@ function Textfield(props) {
3650
3650
  const [localValue, setLocalValue] = hooks.useState(value || '');
3651
3651
  const ref = useShowEntryEvent(id);
3652
3652
 
3653
- /**
3654
- * @type { import('min-dash').DebouncedFunction }
3653
+ /**
3654
+ * @type { import('min-dash').DebouncedFunction }
3655
3655
  */
3656
3656
  const handleInputCallback = useDebounce(onInput, debounce);
3657
3657
  const handleOnBlur = e => {
@@ -3709,20 +3709,20 @@ function Textfield(props) {
3709
3709
  });
3710
3710
  }
3711
3711
 
3712
- /**
3713
- * @param {Object} props
3714
- * @param {Object} props.element
3715
- * @param {String} props.id
3716
- * @param {String} props.description
3717
- * @param {Boolean} props.debounce
3718
- * @param {Boolean} props.disabled
3719
- * @param {String} props.label
3720
- * @param {Function} props.getValue
3721
- * @param {Function} props.setValue
3722
- * @param {Function} props.onFocus
3723
- * @param {Function} props.onBlur
3724
- * @param {string|import('preact').Component} props.tooltip
3725
- * @param {Function} props.validate
3712
+ /**
3713
+ * @param {Object} props
3714
+ * @param {Object} props.element
3715
+ * @param {String} props.id
3716
+ * @param {String} props.description
3717
+ * @param {Boolean} props.debounce
3718
+ * @param {Boolean} props.disabled
3719
+ * @param {String} props.label
3720
+ * @param {Function} props.getValue
3721
+ * @param {Function} props.setValue
3722
+ * @param {Function} props.onFocus
3723
+ * @param {Function} props.onBlur
3724
+ * @param {string|import('preact').Component} props.tooltip
3725
+ * @param {Function} props.validate
3726
3726
  */
3727
3727
  function TextfieldEntry(props) {
3728
3728
  const {
@@ -3798,29 +3798,29 @@ function prefixId$1(id) {
3798
3798
 
3799
3799
  const DEFAULT_DEBOUNCE_TIME = 600;
3800
3800
 
3801
- /**
3802
- * Creates a debounced version of a function, delaying its execution based on `debounceDelay`.
3803
- *
3804
- * - If `debounceDelay` is `false`, the function executes immediately without debouncing.
3805
- * - If a number is provided, the function execution is delayed by the given time in milliseconds.
3806
- *
3807
- * @param { Boolean | Number } [debounceDelay=300]
3808
- *
3809
- * @example
3810
- * const debounce = debounceInput();
3811
- * const debouncedFn = debounce(fn);
3812
- *
3813
- * debouncedFn(); // Executes after 300ms (default) if no further calls occur.
3801
+ /**
3802
+ * Creates a debounced version of a function, delaying its execution based on `debounceDelay`.
3803
+ *
3804
+ * - If `debounceDelay` is `false`, the function executes immediately without debouncing.
3805
+ * - If a number is provided, the function execution is delayed by the given time in milliseconds.
3806
+ *
3807
+ * @param { Boolean | Number } [debounceDelay=300]
3808
+ *
3809
+ * @example
3810
+ * const debounce = debounceInput();
3811
+ * const debouncedFn = debounce(fn);
3812
+ *
3813
+ * debouncedFn(); // Executes after 300ms (default) if no further calls occur.
3814
3814
  */
3815
3815
  function debounceInput(debounceDelay) {
3816
- /**
3817
- * Applies debounce to the provided function, with a previously setup delay.
3818
- *
3819
- * @template { (...args: any[]) => any } T
3820
- *
3821
- * @param {T} fn
3822
- *
3823
- * @return { (...p: Parameters<T>) => any }
3816
+ /**
3817
+ * Applies debounce to the provided function, with a previously setup delay.
3818
+ *
3819
+ * @template { (...args: any[]) => any } T
3820
+ *
3821
+ * @param {T} fn
3822
+ *
3823
+ * @return { (...p: Parameters<T>) => any }
3824
3824
  */
3825
3825
  return function debounce(fn) {
3826
3826
  if (debounceDelay === false) {
@@ -3836,22 +3836,22 @@ var index$1 = {
3836
3836
  debounceInput: ['factory', debounceInput]
3837
3837
  };
3838
3838
 
3839
- /**
3840
- * Add a dragger that calls back the passed function with
3841
- * { event, delta } on drag.
3842
- *
3843
- * @example
3844
- *
3845
- * function dragMove(event, delta) {
3846
- * // we are dragging (!!)
3847
- * }
3848
- *
3849
- * domElement.addEventListener('dragstart', dragger(dragMove));
3850
- *
3851
- * @param {Function} fn
3852
- * @param {Element} [dragPreview]
3853
- *
3854
- * @return {Function} drag start callback function
3839
+ /**
3840
+ * Add a dragger that calls back the passed function with
3841
+ * { event, delta } on drag.
3842
+ *
3843
+ * @example
3844
+ *
3845
+ * function dragMove(event, delta) {
3846
+ * // we are dragging (!!)
3847
+ * }
3848
+ *
3849
+ * domElement.addEventListener('dragstart', dragger(dragMove));
3850
+ *
3851
+ * @param {Function} fn
3852
+ * @param {Element} [dragPreview]
3853
+ *
3854
+ * @return {Function} drag start callback function
3855
3855
  */
3856
3856
  function createDragger(fn, dragPreview) {
3857
3857
  let self;
@@ -3906,22 +3906,22 @@ function emptyCanvas() {
3906
3906
 
3907
3907
  const noop = () => {};
3908
3908
 
3909
- /**
3910
- * A generic popup component.
3911
- *
3912
- * @param {Object} props
3913
- * @param {string} [props.className]
3914
- * @param {boolean} [props.delayInitialFocus]
3915
- * @param {{top: number, left: number}} [props.position]
3916
- * @param {number} [props.width]
3917
- * @param {number} [props.height]
3918
- * @param {Function} props.onClose
3919
- * @param {Function} [props.onPostActivate]
3920
- * @param {Function} [props.onPostDeactivate]
3921
- * @param {boolean} [props.returnFocus]
3922
- * @param {boolean} [props.closeOnEscape]
3923
- * @param {string} props.title
3924
- * @param {Ref} [ref]
3909
+ /**
3910
+ * A generic popup component.
3911
+ *
3912
+ * @param {Object} props
3913
+ * @param {string} [props.className]
3914
+ * @param {boolean} [props.delayInitialFocus]
3915
+ * @param {{top: number, left: number}} [props.position]
3916
+ * @param {number} [props.width]
3917
+ * @param {number} [props.height]
3918
+ * @param {Function} props.onClose
3919
+ * @param {Function} [props.onPostActivate]
3920
+ * @param {Function} [props.onPostDeactivate]
3921
+ * @param {boolean} [props.returnFocus]
3922
+ * @param {boolean} [props.closeOnEscape]
3923
+ * @param {string} props.title
3924
+ * @param {Ref} [ref]
3925
3925
  */
3926
3926
  function PopupComponent(props, globalRef) {
3927
3927
  const {
@@ -4127,9 +4127,9 @@ function cancel(event) {
4127
4127
  const FEEL_POPUP_WIDTH = 700;
4128
4128
  const FEEL_POPUP_HEIGHT = 250;
4129
4129
 
4130
- /**
4131
- * FEEL expression editor popup component
4132
- * @param {FeelPopupProps} props
4130
+ /**
4131
+ * FEEL expression editor popup component
4132
+ * @param {FeelPopupProps} props
4133
4133
  */
4134
4134
  function FeelPopup$1(props) {
4135
4135
  const {
@@ -4265,19 +4265,19 @@ function getPopupPosition() {
4265
4265
  };
4266
4266
  }
4267
4267
 
4268
- /**
4269
- * FEEL popup component, built as a singleton.
4270
- *
4271
- * In order to implement a custom replacement, handle the following events:
4272
- * - `propertiesPanel.openPopup`
4273
- * - `propertiesPanel.closePopup`
4274
- * - `propertiesPanel.detach`
4275
- *
4276
- * Within the custom renderer, make sure to emit the following events:
4277
- * - `feelPopup.open` - fired before the popup is mounted
4278
- * - `feelPopup.opened` - fired after the popup is mounted. Event context contains the DOM node of the popup as `domNode`
4279
- * - `feelPopup.close` - fired before the popup is unmounted. Event context contains the DOM node of the popup as `domNode`
4280
- * - `feelPopup.closed` - fired after the popup is unmounted
4268
+ /**
4269
+ * FEEL popup component, built as a singleton.
4270
+ *
4271
+ * In order to implement a custom replacement, handle the following events:
4272
+ * - `propertiesPanel.openPopup`
4273
+ * - `propertiesPanel.closePopup`
4274
+ * - `propertiesPanel.detach`
4275
+ *
4276
+ * Within the custom renderer, make sure to emit the following events:
4277
+ * - `feelPopup.open` - fired before the popup is mounted
4278
+ * - `feelPopup.opened` - fired after the popup is mounted. Event context contains the DOM node of the popup as `domNode`
4279
+ * - `feelPopup.close` - fired before the popup is unmounted. Event context contains the DOM node of the popup as `domNode`
4280
+ * - `feelPopup.closed` - fired after the popup is unmounted
4281
4281
  */
4282
4282
  class FeelPopup {
4283
4283
  constructor(eventBus, config = {}) {
@@ -4295,20 +4295,20 @@ class FeelPopup {
4295
4295
  });
4296
4296
  }
4297
4297
 
4298
- /**
4299
- * Check if the FEEL popup is open.
4300
- * @return {Boolean}
4298
+ /**
4299
+ * Check if the FEEL popup is open.
4300
+ * @return {Boolean}
4301
4301
  */
4302
4302
  isOpen() {
4303
4303
  return this._isOpen;
4304
4304
  }
4305
4305
 
4306
- /**
4307
- * Open the FEEL popup.
4308
- *
4309
- * @param {String} entryId
4310
- * @param {Object} popupConfig
4311
- * @param {HTMLElement} sourceElement
4306
+ /**
4307
+ * Open the FEEL popup.
4308
+ *
4309
+ * @param {String} entryId
4310
+ * @param {Object} popupConfig
4311
+ * @param {HTMLElement} sourceElement
4312
4312
  */
4313
4313
  open(entryId, popupConfig, sourceElement) {
4314
4314
  // close before opening a new one
@@ -4320,8 +4320,8 @@ class FeelPopup {
4320
4320
  });
4321
4321
  }
4322
4322
 
4323
- /**
4324
- * Close the FEEL popup.
4323
+ /**
4324
+ * Close the FEEL popup.
4325
4325
  */
4326
4326
  close() {
4327
4327
  this._closePopup();