@finos/legend-application-studio 28.18.68 → 28.18.70

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 (173) hide show
  1. package/lib/__lib__/LegendStudioDocumentation.d.ts +0 -1
  2. package/lib/__lib__/LegendStudioDocumentation.d.ts.map +1 -1
  3. package/lib/__lib__/LegendStudioDocumentation.js +0 -2
  4. package/lib/__lib__/LegendStudioDocumentation.js.map +1 -1
  5. package/lib/components/editor/editor-group/EditorGroup.d.ts.map +1 -1
  6. package/lib/components/editor/editor-group/EditorGroup.js +2 -5
  7. package/lib/components/editor/editor-group/EditorGroup.js.map +1 -1
  8. package/lib/components/editor/editor-group/GenerationSpecificationEditor.js +4 -4
  9. package/lib/components/editor/editor-group/GenerationSpecificationEditor.js.map +1 -1
  10. package/lib/components/editor/editor-group/GrammarTextEditor.js +5 -5
  11. package/lib/components/editor/editor-group/GrammarTextEditor.js.map +1 -1
  12. package/lib/components/editor/editor-group/RuntimeEditor.js +6 -6
  13. package/lib/components/editor/editor-group/RuntimeEditor.js.map +1 -1
  14. package/lib/components/editor/editor-group/data-editor/DataElementEditor.js +3 -3
  15. package/lib/components/editor/editor-group/data-editor/DataElementEditor.js.map +1 -1
  16. package/lib/components/editor/editor-group/diff-editor/EntityChangeConflictEditor.d.ts.map +1 -1
  17. package/lib/components/editor/editor-group/diff-editor/EntityChangeConflictEditor.js +1 -1
  18. package/lib/components/editor/editor-group/diff-editor/EntityChangeConflictEditor.js.map +1 -1
  19. package/lib/components/editor/editor-group/element-generation-editor/FileGenerationEditor.js +2 -2
  20. package/lib/components/editor/editor-group/element-generation-editor/FileGenerationEditor.js.map +1 -1
  21. package/lib/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_BindingElementEditor.js +2 -2
  22. package/lib/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_BindingElementEditor.js.map +1 -1
  23. package/lib/components/editor/editor-group/function-activator/FunctionEditor.d.ts.map +1 -1
  24. package/lib/components/editor/editor-group/function-activator/FunctionEditor.js +14 -7
  25. package/lib/components/editor/editor-group/function-activator/FunctionEditor.js.map +1 -1
  26. package/lib/components/editor/editor-group/function-activator/HostedServiceFunctionActivatorEditor.d.ts.map +1 -1
  27. package/lib/components/editor/editor-group/function-activator/HostedServiceFunctionActivatorEditor.js +10 -5
  28. package/lib/components/editor/editor-group/function-activator/HostedServiceFunctionActivatorEditor.js.map +1 -1
  29. package/lib/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.d.ts.map +1 -1
  30. package/lib/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.js +6 -4
  31. package/lib/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.js.map +1 -1
  32. package/lib/components/editor/editor-group/mapping-editor/FlatDataPropertyMappingEditor.d.ts.map +1 -1
  33. package/lib/components/editor/editor-group/mapping-editor/FlatDataPropertyMappingEditor.js +12 -8
  34. package/lib/components/editor/editor-group/mapping-editor/FlatDataPropertyMappingEditor.js.map +1 -1
  35. package/lib/components/editor/editor-group/mapping-editor/FlatDataRecordTypeTree.d.ts.map +1 -1
  36. package/lib/components/editor/editor-group/mapping-editor/FlatDataRecordTypeTree.js +6 -5
  37. package/lib/components/editor/editor-group/mapping-editor/FlatDataRecordTypeTree.js.map +1 -1
  38. package/lib/components/editor/editor-group/mapping-editor/InstanceSetImplementationEditor.js +2 -2
  39. package/lib/components/editor/editor-group/mapping-editor/InstanceSetImplementationEditor.js.map +1 -1
  40. package/lib/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.d.ts.map +1 -1
  41. package/lib/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.js +4 -4
  42. package/lib/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.js.map +1 -1
  43. package/lib/components/editor/editor-group/mapping-editor/MappingExplorer.d.ts.map +1 -1
  44. package/lib/components/editor/editor-group/mapping-editor/MappingExplorer.js +12 -8
  45. package/lib/components/editor/editor-group/mapping-editor/MappingExplorer.js.map +1 -1
  46. package/lib/components/editor/editor-group/mapping-editor/MappingTestsExplorer.js +2 -2
  47. package/lib/components/editor/editor-group/mapping-editor/MappingTestsExplorer.js.map +1 -1
  48. package/lib/components/editor/editor-group/mapping-editor/OperationSetImplementationEditor.js +2 -2
  49. package/lib/components/editor/editor-group/mapping-editor/OperationSetImplementationEditor.js.map +1 -1
  50. package/lib/components/editor/editor-group/mapping-editor/PurePropertyMappingEditor.d.ts.map +1 -1
  51. package/lib/components/editor/editor-group/mapping-editor/PurePropertyMappingEditor.js +17 -11
  52. package/lib/components/editor/editor-group/mapping-editor/PurePropertyMappingEditor.js.map +1 -1
  53. package/lib/components/editor/editor-group/mapping-editor/TypeTree.d.ts.map +1 -1
  54. package/lib/components/editor/editor-group/mapping-editor/TypeTree.js +5 -3
  55. package/lib/components/editor/editor-group/mapping-editor/TypeTree.js.map +1 -1
  56. package/lib/components/editor/editor-group/mapping-editor/legacy/DEPRECATED__MappingTestEditor.js +2 -2
  57. package/lib/components/editor/editor-group/mapping-editor/legacy/DEPRECATED__MappingTestEditor.js.map +1 -1
  58. package/lib/components/editor/editor-group/mapping-editor/relational/RelationalPropertyMappingEditor.d.ts.map +1 -1
  59. package/lib/components/editor/editor-group/mapping-editor/relational/RelationalPropertyMappingEditor.js +17 -11
  60. package/lib/components/editor/editor-group/mapping-editor/relational/RelationalPropertyMappingEditor.js.map +1 -1
  61. package/lib/components/editor/editor-group/mapping-editor/relational/TableOrViewSourceTree.d.ts.map +1 -1
  62. package/lib/components/editor/editor-group/mapping-editor/relational/TableOrViewSourceTree.js +5 -3
  63. package/lib/components/editor/editor-group/mapping-editor/relational/TableOrViewSourceTree.js.map +1 -1
  64. package/lib/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.d.ts.map +1 -1
  65. package/lib/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.js +1 -2
  66. package/lib/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.js.map +1 -1
  67. package/lib/components/editor/editor-group/service-editor/ServiceExecutionEditor.js +2 -2
  68. package/lib/components/editor/editor-group/service-editor/ServiceExecutionEditor.js.map +1 -1
  69. package/lib/components/editor/editor-group/service-editor/ServiceExecutionQueryEditor.d.ts.map +1 -1
  70. package/lib/components/editor/editor-group/service-editor/ServiceExecutionQueryEditor.js +0 -1
  71. package/lib/components/editor/editor-group/service-editor/ServiceExecutionQueryEditor.js.map +1 -1
  72. package/lib/components/editor/editor-group/uml-editor/AssociationEditor.js +3 -3
  73. package/lib/components/editor/editor-group/uml-editor/AssociationEditor.js.map +1 -1
  74. package/lib/components/editor/editor-group/uml-editor/ClassEditor.js +10 -10
  75. package/lib/components/editor/editor-group/uml-editor/ClassEditor.js.map +1 -1
  76. package/lib/components/editor/editor-group/uml-editor/EnumerationEditor.js +6 -6
  77. package/lib/components/editor/editor-group/uml-editor/EnumerationEditor.js.map +1 -1
  78. package/lib/components/editor/editor-group/uml-editor/PropertyEditor.js +3 -3
  79. package/lib/components/editor/editor-group/uml-editor/PropertyEditor.js.map +1 -1
  80. package/lib/components/editor/panel-group/SQLPlaygroundPanel.d.ts.map +1 -1
  81. package/lib/components/editor/panel-group/SQLPlaygroundPanel.js +4 -2
  82. package/lib/components/editor/panel-group/SQLPlaygroundPanel.js.map +1 -1
  83. package/lib/components/editor/side-bar/CreateNewElementModal.d.ts.map +1 -1
  84. package/lib/components/editor/side-bar/CreateNewElementModal.js +2 -4
  85. package/lib/components/editor/side-bar/CreateNewElementModal.js.map +1 -1
  86. package/lib/components/editor/side-bar/Explorer.d.ts.map +1 -1
  87. package/lib/components/editor/side-bar/Explorer.js +4 -2
  88. package/lib/components/editor/side-bar/Explorer.js.map +1 -1
  89. package/lib/components/editor/side-bar/LocalChanges.d.ts.map +1 -1
  90. package/lib/components/editor/side-bar/LocalChanges.js +3 -8
  91. package/lib/components/editor/side-bar/LocalChanges.js.map +1 -1
  92. package/lib/components/editor/side-bar/WorkspaceReview.d.ts.map +1 -1
  93. package/lib/components/editor/side-bar/WorkspaceReview.js +1 -4
  94. package/lib/components/editor/side-bar/WorkspaceReview.js.map +1 -1
  95. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.d.ts.map +1 -1
  96. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.js +3 -8
  97. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.js.map +1 -1
  98. package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.d.ts.map +1 -1
  99. package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.js +3 -8
  100. package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.js.map +1 -1
  101. package/lib/components/editor/side-bar/WorkspaceUpdater.d.ts.map +1 -1
  102. package/lib/components/editor/side-bar/WorkspaceUpdater.js +2 -4
  103. package/lib/components/editor/side-bar/WorkspaceUpdater.js.map +1 -1
  104. package/lib/components/editor/side-bar/end-to-end-workflow/EndToEndWorkflows.js.map +1 -1
  105. package/lib/components/editor/side-bar/testable/GlobalTestRunner.js +1 -1
  106. package/lib/components/editor/side-bar/testable/GlobalTestRunner.js.map +1 -1
  107. package/lib/components/project-reviewer/ProjectReviewSideBar.d.ts.map +1 -1
  108. package/lib/components/project-reviewer/ProjectReviewSideBar.js +1 -4
  109. package/lib/components/project-reviewer/ProjectReviewSideBar.js.map +1 -1
  110. package/lib/index.css +1 -1
  111. package/lib/package.json +12 -12
  112. package/lib/stores/editor/editor-state/GraphGenerationState.d.ts.map +1 -1
  113. package/lib/stores/editor/editor-state/GraphGenerationState.js +1 -2
  114. package/lib/stores/editor/editor-state/GraphGenerationState.js.map +1 -1
  115. package/lib/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.d.ts.map +1 -1
  116. package/lib/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.js +3 -6
  117. package/lib/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.js.map +1 -1
  118. package/lib/stores/editor/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.js +1 -3
  119. package/lib/stores/editor/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.js.map +1 -1
  120. package/lib/stores/editor/sidebar-state/WorkflowManagerState.d.ts.map +1 -1
  121. package/lib/stores/editor/sidebar-state/WorkflowManagerState.js +1 -3
  122. package/lib/stores/editor/sidebar-state/WorkflowManagerState.js.map +1 -1
  123. package/lib/stores/editor/utils/FileSystemTreeUtils.d.ts.map +1 -1
  124. package/lib/stores/editor/utils/FileSystemTreeUtils.js +1 -2
  125. package/lib/stores/editor/utils/FileSystemTreeUtils.js.map +1 -1
  126. package/package.json +24 -24
  127. package/src/__lib__/LegendStudioDocumentation.ts +0 -3
  128. package/src/components/editor/editor-group/EditorGroup.tsx +4 -5
  129. package/src/components/editor/editor-group/GenerationSpecificationEditor.tsx +4 -4
  130. package/src/components/editor/editor-group/GrammarTextEditor.tsx +5 -5
  131. package/src/components/editor/editor-group/RuntimeEditor.tsx +6 -6
  132. package/src/components/editor/editor-group/data-editor/DataElementEditor.tsx +4 -4
  133. package/src/components/editor/editor-group/diff-editor/EntityChangeConflictEditor.tsx +2 -1
  134. package/src/components/editor/editor-group/element-generation-editor/FileGenerationEditor.tsx +2 -2
  135. package/src/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_BindingElementEditor.tsx +2 -2
  136. package/src/components/editor/editor-group/function-activator/FunctionEditor.tsx +16 -7
  137. package/src/components/editor/editor-group/function-activator/HostedServiceFunctionActivatorEditor.tsx +12 -5
  138. package/src/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.tsx +6 -4
  139. package/src/components/editor/editor-group/mapping-editor/FlatDataPropertyMappingEditor.tsx +21 -11
  140. package/src/components/editor/editor-group/mapping-editor/FlatDataRecordTypeTree.tsx +6 -5
  141. package/src/components/editor/editor-group/mapping-editor/InstanceSetImplementationEditor.tsx +2 -2
  142. package/src/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.tsx +7 -4
  143. package/src/components/editor/editor-group/mapping-editor/MappingExplorer.tsx +14 -8
  144. package/src/components/editor/editor-group/mapping-editor/MappingTestsExplorer.tsx +2 -2
  145. package/src/components/editor/editor-group/mapping-editor/OperationSetImplementationEditor.tsx +2 -2
  146. package/src/components/editor/editor-group/mapping-editor/PurePropertyMappingEditor.tsx +23 -15
  147. package/src/components/editor/editor-group/mapping-editor/TypeTree.tsx +6 -3
  148. package/src/components/editor/editor-group/mapping-editor/legacy/DEPRECATED__MappingTestEditor.tsx +2 -2
  149. package/src/components/editor/editor-group/mapping-editor/relational/RelationalPropertyMappingEditor.tsx +21 -14
  150. package/src/components/editor/editor-group/mapping-editor/relational/TableOrViewSourceTree.tsx +6 -3
  151. package/src/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.tsx +1 -2
  152. package/src/components/editor/editor-group/service-editor/ServiceExecutionEditor.tsx +2 -2
  153. package/src/components/editor/editor-group/service-editor/ServiceExecutionQueryEditor.tsx +0 -1
  154. package/src/components/editor/editor-group/uml-editor/AssociationEditor.tsx +4 -4
  155. package/src/components/editor/editor-group/uml-editor/ClassEditor.tsx +10 -10
  156. package/src/components/editor/editor-group/uml-editor/EnumerationEditor.tsx +8 -8
  157. package/src/components/editor/editor-group/uml-editor/PropertyEditor.tsx +4 -4
  158. package/src/components/editor/panel-group/SQLPlaygroundPanel.tsx +7 -8
  159. package/src/components/editor/side-bar/CreateNewElementModal.tsx +2 -4
  160. package/src/components/editor/side-bar/Explorer.tsx +5 -2
  161. package/src/components/editor/side-bar/LocalChanges.tsx +10 -15
  162. package/src/components/editor/side-bar/WorkspaceReview.tsx +8 -11
  163. package/src/components/editor/side-bar/WorkspaceSyncConflictResolver.tsx +10 -15
  164. package/src/components/editor/side-bar/WorkspaceUpdateConflictResolver.tsx +10 -15
  165. package/src/components/editor/side-bar/WorkspaceUpdater.tsx +2 -4
  166. package/src/components/editor/side-bar/end-to-end-workflow/EndToEndWorkflows.tsx +1 -1
  167. package/src/components/editor/side-bar/testable/GlobalTestRunner.tsx +1 -1
  168. package/src/components/project-reviewer/ProjectReviewSideBar.tsx +8 -11
  169. package/src/stores/editor/editor-state/GraphGenerationState.ts +1 -2
  170. package/src/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.ts +5 -6
  171. package/src/stores/editor/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.ts +3 -3
  172. package/src/stores/editor/sidebar-state/WorkflowManagerState.ts +3 -5
  173. package/src/stores/editor/utils/FileSystemTreeUtils.ts +1 -2
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { useCallback } from 'react';
17
+ import { useCallback, useRef } from 'react';
18
18
  import { observer } from 'mobx-react-lite';
19
19
  import {
20
20
  type FlatDataPropertyMappingTransformDropTarget,
@@ -55,7 +55,7 @@ import { InlineLambdaEditor } from '@finos/legend-query-builder';
55
55
  const SimplePropertyMappingEditor = observer(
56
56
  (props: {
57
57
  propertyMappingState: FlatDataPropertyMappingState;
58
- drop?: ConnectDropTarget | undefined;
58
+ dropConnector?: ConnectDropTarget | undefined;
59
59
  dragItem?: FlatDataPropertyMappingTransformDropTarget | undefined;
60
60
  transformProps: {
61
61
  disableTransform: boolean;
@@ -63,7 +63,10 @@ const SimplePropertyMappingEditor = observer(
63
63
  };
64
64
  isReadOnly: boolean;
65
65
  }) => {
66
- const { propertyMappingState, drop, dragItem, transformProps } = props;
66
+ const { propertyMappingState, dropConnector, dragItem, transformProps } =
67
+ props;
68
+ const ref = useRef<HTMLDivElement>(null);
69
+ dropConnector?.(ref);
67
70
  const propertyMapping = propertyMappingState.propertyMapping;
68
71
  const expectedType =
69
72
  propertyMapping.property.value.genericType.value.rawType;
@@ -82,7 +85,7 @@ const SimplePropertyMappingEditor = observer(
82
85
 
83
86
  return (
84
87
  <div className="property-mapping-editor__entry__container">
85
- <div ref={drop} className="property-mapping-editor__entry">
88
+ <div ref={ref} className="property-mapping-editor__entry">
86
89
  <InlineLambdaEditor
87
90
  className={clsx({ 'lambda-editor--dnd-match': canDrop })}
88
91
  disabled={transformProps.disableTransform}
@@ -101,7 +104,7 @@ const SimplePropertyMappingEditor = observer(
101
104
  const EnumerationPropertyMappingEditor = observer(
102
105
  (props: {
103
106
  propertyMappingState: FlatDataPropertyMappingState;
104
- drop?: ConnectDropTarget | undefined;
107
+ dropConnector?: ConnectDropTarget | undefined;
105
108
  dragItem?: FlatDataPropertyMappingTransformDropTarget | undefined;
106
109
  transformProps: {
107
110
  disableTransform: boolean;
@@ -109,8 +112,15 @@ const EnumerationPropertyMappingEditor = observer(
109
112
  };
110
113
  isReadOnly: boolean;
111
114
  }) => {
112
- const { propertyMappingState, drop, dragItem, transformProps, isReadOnly } =
113
- props;
115
+ const {
116
+ propertyMappingState,
117
+ dropConnector,
118
+ dragItem,
119
+ transformProps,
120
+ isReadOnly,
121
+ } = props;
122
+ const ref = useRef<HTMLDivElement>(null);
123
+ dropConnector?.(ref);
114
124
  const editorStore = useEditorStore();
115
125
  const mappingEditorState =
116
126
  editorStore.tabManagerState.getCurrentEditorState(MappingEditorState);
@@ -186,7 +196,7 @@ const EnumerationPropertyMappingEditor = observer(
186
196
 
187
197
  return (
188
198
  <div className="property-mapping-editor__entry__container">
189
- <div ref={drop} className="property-mapping-editor__entry">
199
+ <div ref={ref} className="property-mapping-editor__entry">
190
200
  <div className="property-mapping-editor__entry__enumeration-mapping-selector">
191
201
  <CustomSelectorInput
192
202
  disabled={options.length <= 1 || isReadOnly}
@@ -262,7 +272,7 @@ export const FlatDataPropertyMappingEditor = observer(
262
272
  },
263
273
  [disableEditingTransform, flatDataPropertyMappingState],
264
274
  );
265
- const [{ dragItem }, drop] = useDrop<
275
+ const [{ dragItem }, dropConnector] = useDrop<
266
276
  FlatDataColumnDragSource,
267
277
  void,
268
278
  { dragItem: FlatDataColumnDragSource | undefined }
@@ -294,7 +304,7 @@ export const FlatDataPropertyMappingEditor = observer(
294
304
  return (
295
305
  <SimplePropertyMappingEditor
296
306
  propertyMappingState={flatDataPropertyMappingState}
297
- drop={drop}
307
+ dropConnector={dropConnector}
298
308
  dragItem={dragItem}
299
309
  transformProps={transformProps}
300
310
  isReadOnly={isReadOnly}
@@ -304,7 +314,7 @@ export const FlatDataPropertyMappingEditor = observer(
304
314
  return (
305
315
  <EnumerationPropertyMappingEditor
306
316
  propertyMappingState={flatDataPropertyMappingState}
307
- drop={drop}
317
+ dropConnector={dropConnector}
308
318
  dragItem={dragItem}
309
319
  transformProps={transformProps}
310
320
  isReadOnly={isReadOnly}
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { useState, useEffect } from 'react';
17
+ import { useState, useEffect, useRef } from 'react';
18
18
  import { useDrag } from 'react-dnd';
19
19
  import {
20
20
  type TreeNodeContainerProps,
@@ -55,8 +55,7 @@ const getRecordTypeTreeData = (
55
55
  const rootIds: string[] = [];
56
56
  const nodes = new Map<string, FlatDataRecordTypeTreeNodeData>();
57
57
  recordType.fields
58
- .slice()
59
- .sort((a, b) => a.label.toString().localeCompare(b.label.toString()))
58
+ .toSorted((a, b) => a.label.toString().localeCompare(b.label.toString()))
60
59
  .forEach((field) => {
61
60
  const recordTypeTreeNodeData = getRecordTypeTreeNodeData(
62
61
  field,
@@ -76,22 +75,24 @@ const RecordFieldTreeNodeContainer: React.FC<
76
75
  > = (props) => {
77
76
  const { node, level, stepPaddingInRem, onNodeSelect, innerProps } = props;
78
77
  const { selectedType } = innerProps;
79
- const [, dragRef] = useDrag(
78
+ const [, dragConnector] = useDrag(
80
79
  () => ({
81
80
  type: CORE_DND_TYPE.TYPE_TREE_PRIMITIVE,
82
81
  item: new FlatDataColumnDragSource(node),
83
82
  }),
84
83
  [node],
85
84
  );
85
+ const ref = useRef<HTMLDivElement>(null);
86
+ dragConnector(ref);
86
87
  const nodeTypeIcon = <PURE_PrimitiveTypeIcon />;
87
88
  const selectNode = (): void => onNodeSelect?.(node);
88
89
  const primitiveType = node.field.flatDataDataType._correspondingPrimitiveType;
89
90
 
90
91
  return (
91
92
  <div
93
+ ref={ref}
92
94
  className="tree-view__node__container"
93
95
  onClick={selectNode}
94
- ref={dragRef}
95
96
  style={{
96
97
  paddingLeft: `${(level - 1) * (stepPaddingInRem ?? 1)}rem`,
97
98
  display: 'flex',
@@ -250,7 +250,7 @@ export const InstanceSetImplementationSourceExplorer = observer(
250
250
  setImplementation,
251
251
  ],
252
252
  );
253
- const [{ isDragOver, canDrop }, dropRef] = useDrop<
253
+ const [{ isDragOver, canDrop }, dropConnector] = useDrop<
254
254
  ElementDragSource,
255
255
  void,
256
256
  { isDragOver: boolean; canDrop: boolean }
@@ -328,7 +328,7 @@ export const InstanceSetImplementationSourceExplorer = observer(
328
328
  </PanelHeader>
329
329
  <PanelContent>
330
330
  <PanelDropZone
331
- dropTargetConnector={dropRef}
331
+ dropTargetConnector={dropConnector}
332
332
  isDragOver={isDragOver && !isReadOnly}
333
333
  >
334
334
  {!isUnsupported && (
@@ -356,7 +356,7 @@ const MappingExecutionQueryEditor = observer(
356
356
  },
357
357
  [changeClassMapping],
358
358
  );
359
- const [{ isDragOver, canDrop }, dropRef] = useDrop<
359
+ const [{ isDragOver, canDrop }, dropConnector] = useDrop<
360
360
  MappingElementDragSource,
361
361
  void,
362
362
  { isDragOver: boolean; canDrop: boolean }
@@ -406,7 +406,7 @@ const MappingExecutionQueryEditor = observer(
406
406
  {isStubbed_RawLambda(queryState.query) && (
407
407
  <PanelContent>
408
408
  <PanelDropZone
409
- dropTargetConnector={dropRef}
409
+ dropTargetConnector={dropConnector}
410
410
  isDragOver={isDragOver}
411
411
  >
412
412
  <BlankPanelPlaceholder
@@ -515,7 +515,7 @@ export const MappingExecutionEmptyInputDataBuilder = observer(
515
515
  },
516
516
  [changeClassMapping],
517
517
  );
518
- const [{ isDragOver, canDrop }, dropRef] = useDrop<
518
+ const [{ isDragOver, canDrop }, dropConnector] = useDrop<
519
519
  MappingElementDragSource,
520
520
  void,
521
521
  { isDragOver: boolean; canDrop: boolean }
@@ -533,7 +533,10 @@ export const MappingExecutionEmptyInputDataBuilder = observer(
533
533
 
534
534
  return (
535
535
  <PanelContent>
536
- <PanelDropZone dropTargetConnector={dropRef} isDragOver={isDragOver}>
536
+ <PanelDropZone
537
+ dropTargetConnector={dropConnector}
538
+ isDragOver={isDragOver}
539
+ >
537
540
  <BlankPanelPlaceholder
538
541
  text="Choose a class mapping"
539
542
  onClick={showClassMappingSelectorModal}
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { useState, useCallback, forwardRef } from 'react';
17
+ import { useState, useCallback, forwardRef, useRef } from 'react';
18
18
  import { observer } from 'mobx-react-lite';
19
19
  import {
20
20
  type MappingExplorerDropTarget,
@@ -223,7 +223,7 @@ export const MappingElementExplorer = observer(
223
223
  mappingEditorState.openMappingElement(mappingElement, false);
224
224
  const mappingElementTarget = getMappingElementTarget(mappingElement);
225
225
  // Drag and Drop
226
- const [, dragRef] = useDrag(
226
+ const [, dragConnector] = useDrag(
227
227
  () => ({
228
228
  type:
229
229
  mappingElement instanceof SetImplementation
@@ -233,6 +233,9 @@ export const MappingElementExplorer = observer(
233
233
  }),
234
234
  [mappingElement],
235
235
  );
236
+ const ref = useRef<HTMLDivElement>(null);
237
+ dragConnector(ref);
238
+
236
239
  // Selection
237
240
  const isActive =
238
241
  currentMappingElement?.id.value === mappingElement.id.value;
@@ -255,7 +258,7 @@ export const MappingElementExplorer = observer(
255
258
  onClose={onContextMenuClose}
256
259
  >
257
260
  <div
258
- ref={dragRef}
261
+ ref={ref}
259
262
  className={clsx(
260
263
  'mapping-explorer__item',
261
264
  {
@@ -328,7 +331,7 @@ const MappingElementTreeNodeContainer = observer(
328
331
  mappingElementTarget.name
329
332
  }'`;
330
333
  // Drag and Drop
331
- const [, dragRef] = useDrag(
334
+ const [, dragConnector] = useDrag(
332
335
  () => ({
333
336
  type:
334
337
  mappingElement instanceof SetImplementation
@@ -338,9 +341,12 @@ const MappingElementTreeNodeContainer = observer(
338
341
  }),
339
342
  [mappingElement],
340
343
  );
344
+ const ref = useRef<HTMLDivElement>(null);
345
+ dragConnector(ref);
346
+
347
+ // Selection
341
348
  const selectNode = (): void => onNodeSelect?.(node);
342
349
  const onExpandIconClick = (): void => onNodeExpand(node);
343
- // Selection
344
350
  const isActive =
345
351
  currentMappingElement?.id.value === mappingElement.id.value;
346
352
  const [isSelectedFromContextMenu, setIsSelectedFromContextMenu] =
@@ -366,7 +372,7 @@ const MappingElementTreeNodeContainer = observer(
366
372
  { 'mapping-explorer__item--active': isActive },
367
373
  )}
368
374
  onClick={selectNode}
369
- ref={dragRef}
375
+ ref={ref}
370
376
  style={{
371
377
  paddingLeft: `${(level - 1) * (stepPaddingInRem ?? 1) + 0.5}rem`,
372
378
  display: 'flex',
@@ -435,7 +441,7 @@ export const MappingExplorer = observer((props: { isReadOnly: boolean }) => {
435
441
  }),
436
442
  [isReadOnly, mappingEditorState],
437
443
  );
438
- const [{ isDragOver }, dropRef] = useDrop<
444
+ const [{ isDragOver }, dropConnector] = useDrop<
439
445
  ElementDragSource,
440
446
  void,
441
447
  { isDragOver: boolean }
@@ -541,7 +547,7 @@ export const MappingExplorer = observer((props: { isReadOnly: boolean }) => {
541
547
  >
542
548
  <PanelDropZone
543
549
  isDragOver={isDragOver && !isReadOnly}
544
- dropTargetConnector={dropRef}
550
+ dropTargetConnector={dropConnector}
545
551
  >
546
552
  <div className="mapping-explorer__content">
547
553
  <TreeView
@@ -346,7 +346,7 @@ export const MappingTestsExplorer = observer(
346
346
  },
347
347
  [applicationStore.alertUnhandledError, isReadOnly, mappingEditorState],
348
348
  );
349
- const [{ isDragOver }, dropRef] = useDrop<
349
+ const [{ isDragOver }, dropConnector] = useDrop<
350
350
  MappingElementDragSource,
351
351
  void,
352
352
  { isDragOver: boolean }
@@ -471,7 +471,7 @@ export const MappingTestsExplorer = observer(
471
471
  >
472
472
  <PanelDropZone
473
473
  isDragOver={isDragOver && !isReadOnly}
474
- dropTargetConnector={dropRef}
474
+ dropTargetConnector={dropConnector}
475
475
  >
476
476
  <div className="mapping-test-explorer__content">
477
477
  {Boolean(
@@ -152,7 +152,7 @@ export const OperationSetImplementationEditor = observer(
152
152
  },
153
153
  [setImplementation],
154
154
  );
155
- const [{ isDragOver }, dropRef] = useDrop<
155
+ const [{ isDragOver }, dropConnector] = useDrop<
156
156
  MappingElementDragSource,
157
157
  void,
158
158
  { isDragOver: boolean }
@@ -221,7 +221,7 @@ export const OperationSetImplementationEditor = observer(
221
221
  </PanelHeader>
222
222
  <PanelDropZone
223
223
  isDragOver={isDragOver && !isReadOnly}
224
- dropTargetConnector={dropRef}
224
+ dropTargetConnector={dropConnector}
225
225
  >
226
226
  <PanelContent>
227
227
  {setImplementation.parameters.map((param) => (
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { useCallback } from 'react';
17
+ import { useCallback, useRef } from 'react';
18
18
  import { observer } from 'mobx-react-lite';
19
19
  import {
20
20
  type TransformDropTarget,
@@ -55,7 +55,7 @@ import { InlineLambdaEditor } from '@finos/legend-query-builder';
55
55
  const SimplePropertyMappingEditor = observer(
56
56
  (props: {
57
57
  propertyMappingState: PurePropertyMappingState;
58
- drop?: ConnectDropTarget | undefined;
58
+ dropConnector?: ConnectDropTarget | undefined;
59
59
  dragItem?: TransformDropTarget | undefined;
60
60
  transformProps: {
61
61
  disableTransform: boolean;
@@ -63,7 +63,10 @@ const SimplePropertyMappingEditor = observer(
63
63
  };
64
64
  isReadOnly: boolean;
65
65
  }) => {
66
- const { propertyMappingState, transformProps, drop, dragItem } = props;
66
+ const { propertyMappingState, transformProps, dropConnector, dragItem } =
67
+ props;
68
+ const ref = useRef<HTMLDivElement>(null);
69
+ dropConnector?.(ref);
67
70
  const propertyMapping = propertyMappingState.propertyMapping;
68
71
  const expectedType =
69
72
  propertyMapping.property.value.genericType.value.rawType;
@@ -81,7 +84,7 @@ const SimplePropertyMappingEditor = observer(
81
84
 
82
85
  return (
83
86
  <div className="property-mapping-editor__entry__container">
84
- <div ref={drop} className="property-mapping-editor__entry">
87
+ <div ref={ref} className="property-mapping-editor__entry">
85
88
  <InlineLambdaEditor
86
89
  className={clsx({ 'lambda-editor--dnd-match': canDrop })}
87
90
  disabled={transformProps.disableTransform}
@@ -100,7 +103,7 @@ const SimplePropertyMappingEditor = observer(
100
103
  const EnumerationPropertyMappingEditor = observer(
101
104
  (props: {
102
105
  propertyMappingState: PurePropertyMappingState;
103
- drop?: ConnectDropTarget | undefined;
106
+ dropConnector?: ConnectDropTarget | undefined;
104
107
  dragItem?: TransformDropTarget | undefined;
105
108
  dragItemType: string;
106
109
  transformProps: {
@@ -111,7 +114,7 @@ const EnumerationPropertyMappingEditor = observer(
111
114
  }) => {
112
115
  const {
113
116
  propertyMappingState,
114
- drop,
117
+ dropConnector,
115
118
  dragItem,
116
119
  dragItemType,
117
120
  transformProps,
@@ -180,7 +183,10 @@ const EnumerationPropertyMappingEditor = observer(
180
183
  }
181
184
  }
182
185
  };
186
+
183
187
  // DnD
188
+ const ref = useRef<HTMLDivElement>(null);
189
+ dropConnector?.(ref);
184
190
  // NOTE: when we drag enum, we should highlight if the enumeration where that enum is part of matches
185
191
  const canDrop =
186
192
  dragItem &&
@@ -190,7 +196,7 @@ const EnumerationPropertyMappingEditor = observer(
190
196
 
191
197
  return (
192
198
  <div className="property-mapping-editor__entry__container">
193
- <div ref={drop} className="property-mapping-editor__entry">
199
+ <div ref={ref} className="property-mapping-editor__entry">
194
200
  <div className="property-mapping-editor__entry__enumeration-mapping-selector">
195
201
  <CustomSelectorInput
196
202
  disabled={options.length <= 1 || isReadOnly}
@@ -237,7 +243,7 @@ const EnumerationPropertyMappingEditor = observer(
237
243
  const ClassPropertyMappingEditor = observer(
238
244
  (props: {
239
245
  propertyMappingState: PurePropertyMappingState;
240
- drop?: ConnectDropTarget | undefined;
246
+ dropConnector?: ConnectDropTarget | undefined;
241
247
  dragItem?: TransformDropTarget | undefined;
242
248
  transformProps: {
243
249
  disableTransform: boolean;
@@ -245,7 +251,8 @@ const ClassPropertyMappingEditor = observer(
245
251
  };
246
252
  isReadOnly: boolean;
247
253
  }) => {
248
- const { propertyMappingState, drop, dragItem, transformProps } = props;
254
+ const { propertyMappingState, dropConnector, dragItem, transformProps } =
255
+ props;
249
256
  const editorStore = useEditorStore();
250
257
  const mappingEditorState =
251
258
  editorStore.tabManagerState.getCurrentEditorState(MappingEditorState);
@@ -280,12 +287,13 @@ const ClassPropertyMappingEditor = observer(
280
287
  }
281
288
  };
282
289
  // Drag and Drop
283
-
290
+ const ref = useRef<HTMLDivElement>(null);
291
+ dropConnector?.(ref);
284
292
  const canDrop = dragItem?.data?.type && dragItem.data.type === expectedType;
285
293
 
286
294
  return (
287
295
  <div className="property-mapping-editor__entry__container">
288
- <div ref={drop} className="property-mapping-editor__entry">
296
+ <div ref={ref} className="property-mapping-editor__entry">
289
297
  <div className="property-mapping-editor__entry__id">
290
298
  <div
291
299
  className={clsx('property-mapping-editor__entry__id__label', {
@@ -362,7 +370,7 @@ export const PurePropertyMappingEditor = observer(
362
370
  },
363
371
  [disableEditingTransform, purePropertyMappingState],
364
372
  );
365
- const [{ dragItem, dragItemType }, drop] = useDrop<
373
+ const [{ dragItem, dragItemType }, dropConnector] = useDrop<
366
374
  TypeDragSource,
367
375
  void,
368
376
  {
@@ -402,7 +410,7 @@ export const PurePropertyMappingEditor = observer(
402
410
  return (
403
411
  <SimplePropertyMappingEditor
404
412
  propertyMappingState={purePropertyMappingState}
405
- drop={drop}
413
+ dropConnector={dropConnector}
406
414
  dragItem={dragItem}
407
415
  transformProps={transformProps}
408
416
  isReadOnly={isReadOnly}
@@ -412,7 +420,7 @@ export const PurePropertyMappingEditor = observer(
412
420
  return (
413
421
  <EnumerationPropertyMappingEditor
414
422
  propertyMappingState={purePropertyMappingState}
415
- drop={drop}
423
+ dropConnector={dropConnector}
416
424
  dragItem={dragItem}
417
425
  dragItemType={dragItemType}
418
426
  transformProps={transformProps}
@@ -423,7 +431,7 @@ export const PurePropertyMappingEditor = observer(
423
431
  return (
424
432
  <ClassPropertyMappingEditor
425
433
  propertyMappingState={purePropertyMappingState}
426
- drop={drop}
434
+ dropConnector={dropConnector}
427
435
  dragItem={dragItem}
428
436
  transformProps={transformProps}
429
437
  isReadOnly={isReadOnly}
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { useState, useEffect } from 'react';
17
+ import { useState, useEffect, useRef } from 'react';
18
18
  import {
19
19
  isNonNullable,
20
20
  IllegalStateError,
@@ -159,10 +159,13 @@ const TypeTreeNodeContainer: React.FC<
159
159
  > = (props) => {
160
160
  const { node, level, stepPaddingInRem, onNodeSelect, innerProps } = props;
161
161
  const { selectedType } = innerProps;
162
- const [, dragRef] = useDrag(
162
+ const [, dragConnector] = useDrag(
163
163
  () => ({ type: node.dndType, item: new TypeDragSource(node) }),
164
164
  [node],
165
165
  );
166
+ const ref = useRef<HTMLDivElement>(null);
167
+ dragConnector(ref);
168
+
166
169
  const isExpandable = Boolean(node.childrenIds?.length);
167
170
  const nodeTypeIcon = node.type ? (
168
171
  getClassPropertyIcon(node.type)
@@ -186,7 +189,7 @@ const TypeTreeNodeContainer: React.FC<
186
189
  'type-tree__node__container--highlighted': node.type === selectedType,
187
190
  })}
188
191
  onClick={selectNode}
189
- ref={dragRef}
192
+ ref={ref}
190
193
  style={{
191
194
  paddingLeft: `${(level - 1) * (stepPaddingInRem ?? 1)}rem`,
192
195
  display: 'flex',
@@ -232,7 +232,7 @@ const MappingTestQueryEditor = observer(
232
232
  },
233
233
  [changeClassMapping],
234
234
  );
235
- const [{ isDragOver, canDrop }, dropRef] = useDrop<
235
+ const [{ isDragOver, canDrop }, dropConnector] = useDrop<
236
236
  MappingElementDragSource,
237
237
  void,
238
238
  { isDragOver: boolean; canDrop: boolean }
@@ -314,7 +314,7 @@ const MappingTestQueryEditor = observer(
314
314
  {isStubbed_RawLambda(queryState.query) && (
315
315
  <PanelContent>
316
316
  <PanelDropZone
317
- dropTargetConnector={dropRef}
317
+ dropTargetConnector={dropConnector}
318
318
  isDragOver={isDragOver}
319
319
  >
320
320
  <BlankPanelPlaceholder
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { useCallback } from 'react';
17
+ import { useCallback, useRef } from 'react';
18
18
  import { observer } from 'mobx-react-lite';
19
19
  import {
20
20
  EmbeddedRelationalInstanceSetImplementationState,
@@ -56,17 +56,19 @@ import { InlineLambdaEditor } from '@finos/legend-query-builder';
56
56
  const SimplePropertyMappingEditor = observer(
57
57
  (props: {
58
58
  propertyMappingState: RelationalPropertyMappingState;
59
- drop?: ConnectDropTarget;
59
+ dropConnector?: ConnectDropTarget;
60
60
  transformProps: {
61
61
  disableTransform: boolean;
62
62
  forceBackdrop: boolean;
63
63
  };
64
64
  isReadOnly: boolean;
65
65
  }) => {
66
- const { propertyMappingState, drop, transformProps } = props;
66
+ const { propertyMappingState, dropConnector, transformProps } = props;
67
+ const ref = useRef<HTMLDivElement>(null);
68
+ dropConnector?.(ref);
67
69
  return (
68
70
  <div className="property-mapping-editor__entry__container">
69
- <div ref={drop} className="property-mapping-editor__entry">
71
+ <div ref={ref} className="property-mapping-editor__entry">
70
72
  <InlineLambdaEditor
71
73
  disabled={transformProps.disableTransform}
72
74
  lambdaEditorState={propertyMappingState}
@@ -81,14 +83,17 @@ const SimplePropertyMappingEditor = observer(
81
83
  const EnumerationPropertyMappingEditor = observer(
82
84
  (props: {
83
85
  propertyMappingState: RelationalPropertyMappingState;
84
- drop?: ConnectDropTarget;
86
+ dropConnector?: ConnectDropTarget;
85
87
  transformProps: {
86
88
  disableTransform: boolean;
87
89
  forceBackdrop: boolean;
88
90
  };
89
91
  isReadOnly: boolean;
90
92
  }) => {
91
- const { propertyMappingState, drop, transformProps, isReadOnly } = props;
93
+ const { propertyMappingState, dropConnector, transformProps, isReadOnly } =
94
+ props;
95
+ const ref = useRef<HTMLDivElement>(null);
96
+ dropConnector?.(ref);
92
97
  const editorStore = useEditorStore();
93
98
  const mappingEditorState =
94
99
  editorStore.tabManagerState.getCurrentEditorState(MappingEditorState);
@@ -149,7 +154,7 @@ const EnumerationPropertyMappingEditor = observer(
149
154
 
150
155
  return (
151
156
  <div className="property-mapping-editor__entry__container">
152
- <div ref={drop} className="property-mapping-editor__entry">
157
+ <div ref={ref} className="property-mapping-editor__entry">
153
158
  <div className="property-mapping-editor__entry__enumeration-mapping-selector">
154
159
  <CustomSelectorInput
155
160
  disabled={options.length <= 1 || isReadOnly}
@@ -192,14 +197,16 @@ const EnumerationPropertyMappingEditor = observer(
192
197
  const ClassPropertyMappingEditor = observer(
193
198
  (props: {
194
199
  propertyMappingState: RelationalPropertyMappingState;
195
- drop?: ConnectDropTarget;
200
+ dropConnector?: ConnectDropTarget;
196
201
  transformProps: {
197
202
  disableTransform: boolean;
198
203
  forceBackdrop: boolean;
199
204
  };
200
205
  isReadOnly: boolean;
201
206
  }) => {
202
- const { propertyMappingState, drop, transformProps } = props;
207
+ const { propertyMappingState, dropConnector, transformProps } = props;
208
+ const ref = useRef<HTMLDivElement>(null);
209
+ dropConnector?.(ref);
203
210
  const editorStore = useEditorStore();
204
211
  const mappingEditorState =
205
212
  editorStore.tabManagerState.getCurrentEditorState(MappingEditorState);
@@ -237,7 +244,7 @@ const ClassPropertyMappingEditor = observer(
237
244
 
238
245
  return (
239
246
  <div className="property-mapping-editor__entry__container">
240
- <div ref={drop} className="property-mapping-editor__entry">
247
+ <div ref={ref} className="property-mapping-editor__entry">
241
248
  <div className="property-mapping-editor__entry__id">
242
249
  <div
243
250
  className={clsx('property-mapping-editor__entry__id__label', {
@@ -302,7 +309,7 @@ export const RelationalPropertyMappingEditor = observer(
302
309
  },
303
310
  [disableEditingTransform, relationalPropertyMappingState],
304
311
  );
305
- const [, drop] = useDrop<TableOrViewTreeNodeDragSource>(
312
+ const [, dropConnector] = useDrop<TableOrViewTreeNodeDragSource>(
306
313
  () => ({
307
314
  accept: [TABLE_ELEMENT_DND_TYPE],
308
315
  drop: (item) => handleDrop(item),
@@ -326,7 +333,7 @@ export const RelationalPropertyMappingEditor = observer(
326
333
  return (
327
334
  <SimplePropertyMappingEditor
328
335
  propertyMappingState={relationalPropertyMappingState}
329
- drop={drop}
336
+ dropConnector={dropConnector}
330
337
  transformProps={transformProps}
331
338
  isReadOnly={isReadOnly}
332
339
  />
@@ -335,7 +342,7 @@ export const RelationalPropertyMappingEditor = observer(
335
342
  return (
336
343
  <EnumerationPropertyMappingEditor
337
344
  propertyMappingState={relationalPropertyMappingState}
338
- drop={drop}
345
+ dropConnector={dropConnector}
339
346
  transformProps={transformProps}
340
347
  isReadOnly={isReadOnly}
341
348
  />
@@ -355,7 +362,7 @@ export const RelationalPropertyMappingEditor = observer(
355
362
  return (
356
363
  <ClassPropertyMappingEditor
357
364
  propertyMappingState={relationalPropertyMappingState}
358
- drop={drop}
365
+ dropConnector={dropConnector}
359
366
  transformProps={transformProps}
360
367
  isReadOnly={isReadOnly}
361
368
  />
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { useState, useEffect } from 'react';
17
+ import { useState, useEffect, useRef } from 'react';
18
18
  import { useDrag } from 'react-dnd';
19
19
  import {
20
20
  type TreeNodeContainerProps,
@@ -245,13 +245,16 @@ const RelationalOperationElementTreeNodeContainer: React.FC<
245
245
  >
246
246
  > = (props) => {
247
247
  const { node, level, stepPaddingInRem, onNodeSelect } = props;
248
- const [, dragRef] = useDrag(
248
+ const [, dragConnector] = useDrag(
249
249
  () => ({
250
250
  type: TABLE_ELEMENT_DND_TYPE,
251
251
  item: new TableOrViewTreeNodeDragSource(node),
252
252
  }),
253
253
  [node],
254
254
  );
255
+ const ref = useRef<HTMLDivElement>(null);
256
+ dragConnector(ref);
257
+
255
258
  const isExpandable = Boolean(node.childrenIds?.length);
256
259
  const nodeTypeIcon =
257
260
  node instanceof ColumnNodeData ? (
@@ -274,7 +277,7 @@ const RelationalOperationElementTreeNodeContainer: React.FC<
274
277
  <div
275
278
  className="tree-view__node__container"
276
279
  onClick={selectNode}
277
- ref={dragRef}
280
+ ref={ref}
278
281
  style={{
279
282
  paddingLeft: `${(level - 1) * (stepPaddingInRem ?? 1)}rem`,
280
283
  display: 'flex',