@finos/legend-query-builder 4.16.19 → 4.16.21

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 (58) hide show
  1. package/lib/components/__test-utils__/QueryBuilderComponentTestUtils.d.ts +21 -1
  2. package/lib/components/__test-utils__/QueryBuilderComponentTestUtils.d.ts.map +1 -1
  3. package/lib/components/__test-utils__/QueryBuilderComponentTestUtils.js +16 -2
  4. package/lib/components/__test-utils__/QueryBuilderComponentTestUtils.js.map +1 -1
  5. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js +1 -1
  6. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js.map +1 -1
  7. package/lib/components/filter/QueryBuilderFilterPanel.js +1 -1
  8. package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -1
  9. package/lib/components/shared/BasicValueSpecificationEditor.d.ts +155 -4
  10. package/lib/components/shared/BasicValueSpecificationEditor.d.ts.map +1 -1
  11. package/lib/components/shared/BasicValueSpecificationEditor.js +239 -158
  12. package/lib/components/shared/BasicValueSpecificationEditor.js.map +1 -1
  13. package/lib/components/shared/CustomDatePicker.d.ts +8 -55
  14. package/lib/components/shared/CustomDatePicker.d.ts.map +1 -1
  15. package/lib/components/shared/CustomDatePicker.js +31 -415
  16. package/lib/components/shared/CustomDatePicker.js.map +1 -1
  17. package/lib/components/shared/CustomDatePickerHelper.d.ts +145 -0
  18. package/lib/components/shared/CustomDatePickerHelper.d.ts.map +1 -0
  19. package/lib/components/shared/CustomDatePickerHelper.js +517 -0
  20. package/lib/components/shared/CustomDatePickerHelper.js.map +1 -0
  21. package/lib/components/shared/QueryBuilderVariableSelector.js +1 -1
  22. package/lib/components/shared/QueryBuilderVariableSelector.js.map +1 -1
  23. package/lib/components/shared/V1_BasicValueSpecificationEditor.d.ts +36 -0
  24. package/lib/components/shared/V1_BasicValueSpecificationEditor.d.ts.map +1 -0
  25. package/lib/components/shared/V1_BasicValueSpecificationEditor.js +166 -0
  26. package/lib/components/shared/V1_BasicValueSpecificationEditor.js.map +1 -0
  27. package/lib/index.css +16 -0
  28. package/lib/index.d.ts +3 -0
  29. package/lib/index.d.ts.map +1 -1
  30. package/lib/index.js +3 -0
  31. package/lib/index.js.map +1 -1
  32. package/lib/package.json +1 -1
  33. package/lib/stores/shared/V1_ValueSpecificationEditorHelper.d.ts +23 -0
  34. package/lib/stores/shared/V1_ValueSpecificationEditorHelper.d.ts.map +1 -0
  35. package/lib/stores/shared/V1_ValueSpecificationEditorHelper.js +69 -0
  36. package/lib/stores/shared/V1_ValueSpecificationEditorHelper.js.map +1 -0
  37. package/lib/stores/shared/V1_ValueSpecificationModifierHelper.d.ts +20 -0
  38. package/lib/stores/shared/V1_ValueSpecificationModifierHelper.d.ts.map +1 -0
  39. package/lib/stores/shared/V1_ValueSpecificationModifierHelper.js +38 -0
  40. package/lib/stores/shared/V1_ValueSpecificationModifierHelper.js.map +1 -0
  41. package/lib/stores/shared/ValueSpecificationEditorHelper.d.ts +4 -1
  42. package/lib/stores/shared/ValueSpecificationEditorHelper.d.ts.map +1 -1
  43. package/lib/stores/shared/ValueSpecificationEditorHelper.js +23 -2
  44. package/lib/stores/shared/ValueSpecificationEditorHelper.js.map +1 -1
  45. package/package.json +5 -5
  46. package/src/components/__test-utils__/QueryBuilderComponentTestUtils.tsx +101 -12
  47. package/src/components/fetch-structure/QueryBuilderPostFilterPanel.tsx +1 -1
  48. package/src/components/filter/QueryBuilderFilterPanel.tsx +1 -1
  49. package/src/components/shared/BasicValueSpecificationEditor.tsx +1417 -1085
  50. package/src/components/shared/CustomDatePicker.tsx +136 -902
  51. package/src/components/shared/CustomDatePickerHelper.ts +984 -0
  52. package/src/components/shared/QueryBuilderVariableSelector.tsx +1 -1
  53. package/src/components/shared/V1_BasicValueSpecificationEditor.tsx +396 -0
  54. package/src/index.ts +5 -0
  55. package/src/stores/shared/V1_ValueSpecificationEditorHelper.ts +113 -0
  56. package/src/stores/shared/V1_ValueSpecificationModifierHelper.ts +76 -0
  57. package/src/stores/shared/ValueSpecificationEditorHelper.ts +71 -2
  58. package/tsconfig.json +4 -0
@@ -13,11 +13,13 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { type TooltipPlacement } from '@finos/legend-art';
17
- import { type Type, type ValueSpecification, type PureModel, type ObserverContext, VariableExpression } from '@finos/legend-graph';
16
+ import { type TooltipPlacement, type SelectComponent } from '@finos/legend-art';
17
+ import { type Enum, type ObserverContext, type PureModel, type ValueSpecification, Type, VariableExpression, V1_PackageableType } from '@finos/legend-graph';
18
18
  import { type DebouncedFunc, type GeneratorFn } from '@finos/legend-shared';
19
19
  import React from 'react';
20
- type TypeCheckOption = {
20
+ import { type CustomDatePickerValueSpecification, type CustomDatePickerUpdateValueSpecification } from './CustomDatePickerHelper.js';
21
+ import type { V1_TypeCheckOption } from './V1_BasicValueSpecificationEditor.js';
22
+ export type TypeCheckOption = {
21
23
  expectedType: Type;
22
24
  /**
23
25
  * Indicates if a strict type-matching will happen.
@@ -25,6 +27,10 @@ type TypeCheckOption = {
25
27
  * for example we can assign a Float to an Integer, a
26
28
  * Date to a DateTime. With this flag set to `true`
27
29
  * we will not allow this.
30
+ *
31
+ * For example, if `match=true`, it means that options in the
32
+ * date-capability-dropdown which are not returning type DateTime
33
+ * will be filtered out.
28
34
  */
29
35
  match?: boolean;
30
36
  };
@@ -37,12 +43,155 @@ export declare const QUERY_BUILDER_VARIABLE_DND_TYPE = "VARIABLE";
37
43
  export interface QueryBuilderVariableDragSource {
38
44
  variable: VariableExpression;
39
45
  }
40
- interface BasicValueSpecificationEditorSelectorConfig {
46
+ /**
47
+ * This is the base interface for primitive instance value editors (non-collection values).
48
+ * The interface is made generic so that it can support various types of objects that hold the value
49
+ * to be edited (currently, we just use this for ValueSpecification and V1_ValueSpecification).
50
+ *
51
+ * T represents the type of the object that holds the value to be edited (i.e. ValueSpecification or V1_ValueSpecification).
52
+ * U represents the type of data that the object holds.
53
+ *
54
+ * valueSelector: callback that handles extracting the data value from the object.
55
+ * updateValueSpecification: callback that takes the valueSpecification object and the new value and handles updating
56
+ * the object with the new value.
57
+ * errorChecker: optional callback that should return true if the valueSpecification is invalid.
58
+ */
59
+ export interface PrimitiveInstanceValueEditorProps<T, U extends string | number | boolean | Enum | null> {
60
+ valueSpecification: T;
61
+ valueSelector: (val: T) => U;
62
+ updateValueSpecification: (valueSpecification: T, value: U) => void;
63
+ errorChecker?: (valueSpecification: T) => boolean;
64
+ resetValue: () => void;
65
+ handleBlur?: (() => void) | undefined;
66
+ handleKeyDown?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
67
+ className?: string | undefined;
68
+ }
69
+ export interface BasicValueSpecificationEditorSelectorSearchConfig {
41
70
  values: string[] | undefined;
42
71
  isLoading: boolean;
43
72
  reloadValues: DebouncedFunc<(inputValue: string) => GeneratorFn<void>> | undefined;
44
73
  cleanUpReloadValues?: () => void;
45
74
  }
75
+ export interface BasicValueSpecificationEditorSelectorConfig {
76
+ optionCustomization?: {
77
+ rowHeight?: number | undefined;
78
+ } | undefined;
79
+ }
80
+ interface StringPrimitiveInstanceValueEditorProps<T> extends PrimitiveInstanceValueEditorProps<T, string | null> {
81
+ selectorSearchConfig?: BasicValueSpecificationEditorSelectorSearchConfig | undefined;
82
+ selectorConfig?: BasicValueSpecificationEditorSelectorConfig | undefined;
83
+ }
84
+ declare const StringPrimitiveInstanceValueEditorInner: <T>(props: StringPrimitiveInstanceValueEditorProps<T>, ref: React.ForwardedRef<HTMLInputElement | SelectComponent | null>) => React.ReactElement;
85
+ export declare const StringPrimitiveInstanceValueEditor: (<T>(props: StringPrimitiveInstanceValueEditorProps<T> & {
86
+ ref: React.ForwardedRef<HTMLInputElement | SelectComponent | null>;
87
+ }) => ReturnType<typeof StringPrimitiveInstanceValueEditorInner>) & {
88
+ displayName: string;
89
+ };
90
+ type BooleanInstanceValueEditorProps<T> = PrimitiveInstanceValueEditorProps<T, boolean>;
91
+ declare const BooleanInstanceValueEditorInner: <T>(props: BooleanInstanceValueEditorProps<T>) => React.ReactElement;
92
+ export declare const BooleanPrimitiveInstanceValueEditor: (<T>(props: BooleanInstanceValueEditorProps<T>) => ReturnType<typeof BooleanInstanceValueEditorInner>) & {
93
+ displayName: string;
94
+ };
95
+ interface NumberPrimitiveInstanceValueEditorProps<T> extends PrimitiveInstanceValueEditorProps<T, number | null> {
96
+ isInteger: boolean;
97
+ }
98
+ declare const NumberPrimitiveInstanceValueEditorInner: <T>(props: NumberPrimitiveInstanceValueEditorProps<T>, ref: React.ForwardedRef<HTMLInputElement>) => React.ReactElement;
99
+ export declare const NumberPrimitiveInstanceValueEditor: (<T>(props: NumberPrimitiveInstanceValueEditorProps<T> & {
100
+ ref: React.ForwardedRef<HTMLInputElement>;
101
+ }) => ReturnType<typeof NumberPrimitiveInstanceValueEditorInner>) & {
102
+ displayName: string;
103
+ };
104
+ /**
105
+ * Generic interface for handling editing enum values. The editor component
106
+ * expects an options array which contains the list of possible enum values.
107
+ */
108
+ interface EnumInstanceValueEditorProps<T> extends PrimitiveInstanceValueEditorProps<T, string | null> {
109
+ options: {
110
+ label: string;
111
+ value: string;
112
+ }[];
113
+ selectorConfig?: BasicValueSpecificationEditorSelectorConfig | undefined;
114
+ }
115
+ declare const EnumInstanceValueEditorInner: <T>(props: EnumInstanceValueEditorProps<T>) => React.ReactElement;
116
+ export declare const EnumInstanceValueEditor: (<T>(props: EnumInstanceValueEditorProps<T>) => ReturnType<typeof EnumInstanceValueEditorInner>) & {
117
+ displayName: string;
118
+ };
119
+ /**
120
+ * This is the base interface for collection primitive instance value editors.
121
+ * The interface is made generic so that it can support various types of objects that hold the value
122
+ * to be edited (currently, we just use this for CollectionInstanceValue and V1_Collection).
123
+ *
124
+ * T represents the type of the objects held in the collection (i.e. ValueSpecification or V1_ValueSpecification).
125
+ * U represents the interface of the collection object (i.e. CollectionInstanceValue or V1_Collection). Currently,
126
+ * this only supports collection objects that hold their data in a property called values.
127
+ *
128
+ * updateValueSpecification: callback that takes the collection object and the new values and handles updating
129
+ * the collection object with the new values.
130
+ * convertTextToValueSpecification: callback that takes a string and converts it to the expected valueSpecification type.
131
+ * convertValueSpecificationToText: callback that takes a valueSpecification and converts it to a string.
132
+ * expectedType: the expected type of the values in the collection.
133
+ * errorChecker: optional callback that should return true if the valueSpecification is invalid.
134
+ */
135
+ interface PrimitiveCollectionInstanceValueEditorProps<T, U extends {
136
+ values: T[];
137
+ }> {
138
+ valueSpecification: U;
139
+ updateValueSpecification: (valueSpecification: U, values: T[]) => void;
140
+ convertTextToValueSpecification: (type: Type | V1_PackageableType, text: string) => T | null;
141
+ convertValueSpecificationToText: (valueSpecification: T) => string | undefined;
142
+ expectedType: Type | V1_PackageableType;
143
+ saveEdit: () => void;
144
+ selectorSearchConfig?: BasicValueSpecificationEditorSelectorSearchConfig | undefined;
145
+ selectorConfig?: BasicValueSpecificationEditorSelectorConfig | undefined;
146
+ errorChecker?: (valueSpecification: U) => boolean;
147
+ className?: string | undefined;
148
+ }
149
+ declare const PrimitiveCollectionInstanceValueEditorInner: <T, U extends {
150
+ values: T[];
151
+ }>(props: PrimitiveCollectionInstanceValueEditorProps<T, U>) => React.ReactElement;
152
+ export declare const PrimitiveCollectionInstanceValueEditor: (<T, U extends {
153
+ values: T[];
154
+ }>(props: PrimitiveCollectionInstanceValueEditorProps<T, U>) => ReturnType<typeof PrimitiveCollectionInstanceValueEditorInner>) & {
155
+ displayName: string;
156
+ };
157
+ interface EnumCollectionInstanceValueEditorProps<T, U extends {
158
+ values: T[];
159
+ }> extends PrimitiveCollectionInstanceValueEditorProps<T, U> {
160
+ enumOptions: {
161
+ label: string;
162
+ value: string;
163
+ }[] | undefined;
164
+ }
165
+ declare const EnumCollectionInstanceValueEditorInner: <T, U extends {
166
+ values: T[];
167
+ }>(props: EnumCollectionInstanceValueEditorProps<T, U>) => React.ReactElement;
168
+ export declare const EnumCollectionInstanceValueEditor: (<T, U extends {
169
+ values: T[];
170
+ }>(props: EnumCollectionInstanceValueEditorProps<T, U>) => ReturnType<typeof EnumCollectionInstanceValueEditorInner>) & {
171
+ displayName: string;
172
+ };
173
+ interface CollectionValueInstanceValueEditorProps<T, U extends {
174
+ values: T[];
175
+ }> extends Omit<PrimitiveCollectionInstanceValueEditorProps<T, U>, 'saveEdit'>, Omit<EnumCollectionInstanceValueEditorProps<T, U>, 'saveEdit'> {
176
+ stringifyCollectionValueSpecification: (valueSpecification: U) => string;
177
+ }
178
+ declare const CollectionValueInstanceValueEditorInner: <T, U extends {
179
+ values: T[];
180
+ }>(props: CollectionValueInstanceValueEditorProps<T, U>) => React.ReactElement;
181
+ export declare const CollectionValueInstanceValueEditor: (<T, U extends {
182
+ values: T[];
183
+ }>(props: CollectionValueInstanceValueEditorProps<T, U>) => ReturnType<typeof CollectionValueInstanceValueEditorInner>) & {
184
+ displayName: string;
185
+ };
186
+ interface DateInstanceValueEditorProps<T extends CustomDatePickerValueSpecification | undefined> extends Omit<PrimitiveInstanceValueEditorProps<T, string | null>, 'updateValueSpecification'> {
187
+ updateValueSpecification: CustomDatePickerUpdateValueSpecification<T>;
188
+ typeCheckOption: TypeCheckOption | V1_TypeCheckOption;
189
+ displayAsEditableValue?: boolean | undefined;
190
+ }
191
+ declare const DateInstanceValueEditorInner: <T extends CustomDatePickerValueSpecification | undefined>(props: DateInstanceValueEditorProps<T>) => React.ReactElement;
192
+ export declare const DateInstanceValueEditor: (<T extends CustomDatePickerValueSpecification | undefined>(props: DateInstanceValueEditorProps<T>) => ReturnType<typeof DateInstanceValueEditorInner>) & {
193
+ displayName: string;
194
+ };
46
195
  /**
47
196
  * TODO we should pass in the props `resetValueSpecification`. Reset
48
197
  * should be part of this editor. Also through here we can call `observe_` accordingly.
@@ -58,6 +207,7 @@ export declare const BasicValueSpecificationEditor: React.ForwardRefExoticCompon
58
207
  setValueSpecification: (val: ValueSpecification) => void;
59
208
  resetValue: () => void;
60
209
  isConstant?: boolean | undefined;
210
+ selectorSearchConfig?: BasicValueSpecificationEditorSelectorSearchConfig | undefined;
61
211
  selectorConfig?: BasicValueSpecificationEditorSelectorConfig | undefined;
62
212
  handleBlur?: (() => void) | undefined;
63
213
  handleKeyDown?: ((event: React.KeyboardEvent<HTMLInputElement>) => void) | undefined;
@@ -70,6 +220,7 @@ export declare const EditableBasicValueSpecificationEditor: ((props: {
70
220
  observerContext: ObserverContext;
71
221
  typeCheckOption: TypeCheckOption;
72
222
  resetValue: () => void;
223
+ selectorSearchConfig?: BasicValueSpecificationEditorSelectorSearchConfig | undefined;
73
224
  selectorConfig?: BasicValueSpecificationEditorSelectorConfig | undefined;
74
225
  isConstant?: boolean;
75
226
  initializeAsEditable?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"BasicValueSpecificationEditor.d.ts","sourceRoot":"","sources":["../../../src/components/shared/BasicValueSpecificationEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,EACL,KAAK,gBAAgB,EAkBtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAEL,KAAK,IAAI,EACT,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,eAAe,EAMpB,kBAAkB,EAWnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,WAAW,EAUjB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAMN,MAAM,OAAO,CAAC;AAmBf,KAAK,eAAe,GAAG;IACrB,YAAY,EAAE,IAAI,CAAC;IACnB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC;IACzC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;IAC7B,SAAS,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;CAC1C,CAkDA,CAAC;AAEF,eAAO,MAAM,+BAA+B,aAAa,CAAC;AAE1D,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,kBAAkB,CAAC;CAC9B;AA4hBD,UAAU,2CAA2C;IACnD,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EACR,aAAa,CAAC,CAAC,UAAU,EAAE,MAAM,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC,GACxD,SAAS,CAAC;IACd,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AAmpBD;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B;wBAGlB,kBAAkB;WAC/B,SAAS;qBACC,eAAe;qBACf,eAAe;gBACpB,MAAM,GAAG,SAAS;2BACP,CAAC,GAAG,EAAE,kBAAkB,KAAK,IAAI;gBAC5C,MAAM,IAAI;iBACT,OAAO,GAAG,SAAS;qBACf,2CAA2C,GAAG,SAAS;iBAC3D,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS;oBAEjC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,GACxD,SAAS;uCACsB,OAAO,GAAG,SAAS;iDAqMxD,CAAC;AAEH,eAAO,MAAM,qCAAqC,WACxC;IACN,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,qBAAqB,EAAE,CAAC,SAAS,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/D,KAAK,EAAE,SAAS,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;IACjC,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,cAAc,CAAC,EAAE,2CAA2C,GAAG,SAAS,CAAC;IACzE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;;CAoFF,CAAC"}
1
+ {"version":3,"file":"BasicValueSpecificationEditor.d.ts","sourceRoot":"","sources":["../../../src/components/shared/BasicValueSpecificationEditor.tsx"],"names":[],"mappings":"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"}