bpmn-js 18.18.0 → 18.19.0

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.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * bpmn-js - bpmn-modeler v18.18.0
2
+ * bpmn-js - bpmn-modeler v18.19.0
3
3
  *
4
4
  * Copyright (c) 2014-present, camunda Services GmbH
5
5
  *
@@ -8,7 +8,7 @@
8
8
  *
9
9
  * Source Code: https://github.com/bpmn-io/bpmn-js
10
10
  *
11
- * Date: 2026-06-08
11
+ * Date: 2026-06-24
12
12
  */
13
13
  (function (global, factory) {
14
14
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
@@ -29050,22 +29050,43 @@
29050
29050
  * spliced in. Recurses into step entries so the whole tree uses the array
29051
29051
  * shape downstream.
29052
29052
  *
29053
+ * Leaf entries inherit the `search` terms of their ancestors, so a leaf can be
29054
+ * found by keywords declared on any of its parents.
29055
+ *
29053
29056
  * @param {import('./PopupMenuProvider').PopupMenuEntries} entriesMap
29057
+ * @param {string[]} [search]
29054
29058
  *
29055
29059
  * @return {import('./PopupMenuProvider').PopupMenuEntry[]}
29056
29060
  */
29057
- function flattenEntries(entriesMap) {
29061
+ function flattenEntries(entriesMap, search = []) {
29058
29062
  return Object.entries(entriesMap).map(([ id, value ]) => {
29059
29063
  const entry = { id, ...value };
29060
29064
 
29061
29065
  if (entry.entries) {
29062
- entry.entries = flattenEntries(entry.entries);
29066
+ entry.entries = flattenEntries(
29067
+ entry.entries,
29068
+ [ ...search, ...asArray(entry.search) ]
29069
+ );
29070
+ } else if (search.length) {
29071
+ entry.search = [ ...search, ...asArray(entry.search) ];
29063
29072
  }
29064
29073
 
29065
29074
  return entry;
29066
29075
  });
29067
29076
  }
29068
29077
 
29078
+ /**
29079
+ * @param {string | string[]} [value]
29080
+ * @return {string[]}
29081
+ */
29082
+ function asArray(value) {
29083
+ if (!value) {
29084
+ return [];
29085
+ }
29086
+
29087
+ return isArray$2(value) ? value : [ value ];
29088
+ }
29089
+
29069
29090
  /**
29070
29091
  * @typedef { {
29071
29092
  * index: number;