@finos/legend-application-studio 28.18.39 → 28.18.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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
|
}
|