@finos/legend-application 8.0.2 → 9.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 (123) hide show
  1. package/lib/components/LegendApplicationComponentFrameworkProvider.d.ts +4 -2
  2. package/lib/components/LegendApplicationComponentFrameworkProvider.d.ts.map +1 -1
  3. package/lib/components/LegendApplicationComponentFrameworkProvider.js +7 -4
  4. package/lib/components/LegendApplicationComponentFrameworkProvider.js.map +1 -1
  5. package/lib/components/NotificationManager.js +1 -1
  6. package/lib/components/NotificationManager.js.map +1 -1
  7. package/lib/components/WebApplicationNavigatorProvider.d.ts.map +1 -1
  8. package/lib/components/WebApplicationNavigatorProvider.js +1 -1
  9. package/lib/components/WebApplicationNavigatorProvider.js.map +1 -1
  10. package/lib/components/{shared/execution-plan-viewer → execution-plan-viewer}/ExecutionPlanViewer.d.ts +1 -1
  11. package/lib/components/execution-plan-viewer/ExecutionPlanViewer.d.ts.map +1 -0
  12. package/lib/components/{shared/execution-plan-viewer → execution-plan-viewer}/ExecutionPlanViewer.js +3 -3
  13. package/lib/components/execution-plan-viewer/ExecutionPlanViewer.js.map +1 -0
  14. package/lib/components/{shared/execution-plan-viewer → execution-plan-viewer}/SQLExecutionNodeViewer.d.ts +1 -1
  15. package/lib/components/execution-plan-viewer/SQLExecutionNodeViewer.d.ts.map +1 -0
  16. package/lib/components/{shared/execution-plan-viewer → execution-plan-viewer}/SQLExecutionNodeViewer.js +2 -2
  17. package/lib/components/execution-plan-viewer/SQLExecutionNodeViewer.js.map +1 -0
  18. package/lib/components/shared/DocumentationLink.d.ts +5 -0
  19. package/lib/components/shared/DocumentationLink.d.ts.map +1 -1
  20. package/lib/components/shared/DocumentationLink.js +12 -2
  21. package/lib/components/shared/DocumentationLink.js.map +1 -1
  22. package/lib/components/shared/{PackageableElementOptionRenderer.d.ts → PackageableElementOptionLabel.d.ts} +1 -1
  23. package/lib/components/shared/PackageableElementOptionLabel.d.ts.map +1 -0
  24. package/lib/components/shared/{PackageableElementOptionRenderer.js → PackageableElementOptionLabel.js} +5 -5
  25. package/lib/components/shared/PackageableElementOptionLabel.js.map +1 -0
  26. package/lib/components/shared/TextInputEditor.d.ts.map +1 -1
  27. package/lib/components/shared/TextInputEditor.js +1 -2
  28. package/lib/components/shared/TextInputEditor.js.map +1 -1
  29. package/lib/index.css +2 -2
  30. package/lib/index.css.map +1 -1
  31. package/lib/index.d.ts +8 -9
  32. package/lib/index.d.ts.map +1 -1
  33. package/lib/index.js +8 -9
  34. package/lib/index.js.map +1 -1
  35. package/lib/stores/ApplicationStore.d.ts +2 -0
  36. package/lib/stores/ApplicationStore.d.ts.map +1 -1
  37. package/lib/stores/ApplicationStore.js +13 -10
  38. package/lib/stores/ApplicationStore.js.map +1 -1
  39. package/lib/stores/AssistantService.js +1 -1
  40. package/lib/stores/AssistantService.js.map +1 -1
  41. package/lib/stores/{shared/ExecutionPlanState.d.ts → ExecutionPlanState.d.ts} +1 -1
  42. package/lib/stores/ExecutionPlanState.d.ts.map +1 -0
  43. package/lib/stores/{shared/ExecutionPlanState.js → ExecutionPlanState.js} +0 -0
  44. package/lib/stores/ExecutionPlanState.js.map +1 -0
  45. package/lib/stores/LegendApplicationDocumentation.d.ts +2 -1
  46. package/lib/stores/LegendApplicationDocumentation.d.ts.map +1 -1
  47. package/lib/stores/LegendApplicationDocumentation.js +1 -0
  48. package/lib/stores/LegendApplicationDocumentation.js.map +1 -1
  49. package/lib/stores/WebApplicationNavigator.d.ts +62 -30
  50. package/lib/stores/WebApplicationNavigator.d.ts.map +1 -1
  51. package/lib/stores/WebApplicationNavigator.js +80 -15
  52. package/lib/stores/WebApplicationNavigator.js.map +1 -1
  53. package/lib/{components/ApplicationTestID.js → stores/WebApplicationRouter.d.ts} +4 -5
  54. package/lib/stores/WebApplicationRouter.d.ts.map +1 -0
  55. package/{src/components/ApplicationTestID.ts → lib/stores/WebApplicationRouter.js} +4 -4
  56. package/lib/stores/WebApplicationRouter.js.map +1 -0
  57. package/package.json +9 -11
  58. package/src/components/LegendApplicationComponentFrameworkProvider.tsx +18 -14
  59. package/src/components/NotificationManager.tsx +1 -1
  60. package/src/components/WebApplicationNavigatorProvider.tsx +1 -1
  61. package/src/components/{shared/execution-plan-viewer → execution-plan-viewer}/ExecutionPlanViewer.tsx +3 -3
  62. package/src/components/{shared/execution-plan-viewer → execution-plan-viewer}/SQLExecutionNodeViewer.tsx +3 -3
  63. package/src/components/shared/DocumentationLink.tsx +25 -1
  64. package/src/components/shared/{PackageableElementOptionRenderer.tsx → PackageableElementOptionLabel.tsx} +4 -4
  65. package/src/components/shared/TextInputEditor.tsx +1 -2
  66. package/src/index.ts +9 -9
  67. package/src/stores/ApplicationStore.ts +15 -12
  68. package/src/stores/AssistantService.ts +1 -1
  69. package/src/stores/{shared/ExecutionPlanState.ts → ExecutionPlanState.ts} +1 -1
  70. package/src/stores/LegendApplicationDocumentation.ts +1 -0
  71. package/src/stores/WebApplicationNavigator.ts +149 -39
  72. package/{lib/components/ApplicationTestID.d.ts → src/stores/WebApplicationRouter.ts} +12 -4
  73. package/tsconfig.json +7 -16
  74. package/lib/components/ApplicationTestID.d.ts.map +0 -1
  75. package/lib/components/ApplicationTestID.js.map +0 -1
  76. package/lib/components/shared/BasicValueSpecificationEditor.d.ts +0 -52
  77. package/lib/components/shared/BasicValueSpecificationEditor.d.ts.map +0 -1
  78. package/lib/components/shared/BasicValueSpecificationEditor.js +0 -323
  79. package/lib/components/shared/BasicValueSpecificationEditor.js.map +0 -1
  80. package/lib/components/shared/CustomDatePicker.d.ts +0 -38
  81. package/lib/components/shared/CustomDatePicker.d.ts.map +0 -1
  82. package/lib/components/shared/CustomDatePicker.js +0 -616
  83. package/lib/components/shared/CustomDatePicker.js.map +0 -1
  84. package/lib/components/shared/LambdaEditor.d.ts +0 -92
  85. package/lib/components/shared/LambdaEditor.d.ts.map +0 -1
  86. package/lib/components/shared/LambdaEditor.js +0 -434
  87. package/lib/components/shared/LambdaEditor.js.map +0 -1
  88. package/lib/components/shared/LambdaParameterValuesEditor.d.ts +0 -25
  89. package/lib/components/shared/LambdaParameterValuesEditor.d.ts.map +0 -1
  90. package/lib/components/shared/LambdaParameterValuesEditor.js +0 -52
  91. package/lib/components/shared/LambdaParameterValuesEditor.js.map +0 -1
  92. package/lib/components/shared/PackageableElementOptionRenderer.d.ts.map +0 -1
  93. package/lib/components/shared/PackageableElementOptionRenderer.js.map +0 -1
  94. package/lib/components/shared/execution-plan-viewer/ExecutionPlanViewer.d.ts.map +0 -1
  95. package/lib/components/shared/execution-plan-viewer/ExecutionPlanViewer.js.map +0 -1
  96. package/lib/components/shared/execution-plan-viewer/SQLExecutionNodeViewer.d.ts.map +0 -1
  97. package/lib/components/shared/execution-plan-viewer/SQLExecutionNodeViewer.js.map +0 -1
  98. package/lib/stores/CJS__Fuse.cjs +0 -35
  99. package/lib/stores/CJS__Fuse.cjs.map +0 -1
  100. package/lib/stores/CJS__Fuse.d.cts +0 -28
  101. package/lib/stores/CJS__Fuse.d.cts.map +0 -1
  102. package/lib/stores/shared/ExecutionPlanState.d.ts.map +0 -1
  103. package/lib/stores/shared/ExecutionPlanState.js.map +0 -1
  104. package/lib/stores/shared/LambdaEditorState.d.ts +0 -40
  105. package/lib/stores/shared/LambdaEditorState.d.ts.map +0 -1
  106. package/lib/stores/shared/LambdaEditorState.js +0 -81
  107. package/lib/stores/shared/LambdaEditorState.js.map +0 -1
  108. package/lib/stores/shared/LambdaParameterState.d.ts +0 -62
  109. package/lib/stores/shared/LambdaParameterState.d.ts.map +0 -1
  110. package/lib/stores/shared/LambdaParameterState.js +0 -160
  111. package/lib/stores/shared/LambdaParameterState.js.map +0 -1
  112. package/lib/stores/shared/ValueSpecificationModifierHelper.d.ts +0 -27
  113. package/lib/stores/shared/ValueSpecificationModifierHelper.d.ts.map +0 -1
  114. package/lib/stores/shared/ValueSpecificationModifierHelper.js +0 -49
  115. package/lib/stores/shared/ValueSpecificationModifierHelper.js.map +0 -1
  116. package/src/components/shared/BasicValueSpecificationEditor.tsx +0 -828
  117. package/src/components/shared/CustomDatePicker.tsx +0 -1292
  118. package/src/components/shared/LambdaEditor.tsx +0 -854
  119. package/src/components/shared/LambdaParameterValuesEditor.tsx +0 -118
  120. package/src/stores/CJS__Fuse.cts +0 -28
  121. package/src/stores/shared/LambdaEditorState.ts +0 -118
  122. package/src/stores/shared/LambdaParameterState.ts +0 -253
  123. package/src/stores/shared/ValueSpecificationModifierHelper.ts +0 -104
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomDatePicker.js","sourceRoot":"","sources":["../../../src/components/shared/CustomDatePicker.tsx"],"names":[],"mappings":"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"}
@@ -1,92 +0,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
- /// <reference types="react" resolution-mode="require"/>
17
- import { type IKeyboardEvent } from 'monaco-editor';
18
- import type { LambdaEditorState } from '../../stores/shared/LambdaEditorState.js';
19
- import { type Type } from '@finos/legend-graph';
20
- export declare type LambdaEditorOnKeyDownEventHandler = {
21
- matcher: (event: IKeyboardEvent) => boolean;
22
- action: (event: IKeyboardEvent) => void;
23
- };
24
- /**
25
- * This is not strictly meant for lambda. The idea is to create an editor that allows
26
- * editing _something_ but allows user to edit via text.
27
- */
28
- export declare const LambdaEditor: ((props: {
29
- className?: string | undefined;
30
- disabled: boolean;
31
- lambdaEditorState: LambdaEditorState;
32
- /**
33
- * TODO: when we pass in these expected type we should match a type as expected type if it's covariance, i.e. it is a subtype of
34
- * the expected type. Note that we also have to handle that relationship for Primitive type
35
- * See https://dzone.com/articles/covariance-and-contravariance
36
- */
37
- expectedType?: Type | undefined;
38
- matchedExpectedType?: (() => boolean) | undefined;
39
- onExpectedTypeLabelSelect?: (() => void) | undefined;
40
- /**
41
- * As backdrop element is often shared in the application, and there could be multiple
42
- * editor using that backdrop, we could end up in situation where some such editors
43
- * have parser errors and some don't (this can happen when user make edits very quickly 2 lambda
44
- * editor and causes parsers error simultaneously). In this case, we want to make sure when
45
- * parser error is fixed in one editor, the backdrop is not dismissed immediately.
46
- *
47
- * NOTE: the current approach has a critical flaw, where on the same screen, there could be multiple
48
- * sets of lambda editors with different values for `forceBackdrop`. So really, the only way to
49
- * accomondate for this is to have `forceBackdrop` as a global value. Or we should get rid of this
50
- * backdrop mechanism altogether as it's not really a good UX pattern. i.e. quick evaluation makes
51
- * us believe that this is a good option, user will lose what they type, but the most recent parsable
52
- * input will still be captured.
53
- */
54
- forceBackdrop: boolean;
55
- /**
56
- * (de)activator for backdrop that is usually used to block any background interactions
57
- * while there is a parser error in the editor
58
- */
59
- backdropSetter?: ((val: boolean) => void) | undefined;
60
- /**
61
- * To whether or not disable expasipn toggler
62
- */
63
- disableExpansion?: boolean | undefined;
64
- /**
65
- * To whether show the inline editor in expanded mode initially and
66
- * disable expansion toggler
67
- *
68
- * This flag will override the effect of `forceExpansion`
69
- */
70
- forceExpansion?: boolean | undefined;
71
- /**
72
- * To whether or not disable popup mode
73
- */
74
- disablePopUp?: boolean | undefined;
75
- /**
76
- * To whether or not style inline editor
77
- */
78
- useBaseTextEditorSettings?: boolean | undefined;
79
- /**
80
- * To whether or not hide parser error bar in inline mode
81
- */
82
- hideErrorBar?: boolean | undefined;
83
- /**
84
- * Allow adding hotkeys handler to the editor, this is usually used
85
- * to allow activating global hotkeys while typing in the editor
86
- */
87
- onKeyDownEventHandlers?: LambdaEditorOnKeyDownEventHandler[];
88
- onEditorFocusEventHandler?: (() => void) | undefined;
89
- }) => JSX.Element) & {
90
- displayName: string;
91
- };
92
- //# sourceMappingURL=LambdaEditor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LambdaEditor.d.ts","sourceRoot":"","sources":["../../../src/components/shared/LambdaEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAGH,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AAgBvB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAQlF,OAAO,EAAiC,KAAK,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAK/E,oBAAY,iCAAiC,GAAG;IAC9C,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC;IAC5C,MAAM,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;CACzC,CAAC;AA4nBF;;;GAGG;AACH,eAAO,MAAM,YAAY;gBAET,MAAM,GAAG,SAAS;cACpB,OAAO;uBACE,iBAAiB;IACpC;;;;OAIG;mBACY,IAAI,GAAG,SAAS;0BACT,CAAC,MAAM,OAAO,CAAC,GAAG,SAAS;gCACrB,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS;IACpD;;;;;;;;;;;;;OAaG;mBACY,OAAO;IACtB;;;OAGG;4BACqB,OAAO,KAAK,IAAI;IACxC;;OAEG;uBACgB,OAAO,GAAG,SAAS;IACtC;;;;;OAKG;qBACc,OAAO,GAAG,SAAS;IACpC;;OAEG;mBACY,OAAO,GAAG,SAAS;IAClC;;OAEG;gCACyB,OAAO,GAAG,SAAS;IAC/C;;OAEG;mBACY,OAAO,GAAG,SAAS;IAClC;;;OAGG;6BACsB,iCAAiC,EAAE;gCAChC,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS;;;CAmGvD,CAAC"}
@@ -1,434 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } 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 { useRef, useEffect, useState, useMemo } from 'react';
18
- import { editor as monacoEditorAPI, } from 'monaco-editor';
19
- import { observer } from 'mobx-react-lite';
20
- import { useResizeDetector } from 'react-resize-detector';
21
- import { clsx, setErrorMarkers, disposeEditor, disableEditorHotKeys, baseTextEditorSettings, getEditorValue, normalizeLineEnding, FilledWindowMaximizeIcon, LongArrowAltDownIcon, LongArrowAltUpIcon, Dialog, } from '@finos/legend-art';
22
- import { debounce, noop, } from '@finos/legend-shared';
23
- import { flowResult } from 'mobx';
24
- import { ParserError } from '@finos/legend-graph';
25
- import { APPLICATION_TEST_ID } from '../ApplicationTestID.js';
26
- import { useApplicationStore } from '../ApplicationStoreProvider.js';
27
- import { EDITOR_LANGUAGE, EDITOR_THEME, TAB_SIZE } from '../../const.js';
28
- const LambdaErrorFeedback = (props) => {
29
- const { error, discardChanges } = props;
30
- if (!error) {
31
- return null;
32
- }
33
- return (_jsxs("div", { className: "lambda-editor__error-feedback", children: [_jsx("div", { className: "lambda-editor__error-feedback__error__message", children: error.message }), error instanceof ParserError && (_jsx("div", { className: "lambda-editor__error-feedback__parsing-error__content", children: _jsx("button", { className: "lambda-editor__error-feedback__parsing-error__discard-changes-btn", onClick: discardChanges, tabIndex: -1, children: "Discard Changes" }) }))] }));
34
- };
35
- const LambdaEditorInline = observer((props) => {
36
- const { className, disabled, lambdaEditorState, transformStringToLambda, expectedType, onExpectedTypeLabelSelect, matchedExpectedType, forceBackdrop, backdropSetter, disableExpansion, forceExpansion, disablePopUp, useBaseTextEditorSettings, hideErrorBar, onKeyDownEventHandlers, openInPopUp, onEditorFocusEventHandler, } = props;
37
- const applicationStore = useApplicationStore();
38
- const onDidChangeModelContentEventDisposer = useRef(undefined);
39
- const onKeyDownEventDisposer = useRef(undefined);
40
- const onDidFocusEditorWidgetDisposer = useRef(undefined);
41
- const value = normalizeLineEnding(lambdaEditorState.lambdaString);
42
- const parserError = lambdaEditorState.parserError;
43
- const compilationError = lambdaEditorState.compilationError;
44
- const selectTypeLabel = () => onExpectedTypeLabelSelect?.();
45
- const [isExpanded, setExpanded] = useState(Boolean(forceExpansion));
46
- const [editor, setEditor] = useState();
47
- const textInputRef = useRef(null);
48
- const transformLambdaToString = async (pretty) => {
49
- transformStringToLambda?.cancel();
50
- return flowResult(lambdaEditorState.convertLambdaObjectToGrammarString(pretty)).catch(applicationStore.alertUnhandledError);
51
- };
52
- const discardChanges = applicationStore.guardUnhandledError(() => transformLambdaToString(isExpanded));
53
- const toggleExpandedMode = () => {
54
- if (!forceExpansion && !parserError) {
55
- transformLambdaToString(!isExpanded).catch(applicationStore.alertUnhandledError);
56
- setExpanded(!isExpanded);
57
- }
58
- };
59
- const { ref, width, height } = useResizeDetector();
60
- useEffect(() => {
61
- if (width !== undefined && height !== undefined) {
62
- editor?.layout({ width, height });
63
- }
64
- }, [editor, width, height]);
65
- useEffect(() => {
66
- if (!editor && textInputRef.current) {
67
- const element = textInputRef.current;
68
- const lambdaEditorOptions = useBaseTextEditorSettings
69
- ? {}
70
- : {
71
- renderLineHighlight: 'none',
72
- lineHeight: 24,
73
- overviewRulerBorder: false,
74
- overviewRulerLanes: 0,
75
- hideCursorInOverviewRuler: false,
76
- glyphMargin: false,
77
- folding: false,
78
- minimap: { enabled: false },
79
- lineNumbers: 'off',
80
- lineNumbersMinChars: 0,
81
- lineDecorationsWidth: 5,
82
- snippetSuggestions: 'none',
83
- scrollbar: { vertical: 'hidden' },
84
- };
85
- const _editor = monacoEditorAPI.create(element, {
86
- ...baseTextEditorSettings,
87
- language: EDITOR_LANGUAGE.PURE,
88
- theme: applicationStore.TEMPORARY__isLightThemeEnabled
89
- ? EDITOR_THEME.TEMPORARY__VSCODE_LIGHT
90
- : EDITOR_THEME.LEGEND,
91
- ...lambdaEditorOptions,
92
- });
93
- disableEditorHotKeys(_editor);
94
- setEditor(_editor);
95
- }
96
- }, [editor, applicationStore, useBaseTextEditorSettings]);
97
- // set styling for expanded mode
98
- useEffect(() => {
99
- if (editor) {
100
- const currentClassName = editor.getRawOptions().extraEditorClassName;
101
- const isInExpanded = currentClassName === 'lambda-editor__expanded';
102
- if (isInExpanded !== isExpanded) {
103
- editor.updateOptions(isExpanded
104
- ? {
105
- extraEditorClassName: 'lambda-editor__editor__input__expanded',
106
- }
107
- : {
108
- extraEditorClassName: 'lambda-editor__editor__input__compressed',
109
- });
110
- // set the value here so we don't lose the error when toggling between expand/collape modes
111
- const currentValue = getEditorValue(editor);
112
- editor.setValue(currentValue);
113
- }
114
- }
115
- }, [editor, isExpanded]);
116
- // set backdrop to force user to fix parser error when it happens
117
- useEffect(() => {
118
- if (backdropSetter) {
119
- if (parserError) {
120
- backdropSetter(true);
121
- }
122
- else if (!forceBackdrop) {
123
- // make sure the backdrop is no longer `needed` for blocking by another parser error before hiding it
124
- // NOTE: this has a serious drawback, see the documentation for `forceBackdrop` prop of `LambdaEditor`
125
- // for better context
126
- backdropSetter(false);
127
- }
128
- }
129
- }, [parserError, forceBackdrop, backdropSetter]);
130
- if (editor) {
131
- /**
132
- * See the extensive note about this instantiation in `LambdaEditor`. The fact that `transformStringToLambda` can change
133
- * since it does not solely depends on `LambdaEditorState` but also the `disabled` flag means that the update function
134
- * can go stale, so we cannot place this `onDidChangeModelContent` in a one-time called instantiation of the editor
135
- * (i.e. the first `useEffect` where we create the editor). As such, we have to use refs and disposer to update this every time
136
- * the lambda editor is re-rendered.
137
- *
138
- * A potential bug that could come up if we place this logic in the `useEffect` for instantiating the editor is:
139
- * 1. Initially set the `disabled` to true, then switch it back to `false` (using a timer or something)
140
- * 2. Type something in the lambda editor, the transform function is `undefined` and does not update the underlying lambda
141
- */
142
- onDidChangeModelContentEventDisposer.current?.dispose();
143
- onDidChangeModelContentEventDisposer.current =
144
- editor.onDidChangeModelContent(() => {
145
- const currentVal = getEditorValue(editor);
146
- /**
147
- * Avoid unecessary setting of lambda string. Also, this prevents clearing the non-parser error on first render.
148
- * Since this method is guaranteed to be called one time during the first rendering when we first set the
149
- * value for the lambda editor, we do not want to clear any existing non-parser error in case it is set by methods
150
- * like reveal error in each editor
151
- */
152
- if (currentVal !== value) {
153
- lambdaEditorState.setLambdaString(currentVal);
154
- /**
155
- * Here we clear the error as user changes the input
156
- * NOTE: we don't reset the parser error here, we could, but with that, we have to assume that the parsing check is
157
- * pretty quick--almost near real time, but if after typing new character, we clear the parsing error and the user
158
- * still make mistake, then the warning message will appear to flash, which is bad UX, so for now, we leave it be
159
- */
160
- lambdaEditorState.setCompilationError(undefined);
161
- }
162
- /**
163
- * This method MUST run on the first rendering of the lambda editor, as it will update the lambda object. This is
164
- * needed for new lambda where a lot of time is just a stub lambda. Without having this method called on the first
165
- * rendering, that stub lambda will remain stub lambda until user starts typing something in the lambda editor.
166
- * This stub lambda sometimes does not even get registered in change detection and causing the user to lose data
167
- * Although, technically a stub lambda is useless, so this is not too serious, but it may come across as buggy
168
- */
169
- transformStringToLambda?.cancel();
170
- if (transformStringToLambda) {
171
- const stringToLambdaTransformation = transformStringToLambda();
172
- if (stringToLambdaTransformation) {
173
- flowResult(stringToLambdaTransformation).catch(applicationStore.alertUnhandledError);
174
- }
175
- }
176
- });
177
- // set hotkeys (before calling the action, finish parsing the current text value)
178
- onKeyDownEventDisposer.current?.dispose(); // dispose to avoid trigger hotkeys multiple times
179
- /**
180
- * NOTE: We can use `setCommand` here but that does not expose the event so we cannot `stopPropagation`, and we need to
181
- * use `stopPropagation` to prevent the event top bubble up to global hotkeys listener.
182
- * If we really want to use `setCommand` the other approach is to set <HotKeys/> around this lambda editor to override F9
183
- * perhaps that's the cleaner approach because we use `react-hotkeys` to handle it's business, but there is an on-going
184
- * issue with <HotKeys/> keybindings are lost when component rerenders and this happen as users type because we call `setValue`
185
- * See https://github.com/greena13/react-hotkeys/issues/209
186
- *
187
- * The main role of this section is to disable `monaco-editor` command and override with global actions, such as generate, compile,
188
- * toggle text mode, etc. The important thing is before we do so, we would like to finish the parsing of the current string, otherwise,
189
- * those operations can end up flushing the current state and trashing the user input, which is bad, as such, we make sure the
190
- * parsing passes before actually calling those global operations.
191
- */
192
- onKeyDownEventDisposer.current = editor.onKeyDown((event) => {
193
- onKeyDownEventHandlers.forEach((handler) => {
194
- if (handler.matcher(event)) {
195
- event.preventDefault();
196
- event.stopPropagation();
197
- transformStringToLambda?.cancel();
198
- handler.action(event);
199
- }
200
- });
201
- });
202
- onDidFocusEditorWidgetDisposer.current?.dispose();
203
- onDidFocusEditorWidgetDisposer.current = editor.onDidFocusEditorWidget(() => {
204
- onEditorFocusEventHandler?.();
205
- });
206
- // Set the text value
207
- const currentValue = getEditorValue(editor);
208
- const editorModel = editor.getModel();
209
- const currentConfig = editor.getRawOptions();
210
- if (currentValue !== value) {
211
- editor.setValue(value);
212
- }
213
- if (currentConfig.readOnly !== disabled) {
214
- editor.updateOptions({
215
- readOnly: disabled,
216
- });
217
- }
218
- // Set the errors
219
- if (editorModel) {
220
- editorModel.updateOptions({ tabSize: TAB_SIZE });
221
- const error = parserError ?? compilationError;
222
- if (error?.sourceInformation) {
223
- setErrorMarkers(editorModel, error.message, error.sourceInformation.startLine, error.sourceInformation.startColumn, error.sourceInformation.endLine, error.sourceInformation.endColumn);
224
- }
225
- else {
226
- monacoEditorAPI.setModelMarkers(editorModel, 'Error', []);
227
- }
228
- }
229
- }
230
- useEffect(() => () => {
231
- if (editor) {
232
- disposeEditor(editor);
233
- }
234
- }, [editor]); // dispose editor
235
- return (_jsxs(_Fragment, { children: [_jsxs("div", { className: clsx('lambda-editor', className, {
236
- 'lambda-editor__expanded': isExpanded,
237
- }), children: [_jsx("div", { ref: ref, "data-testid": APPLICATION_TEST_ID.LAMBDA_EDITOR__EDITOR_INPUT, className: "lambda-editor__editor__input", children: _jsx("div", { className: "text-editor__body", ref: textInputRef }) }), Boolean(expectedType) && (_jsxs("div", { className: "lambda-editor__editor__info", children: [onExpectedTypeLabelSelect && (_jsx("button", { className: clsx('lambda-editor__editor__expected-return-type lambda-editor__editor__expected-return-type--clickable', {
238
- 'lambda-editor__editor__expected-return-type--highlighted': matchedExpectedType?.(),
239
- }), onClick: selectTypeLabel, tabIndex: -1, title: 'Toggle highlight expected type', children: expectedType?.name ?? 'unknown' })), !onExpectedTypeLabelSelect && (_jsx("div", { className: clsx('lambda-editor__editor__expected-return-type', {
240
- 'lambda-editor__editor__expected-return-type--highlighted': matchedExpectedType?.(),
241
- }), children: expectedType?.name ?? 'unknown' }))] })), !disableExpansion && !forceExpansion && (_jsx("button", { className: "lambda-editor__editor__expand-btn", onClick: toggleExpandedMode, disabled: Boolean(parserError), tabIndex: -1, title: "Toggle Expand", children: isExpanded ? _jsx(LongArrowAltUpIcon, {}) : _jsx(LongArrowAltDownIcon, {}) })), !disablePopUp && (_jsx("button", { className: "lambda-editor__action", onClick: openInPopUp, disabled: Boolean(parserError), tabIndex: -1, title: "Open...", children: _jsx(FilledWindowMaximizeIcon, {}) }))] }), !hideErrorBar && (_jsx(LambdaErrorFeedback, { error: parserError ?? compilationError, discardChanges: discardChanges }))] }));
242
- });
243
- const LambdaEditorPopUp = observer((props) => {
244
- const { className, disabled, lambdaEditorState, transformStringToLambda, onKeyDownEventHandlers, onClose, } = props;
245
- const applicationStore = useApplicationStore();
246
- const onKeyDownEventDisposer = useRef(undefined);
247
- const onDidChangeModelContentEventDisposer = useRef(undefined);
248
- const value = normalizeLineEnding(lambdaEditorState.lambdaString);
249
- const parserError = lambdaEditorState.parserError;
250
- const compilationError = lambdaEditorState.compilationError;
251
- const [editor, setEditor] = useState();
252
- const textInputRef = useRef(null);
253
- const transformLambdaToString = async (pretty) => {
254
- transformStringToLambda?.cancel();
255
- return flowResult(lambdaEditorState.convertLambdaObjectToGrammarString(pretty)).catch(applicationStore.alertUnhandledError);
256
- };
257
- const discardChanges = applicationStore.guardUnhandledError(() => transformLambdaToString(true));
258
- const { ref, width, height } = useResizeDetector();
259
- useEffect(() => {
260
- if (width !== undefined && height !== undefined) {
261
- editor?.layout({ width, height });
262
- }
263
- }, [editor, width, height]);
264
- const onEnter = () => {
265
- if (!editor && textInputRef.current) {
266
- const element = textInputRef.current;
267
- const _editor = monacoEditorAPI.create(element, {
268
- ...baseTextEditorSettings,
269
- language: EDITOR_LANGUAGE.PURE,
270
- theme: EDITOR_THEME.LEGEND,
271
- });
272
- disableEditorHotKeys(_editor);
273
- setEditor(_editor);
274
- }
275
- };
276
- if (editor) {
277
- /**
278
- * See the extensive note about this instantiation in `LambdaEditor`. The fact that `transformStringToLambda` can change
279
- * since it does not solely depends on `LambdaEditorState` but also the `disabled` flag means that the update function
280
- * can go stale, so we cannot place this `onDidChangeModelContent` in a one-time called instantiation of the editor
281
- * (i.e. the first `useEffect` where we create the editor). As such, we have to use refs and disposer to update this every time
282
- * the lambda editor is re-rendered.
283
- *
284
- * A potential bug that could come up if we place this logic in the `useEffect` for instantiating the editor is:
285
- * 1. Initially set the `disabled` to true, then switch it back to `false` (using a timer or something)
286
- * 2. Type something in the lambda editor, the transform function is `undefined` and does not update the underlying lambda
287
- */
288
- onDidChangeModelContentEventDisposer.current?.dispose();
289
- onDidChangeModelContentEventDisposer.current =
290
- editor.onDidChangeModelContent(() => {
291
- const currentVal = getEditorValue(editor);
292
- /**
293
- * Avoid unecessary setting of lambda string. Also, this prevents clearing the non-parser error on first render.
294
- * Since this method is guaranteed to be called one time during the first rendering when we first set the
295
- * value for the lambda editor, we do not want to clear any existing non-parser error in case it is set by methods
296
- * like reveal error in each editor
297
- */
298
- if (currentVal !== value) {
299
- lambdaEditorState.setLambdaString(currentVal);
300
- /**
301
- * Here we clear the error as user changes the input
302
- * NOTE: we don't reset the parser error here, we could, but with that, we have to assume that the parsing check is
303
- * pretty quick--almost near real time, but if after typing new character, we clear the parsing error and the user
304
- * still make mistake, then the warning message will appear to flash, which is bad UX, so for now, we leave it be
305
- */
306
- lambdaEditorState.setCompilationError(undefined);
307
- }
308
- /**
309
- * This method MUST run on the first rendering of the lambda editor, as it will update the lambda object. This is
310
- * needed for new lambda where a lot of time is just a stub lambda. Without having this method called on the first
311
- * rendering, that stub lambda will remain stub lambda until user starts typing something in the lambda editor.
312
- * This stub lambda sometimes does not even get registered in change detection and causing the user to lose data
313
- * Although, technically a stub lambda is useless, so this is not too serious, but it may come across as buggy
314
- */
315
- transformStringToLambda?.cancel();
316
- if (transformStringToLambda) {
317
- const stringToLambdaTransformation = transformStringToLambda();
318
- if (stringToLambdaTransformation) {
319
- flowResult(stringToLambdaTransformation).catch(applicationStore.alertUnhandledError);
320
- }
321
- }
322
- });
323
- // set hotkeys (before calling the action, finish parsing the current text value)
324
- onKeyDownEventDisposer.current?.dispose(); // dispose to avoid trigger hotkeys multiple times
325
- /**
326
- * NOTE: We can use `setCommand` here but that does not expose the event so we cannot `stopPropagation`, and we need to
327
- * use `stopPropagation` to prevent the event top bubble up to global hotkeys listener.
328
- * If we really want to use `setCommand` the other approach is to set <HotKeys/> around this lambda editor to override F9
329
- * perhaps that's the cleaner approach because we use `react-hotkeys` to handle it's business, but there is an on-going
330
- * issue with <HotKeys/> keybindings are lost when component rerenders and this happen as users type because we call `setValue`
331
- * See https://github.com/greena13/react-hotkeys/issues/209
332
- *
333
- * The main role of this section is to disable `monaco-editor` command and override with global actions, such as generate, compile,
334
- * toggle text mode, etc. The important thing is before we do so, we would like to finish the parsing of the current string, otherwise,
335
- * those operations can end up flushing the current state and trashing the user input, which is bad, as such, we make sure the
336
- * parsing passes before actually calling those global operations.
337
- */
338
- onKeyDownEventDisposer.current = editor.onKeyDown((event) => {
339
- onKeyDownEventHandlers.forEach((handler) => {
340
- if (handler.matcher(event)) {
341
- event.preventDefault();
342
- event.stopPropagation();
343
- transformStringToLambda?.cancel();
344
- handler.action(event);
345
- }
346
- });
347
- });
348
- // Set the text value
349
- const currentValue = getEditorValue(editor);
350
- const editorModel = editor.getModel();
351
- const currentConfig = editor.getRawOptions();
352
- if (currentValue !== value) {
353
- editor.setValue(value);
354
- }
355
- if (currentConfig.readOnly !== disabled) {
356
- editor.updateOptions({
357
- readOnly: disabled,
358
- });
359
- }
360
- // Set the errors
361
- if (editorModel) {
362
- editorModel.updateOptions({ tabSize: TAB_SIZE });
363
- const error = parserError ?? compilationError;
364
- if (error?.sourceInformation) {
365
- setErrorMarkers(editorModel, error.message, error.sourceInformation.startLine, error.sourceInformation.startColumn, error.sourceInformation.endLine, error.sourceInformation.endColumn);
366
- }
367
- else {
368
- monacoEditorAPI.setModelMarkers(editorModel, 'Error', []);
369
- }
370
- }
371
- }
372
- useEffect(() => {
373
- flowResult(lambdaEditorState.convertLambdaObjectToGrammarString(true)).catch(applicationStore.alertUnhandledError);
374
- }, [applicationStore, lambdaEditorState]);
375
- useEffect(() => () => {
376
- if (editor) {
377
- disposeEditor(editor);
378
- }
379
- }, [editor]); // dispose editor
380
- return (_jsx(Dialog, { open: true, TransitionProps: {
381
- onEnter,
382
- }, onClose: noop, classes: {
383
- root: 'editor-modal__root-container',
384
- container: 'editor-modal__container',
385
- paper: 'editor-modal__content',
386
- }, children: _jsxs("div", { className: clsx('modal modal--dark editor-modal lambda-editor__popup__modal', {
387
- 'lambda-editor__popup__modal--has-error': Boolean(lambdaEditorState.parserError),
388
- }), children: [_jsxs("div", { className: "modal__header", children: [_jsx("div", { className: "modal__title", children: "Edit Lambda" }), lambdaEditorState.parserError && (_jsx("div", { className: "modal__title__error-badge", children: "Failed to parse lambda" }))] }), _jsx("div", { className: "modal__body", children: _jsx("div", { className: clsx('lambda-editor__popup__content', className), children: _jsx("div", { ref: ref, "data-testid": APPLICATION_TEST_ID.LAMBDA_EDITOR__EDITOR_INPUT, className: "lambda-editor__editor__input", children: _jsx("div", { className: "text-editor__body", ref: textInputRef }) }) }) }), _jsxs("div", { className: "modal__footer", children: [_jsx("button", { className: "btn btn--dark btn--caution", onClick: discardChanges, children: "Discard changes" }), _jsx("button", { className: "btn btn--dark", onClick: onClose, disabled: Boolean(lambdaEditorState.parserError), children: "Close" })] })] }) }));
389
- });
390
- /**
391
- * This is not strictly meant for lambda. The idea is to create an editor that allows
392
- * editing _something_ but allows user to edit via text.
393
- */
394
- export const LambdaEditor = observer((props) => {
395
- const { className, lambdaEditorState, disabled, forceBackdrop, backdropSetter, expectedType, onExpectedTypeLabelSelect, matchedExpectedType, disableExpansion, forceExpansion, disablePopUp, useBaseTextEditorSettings, hideErrorBar, onKeyDownEventHandlers, onEditorFocusEventHandler, } = props;
396
- const [showPopUp, setShowPopUp] = useState(false);
397
- const openInPopUp = () => setShowPopUp(true);
398
- const closePopUp = () => setShowPopUp(false);
399
- const debouncedTransformStringToLambda = useMemo(() => disabled
400
- ? undefined
401
- : debounce(() => lambdaEditorState.convertLambdaGrammarStringToObject(), 1000), [lambdaEditorState, disabled]);
402
- if (!disablePopUp && showPopUp) {
403
- return (_jsxs(_Fragment, { children: [_jsx("div", { className: "lambda-editor" }), _jsx(LambdaEditorPopUp, { className: className, disabled: disabled, lambdaEditorState: lambdaEditorState, transformStringToLambda: debouncedTransformStringToLambda, onKeyDownEventHandlers: onKeyDownEventHandlers ?? [], onClose: closePopUp })] }));
404
- }
405
- return (_jsx(LambdaEditorInline
406
- /**
407
- * See the usage of `transformStringToLambda` as well as the instatiation of the editor in `LambdaEditorInner`.
408
- * One of the big problem is that the editor uses lambda editor state (there are some non-trivial logic there, that
409
- * handles string <-> lambda object conversion), but there are certain operations in this app that can potentially
410
- * remove and recreate the lambda editor state, such as global generate or global compile, for such case, `LambdaEditorInner`
411
- * receives a new lambda editor state, but since React is smart about redrawing the DOM, it will not recreate the instance
412
- * of `monaco-editor` (see the useEffect() block), as such, the editor is using a stale state. That is definitely a bug;
413
- * and to demonstrate, we can try the following sequence of actions:
414
- *
415
- * 1. Type something that parses in the lambda editor
416
- * 2. Wait till the parse call finishes, hit F10 (trigger state update)
417
- * 3. Type something to cause parser error
418
- * 4. We will see that nothing happens. If we inspect network call, we will see a call returns with parsing error, but
419
- * the editor is refering to the old state, hence no reporting
420
- *
421
- * As such, the most appropriate resolution is to intentionally force remount of lambda editor when user perform a state
422
- * refresh operations. To do this, we use React `key` field with UUID bound to the state, as the state is recreated, the UUID
423
- * changes and the editor is recreated. However, this alone is not enough because we use `useMemo` for the debounced
424
- * transform function, which relies on another value other than the state (i.e. `disabled` flag), the same problem happens
425
- * as the function goes stale if `disabled` flag changes value. For that, see the implementation trick below (involving refs and disposer)
426
- *
427
- * So technically, we don't need to do the force-remount using `key`, but to be cleaner, we prevent other poential bugs, we do it anyway
428
- * to reset everything.
429
- */
430
- , { className: className, disabled: disabled, lambdaEditorState: lambdaEditorState, transformStringToLambda: debouncedTransformStringToLambda, expectedType: expectedType, matchedExpectedType: matchedExpectedType, onExpectedTypeLabelSelect: onExpectedTypeLabelSelect, forceBackdrop: forceBackdrop, backdropSetter: backdropSetter, disableExpansion: disableExpansion, forceExpansion: disableExpansion !== undefined
431
- ? !disableExpansion && forceExpansion
432
- : forceExpansion, disablePopUp: disablePopUp, useBaseTextEditorSettings: useBaseTextEditorSettings, hideErrorBar: hideErrorBar, onKeyDownEventHandlers: onKeyDownEventHandlers ?? [], openInPopUp: openInPopUp, onEditorFocusEventHandler: onEditorFocusEventHandler }, lambdaEditorState.uuid));
433
- });
434
- //# sourceMappingURL=LambdaEditor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LambdaEditor.js","sourceRoot":"","sources":["../../../src/components/shared/LambdaEditor.tsx"],"names":[],"mappings":"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"}