@eccenca/gui-elements 23.0.0-rc.6 → 23.0.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.
Files changed (164) hide show
  1. package/CHANGELOG.md +25 -19
  2. package/dist/cjs/cmem/markdown/Markdown.js +14 -2
  3. package/dist/cjs/cmem/markdown/Markdown.js.map +1 -1
  4. package/dist/cjs/cmem/react-flow/ReactFlow/ReactFlow.js +0 -4
  5. package/dist/cjs/cmem/react-flow/ReactFlow/ReactFlow.js.map +1 -1
  6. package/dist/cjs/components/Accordion/Accordion.js +7 -2
  7. package/dist/cjs/components/Accordion/Accordion.js.map +1 -1
  8. package/dist/cjs/components/Accordion/AccordionItem.js.map +1 -1
  9. package/dist/cjs/components/AutoSuggestion/AutoSuggestion.js +59 -33
  10. package/dist/cjs/components/AutoSuggestion/AutoSuggestion.js.map +1 -1
  11. package/dist/cjs/components/AutoSuggestion/AutoSuggestionList.js +10 -1
  12. package/dist/cjs/components/AutoSuggestion/AutoSuggestionList.js.map +1 -1
  13. package/dist/cjs/components/AutoSuggestion/SingleLineCodeEditor.js +10 -4
  14. package/dist/cjs/components/AutoSuggestion/SingleLineCodeEditor.js.map +1 -1
  15. package/dist/cjs/components/AutocompleteField/AutoCompleteField.js +13 -8
  16. package/dist/cjs/components/AutocompleteField/AutoCompleteField.js.map +1 -1
  17. package/dist/cjs/components/Button/Button.js.map +1 -1
  18. package/dist/cjs/components/Checkbox/Checkbox.js +1 -0
  19. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  20. package/dist/cjs/components/Form/FieldItem.js.map +1 -1
  21. package/dist/cjs/components/Menu/Menu.js +2 -2
  22. package/dist/cjs/components/Menu/Menu.js.map +1 -1
  23. package/dist/cjs/components/Menu/MenuDivider.js +2 -2
  24. package/dist/cjs/components/Menu/MenuDivider.js.map +1 -1
  25. package/dist/cjs/components/Menu/MenuItem.js +5 -3
  26. package/dist/cjs/components/Menu/MenuItem.js.map +1 -1
  27. package/dist/cjs/components/MultiSelect/MultiSelect.js +17 -4
  28. package/dist/cjs/components/MultiSelect/MultiSelect.js.map +1 -1
  29. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  30. package/dist/cjs/components/RadioButton/RadioButton.js +1 -0
  31. package/dist/cjs/components/RadioButton/RadioButton.js.map +1 -1
  32. package/dist/cjs/components/Separation/Spacing.js +4 -1
  33. package/dist/cjs/components/Separation/Spacing.js.map +1 -1
  34. package/dist/cjs/components/Spinner/Spinner.js +3 -3
  35. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  36. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  37. package/dist/cjs/extensions/react-flow/edges/EdgeDefault.js.map +1 -1
  38. package/dist/esm/cmem/markdown/Markdown.js +13 -2
  39. package/dist/esm/cmem/markdown/Markdown.js.map +1 -1
  40. package/dist/esm/cmem/react-flow/ReactFlow/ReactFlow.js +0 -4
  41. package/dist/esm/cmem/react-flow/ReactFlow/ReactFlow.js.map +1 -1
  42. package/dist/esm/components/Accordion/Accordion.js +8 -3
  43. package/dist/esm/components/Accordion/Accordion.js.map +1 -1
  44. package/dist/esm/components/Accordion/AccordionItem.js +1 -1
  45. package/dist/esm/components/Accordion/AccordionItem.js.map +1 -1
  46. package/dist/esm/components/AutoSuggestion/AutoSuggestion.js +71 -45
  47. package/dist/esm/components/AutoSuggestion/AutoSuggestion.js.map +1 -1
  48. package/dist/esm/components/AutoSuggestion/AutoSuggestionList.js +11 -2
  49. package/dist/esm/components/AutoSuggestion/AutoSuggestionList.js.map +1 -1
  50. package/dist/esm/components/AutoSuggestion/SingleLineCodeEditor.js +11 -5
  51. package/dist/esm/components/AutoSuggestion/SingleLineCodeEditor.js.map +1 -1
  52. package/dist/esm/components/AutocompleteField/AutoCompleteField.js +19 -14
  53. package/dist/esm/components/AutocompleteField/AutoCompleteField.js.map +1 -1
  54. package/dist/esm/components/Button/Button.js.map +1 -1
  55. package/dist/esm/components/Checkbox/Checkbox.js +1 -0
  56. package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
  57. package/dist/esm/components/Form/FieldItem.js.map +1 -1
  58. package/dist/esm/components/Menu/Menu.js +3 -3
  59. package/dist/esm/components/Menu/Menu.js.map +1 -1
  60. package/dist/esm/components/Menu/MenuDivider.js +3 -3
  61. package/dist/esm/components/Menu/MenuDivider.js.map +1 -1
  62. package/dist/esm/components/Menu/MenuItem.js +5 -3
  63. package/dist/esm/components/Menu/MenuItem.js.map +1 -1
  64. package/dist/esm/components/MultiSelect/MultiSelect.js +22 -9
  65. package/dist/esm/components/MultiSelect/MultiSelect.js.map +1 -1
  66. package/dist/esm/components/Pagination/Pagination.js +1 -1
  67. package/dist/esm/components/Pagination/Pagination.js.map +1 -1
  68. package/dist/esm/components/RadioButton/RadioButton.js +2 -1
  69. package/dist/esm/components/RadioButton/RadioButton.js.map +1 -1
  70. package/dist/esm/components/Separation/Spacing.js +4 -1
  71. package/dist/esm/components/Separation/Spacing.js.map +1 -1
  72. package/dist/esm/components/Spinner/Spinner.js +3 -4
  73. package/dist/esm/components/Spinner/Spinner.js.map +1 -1
  74. package/dist/esm/components/Switch/Switch.js +1 -1
  75. package/dist/esm/components/Switch/Switch.js.map +1 -1
  76. package/dist/esm/extensions/react-flow/edges/EdgeDefault.js.map +1 -1
  77. package/dist/types/cmem/markdown/Markdown.d.ts +3 -2
  78. package/dist/types/cmem/react-flow/ReactFlow/ReactFlow.d.ts +1 -1
  79. package/dist/types/components/Accordion/Accordion.d.ts +12 -1
  80. package/dist/types/components/Accordion/AccordionItem.d.ts +21 -6
  81. package/dist/types/components/AutoSuggestion/AutoSuggestionList.d.ts +4 -2
  82. package/dist/types/components/AutocompleteField/AutoCompleteField.d.ts +5 -0
  83. package/dist/types/components/Button/Button.d.ts +1 -1
  84. package/dist/types/components/Checkbox/Checkbox.d.ts +4 -1
  85. package/dist/types/components/Form/FieldItem.d.ts +32 -2
  86. package/dist/types/components/Menu/Menu.d.ts +4 -1
  87. package/dist/types/components/Menu/MenuDivider.d.ts +4 -1
  88. package/dist/types/components/Menu/MenuItem.d.ts +5 -2
  89. package/dist/types/components/Pagination/Pagination.d.ts +9 -5
  90. package/dist/types/components/RadioButton/RadioButton.d.ts +4 -1
  91. package/dist/types/components/Separation/Spacing.d.ts +17 -3
  92. package/dist/types/components/Spinner/Spinner.d.ts +38 -5
  93. package/dist/types/components/Switch/Switch.d.ts +6 -3
  94. package/dist/types/extensions/react-flow/edges/EdgeDefault.d.ts +15 -0
  95. package/package.json +4 -6
  96. package/src/cmem/markdown/Markdown.tsx +5 -4
  97. package/src/cmem/react-flow/ReactFlow/ReactFlow.stories.tsx +15 -86
  98. package/src/cmem/react-flow/ReactFlow/ReactFlow.tsx +1 -5
  99. package/src/components/Accordion/Accordion.tsx +33 -3
  100. package/src/components/Accordion/AccordionItem.tsx +23 -33
  101. package/src/components/Accordion/Stories/Accordion.stories.tsx +33 -0
  102. package/src/components/Accordion/Stories/AccordionItem.stories.tsx +27 -0
  103. package/src/components/Accordion/accordion.scss +20 -1
  104. package/src/components/AutoSuggestion/AutoSuggestion.tsx +73 -39
  105. package/src/components/AutoSuggestion/AutoSuggestionList.tsx +15 -2
  106. package/src/components/AutoSuggestion/SingleLineCodeEditor.tsx +17 -9
  107. package/src/components/AutoSuggestion/tests/AutoSuggestionList.test.tsx +9 -7
  108. package/src/components/AutocompleteField/AutoCompleteField.tsx +19 -6
  109. package/src/components/AutocompleteField/autoCompleteFieldUtils.tsx +1 -1
  110. package/src/components/AutocompleteField/stories/AutoCompleteField.stories.tsx +1 -1
  111. package/src/components/Button/Button.stories.tsx +1 -107
  112. package/src/components/Button/Button.tsx +2 -2
  113. package/src/components/Card/stories/Card.stories.tsx +2 -21
  114. package/src/components/Checkbox/Checkbox.tsx +9 -2
  115. package/src/components/Checkbox/Stories/Checkbox.stories.tsx +30 -0
  116. package/src/components/Checkbox/checkbox.scss +4 -0
  117. package/src/components/ContextOverlay/ContextMenu.stories.tsx +2 -2
  118. package/src/components/Dialog/stories/Modal.stories.tsx +1 -61
  119. package/src/components/Dialog/stories/SimpleDialog.stories.tsx +1 -2
  120. package/src/components/Form/FieldItem.tsx +32 -2
  121. package/src/components/Form/Stories/FieldItem.stories.tsx +27 -0
  122. package/src/components/Form/Stories/FieldItemRow.stories.tsx +31 -0
  123. package/src/components/Label/Label.stories.tsx +1 -1
  124. package/src/components/Menu/Menu.tsx +21 -3
  125. package/src/components/Menu/MenuDivider.tsx +20 -3
  126. package/src/components/Menu/MenuItem.tsx +13 -10
  127. package/src/components/Menu/Stories/Menu.stories.tsx +31 -0
  128. package/src/components/Menu/Stories/MenuItem.stories.tsx +25 -0
  129. package/src/components/MultiSelect/MultiSelect.stories.tsx +2 -21
  130. package/src/components/MultiSelect/MultiSelect.tsx +22 -5
  131. package/src/components/Notification/Notification.stories.tsx +1 -29
  132. package/src/components/Pagination/Pagination.tsx +13 -6
  133. package/src/components/Pagination/Stories/Pagination.stories.tsx +32 -0
  134. package/src/components/Pagination/pagination.scss +2 -2
  135. package/src/components/ProgressBar/Stories/ProgressBar.stories.tsx +25 -0
  136. package/src/components/RadioButton/RadioButton.tsx +9 -2
  137. package/src/components/RadioButton/Stories/RadioButton.stories.tsx +30 -0
  138. package/src/components/Select/Select.stories.tsx +1 -1
  139. package/src/components/Separation/Spacing.tsx +17 -4
  140. package/src/components/Separation/Stories/Spacing.stories.tsx +25 -0
  141. package/src/components/Spinner/Spinner.tsx +39 -7
  142. package/src/components/Spinner/Stories/spinner.stories.tsx +26 -0
  143. package/src/components/Switch/Stories/Switch.stories.tsx +27 -0
  144. package/src/components/Switch/Switch.tsx +9 -3
  145. package/src/components/Tabs/stories/Tab.stories.tsx +1 -32
  146. package/src/components/Tabs/stories/Tabs.stories.tsx +1 -39
  147. package/src/components/Tag/Tag.stories.tsx +1 -9
  148. package/src/components/TextField/stories/TextArea.stories.tsx +10 -25
  149. package/src/components/TextField/stories/TextField.stories.tsx +2 -73
  150. package/src/extensions/react-flow/edges/EdgeDefault.tsx +19 -0
  151. package/src/extensions/react-flow/edges/stories/EdgeDefault.stories.tsx +121 -0
  152. package/src/extensions/react-flow/nodes/stories/NodeContent.stories.tsx +1 -1
  153. package/dist/cjs/cmem/react-flow/configuration/customLabel.js +0 -13
  154. package/dist/cjs/cmem/react-flow/configuration/customLabel.js.map +0 -1
  155. package/dist/cjs/cmem/react-flow/configuration/inverseEdge.js +0 -13
  156. package/dist/cjs/cmem/react-flow/configuration/inverseEdge.js.map +0 -1
  157. package/dist/esm/cmem/react-flow/configuration/customLabel.js +0 -10
  158. package/dist/esm/cmem/react-flow/configuration/customLabel.js.map +0 -1
  159. package/dist/esm/cmem/react-flow/configuration/inverseEdge.js +0 -10
  160. package/dist/esm/cmem/react-flow/configuration/inverseEdge.js.map +0 -1
  161. package/dist/types/cmem/react-flow/configuration/customLabel.d.ts +0 -8
  162. package/dist/types/cmem/react-flow/configuration/inverseEdge.d.ts +0 -8
  163. package/src/cmem/react-flow/configuration/customLabel.ts +0 -11
  164. package/src/cmem/react-flow/configuration/inverseEdge.ts +0 -11
package/CHANGELOG.md CHANGED
@@ -5,29 +5,33 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this p
5
5
 
6
6
  ## [Unreleased]
7
7
 
8
+ ## [23.0.0] - 2022-11-18
9
+
8
10
  ### Added
9
11
 
10
12
  * `<CodeEditor />` element based on `CodeMirror` library, supporting Markdown, Python, Sparql, SQL, Turtle and XML syntax
11
- * `CssCustomProperties` and `getColorConfiguration` utilities can be used to exchange color configurations between SCSS and JS
12
- * `<SimpleDialog />`: new properties `showFullScreenToggler` and `startInFullScreenMode`
13
- * `<ReactFlowMarkers />` custom markers for ReactFlow edges, currently one new marker `arrowClosed-inverse` available
14
- * `EdgeDefault.data.markerStart` param allows to add a marker to the edge starting point
15
- * `EdgeDefault.data.inversePath` param allows to inverse the edge direction
16
- * `EdgeDefault.data.renderLabel` function allows to render fully custom edge label including any ReactNode
17
- * new `<HoverToggler />` element that allows to switch elements when hovered over.
18
- * `StickyNoteNode`, usable by `stickynote` type in react flow editors for workflows and linking rules
19
- * add option for `footerContent` to react flow node data
20
- * add `decideContrastColorValue` method to `Utilities`, can be used to get a second color related to the lightness of the testes input color
21
- * `<AutoSuggestion>`: new properties `autoCompletionRequestDelay` and `validationRequestDelay`, to configure the delay when a request is sent after nothing is typed in anymore.
22
- * `<FieldItemRow`: new property `justifyItemWidths` to display all children using equal width inside the row
23
- * `<BreadcrumbList />`: new properties `ignoreOverflow` and `latenOverflow`, that can be used to implement a second overflow strategy beside BlueprintJS overflow list, for example in case the overflow list leads to re-rendering loops
24
- * new `<InteractionGate />` element that can wrap content that need to be blocked from user interactions, it also has options to display a spinner as overlay
25
- * `<Spinner />`: new `showLocalBackdrop` property to include backdrop behind spinner making the background less visible
26
- * `ContextMenu.disabled` parameter that if set to true disables the button to open the menu.
27
- * `<Tooltip />`: new properties `markdownEnabler` and `markdownProps` to enable better formatted tooltips with options for line breaks, etc.
13
+ * `<HoverToggler />` element that allows to switch elements when hovered over.
14
+ * `<InteractionGate />` element that can wrap content that need to be blocked from user interactions, it also has options to display a spinner as overlay
28
15
  * `<Tree />` component
29
16
  * `<TabPanel />` component that can be used if `<Tabs />` is used in uncontrolled mode.
30
- * `<AutoCompleteField />`: new `onlyDropdownWithQuery` property to prevent dropdown as long as the input field is empty
17
+ * `<ReactFlowMarkers />` custom markers for ReactFlow edges, currently one new marker `arrowClosed-inverse` available
18
+ * `<StickyNoteNode />`, usable by `stickynote` type in react flow editors for workflows and linking rules
19
+ * `CssCustomProperties` and `getColorConfiguration` utilities can be used to exchange color configurations between SCSS and JS
20
+ * `decideContrastColorValue` method to get a second color related to the lightness of the testes input color
21
+ * `<SimpleDialog />`: properties `showFullScreenToggler` and `startInFullScreenMode`
22
+ * `<EdgeDefault />`: new properties for the edge data
23
+ * `markerStart` allows to add a marker to the edge starting point
24
+ * `inversePath` allows to inverse the edge direction
25
+ * `renderLabel` function to render fully custom edge label including any ReactNode
26
+ * `<NodeContent />`: property `footerContent` to add footer content to a react flow node
27
+ * `<AutoSuggestion>`: properties `autoCompletionRequestDelay` and `validationRequestDelay`, to configure the delay when a request is sent after nothing is typed in anymore.
28
+ * `<FieldItemRow`: property `justifyItemWidths` to display all children using equal width inside the row
29
+ * `<BreadcrumbList />`: properties `ignoreOverflow` and `latenOverflow`, that can be used to implement a second overflow strategy beside BlueprintJS overflow list, for example in case the overflow list leads to re-rendering loops
30
+ * `<Spinner />`: `showLocalBackdrop` property to include backdrop behind spinner making the background less visible
31
+ * `<ContextMenu />`: `disabled` property that disables the button to open the menu.
32
+ * `<Tooltip />`: properties `markdownEnabler` and `markdownProps` to enable better formatted tooltips with options for line breaks, etc.
33
+ * `<AutoCompleteField />`: `onlyDropdownWithQuery` property to prevent dropdown as long as the input field is empty
34
+ * large addition to the Storybook, we almost doubled available components and stories
31
35
 
32
36
  ### Fixed
33
37
 
@@ -37,9 +41,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this p
37
41
  * fixed ReactFlow stories re-rerender on configuration change
38
42
  * fix used font family and layout of `<AutoSuggestion />` element, and justify it with the other single line text inputs
39
43
  * fix condition to include the class name of a `<TagList />` and set maximum width for the items
44
+ * fixed `<MultiSelect />` to correctly update created items that are selected while still maintaining a cache of all newly created items
40
45
  * do not change cursor to pointer by default on tooltip targets
41
46
 
42
- ### Changed
47
+ ### Change
43
48
 
44
49
  * move style imports of CodeMirror layout to `extensions`
45
50
  * color configurations for react flow editor are not exported as modules anymore, they need to be fetched by `getColorConfiguration` method in JS directly
@@ -48,6 +53,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this p
48
53
  * this comes also with a necessary switch from `node-sass` to `sass` package, a javascript port from the original dart sass library, see migration notes to update your build process
49
54
  * `<TextField />` and `<AutoCompleteField />` now include a `title` attribute on the natively used `input` element to show the value if it is `disabled` or `readOnly`
50
55
  * flashing color regarding the intent state of a `<TextField />`
56
+ * `<AutoCompleteField />`: Add 'hasBackDrop' parameter to use a backdrop for its popover in order for outside clicks to always close the popover. Default: false
51
57
 
52
58
  ### Migration notes
53
59
 
@@ -1,4 +1,15 @@
1
1
  "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
2
13
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
14
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
15
  };
@@ -35,7 +46,8 @@ const configDefault = {
35
46
  skipHtml: false,
36
47
  };
37
48
  /** Renders a markdown string. */
38
- const Markdown = ({ children, allowHtml = false, removeMarkup = false, inheritBlock = false, allowedElements, reHypePlugins }) => {
49
+ const Markdown = (_a) => {
50
+ var { children, allowHtml = false, removeMarkup = false, inheritBlock = false, allowedElements, reHypePlugins } = _a, otherProps = __rest(_a, ["children", "allowHtml", "removeMarkup", "inheritBlock", "allowedElements", "reHypePlugins"]);
39
51
  const configHtml = allowHtml ? {
40
52
  rehypePlugins: [...configDefault.rehypePlugins].concat([rehype_raw_1.default]),
41
53
  // switch from allowed list to disallowed list
@@ -50,7 +62,7 @@ const Markdown = ({ children, allowHtml = false, removeMarkup = false, inheritBl
50
62
  const reactMarkdownProperties = Object.assign(Object.assign(Object.assign({ children: children.trim() }, configDefault), configHtml), configTextOnly);
51
63
  allowedElements && (reactMarkdownProperties.allowedElements = allowedElements);
52
64
  reHypePlugins && reHypePlugins.forEach(plugin => reactMarkdownProperties.rehypePlugins = [...reactMarkdownProperties.rehypePlugins, plugin]);
53
- return inheritBlock ? (react_1.default.createElement(react_markdown_1.default, Object.assign({}, reactMarkdownProperties))) : (react_1.default.createElement(index_1.HtmlContentBlock, null,
65
+ return inheritBlock ? (react_1.default.createElement(react_markdown_1.default, Object.assign({}, reactMarkdownProperties))) : (react_1.default.createElement(index_1.HtmlContentBlock, { "data-test-id": otherProps["data-test-id"] },
54
66
  react_1.default.createElement(react_markdown_1.default, Object.assign({}, reactMarkdownProperties))));
55
67
  };
56
68
  exports.Markdown = Markdown;
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.js","sourceRoot":"","sources":["../../../../src/cmem/markdown/Markdown.tsx"],"names":[],"mappings":";;;;;;AAAA,oEAA2C;AAC3C,4DAAmC;AACnC,4DAAmC;AACnC,YAAY;AACZ,8EAAqD;AACrD,mEAA4D;AAC5D,kDAA0B;AAC1B,uCAA+C;AA8B/C,MAAM,aAAa,GAAG;IAClB;;;MAGE;IACF,mFAAmF;IACnF,aAAa,EAAE,CAAC,oBAAS,EAAE,yBAAc,EAAE,6CAAoB,CAAkB;IACjF,mFAAmF;IACnF,aAAa,EAAE,EAAmB;IAClC,eAAe,EAAE;QACb,mBAAmB;QACnB,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI;QACxH,6CAA6C;QAC7C,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI;QAC3D,cAAc;QACd,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;KAC3B;IACD,kCAAkC;IAClC,gBAAgB,EAAE,IAAI;IACtB,oBAAoB;IACpB,QAAQ,EAAE,KAAK;CAClB,CAAA;AAED,iCAAiC;AAC1B,MAAM,QAAQ,GAAG,CAAC,EACI,QAAQ,EACR,SAAS,GAAG,KAAK,EACjB,YAAY,GAAG,KAAK,EACpB,YAAY,GAAG,KAAK,EACpB,eAAe,EACf,aAAa,EACK,EAAE,EAAE;IAE/C,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC;QAC3B,aAAa,EAAE,CAAC,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,oBAAS,CAAC,CAAC;QACnE,8CAA8C;QAC9C,eAAe,EAAE,SAAS;QAC1B,kBAAkB,EAAE,CAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAE;KAC1F,CAAC,CAAC,CAAC,EAAG,CAAC;IAER,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC;QAClC,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,EAAE;QACnB,kBAAkB,EAAE,SAAS;KAChC,CAAC,CAAC,CAAC,EAAG,CAAC;IAER,MAAM,uBAAuB,+CACzB,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,IACtB,aAAa,GACb,UAAU,GACV,cAAc,CACpB,CAAC;IACF,eAAe,IAAI,CAAC,uBAAuB,CAAC,eAAe,GAAG,eAAe,CAAC,CAAA;IAC9E,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,uBAAuB,CAAC,aAAa,GAAG,CAAC,GAAG,uBAAuB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAA;IAE5I,OAAO,YAAY,CAAC,CAAC,CAAC,CAClB,8BAAC,wBAAa,oBAAK,uBAAuB,EAAI,CACjD,CAAC,CAAC,CAAC,CACA,8BAAC,wBAAgB;QACb,8BAAC,wBAAa,oBAAK,uBAAuB,EAAI,CAC/B,CACtB,CAAC;AACN,CAAC,CAAA;AAtCY,QAAA,QAAQ,YAsCpB"}
1
+ {"version":3,"file":"Markdown.js","sourceRoot":"","sources":["../../../../src/cmem/markdown/Markdown.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oEAA2C;AAC3C,4DAAmC;AACnC,4DAAmC;AACnC,YAAY;AACZ,8EAAqD;AACrD,mEAA4D;AAC5D,kDAA0B;AAC1B,uCAAgE;AA8BhE,MAAM,aAAa,GAAG;IAClB;;;MAGE;IACF,mFAAmF;IACnF,aAAa,EAAE,CAAC,oBAAS,EAAE,yBAAc,EAAE,6CAAoB,CAAkB;IACjF,mFAAmF;IACnF,aAAa,EAAE,EAAmB;IAClC,eAAe,EAAE;QACb,mBAAmB;QACnB,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI;QACxH,6CAA6C;QAC7C,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI;QAC3D,cAAc;QACd,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;KAC3B;IACD,kCAAkC;IAClC,gBAAgB,EAAE,IAAI;IACtB,oBAAoB;IACpB,QAAQ,EAAE,KAAK;CAClB,CAAA;AAED,iCAAiC;AAC1B,MAAM,QAAQ,GAAG,CAAC,EAQsB,EAAE,EAAE;QAR1B,EACI,QAAQ,EACR,SAAS,GAAG,KAAK,EACjB,YAAY,GAAG,KAAK,EACpB,YAAY,GAAG,KAAK,EACpB,eAAe,EACf,aAAa,OAEK,EADf,UAAU,cAPjB,6FAQC,CADgB;IAGtC,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC;QAC3B,aAAa,EAAE,CAAC,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,oBAAS,CAAC,CAAC;QACnE,8CAA8C;QAC9C,eAAe,EAAE,SAAS;QAC1B,kBAAkB,EAAE,CAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAE;KAC1F,CAAC,CAAC,CAAC,EAAG,CAAC;IAER,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC;QAClC,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,EAAE;QACnB,kBAAkB,EAAE,SAAS;KAChC,CAAC,CAAC,CAAC,EAAG,CAAC;IAER,MAAM,uBAAuB,+CACzB,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,IACtB,aAAa,GACb,UAAU,GACV,cAAc,CACpB,CAAC;IACF,eAAe,IAAI,CAAC,uBAAuB,CAAC,eAAe,GAAG,eAAe,CAAC,CAAA;IAC9E,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,uBAAuB,CAAC,aAAa,GAAG,CAAC,GAAG,uBAAuB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAA;IAE5I,OAAO,YAAY,CAAC,CAAC,CAAC,CAClB,8BAAC,wBAAa,oBAAK,uBAAuB,EAAI,CACjD,CAAC,CAAC,CAAC,CACA,8BAAC,wBAAgB,oBAAe,UAAU,CAAC,cAAc,CAAC;QACtD,8BAAC,wBAAa,oBAAK,uBAAuB,EAAI,CAC/B,CACtB,CAAC;AACN,CAAC,CAAA;AAvCY,QAAA,QAAQ,YAuCpB"}
@@ -41,8 +41,6 @@ const unspecifiedConfig = __importStar(require("./../configuration/unspecified")
41
41
  const graphConfig = __importStar(require("./../configuration/graph"));
42
42
  const workflowConfig = __importStar(require("./../configuration/workflow"));
43
43
  const linkingConfig = __importStar(require("./../configuration/linking"));
44
- const inverseEdgeConfig = __importStar(require("./../configuration/inverseEdge"));
45
- const customLabelConfig = __importStar(require("./../configuration/customLabel"));
46
44
  /**
47
45
  * `ReactFlow` container extension that includes pre-configured nodes and edges for
48
46
  * Corporate Memory tools.
@@ -54,8 +52,6 @@ exports.ReactFlow = react_1.default.forwardRef((_a, ref) => {
54
52
  graph: graphConfig,
55
53
  workflow: workflowConfig,
56
54
  linking: linkingConfig,
57
- inverseEdge: inverseEdgeConfig,
58
- customLabel: customLabelConfig,
59
55
  };
60
56
  return (react_1.default.createElement(react_flow_renderer_1.default, Object.assign({ ref: ref, nodeTypes: configReactFlow[configuration].nodeTypes, edgeTypes: configReactFlow[configuration].edgeTypes }, originalProps),
61
57
  children,
@@ -1 +1 @@
1
- {"version":3,"file":"ReactFlow.js","sourceRoot":"","sources":["../../../../../src/cmem/react-flow/ReactFlow/ReactFlow.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,8EAA2G;AAC3G,8FAA2F;AAC3F,kFAAoE;AACpE,sEAAwD;AACxD,4EAA8D;AAC9D,0EAA4D;AAC5D,kFAAoE;AACpE,kFAAoE;AASpE;;;GAGG;AACU,QAAA,SAAS,GAAG,eAAK,CAAC,UAAU,CAAiC,CACtE,EAIC,EACD,GAAG,EAAE,EAAE;QALP,EACI,aAAa,GAAG,aAAa,EAC7B,QAAQ,OAEX,EADM,aAAa,cAHpB,6BAIC,CADmB;IAGpB,MAAM,eAAe,GAAG;QACpB,WAAW,EAAE,iBAAiB;QAC9B,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,cAAc;QACxB,OAAO,EAAE,aAAa;QACtB,WAAW,EAAE,iBAAiB;QAC9B,WAAW,EAAE,iBAAiB;KACjC,CAAA;IAED,OAAO,CACH,8BAAC,6BAAiB,kBACd,GAAG,EAAE,GAAG,EACR,SAAS,EAAG,eAAe,CAAC,aAAa,CAAC,CAAC,SAAS,EACpD,SAAS,EAAG,eAAe,CAAC,aAAa,CAAC,CAAC,SAAS,IAChD,aAAa;QAEf,QAAQ;QACV,8BAAC,mCAAgB,OAAG,CACJ,CACvB,CAAC;AACN,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"ReactFlow.js","sourceRoot":"","sources":["../../../../../src/cmem/react-flow/ReactFlow/ReactFlow.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,8EAA2G;AAC3G,8FAA2F;AAC3F,kFAAoE;AACpE,sEAAwD;AACxD,4EAA8D;AAC9D,0EAA4D;AAS5D;;;GAGG;AACU,QAAA,SAAS,GAAG,eAAK,CAAC,UAAU,CAAiC,CACtE,EAIC,EACD,GAAG,EAAE,EAAE;QALP,EACI,aAAa,GAAG,aAAa,EAC7B,QAAQ,OAEX,EADM,aAAa,cAHpB,6BAIC,CADmB;IAGpB,MAAM,eAAe,GAAG;QACpB,WAAW,EAAE,iBAAiB;QAC9B,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,cAAc;QACxB,OAAO,EAAE,aAAa;KACzB,CAAA;IAED,OAAO,CACH,8BAAC,6BAAiB,kBACd,GAAG,EAAE,GAAG,EACR,SAAS,EAAG,eAAe,CAAC,aAAa,CAAC,CAAC,SAAS,EACpD,SAAS,EAAG,eAAe,CAAC,aAAa,CAAC,CAAC,SAAS,IAChD,aAAa;QAEf,QAAQ;QACV,8BAAC,mCAAgB,OAAG,CACJ,CACvB,CAAC;AACN,CAAC,CAAC,CAAA"}
@@ -17,9 +17,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  const react_1 = __importDefault(require("react"));
18
18
  const carbon_components_react_1 = require("carbon-components-react");
19
19
  const constants_1 = require("../../configuration/constants");
20
+ const carbonAccordionSizeMapping = {
21
+ "small": "sm",
22
+ "medium": "md",
23
+ "large": "lg"
24
+ };
20
25
  function Accordion(_a) {
21
- var { children, className = "", align = "start" } = _a, otherProps = __rest(_a, ["children", "className", "align"]);
22
- return (react_1.default.createElement(carbon_components_react_1.Accordion, Object.assign({ className: `${constants_1.CLASSPREFIX}-accordion__container ` + className, align: align }, otherProps), children));
26
+ var { children, className = "", align = "start", size = "medium" } = _a, otherProps = __rest(_a, ["children", "className", "align", "size"]);
27
+ return (react_1.default.createElement(carbon_components_react_1.Accordion, Object.assign({ className: `${constants_1.CLASSPREFIX}-accordion__container ` + className, align: align, size: carbonAccordionSizeMapping[size] }, otherProps), children));
23
28
  }
24
29
  exports.default = Accordion;
25
30
  //# sourceMappingURL=Accordion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.js","sourceRoot":"","sources":["../../../../src/components/Accordion/Accordion.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,qEAAqE;AACrE,6DAAsE;AAEtE,SAAS,SAAS,CAAC,EAAiE;QAAjE,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,GAAG,OAAO,OAAsB,EAAjB,UAAU,cAA1D,kCAA4D,CAAF;IACzE,OAAO,CACH,8BAAC,mCAAe,kBAAC,SAAS,EAAE,GAAG,uBAAM,wBAAwB,GAAG,SAAS,EAAE,KAAK,EAAE,KAAK,IAAM,UAAU,GAClG,QAAQ,CACK,CACrB,CAAC;AACN,CAAC;AAED,kBAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"Accordion.js","sourceRoot":"","sources":["../../../../src/components/Accordion/Accordion.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,qEAGiC;AACjC,6DAAsE;AAatE,MAAM,0BAA0B,GAAG;IAC/B,OAAO,EAAE,IAAY;IACrB,QAAQ,EAAE,IAAY;IACtB,OAAO,EAAE,IAAY;CACxB,CAAA;AAED,SAAS,SAAS,CAAC,EAMF;QANE,EACf,QAAQ,EACR,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,OAAO,EACf,IAAI,GAAG,QAAQ,OAEF,EADV,UAAU,cALE,0CAMlB,CADgB;IAEb,OAAO,CACH,8BAAC,mCAAe,kBACZ,SAAS,EAAE,GAAG,uBAAM,wBAAwB,GAAG,SAAS,EACxD,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,0BAA0B,CAAC,IAAI,CAAC,IAClC,UAAU,GACb,QAAQ,CACK,CACrB,CAAC;AACN,CAAC;AAED,kBAAe,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AccordionItem.js","sourceRoot":"","sources":["../../../../src/components/Accordion/AccordionItem.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,qEAA6E;AAC7E,6DAAsE;AAwCrE,CAAC;AAEF,SAAS,aAAa,CAAC,EASF;QATE,EACnB,QAAQ,EACR,KAAK,EACL,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,KAAK,EACjB,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,KAAK,EACjB,QAAQ,GAAG,KAAK,OAEC,EADd,UAAU,cARM,oFAStB,CADgB;IAEb,OAAO,CACH,8BAAC,uCAAmB,kBAChB,SAAS,EACL,GAAG,uBAAM,kBAAkB;YAC3B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YACpC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,uBAAM,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,uBAAM,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,uBAAM,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,uBAAM,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC,EAE5D,KAAK,EAAE,KAAK,IACR,UAAU,GAEb,QAAQ,CACS,CACzB,CAAC;AACN,CAAC;AAED,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"AccordionItem.js","sourceRoot":"","sources":["../../../../src/components/Accordion/AccordionItem.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,qEAGiC;AACjC,6DAAsE;AA2BrE,CAAC;AAEF,SAAS,aAAa,CAAC,EASF;QATE,EACnB,QAAQ,EACR,KAAK,EACL,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,KAAK,EACjB,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,KAAK,EACjB,QAAQ,GAAG,KAAK,OAEC,EADd,UAAU,cARM,oFAStB,CADgB;IAEb,OAAO,CACH,8BAAC,uCAAmB,kBAChB,SAAS,EACL,GAAG,uBAAM,kBAAkB;YAC3B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YACpC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,uBAAM,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,uBAAM,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,uBAAM,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,uBAAM,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC,EAE5D,KAAK,EAAE,KAAK,IACR,UAAU,GAEb,QAAQ,CACS,CACzB,CAAC;AACN,CAAC;AAED,kBAAe,aAAa,CAAC"}
@@ -51,25 +51,27 @@ var OVERWRITTEN_KEYS;
51
51
  * This is comparable to a one line code editor. */
52
52
  const AutoSuggestion = ({ label, initialValue, onChange, fetchSuggestions, checkInput, validationErrorText = "Invalid value", clearIconText = "Clear", onFocusChange, id, onInputChecked, leftElement, rightElement, useTabForCompletions = false, placeholder, showScrollBar = true, autoCompletionRequestDelay = 1000, validationRequestDelay = 200 }) => {
53
53
  var _a;
54
- const [value, setValue] = react_1.default.useState(initialValue);
55
- const [cursorPosition, setCursorPosition] = react_1.default.useState(0);
56
- const [horizontalShift, setHorizontalShift] = react_1.default.useState(0);
54
+ const value = react_1.default.useRef(initialValue);
55
+ const cursorPosition = react_1.default.useRef(0);
56
+ const horizontalShiftSubscriber = react_1.default.useRef(undefined);
57
57
  const [shouldShowDropdown, setShouldShowDropdown] = react_1.default.useState(false);
58
58
  const [suggestions, setSuggestions] = react_1.default.useState([]);
59
59
  const [suggestionsPending, setSuggestionsPending] = react_1.default.useState(false);
60
+ const suggestionRequestData = react_1.default.useRef({ requestId: undefined });
60
61
  const [pathValidationPending, setPathValidationPending] = react_1.default.useState(false);
62
+ const validationRequestData = react_1.default.useRef({ requestId: undefined });
61
63
  const [, setErrorMarkers] = react_1.default.useState([]);
62
64
  const [validationResponse, setValidationResponse] = (0, react_1.useState)(undefined);
63
65
  const [suggestionResponse, setSuggestionResponse] = (0, react_1.useState)(undefined);
64
66
  // The element that should be used for replacement highlighting
65
67
  const [highlightedElement, setHighlightedElement] = (0, react_1.useState)(undefined);
66
68
  const [editorInstance, setEditorInstance] = react_1.default.useState();
67
- const [isFocused, setIsFocused] = react_1.default.useState(false);
69
+ const isFocused = react_1.default.useRef(false);
68
70
  /** Mutable editor state, since this needs to be current in scope of the SingleLineEditorComponent. */
69
71
  const [editorState] = react_1.default.useState({ index: 0, suggestions: [], dropdownShown: false });
70
72
  /** This is for the AutoSuggestionList component in order to re-render. */
71
73
  const [focusedIndex, setFocusedIndex] = react_1.default.useState(0);
72
- const [selectedTextRanges, setSelectedTextRanges] = (0, react_1.useState)([]);
74
+ const selectedTextRanges = react_1.default.useRef([]);
73
75
  const pathIsValid = (_a = validationResponse === null || validationResponse === void 0 ? void 0 : validationResponse.valid) !== null && _a !== void 0 ? _a : true;
74
76
  const setCurrentIndex = (newIndex) => {
75
77
  editorState.index = newIndex;
@@ -80,8 +82,10 @@ const AutoSuggestion = ({ label, initialValue, onChange, fetchSuggestions, check
80
82
  editorState.editorInstance = editorInstance;
81
83
  }, [editorInstance, editorState]);
82
84
  react_1.default.useEffect(() => {
83
- setValue(initialValue);
84
- }, [initialValue]);
85
+ if (initialValue != null) {
86
+ editorInstance === null || editorInstance === void 0 ? void 0 : editorInstance.setValue(initialValue);
87
+ }
88
+ }, [initialValue, editorInstance]);
85
89
  react_1.default.useEffect(() => {
86
90
  editorState.dropdownShown = shouldShowDropdown;
87
91
  }, [shouldShowDropdown, editorState]);
@@ -89,7 +93,7 @@ const AutoSuggestion = ({ label, initialValue, onChange, fetchSuggestions, check
89
93
  (0, react_1.useEffect)(() => {
90
94
  if (highlightedElement && editorInstance) {
91
95
  const { from, length } = highlightedElement;
92
- if (length > 0 && selectedTextRanges.length === 0) {
96
+ if (length > 0 && selectedTextRanges.current.length === 0) {
93
97
  const to = from + length;
94
98
  const marker = editorInstance.markText({ line: 0, ch: from }, { line: 0, ch: to }, { className: `${constants_1.CLASSPREFIX}-autosuggestion__text--highlighted` });
95
99
  return () => marker.clear();
@@ -116,7 +120,8 @@ const AutoSuggestion = ({ label, initialValue, onChange, fetchSuggestions, check
116
120
  return [];
117
121
  });
118
122
  }
119
- onInputChecked && onInputChecked(!!(validationResponse === null || validationResponse === void 0 ? void 0 : validationResponse.valid));
123
+ const isValid = (validationResponse === null || validationResponse === void 0 ? void 0 : validationResponse.valid) === undefined || validationResponse.valid;
124
+ onInputChecked && onInputChecked(isValid);
120
125
  }, [validationResponse === null || validationResponse === void 0 ? void 0 : validationResponse.valid, validationResponse === null || validationResponse === void 0 ? void 0 : validationResponse.parseError, editorInstance, onInputChecked]);
121
126
  /** generate suggestions and also populate the replacement indexes dict */
122
127
  react_1.default.useEffect(() => {
@@ -141,9 +146,10 @@ const AutoSuggestion = ({ label, initialValue, onChange, fetchSuggestions, check
141
146
  editorState.index = 0;
142
147
  }, [suggestionResponse, editorState]);
143
148
  const asyncCheckInput = (0, react_1.useMemo)(() => (inputString) => __awaiter(void 0, void 0, void 0, function* () {
144
- if (!checkInput) {
149
+ if (!checkInput || inputString !== value.current || validationRequestData.current.requestId === inputString) {
145
150
  return;
146
151
  }
152
+ validationRequestData.current.requestId = inputString;
147
153
  setPathValidationPending(true);
148
154
  try {
149
155
  const result = yield checkInput(inputString);
@@ -159,10 +165,17 @@ const AutoSuggestion = ({ label, initialValue, onChange, fetchSuggestions, check
159
165
  }), [checkInput]);
160
166
  const checkValuePathValidity = (0, react_1.useMemo)(() => (0, lodash_1.debounce)((inputString) => asyncCheckInput(inputString), validationRequestDelay), [asyncCheckInput, validationRequestDelay]);
161
167
  const asyncHandleEditorInputChange = (0, react_1.useMemo)(() => (inputString, cursorPosition) => __awaiter(void 0, void 0, void 0, function* () {
168
+ const requestId = `${inputString} ${cursorPosition}`;
169
+ if (requestId === suggestionRequestData.current.requestId) {
170
+ return;
171
+ }
172
+ suggestionRequestData.current.requestId = requestId;
162
173
  setSuggestionsPending(true);
163
174
  try {
164
175
  const result = yield fetchSuggestions(inputString, cursorPosition);
165
- setSuggestionResponse(result);
176
+ if (value.current === inputString) {
177
+ setSuggestionResponse(result);
178
+ }
166
179
  }
167
180
  catch (e) {
168
181
  setSuggestionResponse(undefined);
@@ -173,26 +186,21 @@ const AutoSuggestion = ({ label, initialValue, onChange, fetchSuggestions, check
173
186
  }
174
187
  }), [fetchSuggestions]);
175
188
  const handleEditorInputChange = (0, react_1.useMemo)(() => (0, lodash_1.debounce)((inputString, cursorPosition) => asyncHandleEditorInputChange(inputString, cursorPosition), autoCompletionRequestDelay), [asyncHandleEditorInputChange, autoCompletionRequestDelay]);
176
- react_1.default.useEffect(() => {
177
- if (isFocused) {
178
- setShouldShowDropdown(true);
179
- handleEditorInputChange(value, cursorPosition);
180
- return handleEditorInputChange.cancel;
181
- }
182
- return;
183
- }, [cursorPosition, value, isFocused, handleEditorInputChange]);
184
- // Trigger input validation
185
- (0, react_1.useEffect)(() => {
186
- checkValuePathValidity(value);
187
- return checkValuePathValidity.cancel;
188
- }, [value, checkValuePathValidity]);
189
189
  const handleChange = (val) => {
190
- setValue(val);
190
+ value.current = val;
191
+ checkValuePathValidity.cancel();
192
+ checkValuePathValidity(value.current);
191
193
  onChange(val);
192
194
  };
193
195
  const handleCursorChange = (pos, coords, scrollinfo) => {
194
- setCursorPosition(pos.ch);
195
- setHorizontalShift(Math.min(coords.left, Math.max(coords.left - scrollinfo.left, 0)));
196
+ cursorPosition.current = pos.ch;
197
+ // cursor change is fired after onChange, so we put the auto-complete logic here
198
+ if (isFocused.current) {
199
+ setShouldShowDropdown(true);
200
+ handleEditorInputChange.cancel();
201
+ handleEditorInputChange(value.current, cursorPosition.current);
202
+ }
203
+ horizontalShiftSubscriber.current && horizontalShiftSubscriber.current(Math.min(coords.left, Math.max(coords.left - scrollinfo.left, 0)));
196
204
  };
197
205
  const handleInputEditorKeyPress = (event) => {
198
206
  const overWrittenKeys = Object.values(OVERWRITTEN_KEYS);
@@ -216,14 +224,26 @@ const AutoSuggestion = ({ label, initialValue, onChange, fetchSuggestions, check
216
224
  }
217
225
  };
218
226
  const handleInputEditorClear = () => {
227
+ editorInstance === null || editorInstance === void 0 ? void 0 : editorInstance.setValue("");
228
+ cursorPosition.current = 0;
219
229
  handleChange("");
220
- setValue("");
221
230
  editorInstance === null || editorInstance === void 0 ? void 0 : editorInstance.focus();
222
231
  };
223
232
  const handleInputFocus = (focusState) => {
224
233
  onFocusChange && onFocusChange(focusState);
225
- setIsFocused(focusState);
226
234
  focusState ? setShouldShowDropdown(true) : closeDropDown();
235
+ if (!isFocused.current && focusState) {
236
+ // Just got focus
237
+ // Clear suggestions and repeat suggestion request, something else might have changed while this component was not focused
238
+ setSuggestions([]);
239
+ suggestionRequestData.current.requestId = undefined;
240
+ isFocused.current = focusState;
241
+ handleEditorInputChange.cancel();
242
+ handleEditorInputChange(value.current, cursorPosition.current);
243
+ }
244
+ else {
245
+ isFocused.current = focusState;
246
+ }
227
247
  };
228
248
  //keyboard handlers
229
249
  const handleArrowDown = () => {
@@ -265,12 +285,18 @@ const AutoSuggestion = ({ label, initialValue, onChange, fetchSuggestions, check
265
285
  const handleItemHighlighting = react_1.default.useCallback((item) => {
266
286
  setHighlightedElement(item);
267
287
  }, []);
268
- const hasError = !!value && !pathIsValid && !pathValidationPending;
288
+ const onSelection = react_1.default.useMemo(() => (ranges) => {
289
+ selectedTextRanges.current = ranges;
290
+ }, []);
291
+ const subscribeToHorizontalShift = react_1.default.useMemo(() => (callback) => {
292
+ horizontalShiftSubscriber.current = callback;
293
+ }, []);
294
+ const hasError = !!value.current && !pathIsValid && !pathValidationPending;
269
295
  const autoSuggestionInput = (react_1.default.createElement("div", { id: id, className: `${constants_1.CLASSPREFIX}-autosuggestion` },
270
296
  react_1.default.createElement("div", { className: `${constants_1.CLASSPREFIX}-autosuggestion__inputfield ${core_1.Classes.INPUT_GROUP} ${core_1.Classes.FILL} ${hasError ? core_1.Classes.INTENT_DANGER : ""}` },
271
- react_1.default.createElement(__1.ContextOverlay, { minimal: true, fill: true, isOpen: shouldShowDropdown, placement: "bottom-start", openOnTargetFocus: false, autoFocus: false, content: (react_1.default.createElement(AutoSuggestionList_1.AutoSuggestionList, { id: id + "__dropdown", left: horizontalShift, loading: suggestionsPending, options: suggestions, isOpen: !suggestionsPending && shouldShowDropdown, onItemSelectionChange: handleDropdownChange, currentlyFocusedIndex: focusedIndex, itemToHighlight: handleItemHighlighting })) },
272
- react_1.default.createElement(SingleLineCodeEditor_1.default, { mode: "null", setEditorInstance: setEditorInstance, onChange: handleChange, onCursorChange: handleCursorChange, initialValue: value, onFocusChange: handleInputFocus, onKeyDown: handleInputEditorKeyPress, enableTab: useTabForCompletions, placeholder: placeholder, onSelection: setSelectedTextRanges, showScrollBar: showScrollBar })),
273
- !!value && (react_1.default.createElement("span", { className: core_1.Classes.INPUT_ACTION },
297
+ react_1.default.createElement(__1.ContextOverlay, { minimal: true, fill: true, isOpen: shouldShowDropdown, placement: "bottom-start", openOnTargetFocus: false, autoFocus: false, content: (react_1.default.createElement(AutoSuggestionList_1.AutoSuggestionList, { id: id + "__dropdown", registerForHorizontalShift: subscribeToHorizontalShift, loading: suggestionsPending, options: suggestions, isOpen: !suggestionsPending && shouldShowDropdown, onItemSelectionChange: handleDropdownChange, currentlyFocusedIndex: focusedIndex, itemToHighlight: handleItemHighlighting })) },
298
+ react_1.default.createElement(SingleLineCodeEditor_1.default, { mode: "null", setEditorInstance: setEditorInstance, onChange: handleChange, onCursorChange: handleCursorChange, initialValue: initialValue, onFocusChange: handleInputFocus, onKeyDown: handleInputEditorKeyPress, enableTab: useTabForCompletions, placeholder: placeholder, onSelection: onSelection, showScrollBar: showScrollBar })),
299
+ !!value.current && (react_1.default.createElement("span", { className: core_1.Classes.INPUT_ACTION },
274
300
  react_1.default.createElement(__1.IconButton, { "data-test-id": "value-path-clear-btn", name: "operation-clear", text: clearIconText, onClick: handleInputEditorClear }))))));
275
301
  const withRightElement = rightElement || leftElement ? (react_1.default.createElement(__1.Toolbar, { noWrap: true },
276
302
  leftElement && react_1.default.createElement(__1.ToolbarSection, null, leftElement),
@@ -1 +1 @@
1
- {"version":3,"file":"AutoSuggestion.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/AutoSuggestion.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AutoSuggestion.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/AutoSuggestion.tsx"],"names":[],"mappings":"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"}
@@ -33,8 +33,9 @@ const ListItem = ({ item }, ref) => {
33
33
  const Item = react_1.default.forwardRef(ListItem);
34
34
  /** A drop-down-like list that can be used in combination with other components to show and select items. */
35
35
  const AutoSuggestionList = (_a) => {
36
- var { isOpen, options, loading, onItemSelectionChange, left, currentlyFocusedIndex, itemToHighlight, style } = _a, otherDivProps = __rest(_a, ["isOpen", "options", "loading", "onItemSelectionChange", "left", "currentlyFocusedIndex", "itemToHighlight", "style"]);
36
+ var { isOpen, options, loading, onItemSelectionChange, registerForHorizontalShift, currentlyFocusedIndex, itemToHighlight, style } = _a, otherDivProps = __rest(_a, ["isOpen", "options", "loading", "onItemSelectionChange", "registerForHorizontalShift", "currentlyFocusedIndex", "itemToHighlight", "style"]);
37
37
  const [hoveredItem, setHoveredItem] = react_1.default.useState(undefined);
38
+ const [left, setLeft] = react_1.default.useState(0);
38
39
  // Refs of list items
39
40
  const [refs] = react_1.default.useState([]);
40
41
  const dropdownRef = react_1.default.useRef(null);
@@ -44,6 +45,14 @@ const AutoSuggestionList = (_a) => {
44
45
  }
45
46
  return refs[index];
46
47
  };
48
+ react_1.default.useEffect(() => {
49
+ if (registerForHorizontalShift) {
50
+ const callback = (shift) => {
51
+ setTimeout(() => setLeft(shift), 1);
52
+ };
53
+ registerForHorizontalShift(callback);
54
+ }
55
+ }, [registerForHorizontalShift]);
47
56
  react_1.default.useEffect(() => {
48
57
  const listIndexNode = refs[currentlyFocusedIndex];
49
58
  if ((dropdownRef === null || dropdownRef === void 0 ? void 0 : dropdownRef.current) && (listIndexNode === null || listIndexNode === void 0 ? void 0 : listIndexNode.current)) {
@@ -1 +1 @@
1
- {"version":3,"file":"AutoSuggestionList.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/AutoSuggestionList.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AutoSuggestionList.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/AutoSuggestionList.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,wFAA6D;AAC7D,gCAWkB;AAElB,6DAAsE;AAqBtE,MAAM,QAAQ,GAAG,CAAC,EAAE,IAAI,EAAO,EAAE,GAAQ,EAAE,EAAE;IACzC,MAAM,QAAQ,GAAG,CACb,8BAAC,gBAAY,IAAC,WAAW,EAAE,IAAI;QAC3B,8BAAC,2BAAuB;YACpB,8BAAC,oBAAgB;gBACb,8BAAC,gBAAY,IAAC,QAAQ,EAAC,SAAS;oBAC5B,8BAAC,eAAW,IACR,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,WAAW,EAAE,IAAI,CAAC,KAAK,GACzB,CACS,CACA;YAClB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAChB,8BAAC,oBAAgB,IAAC,KAAK,EAAE,IAAI;gBACzB,8BAAC,gBAAY;oBACT,8BAAC,eAAW,IACR,KAAK,EAAE,IAAI,CAAC,WAAW,EACvB,WAAW,EAAE,IAAI,CAAC,KAAK,GACzB,CACS,CACA,CACtB,CAAC,CAAC,CAAC,IAAI,CACc,CACf,CAClB,CAAC;IAEF,OAAO,CACH,uCAAK,GAAG,EAAE,GAAG,IACR,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAClD,8BAAC,WAAO,IAAC,OAAO,EAAE,IAAI,CAAC,WAAW,IAAG,QAAQ,CAAW,CAC3D,CAAC,CAAC,CAAC,CACA,8DAAG,QAAQ,CAAI,CAClB,CACC,CACT,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,IAAI,GAAG,eAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAExC,4GAA4G;AACrG,MAAM,kBAAkB,GAAG,CAAC,EAUlB,EAAE,EAAE;QAVc,EAC/B,MAAM,EACN,OAAO,EACP,OAAO,EACP,qBAAqB,EACrB,0BAA0B,EAC1B,qBAAqB,EACrB,eAAe,EACf,KAAK,OAEQ,EADV,aAAa,cATe,4IAUlC,CADmB;IAEhB,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,eAAK,CAAC,QAAQ,CAElD,SAAS,CAAC,CAAC;IACb,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;IACzC,qBAAqB;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,eAAK,CAAC,QAAQ,CAA6B,EAAE,CAAC,CAAA;IAC7D,MAAM,WAAW,GAAG,eAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,EAAE;QAClC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACd,IAAI,CAAC,KAAK,CAAC,GAAG,eAAK,CAAC,SAAS,EAAE,CAAC;SACnC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAG,0BAA0B,EAAE;YAC3B,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;gBAC/B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;YACvC,CAAC,CAAA;YACD,0BAA0B,CAAC,QAAQ,CAAC,CAAA;SACvC;IACL,CAAC,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAA;IAEhC,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClD,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,MAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,CAAA,EAAE;YAChD,MAAM,OAAO,GAAG,IAAA,kCAAqB,EAAC,aAAa,CAAC,OAAO,EAAE;gBACzD,QAAQ,EAAE,WAAW,CAAC,OAAO;gBAC7B,KAAK,EAAE,SAAS;gBAChB,UAAU,EAAE,WAAW;aAC1B,CAAC,CAAC;YACH,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE;gBAClC,EAAE,CAAC,SAAS,GAAG,GAAG,CAAC;gBACnB,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC;YACzB,CAAC,CAAC,CAAC;SACN;IACL,CAAC,EAAE,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC,CAAC;IAElC,MAAM,WAAW,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;IAElD,iCAAiC;IACjC,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC;IACtE,CAAC,EAAE;QACC,qBAAqB;QACrB,eAAe;QACf,WAAW;QACX,MAAM;QACN,WAAW;KACd,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,CACX,8BAAC,gBAAY,IAAC,UAAU;QACpB,8BAAC,oBAAgB,+BAAwC;QACzD,8BAAC,WAAO,IAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAE,IAAI,GAAI;QACvC,8BAAC,WAAO,IAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,EAAE,GAAG,CACjC,CAClB,CAAC;IAEF,MAAM,uBAAuB,GAAG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAC1D,IAAI,CAAC,uBAAuB,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACrD,OAAO,CACH,uDACQ,aAAa,IACjB,SAAS,EAAE,GAAG,uBAAM,2BAA2B,EAC/C,KAAK,kCAAO,KAAK,KAAE,IAAI,KACvB,GAAG,EAAE,WAAW,KAEf,OAAO,CAAC,CAAC,CAAC,CACP,MAAM,CACT,CAAC,CAAC,CAAC,CACA,8BAAC,QAAI,QACA,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAC1B,8BAAC,YAAQ,IACL,GAAG,EAAE,KAAK,EACV,MAAM,EAAE,qBAAqB,KAAK,KAAK,EACvC,WAAW,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EAC3C,OAAO,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAC1C,IAAI,EAAE,CACF,8BAAC,IAAI,IACD,GAAG,EAAE,WAAW,CAAC,KAAK,CAAC,EACvB,IAAI,EAAE,IAAI,GACZ,CACL,EACD,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,EACxC,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,EAC7C,WAAW,EAAE,GAAG,EAAE;YACd,IAAI,IAAI,CAAC,KAAK,MAAK,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,CAAA,EAAE;gBACnC,cAAc,CAAC,IAAI,CAAC,CAAC;aACxB;QACL,CAAC,GACH,CACL,CAAC,CACC,CACV,CACC,CACT,CAAC;AACN,CAAC,CAAC;AA5GW,QAAA,kBAAkB,sBA4G7B"}
@@ -12,7 +12,7 @@ const constants_1 = require("../../configuration/constants");
12
12
  /** A single-line code editor. */
13
13
  const SingleLineCodeEditor = ({ setEditorInstance, onChange, onCursorChange, mode, initialValue, onFocusChange, onKeyDown, onSelection, enableTab = false, placeholder, showScrollBar = true }) => {
14
14
  return (react_1.default.createElement("div", { className: `${constants_1.CLASSPREFIX}-singlelinecodeeditor ${core_1.Classes.INPUT}` },
15
- react_1.default.createElement(react_codemirror2_1.Controlled, { editorDidMount: (editor) => {
15
+ react_1.default.createElement(react_codemirror2_1.UnControlled, { editorDidMount: (editor) => {
16
16
  editor.on("beforeChange", (_, change) => {
17
17
  // Prevent the user from entering new-line characters, since this is supposed to be a one-line editor.
18
18
  const newText = change.text.join("").replace(/\n/g, "");
@@ -38,9 +38,15 @@ const SingleLineCodeEditor = ({ setEditorInstance, onChange, onCursorChange, mod
38
38
  }
39
39
  }, onCursor: (editor, data) => {
40
40
  onCursorChange(data, editor.cursorCoords(true, "local"), editor.getScrollInfo());
41
- }, onBeforeChange: (_editor, _data, value) => {
42
- const trimmedValue = value.replace(/\n/g, "");
43
- onChange(trimmedValue);
41
+ }, onBeforeChange: (_editor, _data, value, next) => {
42
+ // Remove entered new lines
43
+ const trimmedValue = value.replace(/[\r\n]/g, "");
44
+ if (trimmedValue !== value) {
45
+ _editor.setValue(trimmedValue);
46
+ }
47
+ next();
48
+ }, onChange: (_editor, _data, value) => {
49
+ onChange(value);
44
50
  }, onKeyDown: (_, event) => onKeyDown(event) })));
45
51
  };
46
52
  exports.default = SingleLineCodeEditor;
@@ -1 +1 @@
1
- {"version":3,"file":"SingleLineCodeEditor.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/SingleLineCodeEditor.tsx"],"names":[],"mappings":";;;;;AAAA,mDAAgD;AAChD,4CAA0C;AAC1C,kDAA0B;AAC1B,yDAAmE;AACnE,4CAAmE;AAEnE,6DAAsE;AA+BtE,iCAAiC;AACjC,MAAM,oBAAoB,GAAG,CAAC,EACI,iBAAiB,EACjB,QAAQ,EACR,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,aAAa,EACb,SAAS,EACT,WAAW,EACX,SAAS,GAAG,KAAK,EACjB,WAAW,EACX,aAAa,GAAG,IAAI,EACT,EAAE,EAAE;IAC7C,OAAO,CACH,uCAAK,SAAS,EAAE,GAAG,uBAAM,yBAAyB,cAAmB,CAAC,KAAK,EAAE;QACzE,8BAAC,8BAAgB,IACrB,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE;gBACzB,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;oBACtC,sGAAsG;oBACtG,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACxD,2CAA2C;oBAC3C,IAAI,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE;wBACxD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;qBAClD;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;gBACH,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC,EACD,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EAClC,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAClC,OAAO,EAAE;gBACL,IAAI,EAAE,IAAI;gBACV,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,UAAU;gBACjB,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAC,GAAG,EAAE,KAAK,EAAC;gBAC/C,WAAW;gBACX,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;aACpD,EACD,WAAW,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;gBAC7B,IAAG,KAAK,CAAC,OAAO,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,EAAE;oBAC9B,WAAW,CAAC,IAAI,CAAC,MAAM;yBAClB,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAC,CAAC,CAAC;yBACrD,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;iBAC1C;YACH,CAAC,EACD,QAAQ,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;gBACzB,cAAc,CACV,IAAI,EACJ,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,EAClC,MAAM,CAAC,aAAa,EAAE,CACzB,CAAC;YACJ,CAAC,EACD,cAAc,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBACxC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC9C,QAAQ,CAAC,YAAY,CAAC,CAAC;YACzB,CAAC,EACD,SAAS,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,GACzC,CACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"SingleLineCodeEditor.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/SingleLineCodeEditor.tsx"],"names":[],"mappings":"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"}
@@ -56,12 +56,13 @@ const elementWidth = (elRef) => {
56
56
  /** Auto-complete input widget. */
57
57
  function AutoCompleteField(props) {
58
58
  var _a, _b, _c;
59
- const { reset, noResultText, disabled, onlyDropdownWithQuery = false, itemValueSelector, itemRenderer, onSearch, onChange, initialValue, autoFocus, createNewItem, itemValueRenderer, resetQueryToValue, itemValueString, requestErrorPrefix = "" } = props, otherProps = __rest(props, ["reset", "noResultText", "disabled", "onlyDropdownWithQuery", "itemValueSelector", "itemRenderer", "onSearch", "onChange", "initialValue", "autoFocus", "createNewItem", "itemValueRenderer", "resetQueryToValue", "itemValueString", "requestErrorPrefix"]);
59
+ const { reset, noResultText, disabled, onlyDropdownWithQuery = false, itemValueSelector, itemRenderer, onSearch, onChange, initialValue, autoFocus, createNewItem, itemValueRenderer, resetQueryToValue, itemValueString, requestErrorPrefix = "", hasBackDrop = false } = props, otherProps = __rest(props, ["reset", "noResultText", "disabled", "onlyDropdownWithQuery", "itemValueSelector", "itemRenderer", "onSearch", "onChange", "initialValue", "autoFocus", "createNewItem", "itemValueRenderer", "resetQueryToValue", "itemValueString", "requestErrorPrefix", "hasBackDrop"]);
60
60
  const [selectedItem, setSelectedItem] = (0, react_1.useState)(initialValue);
61
61
  // If the selection list elements are currently fetched from the backend
62
62
  const [listLoading, setListLoading] = (0, react_1.useState)(false);
63
63
  const [query, setQuery] = (0, react_1.useState)("");
64
- const [hasFocus, setHasFocus] = (0, react_1.useState)(false);
64
+ // If the input field has focus
65
+ const [inputHasFocus, setInputHasFocus] = (0, react_1.useState)(false);
65
66
  const [highlightingEnabled, setHighlightingEnabled] = (0, react_1.useState)(true);
66
67
  const [requestError, setRequestError] = (0, react_1.useState)(undefined);
67
68
  // The suggestions that match the user's input
@@ -89,7 +90,7 @@ function AutoCompleteField(props) {
89
90
  // eslint-disable-next-line react-hooks/exhaustive-deps
90
91
  [selectedItem]);
91
92
  (0, react_1.useEffect)(() => {
92
- if (!disabled && !readOnly && hasFocus) {
93
+ if (!disabled && !readOnly && inputHasFocus) {
93
94
  setListLoading(true);
94
95
  const timeout = window.setTimeout(() => __awaiter(this, void 0, void 0, function* () {
95
96
  fetchQueryResults(query);
@@ -102,14 +103,14 @@ function AutoCompleteField(props) {
102
103
  return;
103
104
  },
104
105
  // eslint-disable-next-line react-hooks/exhaustive-deps
105
- [hasFocus, query]);
106
+ [inputHasFocus, query]);
106
107
  const fieldWidthLimits = elementWidth(fieldRef);
107
108
  // We need to fire some actions when the auto-complete widget gets or loses focus
108
109
  const handleOnFocusIn = () => {
109
- setHasFocus(true);
110
+ setInputHasFocus(true);
110
111
  };
111
112
  const handleOnFocusOut = () => {
112
- setHasFocus(false);
113
+ setInputHasFocus(false);
113
114
  };
114
115
  // On popover close reset query to selected item
115
116
  const onPopoverClose = () => {
@@ -206,7 +207,9 @@ function AutoCompleteField(props) {
206
207
  // Additional properties for the input element of the auto-completion widget
207
208
  const updatedInputProps = Object.assign(Object.assign({ rightElement: clearButton, autoFocus: autoFocus, onBlur: handleOnFocusOut, onFocus: handleOnFocusIn }, otherProps.inputProps), { title: (selectedItem !== undefined && (readOnly || disabled)) ? itemValueString(selectedItem) : (_c = otherProps.inputProps) === null || _c === void 0 ? void 0 : _c.title });
208
209
  const preventOverlayOnReadonly = readOnly ? { isOpen: false } : {};
209
- const updatedContextOverlayProps = Object.assign(Object.assign({ minimal: true, placement: "bottom-start", popoverClassName: `${constants_1.CLASSPREFIX}-autocompletefield__options`, rootBoundary: "viewport", onClosed: onPopoverClose }, otherProps.contextOverlayProps), preventOverlayOnReadonly);
210
+ const updatedContextOverlayProps = Object.assign(Object.assign(Object.assign({ minimal: true, placement: "bottom-start", popoverClassName: `${constants_1.CLASSPREFIX}-autocompletefield__options`, rootBoundary: "viewport", onClosed: onPopoverClose }, otherProps.contextOverlayProps), preventOverlayOnReadonly), {
211
+ // Needed to capture clicks outside of the popover, e.g. in order to close it.
212
+ hasBackdrop: hasBackDrop });
210
213
  if (selectedItem !== undefined) {
211
214
  // Makes sure that even when an empty string is selected, the placeholder won't be shown.
212
215
  updatedInputProps.placeholder = "";
@@ -229,7 +232,9 @@ function AutoCompleteField(props) {
229
232
  return (react_1.default.createElement("div", { ref: fieldRef },
230
233
  react_1.default.createElement(BlueprintSuggestAutocomplete, Object.assign({ className: `${constants_1.CLASSPREFIX}-autocompletefield__input`, disabled: disabled,
231
234
  // Need to display error messages in list
232
- items: requestError ? [requestError] : filtered, initialContent: onlyDropdownWithQuery ? null : undefined, inputValueRenderer: selectedItem !== undefined ? itemValueRenderer : () => "", itemRenderer: requestError ? requestErrorRenderer : optionRenderer, itemsEqual: areEqualItems, noResults: react_1.default.createElement(index_1.MenuItem, { disabled: true, text: noResultText, style: fieldWidthLimits }), onItemSelect: onSelectionChange, onQueryChange: (q) => setQuery(q), closeOnSelect: true, query: query,
235
+ items: requestError ?
236
+ [requestError] :
237
+ filtered, initialContent: onlyDropdownWithQuery ? null : undefined, inputValueRenderer: selectedItem !== undefined ? itemValueRenderer : () => "", itemRenderer: requestError ? requestErrorRenderer : optionRenderer, itemsEqual: areEqualItems, noResults: react_1.default.createElement(index_1.MenuItem, { disabled: true, text: noResultText, style: fieldWidthLimits }), onItemSelect: onSelectionChange, onQueryChange: (q) => setQuery(q), closeOnSelect: true, query: query,
233
238
  // This leads to odd compile errors without "as any"
234
239
  popoverProps: updatedContextOverlayProps, selectedItem: selectedItem, fill: true }, createNewItemProps, {
235
240
  // This leads to odd compile errors without "as any"