@finos/legend-extension-dsl-service 0.0.1

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 (68) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +3 -0
  3. package/lib/components/studio/DSL_Service_LegendStudioApplicationPlugin.d.ts +22 -0
  4. package/lib/components/studio/DSL_Service_LegendStudioApplicationPlugin.d.ts.map +1 -0
  5. package/lib/components/studio/DSL_Service_LegendStudioApplicationPlugin.js +59 -0
  6. package/lib/components/studio/DSL_Service_LegendStudioApplicationPlugin.js.map +1 -0
  7. package/lib/components/studio/ServiceQueryEditor.d.ts +25 -0
  8. package/lib/components/studio/ServiceQueryEditor.d.ts.map +1 -0
  9. package/lib/components/studio/ServiceQueryEditor.js +190 -0
  10. package/lib/components/studio/ServiceQueryEditor.js.map +1 -0
  11. package/lib/components/studio/ServiceQueryEditorReviewAction.d.ts +19 -0
  12. package/lib/components/studio/ServiceQueryEditorReviewAction.d.ts.map +1 -0
  13. package/lib/components/studio/ServiceQueryEditorReviewAction.js +71 -0
  14. package/lib/components/studio/ServiceQueryEditorReviewAction.js.map +1 -0
  15. package/lib/components/studio/ServiceQueryEditorStoreProvider.d.ts +31 -0
  16. package/lib/components/studio/ServiceQueryEditorStoreProvider.d.ts.map +1 -0
  17. package/lib/components/studio/ServiceQueryEditorStoreProvider.js +40 -0
  18. package/lib/components/studio/ServiceQueryEditorStoreProvider.js.map +1 -0
  19. package/lib/components/studio/ServiceQueryEditorWorkspaceStatus.d.ts +19 -0
  20. package/lib/components/studio/ServiceQueryEditorWorkspaceStatus.d.ts.map +1 -0
  21. package/lib/components/studio/ServiceQueryEditorWorkspaceStatus.js +69 -0
  22. package/lib/components/studio/ServiceQueryEditorWorkspaceStatus.js.map +1 -0
  23. package/lib/components/studio/UpdateProjectServiceQuerySetup.d.ts +18 -0
  24. package/lib/components/studio/UpdateProjectServiceQuerySetup.d.ts.map +1 -0
  25. package/lib/components/studio/UpdateProjectServiceQuerySetup.js +182 -0
  26. package/lib/components/studio/UpdateProjectServiceQuerySetup.js.map +1 -0
  27. package/lib/components/studio/UpdateServiceQuerySetup.d.ts +18 -0
  28. package/lib/components/studio/UpdateServiceQuerySetup.d.ts.map +1 -0
  29. package/lib/components/studio/UpdateServiceQuerySetup.js +172 -0
  30. package/lib/components/studio/UpdateServiceQuerySetup.js.map +1 -0
  31. package/lib/index.css +17 -0
  32. package/lib/index.css.map +1 -0
  33. package/lib/index.d.ts +17 -0
  34. package/lib/index.d.ts.map +1 -0
  35. package/lib/index.js +17 -0
  36. package/lib/index.js.map +1 -0
  37. package/lib/package.json +84 -0
  38. package/lib/stores/studio/DSL_Service_LegendStudioRouter.d.ts +53 -0
  39. package/lib/stores/studio/DSL_Service_LegendStudioRouter.d.ts.map +1 -0
  40. package/lib/stores/studio/DSL_Service_LegendStudioRouter.js +62 -0
  41. package/lib/stores/studio/DSL_Service_LegendStudioRouter.js.map +1 -0
  42. package/lib/stores/studio/ServiceQueryEditorStore.d.ts +64 -0
  43. package/lib/stores/studio/ServiceQueryEditorStore.d.ts.map +1 -0
  44. package/lib/stores/studio/ServiceQueryEditorStore.js +260 -0
  45. package/lib/stores/studio/ServiceQueryEditorStore.js.map +1 -0
  46. package/lib/stores/studio/UpdateProjectServiceQuerySetupStore.d.ts +46 -0
  47. package/lib/stores/studio/UpdateProjectServiceQuerySetupStore.d.ts.map +1 -0
  48. package/lib/stores/studio/UpdateProjectServiceQuerySetupStore.js +184 -0
  49. package/lib/stores/studio/UpdateProjectServiceQuerySetupStore.js.map +1 -0
  50. package/lib/stores/studio/UpdateServiceQuerySetupStore.d.ts +48 -0
  51. package/lib/stores/studio/UpdateServiceQuerySetupStore.d.ts.map +1 -0
  52. package/lib/stores/studio/UpdateServiceQuerySetupStore.js +184 -0
  53. package/lib/stores/studio/UpdateServiceQuerySetupStore.js.map +1 -0
  54. package/package.json +84 -0
  55. package/src/components/studio/DSL_Service_LegendStudioApplicationPlugin.tsx +71 -0
  56. package/src/components/studio/ServiceQueryEditor.tsx +551 -0
  57. package/src/components/studio/ServiceQueryEditorReviewAction.tsx +172 -0
  58. package/src/components/studio/ServiceQueryEditorStoreProvider.tsx +89 -0
  59. package/src/components/studio/ServiceQueryEditorWorkspaceStatus.tsx +121 -0
  60. package/src/components/studio/UpdateProjectServiceQuerySetup.tsx +479 -0
  61. package/src/components/studio/UpdateServiceQuerySetup.tsx +476 -0
  62. package/src/index.ts +17 -0
  63. package/src/stores/studio/DSL_Service_LegendStudioRouter.ts +159 -0
  64. package/src/stores/studio/ServiceQueryEditorStore.ts +487 -0
  65. package/src/stores/studio/UpdateProjectServiceQuerySetupStore.ts +281 -0
  66. package/src/stores/studio/UpdateServiceQuerySetupStore.ts +314 -0
  67. package/tsconfig.json +58 -0
  68. package/tsconfig.package.json +38 -0
@@ -0,0 +1,172 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * Copyright (c) 2020-present, Goldman Sachs
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { createContext, useContext, useEffect, useMemo, useState, useRef, } from 'react';
18
+ import { observer, useLocalObservable } from 'mobx-react-lite';
19
+ import { debounce, guaranteeNonNullable } from '@finos/legend-shared';
20
+ import { useSDLCServerClient, WorkspaceType } from '@finos/legend-server-sdlc';
21
+ import { ActivityBarMenu, buildWorkspaceOption, LEGEND_STUDIO_TEST_ID, useLegendStudioApplicationStore, } from '@finos/legend-application-studio';
22
+ import { UpdateServiceQuerySetupStore } from '../../stores/studio/UpdateServiceQuerySetupStore.js';
23
+ import { useDepotServerClient, } from '@finos/legend-server-depot';
24
+ import { useParams } from 'react-router';
25
+ import { generateServiceQueryUpdaterRoute, } from '../../stores/studio/DSL_Service_LegendStudioRouter.js';
26
+ import { flowResult } from 'mobx';
27
+ import { buildServiceOption, formatServiceOptionLabel, } from '@finos/legend-query-builder';
28
+ import { CircleNotchIcon, clsx, compareLabelFn, createFilter, CustomSelectorInput, Dialog, ErrorIcon, GitBranchIcon, Panel, PanelLoadingIndicator, PlusIcon, PURE_ServiceIcon, UserIcon, UsersIcon, } from '@finos/legend-art';
29
+ const UpdateServiceQuerySetupStoreContext = createContext(undefined);
30
+ const UpdateServiceQuerySetupStoreProvider = ({ children }) => {
31
+ const applicationStore = useLegendStudioApplicationStore();
32
+ const sdlcServerClient = useSDLCServerClient();
33
+ const depotServerClient = useDepotServerClient();
34
+ const store = useLocalObservable(() => new UpdateServiceQuerySetupStore(applicationStore, sdlcServerClient, depotServerClient));
35
+ return (_jsx(UpdateServiceQuerySetupStoreContext.Provider, { value: store, children: children }));
36
+ };
37
+ const useUpdateServiceQuerySetupStore = () => guaranteeNonNullable(useContext(UpdateServiceQuerySetupStoreContext), `Can't find service query updater store in context`);
38
+ const withUpdateServiceQuerySetupStore = (WrappedComponent) => function WithUpdateServiceQuerySetupStore() {
39
+ return (_jsx(UpdateServiceQuerySetupStoreProvider, { children: _jsx(WrappedComponent, {}) }));
40
+ };
41
+ const CreateWorkspaceModal = observer((props) => {
42
+ const { selectedProject, selectedSnapService } = props;
43
+ const setupStore = useUpdateServiceQuerySetupStore();
44
+ const applicationStore = useLegendStudioApplicationStore();
45
+ const workspaceNameInputRef = useRef(null);
46
+ const [workspaceName, setWorkspaceName] = useState('');
47
+ const workspaceAlreadyExists = Boolean(setupStore.groupWorkspaces.find((workspace) => workspace.workspaceId === workspaceName));
48
+ const createWorkspace = () => {
49
+ if (workspaceName && !workspaceAlreadyExists) {
50
+ flowResult(setupStore.createWorkspace(selectedProject.projectId, workspaceName, selectedSnapService.path)).catch(applicationStore.alertUnhandledError);
51
+ }
52
+ };
53
+ const changeWorkspaceName = (event) => setWorkspaceName(event.target.value);
54
+ const handleEnter = () => {
55
+ workspaceNameInputRef.current?.focus();
56
+ };
57
+ const onClose = () => {
58
+ setupStore.setShowCreateWorkspaceModal(false);
59
+ };
60
+ const handleSubmit = (event) => {
61
+ event.preventDefault();
62
+ createWorkspace();
63
+ };
64
+ return (_jsx(Dialog, { open: setupStore.showCreateWorkspaceModal, onClose: onClose, TransitionProps: {
65
+ onEnter: handleEnter,
66
+ }, classes: { container: 'search-modal__container' }, PaperProps: { classes: { root: 'search-modal__inner-container' } }, children: _jsxs("form", { onSubmit: handleSubmit, className: "modal modal--dark search-modal", children: [_jsx("div", { className: "modal__title", children: "Create New Workspace" }), _jsxs(Panel, { children: [_jsx(PanelLoadingIndicator, { isLoading: setupStore.createWorkspaceState.isInProgress }), _jsx("div", { className: "panel__content--full", children: _jsxs("div", { className: "input-group", children: [_jsx("input", { className: "input input--dark input-group__input", ref: workspaceNameInputRef, spellCheck: false, disabled: setupStore.createWorkspaceState.isInProgress, placeholder: "MyWorkspace", value: workspaceName, onChange: changeWorkspaceName }), workspaceAlreadyExists && (_jsx("div", { className: "input-group__error-message", children: "Workspace with same name already exists" }))] }) })] }), _jsx("div", { className: "search-modal__actions", children: _jsx("button", { disabled: setupStore.createWorkspaceState.isInProgress ||
67
+ !workspaceName ||
68
+ workspaceAlreadyExists, className: "btn btn--dark", children: "Create" }) })] }) }));
69
+ });
70
+ export const UpdateServiceQuerySetup = withUpdateServiceQuerySetupStore(observer(() => {
71
+ const params = useParams();
72
+ const { serviceCoordinates } = params;
73
+ const setupStore = useUpdateServiceQuerySetupStore();
74
+ const applicationStore = useLegendStudioApplicationStore();
75
+ const [serviceSearchText, setServiceSearchText] = useState('');
76
+ // action
77
+ const disableProceedButton = !setupStore.currentProject ||
78
+ !setupStore.currentGroupWorkspace ||
79
+ !setupStore.currentWorkspaceService;
80
+ const handleProceed = () => {
81
+ if (setupStore.currentProject &&
82
+ setupStore.currentGroupWorkspace &&
83
+ setupStore.currentWorkspaceService) {
84
+ applicationStore.navigator.goTo(generateServiceQueryUpdaterRoute(setupStore.currentProject.groupId, setupStore.currentProject.artifactId, setupStore.currentWorkspaceService.path, setupStore.currentGroupWorkspace.workspaceId));
85
+ }
86
+ };
87
+ // services
88
+ const serviceOptions = setupStore.services.map(buildServiceOption);
89
+ const selectedServiceOption = setupStore.currentSnapshotService
90
+ ? buildServiceOption(setupStore.currentSnapshotService)
91
+ : null;
92
+ const onServiceOptionChange = (option) => {
93
+ if (option) {
94
+ flowResult(setupStore.changeService(option.value.groupId, option.value.artifactId, option.value.path)).catch(applicationStore.alertUnhandledError);
95
+ }
96
+ else {
97
+ setupStore.resetCurrentService();
98
+ }
99
+ };
100
+ const serviceFilterOption = createFilter({
101
+ ignoreCase: true,
102
+ ignoreAccents: false,
103
+ stringify: (option) =>
104
+ // NOTE: account for label, path, and URL pattern
105
+ `${option.label} - ${option.value.urlPattern ?? ''} - ${option.value.path}`,
106
+ });
107
+ // service search text
108
+ const debouncedLoadServices = useMemo(() => debounce((input) => {
109
+ flowResult(setupStore.loadServices(input)).catch(applicationStore.alertUnhandledError);
110
+ }, 500), [applicationStore, setupStore]);
111
+ const onServiceSearchTextChange = (value) => {
112
+ if (value !== serviceSearchText) {
113
+ setServiceSearchText(value);
114
+ debouncedLoadServices.cancel();
115
+ debouncedLoadServices(value);
116
+ }
117
+ };
118
+ // workspaces
119
+ const workspaceOptions = setupStore.groupWorkspaces
120
+ .map(buildWorkspaceOption)
121
+ .sort(compareLabelFn);
122
+ const selectedOption = setupStore.currentGroupWorkspace
123
+ ? buildWorkspaceOption(setupStore.currentGroupWorkspace)
124
+ : null;
125
+ const onWorkspaceChange = (option) => {
126
+ if (option) {
127
+ if (setupStore.currentSnapshotService) {
128
+ flowResult(setupStore.changeWorkspace(option.value, setupStore.currentSnapshotService.path)).catch(applicationStore.alertUnhandledError);
129
+ }
130
+ }
131
+ else {
132
+ setupStore.resetCurrentGroupWorkspace();
133
+ }
134
+ };
135
+ const showCreateWorkspaceModal = () => setupStore.setShowCreateWorkspaceModal(true);
136
+ const formatWorkspaceOptionLabel = (option) => {
137
+ const isCurrentOptionInvalid =
138
+ // we can only check the current workspace
139
+ setupStore.currentGroupWorkspace === option.value &&
140
+ !setupStore.currentWorkspaceService &&
141
+ !setupStore.checkWorkspaceCompatibilityState.isInProgress;
142
+ return (_jsxs("div", { className: "workspace-selector__option", title: isCurrentOptionInvalid
143
+ ? `Selected workspace does not have the specified service${setupStore.currentSnapshotService
144
+ ? ` '${setupStore.currentSnapshotService.path}'`
145
+ : ''}\nPlease select another appropriate workspace or create and use a new workspace`
146
+ : setupStore.checkWorkspaceCompatibilityState.isInProgress
147
+ ? `Checking if the specified service is present in the workspace`
148
+ : undefined, children: [_jsx("div", { className: "workspace-selector__option__icon", children: option.value.workspaceType === WorkspaceType.GROUP ? (_jsx(UsersIcon, {})) : (_jsx(UserIcon, {})) }), _jsxs("div", { className: clsx('workspace-selector__option__name', {
149
+ 'service-query-setup__workspace-selector__option__name--invalid': isCurrentOptionInvalid,
150
+ }), children: [option.label, isCurrentOptionInvalid && _jsx(ErrorIcon, {}), setupStore.checkWorkspaceCompatibilityState.isInProgress && (_jsx(CircleNotchIcon, { className: "service-query-setup__workspace-selector__option__loading-indicator" }))] })] }));
151
+ };
152
+ useEffect(() => {
153
+ flowResult(setupStore.loadServices('')).catch(applicationStore.alertUnhandledError);
154
+ }, [setupStore, applicationStore]);
155
+ useEffect(() => {
156
+ setupStore.initialize(serviceCoordinates);
157
+ }, [setupStore, serviceCoordinates]);
158
+ return (_jsx("div", { className: "app__page", children: _jsxs("div", { className: "service-query-setup", children: [_jsxs("div", { className: "service-query-setup__body", children: [_jsx("div", { className: "activity-bar", children: _jsx(ActivityBarMenu, {}) }), _jsx("div", { className: "service-query-setup__content", "data-testid": LEGEND_STUDIO_TEST_ID.SETUP__CONTENT, children: _jsxs("div", { className: "service-query-setup__content__main", children: [_jsx("div", { className: "service-query-setup__title", children: _jsx("div", { className: "service-query-setup__title__header", children: "Update Service Query" }) }), _jsxs("div", { className: "service-query-setup__selector", children: [_jsx("div", { className: "service-query-setup__selector__icon", title: "service", children: _jsx(PURE_ServiceIcon, {}) }), _jsx(CustomSelectorInput, { className: "service-query-setup__selector__input", options: serviceOptions, isLoading: setupStore.loadServicesState.isInProgress, onInputChange: onServiceSearchTextChange, inputValue: serviceSearchText, value: selectedServiceOption, onChange: onServiceOptionChange, placeholder: "Search for service...", darkMode: true, isClearable: true, escapeClearsValue: true, filterOption: serviceFilterOption, formatOptionLabel: formatServiceOptionLabel })] }), _jsxs("div", { className: "service-query-setup__selector", children: [_jsx("div", { className: "service-query-setup__selector__icon", title: "workspace", children: _jsx(GitBranchIcon, { className: "service-query-setup__selector__icon--workspace" }) }), _jsx(CustomSelectorInput, { className: "service-query-setup__selector__input", options: workspaceOptions, disabled: !setupStore.currentProject ||
159
+ !setupStore.currentSnapshotService ||
160
+ setupStore.loadWorkspacesState.isInProgress, isLoading: setupStore.loadWorkspacesState.isInProgress, onChange: onWorkspaceChange, formatOptionLabel: formatWorkspaceOptionLabel, value: selectedOption, placeholder: setupStore.loadWorkspacesState.isInProgress
161
+ ? 'Loading workspaces...'
162
+ : !setupStore.currentProject
163
+ ? 'In order to select a workspace, a project must be selected'
164
+ : workspaceOptions.length
165
+ ? 'Choose an existing workspace'
166
+ : setupStore.loadWorkspacesState.hasFailed
167
+ ? `Can't fetch project workspaces. Please try again or select another service`
168
+ : 'You have no workspaces. Please create one to proceed...', isClearable: true, escapeClearsValue: true, darkMode: true }), _jsx("button", { className: "service-query-setup__selector__action btn--dark", onClick: showCreateWorkspaceModal, disabled: !setupStore.currentProject, tabIndex: -1, title: "Create a Workspace", children: _jsx(PlusIcon, {}) })] }), setupStore.showCreateWorkspaceModal &&
169
+ setupStore.currentProject &&
170
+ setupStore.currentSnapshotService && (_jsx(CreateWorkspaceModal, { selectedProject: setupStore.currentProject, selectedSnapService: setupStore.currentSnapshotService })), _jsx("div", { className: "service-query-setup__actions", children: _jsx("button", { className: "service-query-setup__next-btn btn--dark", onClick: handleProceed, disabled: disableProceedButton, children: "Edit Service Query" }) })] }) })] }), _jsx("div", { "data-testid": LEGEND_STUDIO_TEST_ID.STATUS_BAR, className: "editor__status-bar" })] }) }));
171
+ }));
172
+ //# sourceMappingURL=UpdateServiceQuerySetup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdateServiceQuerySetup.js","sourceRoot":"","sources":["../../../src/components/studio/UpdateServiceQuerySetup.tsx"],"names":[],"mappings":"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"}
package/lib/index.css ADDED
@@ -0,0 +1,17 @@
1
+ /** @license @finos/legend-extension-dsl-service v0.0.1
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ .service-query-setup{height:100%;position:relative;background:var(--color-dark-grey-50)}.service-query-setup__body{height:calc(100% - 2.2rem);width:100%}.service-query-setup__title{margin-bottom:1.8rem}.service-query-setup__title__header{font-size:3.6rem;font-family:"Roboto Condensed",sans-serif;font-weight:700;color:var(--color-light-grey-200);margin-bottom:1.8rem}.service-query-setup__content{height:100%;width:calc(100% - 5rem)}.service-query-setup__content__main{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:60vh;width:60vw}.service-query-setup__actions{width:100%;display:flex;justify-content:flex-end}.service-query-setup__next-btn{padding:1rem}.service-query-setup__selector{display:flex;margin-bottom:.5rem}.service-query-setup__selector__icon{display:flex;align-items:center;justify-content:center;height:2.8rem;width:2.8rem;background:var(--color-dark-grey-200);border-radius:.2rem 0 0 .2rem}.service-query-setup__selector__icon svg{color:var(--color-dark-grey-400)}.service-query-setup__selector__icon--project,.service-query-setup__selector__icon--workspace{font-size:1.8rem}.service-query-setup__selector__input{flex:1 0 auto}.service-query-setup__selector__action{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;height:2.8rem;width:2.8rem;margin-left:.5rem}.service-query-setup__workspace-selector__option__name--invalid{text-decoration:line-through .1rem;color:var(--color-red-100);cursor:help}.service-query-setup__workspace-selector__option__name--invalid svg{margin-left:.5rem}.service-query-setup__workspace-selector__option__loading-indicator{animation:spin 1s infinite ease;color:var(--color-blue-100);margin-left:.5rem}.service-query-editor{display:flex;flex-direction:column;width:100%;height:100%}.service-query-editor__header{display:flex;align-items:center;height:3.8rem;padding:.3rem;background:var(--color-dark-grey-80);border-bottom:.1rem solid var(--color-dark-grey-100)}.service-query-editor__header__content{display:flex;justify-content:space-between;height:100%;width:100%;padding-left:5rem}.service-query-editor__header__content__main{display:flex}.service-query-editor__header__label{display:flex;align-items:center;height:3.2rem;margin-left:.3rem;user-select:none;cursor:default;font-family:"Roboto Mono",monospace;font-size:1.3rem;background:var(--color-dark-grey-100);color:var(--color-light-grey-250);border-radius:.2rem;padding:0 2rem;font-weight:500}.service-query-editor__header__label__icon{margin-right:1rem}.service-query-editor__header__label--service-query{border-left:.3rem solid var(--color-blue-50);color:var(--color-blue-50)}.service-query-editor__header__label__content{display:flex;align-items:center;justify-content:center;height:100%;min-width:10rem;border-radius:0 .2rem .2rem 0}.service-query-editor__header__actions{display:flex;align-items:center;height:100%}.service-query-editor__header__actions__divider{height:2.8rem;width:.1rem;margin:.5rem;background:var(--color-dark-grey-250)}.service-query-editor__header__action{display:flex;align-items:center;justify-content:center;height:3.2rem;width:3.2rem;border-radius:.2rem}.service-query-editor__header__action svg{color:var(--color-light-grey-100)}.service-query-editor__header__action+.service-query-editor__header__action{margin-left:.3rem}.service-query-editor__content{height:calc(100% - 3.8rem);width:100%}.service-query-editor__registration-env-config__option{display:flex;align-items:center}.service-query-editor__registration-env-config__option__url{color:var(--color-dark-grey-200);margin-left:1rem;line-height:1.4rem;background:var(--color-dark-grey-500);border-radius:.2rem;padding:0 .5rem;font-size:1rem;font-weight:700;font-family:"Roboto Mono",monospace}.service-query-editor__registration-env-config__option__name{display:flex;align-items:center;height:1.8rem}.service-query-editor__registration__pattern{display:flex;align-items:center}.service-query-editor__registration__pattern .input-group{width:100%}.service-query-editor__registration__pattern__override{width:10rem;margin-left:1rem}.service-query-editor__review{display:flex;align-items:center;height:3.2rem;width:unset;border-radius:.2rem;background:var(--color-yellow-200);color:var(--color-dark-grey-280);cursor:pointer}.service-query-editor__review__icon{display:flex;align-items:center;justify-content:center;height:3.2rem;width:3.2rem;border-radius:.2rem 0 0 .2rem;background:var(--color-dark-shade-50)}.service-query-editor__review__icon svg{color:var(--color-dark-grey-80)}.service-query-editor__review__message{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;word-break:break-word;text-align:left;height:3.2rem;line-height:3.2rem;padding:0 0 0 1rem;width:20rem;font-family:"Roboto Mono",monospace;font-size:1.2rem}.service-query-editor__review__action{display:flex;align-items:center;justify-content:center;height:3.2rem;width:3.2rem}.service-query-editor__review__action svg{color:var(--color-dark-grey-80)}.service-query-editor__workspace-status{display:flex;align-items:center;justify-content:center;height:3.2rem;border-radius:.2rem;margin-left:.3rem;color:var(--color-dark-shade-800)}.service-query-editor__workspace-status--up-to-date{background:var(--color-green-100)}.service-query-editor__workspace-status--up-to-date svg{color:var(--color-dark-shade-800);font-size:1.6rem}.service-query-editor__workspace-status__icon{display:flex;align-items:center;justify-content:center;cursor:pointer;height:3.2rem;width:3.2rem;background:var(--color-dark-shade-50);border-radius:.2rem 0 0 .2rem}.service-query-editor__workspace-status__text{font-family:"Roboto Mono",monospace;font-size:1.2rem;font-weight:700;padding:0 1rem}.service-query-editor__workspace-status--out-of-sync,.service-query-editor__workspace-status--outdated{width:unset;color:var(--color-light-grey-100);background:var(--color-red-200)}/*# sourceMappingURL=index.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sourceRoot":"","sources":["../style/_service-query-setup.scss","../../../node_modules/@finos/legend-art/scss/_mixins.scss","../style/_service-query-editor.scss"],"names":[],"mappings":"AAkBA,qBACE,YACA,kBACA,qCAEA,2BACE,2BACA,WAGF,4BACE,qBAGF,oCACE,iBACA,0CACA,gBACA,kCACA,qBAGF,8BACE,YACA,wBAGF,oCC5BA,kBACA,QACA,SACA,gCD4BE,YACA,WAGF,8BACE,WACA,aACA,yBAGF,+BACE,aAGF,+BACE,aACA,oBAEA,qCC1CF,aACA,mBACA,uBD2CI,cACA,aACA,sCACA,8BAEA,yCACE,iCAIJ,8FAEE,iBAGF,sCACE,cAGF,uCChEF,aACA,mBACA,uBA2BA,YACA,cDsCI,cACA,aACA,kBAIJ,gEACE,mCACA,2BACA,YAEA,oEACE,kBAIJ,oEACE,gCACA,4BACA,kBE7FJ,sBACE,aACA,sBACA,WACA,YAEA,8BDMA,aACA,mBCJE,cACA,cACA,qCACA,qDAEA,uCDgBF,aACA,8BCdI,YACA,WACA,kBAGF,6CACE,aAGF,qCDdF,aACA,mBCgBI,cACA,kBACA,iBACA,eACA,oCACA,iBACA,sCACA,kCACA,oBACA,eACA,gBAEA,2CACE,kBAGF,oDACE,6CACA,2BAIJ,8CD7CF,aACA,mBACA,uBC8CI,YACA,gBACA,8BAGF,uCD/CF,aACA,mBCiDI,YAGF,gDACE,cACA,YACA,aACA,sCAGF,sCDlEF,aACA,mBACA,uBCmEI,cACA,aACA,oBAEA,0CACE,kCAIJ,4EACE,kBAIJ,+BACE,2BACA,WAGF,uDDlFA,aACA,mBCoFE,4DACE,iCACA,iBACA,mBACA,sCACA,oBACA,gBACA,eACA,gBACA,oCAGF,6DDjGF,aACA,mBCmGI,cAIJ,6CDxGA,aACA,mBC0GE,0DACE,WAGF,uDACE,YACA,iBAIJ,8BDrHA,aACA,mBCuHE,cACA,YACA,oBACA,mCACA,iCACA,eAEA,oCDrIF,aACA,mBACA,uBCsII,cACA,aACA,8BACA,sCAEA,wCACE,gCAIJ,uCDlIF,mBACA,uBACA,gBACA,sBACA,gBCiII,cACA,mBACA,mBACA,YACA,oCACA,iBAGF,sCD7JF,aACA,mBACA,uBC8JI,cACA,aAEA,0CACE,gCAKN,wCDzKA,aACA,mBACA,uBC0KE,cACA,oBACA,kBACA,kCAEA,oDACE,kCAEA,wDACE,kCACA,iBAIJ,8CD1LF,aACA,mBACA,uBC2LI,eACA,cACA,aACA,sCACA,8BAGF,8CACE,oCACA,iBACA,gBACA,eAGF,uGAEE,YACA,kCACA","file":"index.css"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ export { DSL_Service_LegendStudioApplicationPlugin } from './components/studio/DSL_Service_LegendStudioApplicationPlugin.js';
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,yCAAyC,EAAE,MAAM,kEAAkE,CAAC"}
package/lib/index.js ADDED
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ export { DSL_Service_LegendStudioApplicationPlugin } from './components/studio/DSL_Service_LegendStudioApplicationPlugin.js';
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,yCAAyC,EAAE,MAAM,kEAAkE,CAAC"}
@@ -0,0 +1,84 @@
1
+ {
2
+ "name": "@finos/legend-extension-dsl-service",
3
+ "version": "0.0.1",
4
+ "description": "Legend extension for Service DSL",
5
+ "keywords": [
6
+ "legend",
7
+ "legend-extension",
8
+ "dsl",
9
+ "dsl-service"
10
+ ],
11
+ "homepage": "https://github.com/finos/legend-studio/tree/master/packages/legend-extension-dsl-service",
12
+ "bugs": {
13
+ "url": "https://github.com/finos/legend-studio/issues"
14
+ },
15
+ "repository": {
16
+ "type": "git",
17
+ "url": "https://github.com/finos/legend-studio.git",
18
+ "directory": "packages/legend-extension-dsl-service"
19
+ },
20
+ "license": "Apache-2.0",
21
+ "sideEffects": false,
22
+ "type": "module",
23
+ "exports": {
24
+ ".": "./lib/index.js",
25
+ "./lib/index.css": "./lib/index.css"
26
+ },
27
+ "module": "lib/index.js",
28
+ "types": "lib/index.d.ts",
29
+ "scripts": {
30
+ "build": "yarn clean && yarn build:sass && yarn build:ts",
31
+ "build:sass": "cross-env INIT_CWD=$INIT_CWD node ../../scripts/workflow/buildSass.js",
32
+ "build:ts": "tsc --project ./tsconfig.build.json",
33
+ "clean": "npm-run-all clean:cache clean:lib",
34
+ "clean:cache": "rimraf \"build\"",
35
+ "clean:lib": "rimraf \"lib\"",
36
+ "dev": "npm-run-all --parallel dev:sass dev:ts",
37
+ "dev:sass": "sass style:lib --watch --load-path=../../node_modules/@finos/legend-art/scss",
38
+ "dev:ts": "tsc --watch --preserveWatchOutput",
39
+ "lint:js": "cross-env NODE_ENV=production eslint --cache --cache-location ./build/.eslintcache --report-unused-disable-directives --parser-options=project:\"./tsconfig.json\" \"./src/**/*.{js,ts,tsx}\"",
40
+ "publish:prepare": "node ../../scripts/release/preparePublishContent.js",
41
+ "publish:snapshot": "node ../../scripts/release/publishDevSnapshot.js",
42
+ "test": "jest",
43
+ "test:watch": "jest --watch"
44
+ },
45
+ "dependencies": {
46
+ "@finos/legend-application": "workspace:*",
47
+ "@finos/legend-application-query": "workspace:*",
48
+ "@finos/legend-application-studio": "workspace:*",
49
+ "@finos/legend-art": "workspace:*",
50
+ "@finos/legend-graph": "workspace:*",
51
+ "@finos/legend-query-builder": "workspace:*",
52
+ "@finos/legend-server-depot": "workspace:*",
53
+ "@finos/legend-server-sdlc": "workspace:*",
54
+ "@finos/legend-shared": "workspace:*",
55
+ "@finos/legend-storage": "workspace:*",
56
+ "@types/react": "18.0.21",
57
+ "mobx": "6.6.2",
58
+ "mobx-react-lite": "3.4.0",
59
+ "react": "18.2.0",
60
+ "react-dom": "18.2.0",
61
+ "react-router": "5.3.3",
62
+ "serializr": "2.0.5"
63
+ },
64
+ "devDependencies": {
65
+ "@finos/legend-dev-utils": "workspace:*",
66
+ "@jest/globals": "29.0.3",
67
+ "cross-env": "7.0.3",
68
+ "eslint": "8.24.0",
69
+ "jest": "29.0.3",
70
+ "npm-run-all": "4.1.5",
71
+ "rimraf": "3.0.2",
72
+ "sass": "1.55.0",
73
+ "typescript": "4.8.3"
74
+ },
75
+ "peerDependencies": {
76
+ "react": "^18.0.0"
77
+ },
78
+ "publishConfig": {
79
+ "directory": "build/publishContent"
80
+ },
81
+ "extensions": {
82
+ "applicationStudioPlugin": "@finos/legend-application-studio-plugin-dsl-service"
83
+ }
84
+ }
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ export declare const parseServiceCoordinates: (val: string) => {
17
+ servicePath: string;
18
+ groupId: string;
19
+ artifactId: string;
20
+ };
21
+ export declare const generateServiceCoordinates: (groupId: string, artifactId: string, servicePath: string) => string;
22
+ export declare enum DSL_SERVICE_PATH_PARAM_TOKEN {
23
+ SERVICE_COORDINATES = "serviceCoordinates",
24
+ PROJECT_ID = "projectId",
25
+ GROUP_WORKSPACE_ID = "groupWorkspaceId",
26
+ SERVICE_PATH = "servicePath"
27
+ }
28
+ export declare const DSL_SERVICE_LEGEND_STUDIO_ROUTE_PATTERN: Readonly<{
29
+ UPDATE_SERVICE_QUERY_SETUP: "/update-service-query/:serviceCoordinates?";
30
+ UPDATE_SERVICE_QUERY: "/update-service-query/:serviceCoordinates/:groupWorkspaceId";
31
+ UPDATE_PROJECT_SERVICE_QUERY_SETUP: "/update-project-service-query/:projectId?";
32
+ UPDATE_PROJECT_SERVICE_QUERY: "/update-project-service-query/:projectId/:groupWorkspaceId/:servicePath";
33
+ }>;
34
+ export interface ServiceQueryUpdaterSetupPathParams {
35
+ [DSL_SERVICE_PATH_PARAM_TOKEN.SERVICE_COORDINATES]?: string;
36
+ }
37
+ export declare const generateServiceQueryUpdaterSetupRoute: (groupId?: string, artifactId?: string, servicePath?: string) => string;
38
+ export interface ServiceQueryUpdaterPathParams {
39
+ [DSL_SERVICE_PATH_PARAM_TOKEN.SERVICE_COORDINATES]: string;
40
+ [DSL_SERVICE_PATH_PARAM_TOKEN.GROUP_WORKSPACE_ID]: string;
41
+ }
42
+ export declare const generateServiceQueryUpdaterRoute: (groupId: string, artifactId: string, servicePath: string, groupWorkspaceId: string) => string;
43
+ export interface ProjectServiceQueryUpdaterSetupPathParams {
44
+ [DSL_SERVICE_PATH_PARAM_TOKEN.PROJECT_ID]?: string;
45
+ }
46
+ export declare const generateProjectServiceQueryUpdaterSetupRoute: (projectId?: string) => string;
47
+ export interface ProjectServiceQueryUpdaterPathParams {
48
+ [DSL_SERVICE_PATH_PARAM_TOKEN.PROJECT_ID]: string;
49
+ [DSL_SERVICE_PATH_PARAM_TOKEN.GROUP_WORKSPACE_ID]: string;
50
+ [DSL_SERVICE_PATH_PARAM_TOKEN.SERVICE_PATH]: string;
51
+ }
52
+ export declare const generateProjectServiceQueryUpdaterRoute: (projectId: string, groupWorkspaceId: string, servicePath: string) => string;
53
+ //# sourceMappingURL=DSL_Service_LegendStudioRouter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DSL_Service_LegendStudioRouter.d.ts","sourceRoot":"","sources":["../../../src/stores/studio/DSL_Service_LegendStudioRouter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,eAAO,MAAM,uBAAuB,QAC7B,MAAM;iBAEE,MAAM;aACV,MAAM;gBACH,MAAM;CAqBnB,CAAC;AAEF,eAAO,MAAM,0BAA0B,YAC5B,MAAM,cACH,MAAM,eACL,MAAM,KAClB,MAKE,CAAC;AAEN,oBAAY,4BAA4B;IACtC,mBAAmB,uBAAuB;IAC1C,UAAU,cAAc;IACxB,kBAAkB,qBAAqB;IACvC,YAAY,gBAAgB;CAC7B;AAED,eAAO,MAAM,uCAAuC;;;;;EAKlD,CAAC;AAEH,MAAM,WAAW,kCAAkC;IACjD,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,CAAC,EAAE,MAAM,CAAC;CAC7D;AAED,eAAO,MAAM,qCAAqC,aACtC,MAAM,eACH,MAAM,gBACL,MAAM,KACnB,MAWA,CAAC;AAEJ,MAAM,WAAW,6BAA6B;IAC5C,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC3D,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC3D;AAED,eAAO,MAAM,gCAAgC,YAClC,MAAM,cACH,MAAM,eACL,MAAM,oBACD,MAAM,KACvB,MAUA,CAAC;AAEJ,MAAM,WAAW,yCAAyC;IACxD,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC;CACpD;AAED,eAAO,MAAM,4CAA4C,eAC3C,MAAM,KACjB,MAQA,CAAC;AAEJ,MAAM,WAAW,oCAAoC;IACnD,CAAC,4BAA4B,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAClD,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC1D,CAAC,4BAA4B,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CACrD;AAED,eAAO,MAAM,uCAAuC,cACvC,MAAM,oBACC,MAAM,eACX,MAAM,KAClB,MAUA,CAAC"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { generateExtensionUrlPattern } from '@finos/legend-application';
17
+ import { assertTrue, guaranteeNonEmptyString } from '@finos/legend-shared';
18
+ import { generateGAVCoordinates, parseGACoordinates, } from '@finos/legend-storage';
19
+ import { generatePath } from 'react-router';
20
+ const SERVICE_COORDINATE_DELIMITER = '@';
21
+ export const parseServiceCoordinates = (val) => {
22
+ const parts = val.split(SERVICE_COORDINATE_DELIMITER);
23
+ assertTrue(parts.length === 2, `Can't parse service coordinates '${val}': expect the coordinates to follow format {servicePath}${SERVICE_COORDINATE_DELIMITER}{GACoordinates}`);
24
+ const { groupId, artifactId } = parseGACoordinates(guaranteeNonEmptyString(parts[1]?.trim(), `Service coordinates GA coordinates are missing or empty`));
25
+ return {
26
+ groupId,
27
+ artifactId,
28
+ servicePath: guaranteeNonEmptyString(parts[0]?.trim(), `Service coordinates service path is missing or empty`),
29
+ };
30
+ };
31
+ export const generateServiceCoordinates = (groupId, artifactId, servicePath) => `${servicePath}${SERVICE_COORDINATE_DELIMITER}${generateGAVCoordinates(groupId, artifactId, undefined)}`;
32
+ export var DSL_SERVICE_PATH_PARAM_TOKEN;
33
+ (function (DSL_SERVICE_PATH_PARAM_TOKEN) {
34
+ DSL_SERVICE_PATH_PARAM_TOKEN["SERVICE_COORDINATES"] = "serviceCoordinates";
35
+ DSL_SERVICE_PATH_PARAM_TOKEN["PROJECT_ID"] = "projectId";
36
+ DSL_SERVICE_PATH_PARAM_TOKEN["GROUP_WORKSPACE_ID"] = "groupWorkspaceId";
37
+ DSL_SERVICE_PATH_PARAM_TOKEN["SERVICE_PATH"] = "servicePath";
38
+ })(DSL_SERVICE_PATH_PARAM_TOKEN = DSL_SERVICE_PATH_PARAM_TOKEN || (DSL_SERVICE_PATH_PARAM_TOKEN = {}));
39
+ export const DSL_SERVICE_LEGEND_STUDIO_ROUTE_PATTERN = Object.freeze({
40
+ UPDATE_SERVICE_QUERY_SETUP: `/update-service-query/:${DSL_SERVICE_PATH_PARAM_TOKEN.SERVICE_COORDINATES}?`,
41
+ UPDATE_SERVICE_QUERY: `/update-service-query/:${DSL_SERVICE_PATH_PARAM_TOKEN.SERVICE_COORDINATES}/:${DSL_SERVICE_PATH_PARAM_TOKEN.GROUP_WORKSPACE_ID}`,
42
+ UPDATE_PROJECT_SERVICE_QUERY_SETUP: `/update-project-service-query/:${DSL_SERVICE_PATH_PARAM_TOKEN.PROJECT_ID}?`,
43
+ UPDATE_PROJECT_SERVICE_QUERY: `/update-project-service-query/:${DSL_SERVICE_PATH_PARAM_TOKEN.PROJECT_ID}/:${DSL_SERVICE_PATH_PARAM_TOKEN.GROUP_WORKSPACE_ID}/:${DSL_SERVICE_PATH_PARAM_TOKEN.SERVICE_PATH}`,
44
+ });
45
+ export const generateServiceQueryUpdaterSetupRoute = (groupId, artifactId, servicePath) => generatePath(generateExtensionUrlPattern(DSL_SERVICE_LEGEND_STUDIO_ROUTE_PATTERN.UPDATE_SERVICE_QUERY_SETUP), {
46
+ [DSL_SERVICE_PATH_PARAM_TOKEN.SERVICE_COORDINATES]: groupId && artifactId && servicePath
47
+ ? generateServiceCoordinates(groupId, artifactId, servicePath)
48
+ : undefined,
49
+ });
50
+ export const generateServiceQueryUpdaterRoute = (groupId, artifactId, servicePath, groupWorkspaceId) => generatePath(generateExtensionUrlPattern(DSL_SERVICE_LEGEND_STUDIO_ROUTE_PATTERN.UPDATE_SERVICE_QUERY), {
51
+ [DSL_SERVICE_PATH_PARAM_TOKEN.SERVICE_COORDINATES]: generateServiceCoordinates(groupId, artifactId, servicePath),
52
+ [DSL_SERVICE_PATH_PARAM_TOKEN.GROUP_WORKSPACE_ID]: groupWorkspaceId,
53
+ });
54
+ export const generateProjectServiceQueryUpdaterSetupRoute = (projectId) => generatePath(generateExtensionUrlPattern(DSL_SERVICE_LEGEND_STUDIO_ROUTE_PATTERN.UPDATE_PROJECT_SERVICE_QUERY_SETUP), {
55
+ [DSL_SERVICE_PATH_PARAM_TOKEN.PROJECT_ID]: projectId,
56
+ });
57
+ export const generateProjectServiceQueryUpdaterRoute = (projectId, groupWorkspaceId, servicePath) => generatePath(generateExtensionUrlPattern(DSL_SERVICE_LEGEND_STUDIO_ROUTE_PATTERN.UPDATE_PROJECT_SERVICE_QUERY), {
58
+ [DSL_SERVICE_PATH_PARAM_TOKEN.PROJECT_ID]: projectId,
59
+ [DSL_SERVICE_PATH_PARAM_TOKEN.GROUP_WORKSPACE_ID]: groupWorkspaceId,
60
+ [DSL_SERVICE_PATH_PARAM_TOKEN.SERVICE_PATH]: servicePath,
61
+ });
62
+ //# sourceMappingURL=DSL_Service_LegendStudioRouter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DSL_Service_LegendStudioRouter.js","sourceRoot":"","sources":["../../../src/stores/studio/DSL_Service_LegendStudioRouter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type LegendStudioApplicationStore, type ServiceRegistrationEnvironmentConfig, EditorStore } from '@finos/legend-application-studio';
17
+ import { type Service } from '@finos/legend-graph';
18
+ import { type QueryBuilderState } from '@finos/legend-query-builder';
19
+ import { type DepotServerClient } from '@finos/legend-server-depot';
20
+ import { type SDLCServerClient } from '@finos/legend-server-sdlc';
21
+ import { type GeneratorFn, ActionState } from '@finos/legend-shared';
22
+ import type { Entity } from '@finos/legend-storage';
23
+ declare type ProjectServiceCoordinates = {
24
+ projectId: string;
25
+ groupWorkspaceId: string;
26
+ servicePath: string;
27
+ };
28
+ export declare abstract class ServiceQueryEditorStore extends EditorStore {
29
+ queryBuilderState?: QueryBuilderState | undefined;
30
+ _service?: Service | undefined;
31
+ showNewServiceModal: boolean;
32
+ showServiceRegistrationModal: boolean;
33
+ registerServiceState: ActionState;
34
+ readonly serviceRegistrationEnvConfigs: ServiceRegistrationEnvironmentConfig[];
35
+ currentServiceRegistrationEnvConfig?: ServiceRegistrationEnvironmentConfig | undefined;
36
+ showSubmitReviewModal: boolean;
37
+ constructor(applicationStore: LegendStudioApplicationStore, sdlcServerClient: SDLCServerClient, depotServerClient: DepotServerClient);
38
+ get service(): Service;
39
+ setShowNewServiceModal(val: boolean): void;
40
+ setShowServiceRegistrationModal(val: boolean): void;
41
+ setCurrentServiceRegistrationEnvConfig(val: ServiceRegistrationEnvironmentConfig | undefined): void;
42
+ setShowSubmitReviewModal(val: boolean): void;
43
+ abstract fetchServiceInformation(): Promise<ProjectServiceCoordinates>;
44
+ initializeWithServiceQuery(): GeneratorFn<void>;
45
+ saveWorkspace(serviceEntity: Entity, createNew: boolean, onSuccess?: () => void): GeneratorFn<void>;
46
+ recreateWorkspace(): GeneratorFn<void>;
47
+ updateServiceQuery(): void;
48
+ registerService(overridePattern?: string | undefined): GeneratorFn<void>;
49
+ }
50
+ export declare class ServiceQueryUpdaterStore extends ServiceQueryEditorStore {
51
+ readonly serviceCoordinates: string;
52
+ readonly groupWorkspaceId: string;
53
+ constructor(applicationStore: LegendStudioApplicationStore, sdlcServerClient: SDLCServerClient, depotServerClient: DepotServerClient, serviceCoordinates: string, groupWorkspaceId: string);
54
+ fetchServiceInformation(): Promise<ProjectServiceCoordinates>;
55
+ }
56
+ export declare class ProjectServiceQueryUpdaterStore extends ServiceQueryEditorStore {
57
+ readonly projectId: string;
58
+ readonly groupWorkspaceId: string;
59
+ readonly servicePath: string;
60
+ constructor(applicationStore: LegendStudioApplicationStore, sdlcServerClient: SDLCServerClient, depotServerClient: DepotServerClient, projectId: string, groupWorkspaceId: string, servicePath: string);
61
+ fetchServiceInformation(): Promise<ProjectServiceCoordinates>;
62
+ }
63
+ export {};
64
+ //# sourceMappingURL=ServiceQueryEditorStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServiceQueryEditorStore.d.ts","sourceRoot":"","sources":["../../../src/stores/studio/ServiceQueryEditorStore.ts"],"names":[],"mappings":"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"}