@finos/legend-application-studio 28.18.39 → 28.18.41
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/__lib__/LegendStudioNavigation.d.ts +3 -3
- package/lib/__lib__/LegendStudioNavigation.d.ts.map +1 -1
- package/lib/__lib__/LegendStudioNavigation.js +3 -3
- package/lib/__lib__/LegendStudioNavigation.js.map +1 -1
- package/lib/components/LegendStudioWebApplication.d.ts.map +1 -1
- package/lib/components/LegendStudioWebApplication.js +12 -51
- package/lib/components/LegendStudioWebApplication.js.map +1 -1
- package/lib/components/editor/Editor.d.ts.map +1 -1
- package/lib/components/editor/Editor.js +1 -1
- package/lib/components/editor/Editor.js.map +1 -1
- package/lib/components/editor/QuickInput.d.ts.map +1 -1
- package/lib/components/editor/QuickInput.js +2 -2
- package/lib/components/editor/QuickInput.js.map +1 -1
- package/lib/components/editor/__test-utils__/EditorComponentTestUtils.d.ts.map +1 -1
- package/lib/components/editor/__test-utils__/EditorComponentTestUtils.js +7 -10
- package/lib/components/editor/__test-utils__/EditorComponentTestUtils.js.map +1 -1
- package/lib/components/editor/command-center/ProjectSearchCommand.d.ts.map +1 -1
- package/lib/components/editor/command-center/ProjectSearchCommand.js +2 -2
- package/lib/components/editor/command-center/ProjectSearchCommand.js.map +1 -1
- package/lib/components/editor/editor-group/GenerationSpecificationEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/GenerationSpecificationEditor.js +4 -1
- package/lib/components/editor/editor-group/GenerationSpecificationEditor.js.map +1 -1
- package/lib/components/editor/editor-group/RuntimeEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/RuntimeEditor.js +12 -10
- package/lib/components/editor/editor-group/RuntimeEditor.js.map +1 -1
- package/lib/components/editor/editor-group/connection-editor/RelationalDatabaseConnectionEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/connection-editor/RelationalDatabaseConnectionEditor.js +3 -4
- package/lib/components/editor/editor-group/connection-editor/RelationalDatabaseConnectionEditor.js.map +1 -1
- package/lib/components/editor/editor-group/data-editor/EmbeddedDataEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/data-editor/EmbeddedDataEditor.js +3 -3
- package/lib/components/editor/editor-group/data-editor/EmbeddedDataEditor.js.map +1 -1
- package/lib/components/editor/editor-group/database/IsolatedQueryDatabase.d.ts.map +1 -1
- package/lib/components/editor/editor-group/database/IsolatedQueryDatabase.js +3 -1
- package/lib/components/editor/editor-group/database/IsolatedQueryDatabase.js.map +1 -1
- package/lib/components/editor/editor-group/element-generation-editor/FileGenerationEditor.js +1 -1
- package/lib/components/editor/editor-group/element-generation-editor/FileGenerationEditor.js.map +1 -1
- package/lib/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_BindingElementEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_BindingElementEditor.js +19 -13
- package/lib/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_BindingElementEditor.js.map +1 -1
- package/lib/components/editor/editor-group/function-activator/FunctionEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/function-activator/FunctionEditor.js +9 -6
- package/lib/components/editor/editor-group/function-activator/FunctionEditor.js.map +1 -1
- package/lib/components/editor/editor-group/function-activator/HostedServiceFunctionActivatorEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/function-activator/HostedServiceFunctionActivatorEditor.js +1 -1
- package/lib/components/editor/editor-group/function-activator/HostedServiceFunctionActivatorEditor.js.map +1 -1
- package/lib/components/editor/editor-group/function-activator/SnowflakeAppFunctionActivatorEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/function-activator/SnowflakeAppFunctionActivatorEditor.js +8 -6
- package/lib/components/editor/editor-group/function-activator/SnowflakeAppFunctionActivatorEditor.js.map +1 -1
- package/lib/components/editor/editor-group/function-activator/testable/FunctionTestableEditor.js +1 -1
- package/lib/components/editor/editor-group/function-activator/testable/FunctionTestableEditor.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.js +2 -2
- package/lib/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/FlatDataPropertyMappingEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/FlatDataPropertyMappingEditor.js +6 -2
- package/lib/components/editor/editor-group/mapping-editor/FlatDataPropertyMappingEditor.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/InstanceSetImplementationSourceSelectorModal.d.ts.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/InstanceSetImplementationSourceSelectorModal.js +10 -6
- package/lib/components/editor/editor-group/mapping-editor/InstanceSetImplementationSourceSelectorModal.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.js +2 -2
- package/lib/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/MappingExecutionQueryBuilder.d.ts.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/MappingExecutionQueryBuilder.js +3 -1
- package/lib/components/editor/editor-group/mapping-editor/MappingExecutionQueryBuilder.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.js +2 -2
- package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/NewMappingElementModal.d.ts.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/NewMappingElementModal.js +7 -4
- package/lib/components/editor/editor-group/mapping-editor/NewMappingElementModal.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/OperationSetImplementationEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/OperationSetImplementationEditor.js +2 -2
- package/lib/components/editor/editor-group/mapping-editor/OperationSetImplementationEditor.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/PurePropertyMappingEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/PurePropertyMappingEditor.js +6 -2
- package/lib/components/editor/editor-group/mapping-editor/PurePropertyMappingEditor.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/relational/RelationalPropertyMappingEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/relational/RelationalPropertyMappingEditor.js +6 -2
- package/lib/components/editor/editor-group/mapping-editor/relational/RelationalPropertyMappingEditor.js.map +1 -1
- package/lib/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.js +3 -1
- package/lib/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.js.map +1 -1
- package/lib/components/editor/editor-group/service-editor/BulkServiceRegistrationEditor.js.map +1 -1
- package/lib/components/editor/editor-group/service-editor/ServiceEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/service-editor/ServiceEditor.js +2 -2
- package/lib/components/editor/editor-group/service-editor/ServiceEditor.js.map +1 -1
- package/lib/components/editor/editor-group/service-editor/ServiceExecutionEditor.js +2 -2
- package/lib/components/editor/editor-group/service-editor/ServiceExecutionEditor.js.map +1 -1
- package/lib/components/editor/editor-group/service-editor/ServicePostValidationEditor.js +1 -1
- package/lib/components/editor/editor-group/service-editor/ServicePostValidationEditor.js.map +1 -1
- package/lib/components/editor/editor-group/service-editor/ServiceRegistrationEditor.js.map +1 -1
- package/lib/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.js +3 -3
- package/lib/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.js.map +1 -1
- package/lib/components/editor/editor-group/uml-editor/AssociationEditor.js +1 -1
- package/lib/components/editor/editor-group/uml-editor/AssociationEditor.js.map +1 -1
- package/lib/components/editor/editor-group/uml-editor/ClassEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/uml-editor/ClassEditor.js +7 -4
- package/lib/components/editor/editor-group/uml-editor/ClassEditor.js.map +1 -1
- package/lib/components/editor/editor-group/uml-editor/PropertyEditor.js +1 -1
- package/lib/components/editor/editor-group/uml-editor/PropertyEditor.js.map +1 -1
- package/lib/components/editor/editor-group/uml-editor/StereotypeSelector.d.ts.map +1 -1
- package/lib/components/editor/editor-group/uml-editor/StereotypeSelector.js +2 -2
- package/lib/components/editor/editor-group/uml-editor/StereotypeSelector.js.map +1 -1
- package/lib/components/editor/editor-group/uml-editor/TaggedValueEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/uml-editor/TaggedValueEditor.js +2 -2
- package/lib/components/editor/editor-group/uml-editor/TaggedValueEditor.js.map +1 -1
- package/lib/components/editor/panel-group/SQLPlaygroundPanel.js +3 -3
- package/lib/components/editor/panel-group/SQLPlaygroundPanel.js.map +1 -1
- package/lib/components/editor/side-bar/CreateNewElementModal.d.ts.map +1 -1
- package/lib/components/editor/side-bar/CreateNewElementModal.js +8 -2
- package/lib/components/editor/side-bar/CreateNewElementModal.js.map +1 -1
- package/lib/components/editor/side-bar/Explorer.js +2 -2
- package/lib/components/editor/side-bar/Explorer.js.map +1 -1
- package/lib/components/editor/side-bar/ProjectOverview.d.ts.map +1 -1
- package/lib/components/editor/side-bar/ProjectOverview.js +3 -1
- package/lib/components/editor/side-bar/ProjectOverview.js.map +1 -1
- package/lib/components/lazy-text-editor/LazyTextEditor.d.ts.map +1 -1
- package/lib/components/lazy-text-editor/LazyTextEditor.js +1 -1
- package/lib/components/lazy-text-editor/LazyTextEditor.js.map +1 -1
- package/lib/components/project-reviewer/ProjectReviewer.d.ts.map +1 -1
- package/lib/components/project-reviewer/ProjectReviewer.js +3 -2
- package/lib/components/project-reviewer/ProjectReviewer.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/package.json +6 -6
- package/lib/stores/LegendStudioBaseStore.d.ts.map +1 -1
- package/lib/stores/LegendStudioBaseStore.js +12 -7
- package/lib/stores/LegendStudioBaseStore.js.map +1 -1
- package/lib/stores/editor/EditorStore.d.ts +1 -1
- package/lib/stores/editor/EditorStore.d.ts.map +1 -1
- package/lib/stores/editor/EditorStore.js +1 -1
- package/lib/stores/editor/EditorStore.js.map +1 -1
- package/lib/stores/showcase/ShowcaseViewerStore.js +1 -1
- package/lib/stores/showcase/ShowcaseViewerStore.js.map +1 -1
- package/package.json +18 -18
- package/src/__lib__/LegendStudioNavigation.ts +5 -5
- package/src/components/LegendStudioWebApplication.tsx +127 -106
- package/src/components/editor/Editor.tsx +2 -1
- package/src/components/editor/QuickInput.tsx +3 -2
- package/src/components/editor/__test-utils__/EditorComponentTestUtils.tsx +29 -30
- package/src/components/editor/command-center/ProjectSearchCommand.tsx +4 -3
- package/src/components/editor/editor-group/GenerationSpecificationEditor.tsx +7 -2
- package/src/components/editor/editor-group/RuntimeEditor.tsx +16 -12
- package/src/components/editor/editor-group/connection-editor/RelationalDatabaseConnectionEditor.tsx +7 -13
- package/src/components/editor/editor-group/data-editor/EmbeddedDataEditor.tsx +10 -9
- package/src/components/editor/editor-group/database/IsolatedQueryDatabase.tsx +5 -1
- package/src/components/editor/editor-group/element-generation-editor/FileGenerationEditor.tsx +1 -1
- package/src/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_BindingElementEditor.tsx +20 -14
- package/src/components/editor/editor-group/function-activator/FunctionEditor.tsx +11 -8
- package/src/components/editor/editor-group/function-activator/HostedServiceFunctionActivatorEditor.tsx +0 -1
- package/src/components/editor/editor-group/function-activator/SnowflakeAppFunctionActivatorEditor.tsx +11 -7
- package/src/components/editor/editor-group/function-activator/testable/FunctionTestableEditor.tsx +1 -1
- package/src/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.tsx +4 -4
- package/src/components/editor/editor-group/mapping-editor/FlatDataPropertyMappingEditor.tsx +9 -2
- package/src/components/editor/editor-group/mapping-editor/InstanceSetImplementationSourceSelectorModal.tsx +7 -6
- package/src/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.tsx +3 -3
- package/src/components/editor/editor-group/mapping-editor/MappingExecutionQueryBuilder.tsx +3 -0
- package/src/components/editor/editor-group/mapping-editor/MappingTestableEditor.tsx +2 -2
- package/src/components/editor/editor-group/mapping-editor/NewMappingElementModal.tsx +9 -5
- package/src/components/editor/editor-group/mapping-editor/OperationSetImplementationEditor.tsx +3 -2
- package/src/components/editor/editor-group/mapping-editor/PurePropertyMappingEditor.tsx +9 -2
- package/src/components/editor/editor-group/mapping-editor/relational/RelationalPropertyMappingEditor.tsx +9 -2
- package/src/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.tsx +7 -3
- package/src/components/editor/editor-group/service-editor/BulkServiceRegistrationEditor.tsx +1 -1
- package/src/components/editor/editor-group/service-editor/ServiceEditor.tsx +0 -2
- package/src/components/editor/editor-group/service-editor/ServiceExecutionEditor.tsx +5 -5
- package/src/components/editor/editor-group/service-editor/ServicePostValidationEditor.tsx +2 -2
- package/src/components/editor/editor-group/service-editor/ServiceRegistrationEditor.tsx +1 -1
- package/src/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.tsx +3 -3
- package/src/components/editor/editor-group/uml-editor/AssociationEditor.tsx +3 -3
- package/src/components/editor/editor-group/uml-editor/ClassEditor.tsx +10 -7
- package/src/components/editor/editor-group/uml-editor/PropertyEditor.tsx +1 -1
- package/src/components/editor/editor-group/uml-editor/StereotypeSelector.tsx +5 -3
- package/src/components/editor/editor-group/uml-editor/TaggedValueEditor.tsx +4 -3
- package/src/components/editor/panel-group/SQLPlaygroundPanel.tsx +4 -4
- package/src/components/editor/side-bar/CreateNewElementModal.tsx +12 -4
- package/src/components/editor/side-bar/Explorer.tsx +3 -3
- package/src/components/editor/side-bar/ProjectOverview.tsx +5 -1
- package/src/components/lazy-text-editor/LazyTextEditor.tsx +2 -1
- package/src/components/project-reviewer/ProjectReviewer.tsx +3 -2
- package/src/stores/LegendStudioBaseStore.ts +12 -7
- package/src/stores/editor/EditorStore.ts +2 -2
- package/src/stores/showcase/ShowcaseViewerStore.ts +1 -1
package/src/components/editor/editor-group/connection-editor/RelationalDatabaseConnectionEditor.tsx
CHANGED
@@ -1162,7 +1162,7 @@ const RelationalConnectionStoreEditor = observer(
|
|
1162
1162
|
const selectedStore = {
|
1163
1163
|
value: store,
|
1164
1164
|
label: isStoreEmpty ? noStoreLabel : store.path,
|
1165
|
-
}
|
1165
|
+
} as PackageableElementOption<Store>;
|
1166
1166
|
const onStoreChange = (
|
1167
1167
|
val: PackageableElementOption<Store> | null,
|
1168
1168
|
): void => {
|
@@ -1195,7 +1195,7 @@ const RelationalConnectionStoreEditor = observer(
|
|
1195
1195
|
.TEMPORARY__isLightColorThemeEnabled
|
1196
1196
|
}
|
1197
1197
|
disabled={isReadOnly}
|
1198
|
-
hasError={isStoreEmpty}
|
1198
|
+
hasError={Boolean(isStoreEmpty)}
|
1199
1199
|
/>
|
1200
1200
|
<PanelDivider />
|
1201
1201
|
<button
|
@@ -1885,21 +1885,15 @@ export const RelationalDatabaseConnectionEditor = observer(
|
|
1885
1885
|
}) => {
|
1886
1886
|
const { connectionValueState, isReadOnly } = props;
|
1887
1887
|
const selectedTab = connectionValueState.selectedTab;
|
1888
|
-
const changeTab =
|
1889
|
-
|
1890
|
-
|
1891
|
-
) =>
|
1892
|
-
(): void => {
|
1893
|
-
connectionValueState.setSelectedTab(
|
1894
|
-
tab as unknown as RELATIONAL_DATABASE_TAB_TYPE,
|
1895
|
-
);
|
1896
|
-
};
|
1888
|
+
const changeTab = (tab: string) => (): void => {
|
1889
|
+
connectionValueState.setSelectedTab(tab as RELATIONAL_DATABASE_TAB_TYPE);
|
1890
|
+
};
|
1897
1891
|
|
1898
1892
|
return (
|
1899
1893
|
<Panel>
|
1900
1894
|
<PanelTabs
|
1901
|
-
|
1902
|
-
|
1895
|
+
tabs={Object.values(RELATIONAL_DATABASE_TAB_TYPE)}
|
1896
|
+
changeTab={changeTab}
|
1903
1897
|
selectedTab={selectedTab}
|
1904
1898
|
tabClassName="relational-connection-editor__tab"
|
1905
1899
|
/>
|
@@ -177,12 +177,13 @@ export const DataElementReferenceDataEditor = observer(
|
|
177
177
|
const applicationStore = editorStore.applicationStore;
|
178
178
|
const options =
|
179
179
|
editorStore.graphManagerState.usableDataElements.map(buildElementOption);
|
180
|
-
const selectedOption = buildElementOption(
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
180
|
+
const selectedOption = buildElementOption(
|
181
|
+
dataElement,
|
182
|
+
) as PackageableElementOption<DataElement>;
|
183
|
+
const onDataElementChange = (
|
184
|
+
val: PackageableElementOption<DataElement>,
|
185
|
+
): void => {
|
186
|
+
if (val.value !== selectedOption.value) {
|
186
187
|
dataElementReferenceState.setDataElement(val.value);
|
187
188
|
}
|
188
189
|
};
|
@@ -255,8 +256,8 @@ export const ModelEmbeddedDataEditor = observer(
|
|
255
256
|
const elementFilterOption = createFilter({
|
256
257
|
ignoreCase: true,
|
257
258
|
ignoreAccents: false,
|
258
|
-
stringify: (option: PackageableElementOption<Class>): string =>
|
259
|
-
option.value.path,
|
259
|
+
stringify: (option: { data: PackageableElementOption<Class> }): string =>
|
260
|
+
option.data.value.path,
|
260
261
|
});
|
261
262
|
const editorStore = modelStoreDataState.editorStore;
|
262
263
|
const applicationStore = editorStore.applicationStore;
|
@@ -293,7 +294,7 @@ export const ModelEmbeddedDataEditor = observer(
|
|
293
294
|
<PURE_ClassIcon />
|
294
295
|
</div>
|
295
296
|
<CustomSelectorInput
|
296
|
-
|
297
|
+
inputRef={classSelectorRef}
|
297
298
|
className="sample-data-generator__controller__class-selector"
|
298
299
|
options={classOptions}
|
299
300
|
onChange={changeClass}
|
@@ -15,6 +15,7 @@
|
|
15
15
|
*/
|
16
16
|
|
17
17
|
import {
|
18
|
+
type Database,
|
18
19
|
type PackageableConnection,
|
19
20
|
getMappingCompatibleClasses,
|
20
21
|
} from '@finos/legend-graph';
|
@@ -86,7 +87,10 @@ const IsolatedDatabseQueryBuilderSetupPanelContext = observer(
|
|
86
87
|
className="panel__content__form__section__dropdown query-builder__setup__config-group__item__selector"
|
87
88
|
noMatchMessage="No compatible mapping found for specified class"
|
88
89
|
disabled={true}
|
89
|
-
options={[]}
|
90
|
+
options={[] as { label: string; value: Database }[]}
|
91
|
+
onChange={() => {
|
92
|
+
// do nothing
|
93
|
+
}}
|
90
94
|
value={databaseOption}
|
91
95
|
darkMode={
|
92
96
|
!queryBuilderState.applicationStore.layoutService
|
@@ -205,21 +205,27 @@ const BindingGeneralEditor = observer(
|
|
205
205
|
PackageableElementExplicitReference.create(val.value),
|
206
206
|
);
|
207
207
|
};
|
208
|
-
const selectedSchemaSet =
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
208
|
+
const selectedSchemaSet = binding.schemaSet
|
209
|
+
? {
|
210
|
+
label: binding.schemaSet.valueForSerialization ?? '',
|
211
|
+
value: binding.schemaSet.value,
|
212
|
+
}
|
213
|
+
: null;
|
214
|
+
const schemaIdOptions = selectedSchemaSet?.value.schemas
|
215
|
+
.filter((e) => e.id)
|
216
|
+
.map((e) => ({
|
217
|
+
value: guaranteeNonNullable(e.id),
|
218
|
+
label: guaranteeNonNullable(e.id),
|
219
|
+
}));
|
216
220
|
const onSchemaIdChange = (
|
217
221
|
val: { label: string; value: string } | null,
|
218
222
|
): void => externalFormat_Binding_setSchemaId(binding, val?.value);
|
219
|
-
const selectedSchemaId =
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
+
const selectedSchemaId = binding.schemaId
|
224
|
+
? {
|
225
|
+
value: binding.schemaId,
|
226
|
+
label: binding.schemaId,
|
227
|
+
}
|
228
|
+
: null;
|
223
229
|
const projectSelectorRef = useRef<SelectComponent>(null);
|
224
230
|
const contentTypeOptions =
|
225
231
|
editorStore.graphState.graphGenerationState.externalFormatState.formatContentTypes.map(
|
@@ -260,7 +266,7 @@ const BindingGeneralEditor = observer(
|
|
260
266
|
<CustomSelectorInput
|
261
267
|
className="binding-general-editor__section__dropdown"
|
262
268
|
disabled={isReadOnly}
|
263
|
-
|
269
|
+
inputRef={projectSelectorRef}
|
264
270
|
options={schemaSetOptions}
|
265
271
|
onChange={onSchemaSetChange}
|
266
272
|
value={selectedSchemaSet}
|
@@ -279,7 +285,7 @@ const BindingGeneralEditor = observer(
|
|
279
285
|
<CustomSelectorInput
|
280
286
|
className="binding-general-editor__section__dropdown"
|
281
287
|
disabled={isReadOnly}
|
282
|
-
|
288
|
+
inputRef={projectSelectorRef}
|
283
289
|
options={schemaIdOptions}
|
284
290
|
onChange={onSchemaIdChange}
|
285
291
|
value={selectedSchemaId}
|
@@ -238,8 +238,8 @@ const ParameterBasicEditor = observer(
|
|
238
238
|
const filterOption = createFilter({
|
239
239
|
ignoreCase: true,
|
240
240
|
ignoreAccents: false,
|
241
|
-
stringify: (option: PackageableElementOption<Type>): string =>
|
242
|
-
option.value.path,
|
241
|
+
stringify: (option: { data: PackageableElementOption<Type> }): string =>
|
242
|
+
option.data.value.path,
|
243
243
|
});
|
244
244
|
const selectedType = { value: paramType, label: paramType.name };
|
245
245
|
const changeType = (val: PackageableElementOption<Type>): void => {
|
@@ -503,10 +503,13 @@ const ReturnTypeEditor = observer(
|
|
503
503
|
const filterOption = createFilter({
|
504
504
|
ignoreCase: true,
|
505
505
|
ignoreAccents: false,
|
506
|
-
stringify: (option: PackageableElementOption<Type>): string =>
|
507
|
-
option.value.path,
|
506
|
+
stringify: (option: { data: PackageableElementOption<Type> }): string =>
|
507
|
+
option.data.value.path,
|
508
508
|
});
|
509
|
-
const selectedType = {
|
509
|
+
const selectedType = {
|
510
|
+
value: returnType.value,
|
511
|
+
label: returnType.value.name,
|
512
|
+
};
|
510
513
|
const changeType = (val: PackageableElementOption<Type>): void => {
|
511
514
|
function_setReturnType(functionElement, val.value);
|
512
515
|
setIsEditingType(false);
|
@@ -774,7 +777,7 @@ const FunctionPromoteEditor = observer(
|
|
774
777
|
cardMedia={<div className="coming-soon-label">Coming Soon</div>}
|
775
778
|
cardName={type}
|
776
779
|
cardContent="Deploy the function in the definition of a Store persistence"
|
777
|
-
|
780
|
+
disabled={true}
|
778
781
|
isActive={
|
779
782
|
activatorPromoteState.activateType ===
|
780
783
|
FUNCTION_ACTIVATE_TYPE.SERVICE_JAR
|
@@ -788,7 +791,7 @@ const FunctionPromoteEditor = observer(
|
|
788
791
|
cardMedia={<div className="coming-soon-label">Coming Soon</div>}
|
789
792
|
cardName={type}
|
790
793
|
cardContent="Use the service in a refiner context"
|
791
|
-
|
794
|
+
disabled={true}
|
792
795
|
isActive={
|
793
796
|
activatorPromoteState.activateType ===
|
794
797
|
FUNCTION_ACTIVATE_TYPE.REFINER
|
@@ -802,7 +805,7 @@ const FunctionPromoteEditor = observer(
|
|
802
805
|
cardMedia={<div className="coming-soon-label">Coming Soon</div>}
|
803
806
|
cardName={type}
|
804
807
|
cardContent="Deploy the function as a UDTF(user-defined table function) in BigQuery"
|
805
|
-
|
808
|
+
disabled={true}
|
806
809
|
isActive={
|
807
810
|
activatorPromoteState.activateType ===
|
808
811
|
FUNCTION_ACTIVATE_TYPE.BIG_QUERY_NATIVE_APP
|
@@ -553,7 +553,6 @@ export const HostedServiceFunctionActivatorEditor = observer(() => {
|
|
553
553
|
<CustomSelectorInput
|
554
554
|
className="service-editor__owner__selector"
|
555
555
|
placeholder="Enter an owner..."
|
556
|
-
spellCheck={false}
|
557
556
|
inputValue={searchText}
|
558
557
|
options={userOptions}
|
559
558
|
allowCreating={true}
|
@@ -62,8 +62,8 @@ export const SnowflakeAppFunctionActivatorEditor = observer(() => {
|
|
62
62
|
const connectionFilterOption = createFilter({
|
63
63
|
ignoreCase: true,
|
64
64
|
ignoreAccents: false,
|
65
|
-
stringify: (option: RelationalDatabaseConnectionOption): string =>
|
66
|
-
option.value.path,
|
65
|
+
stringify: (option: { data: RelationalDatabaseConnectionOption }): string =>
|
66
|
+
option.data.value.path,
|
67
67
|
});
|
68
68
|
const connectionOptions = editorStore.graphManagerState.usableConnections
|
69
69
|
.filter(
|
@@ -230,7 +230,7 @@ export const SnowflakeAppFunctionActivatorEditor = observer(() => {
|
|
230
230
|
<PURE_ConnectionIcon />
|
231
231
|
</div>
|
232
232
|
<CustomSelectorInput
|
233
|
-
|
233
|
+
inputRef={connectionSelectorRef}
|
234
234
|
className="snowflake-app-function-activator-editor__config__connection-selector__input"
|
235
235
|
options={connectionOptions}
|
236
236
|
onChange={changeConnection}
|
@@ -286,10 +286,14 @@ export const SnowflakeAppFunctionActivatorEditor = observer(() => {
|
|
286
286
|
className="snowflake-app-function-activator-editor__config__connection-selector__input"
|
287
287
|
options={permissionSchemeOptions}
|
288
288
|
onChange={changePermissionScheme}
|
289
|
-
value={
|
290
|
-
|
291
|
-
|
292
|
-
|
289
|
+
value={
|
290
|
+
activator.permissionScheme
|
291
|
+
? {
|
292
|
+
label: activator.permissionScheme,
|
293
|
+
value: activator.permissionScheme,
|
294
|
+
}
|
295
|
+
: null
|
296
|
+
}
|
293
297
|
darkMode={
|
294
298
|
!applicationStore.layoutService
|
295
299
|
.TEMPORARY__isLightColorThemeEnabled
|
package/src/components/editor/editor-group/function-activator/testable/FunctionTestableEditor.tsx
CHANGED
@@ -555,7 +555,7 @@ const NewParameterModal = observer(
|
|
555
555
|
!applicationStore.layoutService
|
556
556
|
.TEMPORARY__isLightColorThemeEnabled
|
557
557
|
}
|
558
|
-
|
558
|
+
disabled={isReadOnly}
|
559
559
|
/>
|
560
560
|
<div className="search-modal__actions">
|
561
561
|
<button className="btn btn--dark" disabled={isReadOnly}>
|
@@ -101,9 +101,9 @@ const EnumerationMappingSourceSelectorModal = observer(
|
|
101
101
|
const filterOption = createFilter({
|
102
102
|
ignoreCase: true,
|
103
103
|
ignoreAccents: false,
|
104
|
-
stringify: (
|
105
|
-
|
106
|
-
): string => option.value.path,
|
104
|
+
stringify: (option: {
|
105
|
+
data: PackageableElementOption<PackageableElement>;
|
106
|
+
}): string => option.data.value.path,
|
107
107
|
});
|
108
108
|
const sourceType = enumerationMapping.sourceType?.value;
|
109
109
|
const selectedSourceType = sourceType
|
@@ -149,7 +149,7 @@ const EnumerationMappingSourceSelectorModal = observer(
|
|
149
149
|
>
|
150
150
|
<ModalTitle title="Choose a Source" />
|
151
151
|
<CustomSelectorInput
|
152
|
-
|
152
|
+
inputRef={sourceSelectorRef}
|
153
153
|
options={options}
|
154
154
|
onChange={changeSourceType}
|
155
155
|
value={selectedSourceType}
|
@@ -138,7 +138,6 @@ const EnumerationPropertyMappingEditor = observer(
|
|
138
138
|
mappingEditorState.mapping,
|
139
139
|
enumeration,
|
140
140
|
).map((em) => ({ value: em, label: em.id.value }));
|
141
|
-
const transformerLabel = propertyMapping.transformer?.valueForSerialization;
|
142
141
|
const handleSelectionChange = (
|
143
142
|
val: { label: string; value: EnumerationMapping } | null,
|
144
143
|
): void =>
|
@@ -193,7 +192,15 @@ const EnumerationPropertyMappingEditor = observer(
|
|
193
192
|
disabled={options.length <= 1 || isReadOnly}
|
194
193
|
options={options}
|
195
194
|
onChange={handleSelectionChange}
|
196
|
-
value={
|
195
|
+
value={
|
196
|
+
propertyMapping.transformer
|
197
|
+
? {
|
198
|
+
label:
|
199
|
+
propertyMapping.transformer.valueForSerialization ?? '',
|
200
|
+
value: propertyMapping.transformer.value,
|
201
|
+
}
|
202
|
+
: null
|
203
|
+
}
|
197
204
|
placeholder="Choose an existing enumeration mapping"
|
198
205
|
/>
|
199
206
|
<button
|
@@ -44,7 +44,7 @@ import {
|
|
44
44
|
PackageableElement,
|
45
45
|
FlatData,
|
46
46
|
} from '@finos/legend-graph';
|
47
|
-
import { UnsupportedOperationError } from '@finos/legend-shared';
|
47
|
+
import { isNonNullable, UnsupportedOperationError } from '@finos/legend-shared';
|
48
48
|
import { flowResult } from 'mobx';
|
49
49
|
import { useEditorStore } from '../../EditorStoreProvider.js';
|
50
50
|
import { useApplicationStore } from '@finos/legend-application';
|
@@ -183,7 +183,9 @@ export const InstanceSetImplementationSourceSelectorModal = observer(
|
|
183
183
|
mainTableAlias.name = mainTableAlias.relation.value.name;
|
184
184
|
return mainTableAlias;
|
185
185
|
})
|
186
|
-
)
|
186
|
+
)
|
187
|
+
.map(buildMappingElementSourceOption)
|
188
|
+
.filter(isNonNullable);
|
187
189
|
const sourceFilterOption = createFilter({
|
188
190
|
ignoreCase: true,
|
189
191
|
ignoreAccents: false,
|
@@ -207,9 +209,7 @@ export const InstanceSetImplementationSourceSelectorModal = observer(
|
|
207
209
|
editorStore.pluginManager.getApplicationPlugins(),
|
208
210
|
),
|
209
211
|
);
|
210
|
-
const changeSourceType = (
|
211
|
-
val: MappingElementSourceSelectOption | null,
|
212
|
-
): Promise<void> =>
|
212
|
+
const changeSourceType = (val: MappingElementSourceSelectOption | null) => {
|
213
213
|
flowResult(
|
214
214
|
mappingEditorState.changeClassMappingSourceDriver(
|
215
215
|
setImplementation,
|
@@ -218,6 +218,7 @@ export const InstanceSetImplementationSourceSelectorModal = observer(
|
|
218
218
|
)
|
219
219
|
.then(() => closeModal())
|
220
220
|
.catch(applicationStore.alertUnhandledError);
|
221
|
+
};
|
221
222
|
const handleEnter = (): void => sourceSelectorRef.current?.focus();
|
222
223
|
|
223
224
|
return (
|
@@ -244,7 +245,7 @@ export const InstanceSetImplementationSourceSelectorModal = observer(
|
|
244
245
|
>
|
245
246
|
<ModalTitle title="Choose a Source" />
|
246
247
|
<CustomSelectorInput
|
247
|
-
|
248
|
+
inputRef={sourceSelectorRef}
|
248
249
|
options={options}
|
249
250
|
onChange={changeSourceType}
|
250
251
|
value={selectedSourceType}
|
@@ -127,8 +127,8 @@ export const ClassMappingSelectorModal = observer(
|
|
127
127
|
const filterOption = createFilter({
|
128
128
|
ignoreCase: true,
|
129
129
|
ignoreAccents: false,
|
130
|
-
stringify: (option: ClassMappingSelectOption): string =>
|
131
|
-
getMappingElementLabel(option.value, editorStore).value,
|
130
|
+
stringify: (option: { data: ClassMappingSelectOption }): string =>
|
131
|
+
getMappingElementLabel(option.data.value, editorStore).value,
|
132
132
|
});
|
133
133
|
const classMappingOptions = uniq(
|
134
134
|
getAllClassMappings(mappingEditorState.mapping)
|
@@ -164,7 +164,7 @@ export const ClassMappingSelectorModal = observer(
|
|
164
164
|
>
|
165
165
|
<ModalTitle title="Choose a class mapping" />
|
166
166
|
<CustomSelectorInput
|
167
|
-
|
167
|
+
inputRef={classMappingSelectorRef}
|
168
168
|
options={classMappingOptions}
|
169
169
|
onChange={changeClassMappingOption}
|
170
170
|
value={null}
|
@@ -62,6 +62,9 @@ const MappingExecutionQueryBuilderSetupPanelContent = observer(
|
|
62
62
|
className="panel__content__form__section__dropdown query-builder__setup__config-group__item__selector"
|
63
63
|
disabled={true}
|
64
64
|
options={[]}
|
65
|
+
onChange={() => {
|
66
|
+
// do nothing
|
67
|
+
}}
|
65
68
|
value={selectedMappingOption}
|
66
69
|
darkMode={
|
67
70
|
!applicationStore.layoutService
|
@@ -365,7 +365,7 @@ const CreateTestModal = observer(
|
|
365
365
|
Mapped Class for which you would like to build test suite for
|
366
366
|
</div>
|
367
367
|
<CustomSelectorInput
|
368
|
-
|
368
|
+
inputRef={mappedClassSelectorRef}
|
369
369
|
options={mappedClassOptions}
|
370
370
|
onChange={changeClassOption}
|
371
371
|
value={selectedClassOption}
|
@@ -536,7 +536,7 @@ const CreateStoreTestDataModal = observer(
|
|
536
536
|
Store to add test data
|
537
537
|
</div>
|
538
538
|
<CustomSelectorInput
|
539
|
-
|
539
|
+
inputRef={mappedStoreRef}
|
540
540
|
options={selectedStoreOptions}
|
541
541
|
onChange={changeStoreOption}
|
542
542
|
formatOptionLabel={getPackageableElementOptionFormatter({})}
|
@@ -88,11 +88,15 @@ export const NewMappingElementModal = observer(() => {
|
|
88
88
|
const filterOption = createFilter({
|
89
89
|
ignoreCase: true,
|
90
90
|
ignoreAccents: false,
|
91
|
-
stringify: (option:
|
92
|
-
|
91
|
+
stringify: (option: {
|
92
|
+
data: PackageableElementOption<PackageableElement>;
|
93
|
+
}): string => option.data.value.path,
|
93
94
|
});
|
94
95
|
const selectedOption = spec?.target
|
95
|
-
? {
|
96
|
+
? {
|
97
|
+
label: spec.target.name,
|
98
|
+
value: spec.target,
|
99
|
+
}
|
96
100
|
: null;
|
97
101
|
const handleTargetChange = (
|
98
102
|
val: PackageableElementOption<PackageableElement> | null,
|
@@ -231,7 +235,7 @@ export const NewMappingElementModal = observer(() => {
|
|
231
235
|
{titleText && <div className="modal__title">{titleText}</div>}
|
232
236
|
{spec.showTarget && (
|
233
237
|
<CustomSelectorInput
|
234
|
-
|
238
|
+
inputRef={targetSelectorRef}
|
235
239
|
options={options}
|
236
240
|
filterOption={filterOption}
|
237
241
|
onChange={handleTargetChange}
|
@@ -266,7 +270,7 @@ export const NewMappingElementModal = observer(() => {
|
|
266
270
|
<>
|
267
271
|
<PanelDivider />
|
268
272
|
<CustomSelectorInput
|
269
|
-
|
273
|
+
inputRef={classMappingTypeSelectorRef}
|
270
274
|
options={classMappingTypeOptions}
|
271
275
|
onChange={changeClassMappingType}
|
272
276
|
value={classMappingType}
|
package/src/components/editor/editor-group/mapping-editor/OperationSetImplementationEditor.tsx
CHANGED
@@ -91,7 +91,8 @@ export const OperationSetImplementationEditor = observer(
|
|
91
91
|
)
|
92
92
|
.map((si) => ({ value: si, label: si.id.value }));
|
93
93
|
const filterOption = createFilter({
|
94
|
-
stringify: (option: SetImplementationOption): string =>
|
94
|
+
stringify: (option: { data: SetImplementationOption }): string =>
|
95
|
+
option.data.label,
|
95
96
|
});
|
96
97
|
const addParameter = (): void =>
|
97
98
|
operationMapping_addParameter(
|
@@ -235,7 +236,7 @@ export const OperationSetImplementationEditor = observer(
|
|
235
236
|
onChange={changeParamater(param)}
|
236
237
|
filterOption={filterOption}
|
237
238
|
value={{
|
238
|
-
value: param,
|
239
|
+
value: param.setImplementation.value,
|
239
240
|
label: param.setImplementation.value.id.value,
|
240
241
|
}}
|
241
242
|
placeholder="Select parameter ID"
|
@@ -140,7 +140,6 @@ const EnumerationPropertyMappingEditor = observer(
|
|
140
140
|
mappingEditorState.mapping,
|
141
141
|
enumeration,
|
142
142
|
).map((em) => ({ value: em, label: em.id.value }));
|
143
|
-
const transformerLabel = propertyMapping.transformer?.valueForSerialization;
|
144
143
|
const handleSelectionChange = (
|
145
144
|
val: { label: string; value: EnumerationMapping } | null,
|
146
145
|
): void =>
|
@@ -197,7 +196,15 @@ const EnumerationPropertyMappingEditor = observer(
|
|
197
196
|
disabled={options.length <= 1 || isReadOnly}
|
198
197
|
options={options}
|
199
198
|
onChange={handleSelectionChange}
|
200
|
-
value={
|
199
|
+
value={
|
200
|
+
propertyMapping.transformer
|
201
|
+
? {
|
202
|
+
label:
|
203
|
+
propertyMapping.transformer.valueForSerialization ?? '',
|
204
|
+
value: propertyMapping.transformer.value,
|
205
|
+
}
|
206
|
+
: null
|
207
|
+
}
|
201
208
|
placeholder="Choose an existing enumeration mapping"
|
202
209
|
/>
|
203
210
|
<button
|
@@ -106,7 +106,6 @@ const EnumerationPropertyMappingEditor = observer(
|
|
106
106
|
mappingEditorState.mapping,
|
107
107
|
enumeration,
|
108
108
|
).map((em) => ({ value: em, label: em.id.value }));
|
109
|
-
const transformerLabel = propertyMapping.transformer?.valueForSerialization;
|
110
109
|
const handleSelectionChange = (
|
111
110
|
val: { label: string; value: EnumerationMapping } | null,
|
112
111
|
): void =>
|
@@ -156,7 +155,15 @@ const EnumerationPropertyMappingEditor = observer(
|
|
156
155
|
disabled={options.length <= 1 || isReadOnly}
|
157
156
|
options={options}
|
158
157
|
onChange={handleSelectionChange}
|
159
|
-
value={
|
158
|
+
value={
|
159
|
+
propertyMapping.transformer
|
160
|
+
? {
|
161
|
+
value: propertyMapping.transformer.value,
|
162
|
+
label:
|
163
|
+
propertyMapping.transformer.valueForSerialization ?? '',
|
164
|
+
}
|
165
|
+
: null
|
166
|
+
}
|
160
167
|
placeholder="Choose an existing enumeration mapping"
|
161
168
|
/>
|
162
169
|
<button
|
package/src/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.tsx
CHANGED
@@ -896,12 +896,16 @@ const ProjectVersionDependencyEditor = observer(
|
|
896
896
|
<div className="project-dependency-editor">
|
897
897
|
<CustomSelectorInput
|
898
898
|
className="project-dependency-editor__selector"
|
899
|
-
|
899
|
+
inputRef={projectSelectorRef}
|
900
900
|
disabled={projectDisabled}
|
901
901
|
options={projectsOptions}
|
902
902
|
isClearable={true}
|
903
903
|
escapeClearsValue={true}
|
904
|
-
onChange={
|
904
|
+
onChange={(val: ProjectOption | null) => {
|
905
|
+
onProjectSelectionChange(val).catch(
|
906
|
+
applicationStore.alertUnhandledError,
|
907
|
+
);
|
908
|
+
}}
|
905
909
|
value={selectedProjectOption}
|
906
910
|
isLoading={configState.fetchingProjectVersionsState.isInProgress}
|
907
911
|
formatOptionLabel={formatOptionLabel}
|
@@ -911,7 +915,7 @@ const ProjectVersionDependencyEditor = observer(
|
|
911
915
|
/>
|
912
916
|
<CustomSelectorInput
|
913
917
|
className="project-dependency-editor__selector"
|
914
|
-
|
918
|
+
inputRef={versionSelectorRef}
|
915
919
|
options={versionOptions}
|
916
920
|
isClearable={true}
|
917
921
|
escapeClearsValue={true}
|
@@ -84,7 +84,7 @@ export const BulkServiceRegistrationEditor = observer(() => {
|
|
84
84
|
}
|
85
85
|
: null;
|
86
86
|
const onServiceTypeSelectionChange = (
|
87
|
-
val: { label:
|
87
|
+
val: { label: string; value: ServiceExecutionMode } | null,
|
88
88
|
): void => {
|
89
89
|
globalBulkServiceRegistrationState.serviceConfigState.updateType(
|
90
90
|
val?.value,
|
@@ -479,7 +479,6 @@ const ServiceGeneralEditor = observer(() => {
|
|
479
479
|
<CustomSelectorInput
|
480
480
|
className="service-editor__owner__selector"
|
481
481
|
placeholder="Enter an owner..."
|
482
|
-
spellCheck={false}
|
483
482
|
inputValue={searchText}
|
484
483
|
options={userOptions}
|
485
484
|
allowCreating={true}
|
@@ -638,7 +637,6 @@ const ServiceGeneralEditor = observer(() => {
|
|
638
637
|
<CustomSelectorInput
|
639
638
|
className="service-editor__owner__selector"
|
640
639
|
placeholder="Enter an owner..."
|
641
|
-
spellCheck={false}
|
642
640
|
inputValue={searchText}
|
643
641
|
options={userOptions}
|
644
642
|
allowCreating={true}
|
@@ -116,7 +116,7 @@ const PureExecutionContextConfigurationEditor = observer(
|
|
116
116
|
const selectedMappingOption = {
|
117
117
|
value: mapping,
|
118
118
|
label: isMappingEmpty ? noMappingLabel : mapping.path,
|
119
|
-
}
|
119
|
+
} as PackageableElementOption<Mapping>;
|
120
120
|
const onMappingSelectionChange = (
|
121
121
|
val: PackageableElementOption<Mapping>,
|
122
122
|
): void => {
|
@@ -143,7 +143,7 @@ const PureExecutionContextConfigurationEditor = observer(
|
|
143
143
|
? []
|
144
144
|
: ([{ label: customRuntimeLabel }] as {
|
145
145
|
label: string | React.ReactNode;
|
146
|
-
value
|
146
|
+
value: Runtime | undefined;
|
147
147
|
}[]);
|
148
148
|
// NOTE: for now, only include runtime associated with the mapping
|
149
149
|
// TODO?: Should we bring the runtime compatibility check from query to here?
|
@@ -197,7 +197,7 @@ const PureExecutionContextConfigurationEditor = observer(
|
|
197
197
|
};
|
198
198
|
const onRuntimeSelectionChange = (val: {
|
199
199
|
label: string | React.ReactNode;
|
200
|
-
value
|
200
|
+
value: Runtime | undefined;
|
201
201
|
}): void => {
|
202
202
|
if (val.value === undefined) {
|
203
203
|
pureExecutionState.useCustomRuntime();
|
@@ -280,7 +280,7 @@ const PureExecutionContextConfigurationEditor = observer(
|
|
280
280
|
!applicationStore.layoutService
|
281
281
|
.TEMPORARY__isLightColorThemeEnabled
|
282
282
|
}
|
283
|
-
hasError={isMappingEmpty}
|
283
|
+
hasError={Boolean(isMappingEmpty)}
|
284
284
|
/>
|
285
285
|
<button
|
286
286
|
className="btn--dark btn--sm service-execution-editor__configuration__item__btn"
|
@@ -406,7 +406,7 @@ export const ChangeExecutionModal = observer(
|
|
406
406
|
!applicationStore.layoutService
|
407
407
|
.TEMPORARY__isLightColorThemeEnabled
|
408
408
|
}
|
409
|
-
|
409
|
+
disabled={isReadOnly}
|
410
410
|
/>
|
411
411
|
);
|
412
412
|
}
|