@genesislcap/expression-builder 14.248.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/FUTURE.md +164 -0
- package/README.md +3 -0
- package/custom-elements-manifest.config.js +14 -0
- package/dist/custom-elements.json +1971 -0
- package/dist/dts/config/combinators.d.ts +6 -0
- package/dist/dts/config/combinators.d.ts.map +1 -0
- package/dist/dts/config/index.d.ts +3 -0
- package/dist/dts/config/index.d.ts.map +1 -0
- package/dist/dts/config/operators.d.ts +4 -0
- package/dist/dts/config/operators.d.ts.map +1 -0
- package/dist/dts/index.d.ts +6 -0
- package/dist/dts/index.d.ts.map +1 -0
- package/dist/dts/main/events.d.ts +50 -0
- package/dist/dts/main/events.d.ts.map +1 -0
- package/dist/dts/main/expression-builder.d.ts +44 -0
- package/dist/dts/main/expression-builder.d.ts.map +1 -0
- package/dist/dts/main/expression-builder.helpers.d.ts +19 -0
- package/dist/dts/main/expression-builder.helpers.d.ts.map +1 -0
- package/dist/dts/main/expression-builder.styles.d.ts +3 -0
- package/dist/dts/main/expression-builder.styles.d.ts.map +1 -0
- package/dist/dts/main/expression-builder.template.d.ts +4 -0
- package/dist/dts/main/expression-builder.template.d.ts.map +1 -0
- package/dist/dts/main/expression-group/expression-group.d.ts +18 -0
- package/dist/dts/main/expression-group/expression-group.d.ts.map +1 -0
- package/dist/dts/main/expression-group/expression-group.styles.d.ts +2 -0
- package/dist/dts/main/expression-group/expression-group.styles.d.ts.map +1 -0
- package/dist/dts/main/expression-group/expression-group.template.d.ts +3 -0
- package/dist/dts/main/expression-group/expression-group.template.d.ts.map +1 -0
- package/dist/dts/main/expression-rule/expression-rule.d.ts +27 -0
- package/dist/dts/main/expression-rule/expression-rule.d.ts.map +1 -0
- package/dist/dts/main/expression-rule/expression-rule.helpers.d.ts +4 -0
- package/dist/dts/main/expression-rule/expression-rule.helpers.d.ts.map +1 -0
- package/dist/dts/main/expression-rule/expression-rule.styles.d.ts +2 -0
- package/dist/dts/main/expression-rule/expression-rule.styles.d.ts.map +1 -0
- package/dist/dts/main/expression-rule/expression-rule.template.d.ts +3 -0
- package/dist/dts/main/expression-rule/expression-rule.template.d.ts.map +1 -0
- package/dist/dts/main/index.d.ts +4 -0
- package/dist/dts/main/index.d.ts.map +1 -0
- package/dist/dts/main/rule-field/rule-field.d.ts +15 -0
- package/dist/dts/main/rule-field/rule-field.d.ts.map +1 -0
- package/dist/dts/main/rule-field/rule-field.template.d.ts +3 -0
- package/dist/dts/main/rule-field/rule-field.template.d.ts.map +1 -0
- package/dist/dts/main/rule-operator/rule-operator.d.ts +17 -0
- package/dist/dts/main/rule-operator/rule-operator.d.ts.map +1 -0
- package/dist/dts/main/rule-operator/rule-operator.template.d.ts +3 -0
- package/dist/dts/main/rule-operator/rule-operator.template.d.ts.map +1 -0
- package/dist/dts/main/rule-value/rule-value.d.ts +17 -0
- package/dist/dts/main/rule-value/rule-value.d.ts.map +1 -0
- package/dist/dts/main/rule-value/rule-value.helpers.d.ts +6 -0
- package/dist/dts/main/rule-value/rule-value.helpers.d.ts.map +1 -0
- package/dist/dts/main/rule-value/rule-value.styles.d.ts +2 -0
- package/dist/dts/main/rule-value/rule-value.styles.d.ts.map +1 -0
- package/dist/dts/main/rule-value/rule-value.template.d.ts +3 -0
- package/dist/dts/main/rule-value/rule-value.template.d.ts.map +1 -0
- package/dist/dts/types/index.d.ts +3 -0
- package/dist/dts/types/index.d.ts.map +1 -0
- package/dist/dts/types/private.types.d.ts +21 -0
- package/dist/dts/types/private.types.d.ts.map +1 -0
- package/dist/dts/types/public.types.d.ts +160 -0
- package/dist/dts/types/public.types.d.ts.map +1 -0
- package/dist/dts/utils/data-model.d.ts +27 -0
- package/dist/dts/utils/data-model.d.ts.map +1 -0
- package/dist/dts/utils/formatting.d.ts +13 -0
- package/dist/dts/utils/formatting.d.ts.map +1 -0
- package/dist/dts/utils/index.d.ts +4 -0
- package/dist/dts/utils/index.d.ts.map +1 -0
- package/dist/dts/utils/misc.d.ts +14 -0
- package/dist/dts/utils/misc.d.ts.map +1 -0
- package/dist/esm/config/combinators.js +31 -0
- package/dist/esm/config/index.js +2 -0
- package/dist/esm/config/operators.js +91 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/main/events.js +13 -0
- package/dist/esm/main/expression-builder.helpers.js +129 -0
- package/dist/esm/main/expression-builder.js +157 -0
- package/dist/esm/main/expression-builder.styles.js +177 -0
- package/dist/esm/main/expression-builder.template.js +13 -0
- package/dist/esm/main/expression-group/expression-group.js +121 -0
- package/dist/esm/main/expression-group/expression-group.styles.js +45 -0
- package/dist/esm/main/expression-group/expression-group.template.js +102 -0
- package/dist/esm/main/expression-rule/expression-rule.helpers.js +25 -0
- package/dist/esm/main/expression-rule/expression-rule.js +203 -0
- package/dist/esm/main/expression-rule/expression-rule.styles.js +57 -0
- package/dist/esm/main/expression-rule/expression-rule.template.js +65 -0
- package/dist/esm/main/index.js +3 -0
- package/dist/esm/main/rule-field/rule-field.js +48 -0
- package/dist/esm/main/rule-field/rule-field.template.js +46 -0
- package/dist/esm/main/rule-operator/rule-operator.js +60 -0
- package/dist/esm/main/rule-operator/rule-operator.template.js +46 -0
- package/dist/esm/main/rule-value/rule-value.helpers.js +17 -0
- package/dist/esm/main/rule-value/rule-value.js +115 -0
- package/dist/esm/main/rule-value/rule-value.styles.js +11 -0
- package/dist/esm/main/rule-value/rule-value.template.js +106 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/private.types.js +1 -0
- package/dist/esm/types/public.types.js +1 -0
- package/dist/esm/utils/data-model.js +51 -0
- package/dist/esm/utils/formatting.js +23 -0
- package/dist/esm/utils/index.js +3 -0
- package/dist/esm/utils/misc.js +62 -0
- package/dist/expression-builder.api.json +212 -0
- package/dist/expression-builder.d.ts +322 -0
- package/dist/tsdoc-metadata.json +11 -0
- package/docs/.gitattributes +2 -0
- package/docs/api/expression-builder.config.md +6 -0
- package/docs/api/expression-builder.md +13 -0
- package/docs/api/expression-builder.types.md +6 -0
- package/docs/api/index.md +12 -0
- package/docs/api-report.md +260 -0
- package/license.txt +46 -0
- package/package.json +66 -0
- package/playwright.config.ts +5 -0
- package/test/unit/test.ts +1 -0
- package/tsdoc.json +4 -0
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
{
|
|
2
|
+
"metadata": {
|
|
3
|
+
"toolPackage": "@microsoft/api-extractor",
|
|
4
|
+
"toolVersion": "7.34.9",
|
|
5
|
+
"schemaVersion": 1011,
|
|
6
|
+
"oldestForwardsCompatibleVersion": 1001,
|
|
7
|
+
"tsdocConfig": {
|
|
8
|
+
"$schema": "https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json",
|
|
9
|
+
"noStandardTags": true,
|
|
10
|
+
"tagDefinitions": [
|
|
11
|
+
{
|
|
12
|
+
"tagName": "@alpha",
|
|
13
|
+
"syntaxKind": "modifier"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"tagName": "@beta",
|
|
17
|
+
"syntaxKind": "modifier"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"tagName": "@defaultValue",
|
|
21
|
+
"syntaxKind": "block"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"tagName": "@decorator",
|
|
25
|
+
"syntaxKind": "block",
|
|
26
|
+
"allowMultiple": true
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"tagName": "@deprecated",
|
|
30
|
+
"syntaxKind": "block"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"tagName": "@eventProperty",
|
|
34
|
+
"syntaxKind": "modifier"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"tagName": "@example",
|
|
38
|
+
"syntaxKind": "block",
|
|
39
|
+
"allowMultiple": true
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"tagName": "@experimental",
|
|
43
|
+
"syntaxKind": "modifier"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"tagName": "@inheritDoc",
|
|
47
|
+
"syntaxKind": "inline"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"tagName": "@internal",
|
|
51
|
+
"syntaxKind": "modifier"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"tagName": "@label",
|
|
55
|
+
"syntaxKind": "inline"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"tagName": "@link",
|
|
59
|
+
"syntaxKind": "inline",
|
|
60
|
+
"allowMultiple": true
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"tagName": "@override",
|
|
64
|
+
"syntaxKind": "modifier"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"tagName": "@packageDocumentation",
|
|
68
|
+
"syntaxKind": "modifier"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"tagName": "@param",
|
|
72
|
+
"syntaxKind": "block",
|
|
73
|
+
"allowMultiple": true
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"tagName": "@privateRemarks",
|
|
77
|
+
"syntaxKind": "block"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"tagName": "@public",
|
|
81
|
+
"syntaxKind": "modifier"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"tagName": "@readonly",
|
|
85
|
+
"syntaxKind": "modifier"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"tagName": "@remarks",
|
|
89
|
+
"syntaxKind": "block"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"tagName": "@returns",
|
|
93
|
+
"syntaxKind": "block"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"tagName": "@sealed",
|
|
97
|
+
"syntaxKind": "modifier"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"tagName": "@see",
|
|
101
|
+
"syntaxKind": "block"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"tagName": "@throws",
|
|
105
|
+
"syntaxKind": "block",
|
|
106
|
+
"allowMultiple": true
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"tagName": "@typeParam",
|
|
110
|
+
"syntaxKind": "block",
|
|
111
|
+
"allowMultiple": true
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"tagName": "@virtual",
|
|
115
|
+
"syntaxKind": "modifier"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"tagName": "@betaDocumentation",
|
|
119
|
+
"syntaxKind": "modifier"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"tagName": "@internalRemarks",
|
|
123
|
+
"syntaxKind": "block"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"tagName": "@preapproved",
|
|
127
|
+
"syntaxKind": "modifier"
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"tagName": "@tagname",
|
|
131
|
+
"syntaxKind": "block",
|
|
132
|
+
"allowMultiple": true
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"tagName": "@fires",
|
|
136
|
+
"syntaxKind": "block",
|
|
137
|
+
"allowMultiple": true
|
|
138
|
+
}
|
|
139
|
+
],
|
|
140
|
+
"supportForTags": {
|
|
141
|
+
"@alpha": true,
|
|
142
|
+
"@beta": true,
|
|
143
|
+
"@defaultValue": true,
|
|
144
|
+
"@decorator": true,
|
|
145
|
+
"@deprecated": true,
|
|
146
|
+
"@eventProperty": true,
|
|
147
|
+
"@example": true,
|
|
148
|
+
"@experimental": true,
|
|
149
|
+
"@inheritDoc": true,
|
|
150
|
+
"@internal": true,
|
|
151
|
+
"@label": true,
|
|
152
|
+
"@link": true,
|
|
153
|
+
"@override": true,
|
|
154
|
+
"@packageDocumentation": true,
|
|
155
|
+
"@param": true,
|
|
156
|
+
"@privateRemarks": true,
|
|
157
|
+
"@public": true,
|
|
158
|
+
"@readonly": true,
|
|
159
|
+
"@remarks": true,
|
|
160
|
+
"@returns": true,
|
|
161
|
+
"@sealed": true,
|
|
162
|
+
"@see": true,
|
|
163
|
+
"@throws": true,
|
|
164
|
+
"@typeParam": true,
|
|
165
|
+
"@virtual": true,
|
|
166
|
+
"@betaDocumentation": true,
|
|
167
|
+
"@internalRemarks": true,
|
|
168
|
+
"@preapproved": true,
|
|
169
|
+
"@tagname": true,
|
|
170
|
+
"@fires": true
|
|
171
|
+
},
|
|
172
|
+
"reportUnsupportedHtmlElements": false
|
|
173
|
+
}
|
|
174
|
+
},
|
|
175
|
+
"kind": "Package",
|
|
176
|
+
"canonicalReference": "@genesislcap/expression-builder!",
|
|
177
|
+
"docComment": "",
|
|
178
|
+
"name": "@genesislcap/expression-builder",
|
|
179
|
+
"preserveMemberOrder": false,
|
|
180
|
+
"members": [
|
|
181
|
+
{
|
|
182
|
+
"kind": "EntryPoint",
|
|
183
|
+
"canonicalReference": "@genesislcap/expression-builder!",
|
|
184
|
+
"name": "",
|
|
185
|
+
"preserveMemberOrder": false,
|
|
186
|
+
"members": [
|
|
187
|
+
{
|
|
188
|
+
"kind": "Namespace",
|
|
189
|
+
"canonicalReference": "@genesislcap/expression-builder!Config:namespace",
|
|
190
|
+
"docComment": "",
|
|
191
|
+
"excerptTokens": [],
|
|
192
|
+
"fileUrlPath": "src/index.ts",
|
|
193
|
+
"releaseTag": "None",
|
|
194
|
+
"name": "Config",
|
|
195
|
+
"preserveMemberOrder": false,
|
|
196
|
+
"members": []
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"kind": "Namespace",
|
|
200
|
+
"canonicalReference": "@genesislcap/expression-builder!Types:namespace",
|
|
201
|
+
"docComment": "",
|
|
202
|
+
"excerptTokens": [],
|
|
203
|
+
"fileUrlPath": "src/index.ts",
|
|
204
|
+
"releaseTag": "None",
|
|
205
|
+
"name": "Types",
|
|
206
|
+
"preserveMemberOrder": false,
|
|
207
|
+
"members": []
|
|
208
|
+
}
|
|
209
|
+
]
|
|
210
|
+
}
|
|
211
|
+
]
|
|
212
|
+
}
|
|
@@ -0,0 +1,322 @@
|
|
|
1
|
+
import { ElementStyles } from '@microsoft/fast-element';
|
|
2
|
+
import { GenesisElement } from '@genesislcap/web-core';
|
|
3
|
+
import { ViewTemplate } from '@microsoft/fast-element';
|
|
4
|
+
|
|
5
|
+
/** @alpha */
|
|
6
|
+
declare const BASE_LOGICAL_COMBINATORS: Combinator[];
|
|
7
|
+
|
|
8
|
+
/** @alpha **/
|
|
9
|
+
declare const BASE_OPERATORS: Operator[];
|
|
10
|
+
|
|
11
|
+
/** @alpha **/
|
|
12
|
+
declare type BinaryOperator = {
|
|
13
|
+
nbInputs: 1;
|
|
14
|
+
} & _Operator;
|
|
15
|
+
|
|
16
|
+
/** @alpha **/
|
|
17
|
+
declare type CheckboxInput = {
|
|
18
|
+
input: 'checkbox';
|
|
19
|
+
type: 'boolean';
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
/** @alpha **/
|
|
23
|
+
declare type Combinator = {
|
|
24
|
+
type: string;
|
|
25
|
+
maxRules: 1 | 2 | 'many';
|
|
26
|
+
label?: string;
|
|
27
|
+
description?: string;
|
|
28
|
+
allowedFields?: Field['fieldId'][];
|
|
29
|
+
allowedOperators?: Operator['type'][];
|
|
30
|
+
validator?: (group: Group) => string | null;
|
|
31
|
+
allowLiterals?: boolean;
|
|
32
|
+
forceFieldOnly?: boolean;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
declare namespace Config {
|
|
36
|
+
export {
|
|
37
|
+
BASE_LOGICAL_COMBINATORS,
|
|
38
|
+
LOGICAL_COMBINATORS,
|
|
39
|
+
BASE_OPERATORS
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
export { Config }
|
|
43
|
+
|
|
44
|
+
/** @alpha **/
|
|
45
|
+
declare type Config_2 = {
|
|
46
|
+
operators: Operator[];
|
|
47
|
+
fields: Field[];
|
|
48
|
+
combinators: Combinator[];
|
|
49
|
+
/** Model to hydrate */
|
|
50
|
+
model?: Group;
|
|
51
|
+
/** If set and more than 0, is a 1-indexed config for the nesting of groups */
|
|
52
|
+
maxNesting?: number;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
/** @alpha **/
|
|
56
|
+
declare type CustomElements = {
|
|
57
|
+
/** Custom element tag for checkbox inputs */
|
|
58
|
+
checkbox?: string;
|
|
59
|
+
/** Custom element tag for text inputs */
|
|
60
|
+
text?: string;
|
|
61
|
+
/** Custom element tag for number inputs */
|
|
62
|
+
number?: string;
|
|
63
|
+
/** Custom element tag for date inputs */
|
|
64
|
+
date?: string;
|
|
65
|
+
/** Custom element tag for datetime-local inputs */
|
|
66
|
+
datetimeLocal?: string;
|
|
67
|
+
/** Custom element tag for select inputs */
|
|
68
|
+
select?: string;
|
|
69
|
+
/** Custom element tag for option elements */
|
|
70
|
+
option?: string;
|
|
71
|
+
/** Custom element tag for button elements */
|
|
72
|
+
button?: string;
|
|
73
|
+
/** Custom element tag for radio and radio group elements
|
|
74
|
+
* Assume that the radio group still exposes change event and value attribute */
|
|
75
|
+
radio?: {
|
|
76
|
+
input: string;
|
|
77
|
+
group: string;
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
/** @alpha **/
|
|
82
|
+
declare type CustomStyles = {
|
|
83
|
+
/** Additional CSS for expression rule component */
|
|
84
|
+
rule?: string;
|
|
85
|
+
/** Additional CSS for rule value component */
|
|
86
|
+
value?: string;
|
|
87
|
+
/** Additional CSS for rule field component */
|
|
88
|
+
field?: string;
|
|
89
|
+
/** Additional CSS for rule operator component */
|
|
90
|
+
operator?: string;
|
|
91
|
+
/** Additional CSS for expression group component */
|
|
92
|
+
group?: string;
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
/** @alpha **/
|
|
96
|
+
declare type DateInput = {
|
|
97
|
+
input: 'date';
|
|
98
|
+
type: 'date';
|
|
99
|
+
validation?: (x: unknown) => string | null;
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
/** @alpha **/
|
|
103
|
+
declare type DateTimeInput = {
|
|
104
|
+
input: 'datetime-local';
|
|
105
|
+
type: 'date-time';
|
|
106
|
+
validation?: (x: unknown) => string | null;
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
/** @alpha **/
|
|
110
|
+
export declare class ExpressionBuilder extends GenesisElement implements MetadataProvider {
|
|
111
|
+
config: Config_2;
|
|
112
|
+
styles?: Styles;
|
|
113
|
+
model: ModelGroup | null;
|
|
114
|
+
private ruleCount;
|
|
115
|
+
private groupCount;
|
|
116
|
+
/** @internal */
|
|
117
|
+
configChanged(_: Config_2, newConfig: Config_2): void;
|
|
118
|
+
/** @internal */
|
|
119
|
+
modelChanged(_: Config_2, newModel: ModelGroup): void;
|
|
120
|
+
/**
|
|
121
|
+
* @alpha
|
|
122
|
+
* Dispatches the provided model to the DOM.
|
|
123
|
+
*
|
|
124
|
+
* @remarks
|
|
125
|
+
* Override this to change the shape of model the component returns
|
|
126
|
+
*/
|
|
127
|
+
protected dispatchChangeEvent(group: Group): void;
|
|
128
|
+
/** @internal */
|
|
129
|
+
getConfig(): Config_2;
|
|
130
|
+
/** @internal */
|
|
131
|
+
getGroupId(): string;
|
|
132
|
+
/** @internal */
|
|
133
|
+
getRuleId(): string;
|
|
134
|
+
connectedCallback(): void;
|
|
135
|
+
disconnectedCallback(): void;
|
|
136
|
+
private handleAddGroup;
|
|
137
|
+
private _handleAddGroup;
|
|
138
|
+
private handleAddRule;
|
|
139
|
+
private _handleAddRule;
|
|
140
|
+
private handleDeleteGroup;
|
|
141
|
+
private _handleDeleteGroup;
|
|
142
|
+
private handleDeleteRule;
|
|
143
|
+
private _handleDeleteRule;
|
|
144
|
+
private handleUpdateGroupData;
|
|
145
|
+
private _handleUpdateGroupData;
|
|
146
|
+
private handleUpdateRuleData;
|
|
147
|
+
private _handleUpdateRuleData;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/** @alpha **/
|
|
151
|
+
declare type Field = {
|
|
152
|
+
optgroup?: string | null;
|
|
153
|
+
data?: any;
|
|
154
|
+
defaultValue?: any;
|
|
155
|
+
fieldId: string;
|
|
156
|
+
label: string;
|
|
157
|
+
operators?: string[];
|
|
158
|
+
} & FieldTypes;
|
|
159
|
+
|
|
160
|
+
/** @alpha **/
|
|
161
|
+
declare type FieldTypes = TextInput | NumberInput | CheckboxInput | SelectInput | DateInput | DateTimeInput;
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Gets the string representation from a `Date` which is the format a `date` input uses.
|
|
165
|
+
* `yyyy-mm-dd`
|
|
166
|
+
* @alpha
|
|
167
|
+
*/
|
|
168
|
+
export declare const formatDateString: (date: Date) => string;
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* Gets the string representation from a `Date` which is the format a `datetime-local` input uses.
|
|
172
|
+
* `yyyy-mm-ddThh:mm:ss`
|
|
173
|
+
* @alpha
|
|
174
|
+
*/
|
|
175
|
+
export declare const formatDateTimeString: (date: Date) => string;
|
|
176
|
+
|
|
177
|
+
/** @alpha **/
|
|
178
|
+
declare type Group = {
|
|
179
|
+
combinator: Combinator;
|
|
180
|
+
children: (Rule | Group)[];
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
/** @internal **/
|
|
184
|
+
declare type GroupMetadata = {
|
|
185
|
+
groupId: string;
|
|
186
|
+
level: number;
|
|
187
|
+
config: Config_2;
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
/** @internal **/
|
|
191
|
+
declare type GroupStructure = Omit<Group, 'children'> & {
|
|
192
|
+
children: (ModelRule | ModelGroup)[];
|
|
193
|
+
};
|
|
194
|
+
|
|
195
|
+
/** @alpha */
|
|
196
|
+
declare const LOGICAL_COMBINATORS: Combinator[];
|
|
197
|
+
|
|
198
|
+
/** @internal */
|
|
199
|
+
declare interface MetadataProvider {
|
|
200
|
+
getGroupId(): string;
|
|
201
|
+
getRuleId(): string;
|
|
202
|
+
getConfig(): Config_2;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
/** @internal **/
|
|
206
|
+
declare type ModelGroup = GroupMetadata & GroupStructure;
|
|
207
|
+
|
|
208
|
+
/** @internal **/
|
|
209
|
+
declare type ModelRule = Rule & RuleMetadata;
|
|
210
|
+
|
|
211
|
+
/** @alpha **/
|
|
212
|
+
declare type NumberInput = {
|
|
213
|
+
input: 'number';
|
|
214
|
+
type: 'int' | 'short' | 'double' | 'long' | 'bigdecimal';
|
|
215
|
+
validation?: (x: unknown) => string | null;
|
|
216
|
+
};
|
|
217
|
+
|
|
218
|
+
/** @alpha **/
|
|
219
|
+
declare type Operator = UniraryOperator | BinaryOperator | TernararyOperator | VariadicOperator;
|
|
220
|
+
|
|
221
|
+
/** @alpha **/
|
|
222
|
+
declare type _Operator = {
|
|
223
|
+
applyTo: FieldTypes['type'][];
|
|
224
|
+
optgroup?: string | null;
|
|
225
|
+
type: string;
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
/** @alpha **/
|
|
229
|
+
declare type Rule = {
|
|
230
|
+
field: Field | null;
|
|
231
|
+
} & ({
|
|
232
|
+
operator: null;
|
|
233
|
+
} | {
|
|
234
|
+
operator: UniraryOperator;
|
|
235
|
+
} | {
|
|
236
|
+
operator: BinaryOperator;
|
|
237
|
+
value: any;
|
|
238
|
+
} | {
|
|
239
|
+
operator: TernararyOperator;
|
|
240
|
+
value: [any, any];
|
|
241
|
+
} | {
|
|
242
|
+
operator: VariadicOperator;
|
|
243
|
+
value: any[];
|
|
244
|
+
});
|
|
245
|
+
|
|
246
|
+
/** @internal **/
|
|
247
|
+
declare type RuleMetadata = {
|
|
248
|
+
ruleId: string;
|
|
249
|
+
config: Config_2;
|
|
250
|
+
};
|
|
251
|
+
|
|
252
|
+
/** @alpha **/
|
|
253
|
+
declare type SelectInput = {
|
|
254
|
+
input: 'select';
|
|
255
|
+
type: 'enum';
|
|
256
|
+
values: Record<string, string | number>;
|
|
257
|
+
};
|
|
258
|
+
|
|
259
|
+
/** @alpha **/
|
|
260
|
+
declare type Styles = {
|
|
261
|
+
/** Custom element tags for HTML elements */
|
|
262
|
+
customElements?: CustomElements;
|
|
263
|
+
/** Custom styles for components */
|
|
264
|
+
customStyles?: CustomStyles;
|
|
265
|
+
};
|
|
266
|
+
|
|
267
|
+
/** @alpha **/
|
|
268
|
+
export declare const styles: ElementStyles;
|
|
269
|
+
|
|
270
|
+
/** @alpha **/
|
|
271
|
+
export declare const template: ViewTemplate<ExpressionBuilder, any>;
|
|
272
|
+
|
|
273
|
+
/** @alpha **/
|
|
274
|
+
declare type TernararyOperator = {
|
|
275
|
+
nbInputs: 2;
|
|
276
|
+
} & _Operator;
|
|
277
|
+
|
|
278
|
+
/** @alpha **/
|
|
279
|
+
declare type TextInput = {
|
|
280
|
+
type: 'string';
|
|
281
|
+
input: 'text';
|
|
282
|
+
validation?: (x: unknown) => string | null;
|
|
283
|
+
};
|
|
284
|
+
|
|
285
|
+
declare namespace Types {
|
|
286
|
+
export {
|
|
287
|
+
CustomElements,
|
|
288
|
+
CustomStyles,
|
|
289
|
+
Styles,
|
|
290
|
+
Config_2 as Config,
|
|
291
|
+
_Operator,
|
|
292
|
+
UniraryOperator,
|
|
293
|
+
BinaryOperator,
|
|
294
|
+
TernararyOperator,
|
|
295
|
+
VariadicOperator,
|
|
296
|
+
Operator,
|
|
297
|
+
TextInput,
|
|
298
|
+
NumberInput,
|
|
299
|
+
CheckboxInput,
|
|
300
|
+
SelectInput,
|
|
301
|
+
DateInput,
|
|
302
|
+
DateTimeInput,
|
|
303
|
+
FieldTypes,
|
|
304
|
+
Field,
|
|
305
|
+
Combinator,
|
|
306
|
+
Rule,
|
|
307
|
+
Group
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
export { Types }
|
|
311
|
+
|
|
312
|
+
/** @alpha **/
|
|
313
|
+
declare type UniraryOperator = {
|
|
314
|
+
nbInputs: 0;
|
|
315
|
+
} & _Operator;
|
|
316
|
+
|
|
317
|
+
/** @alpha **/
|
|
318
|
+
declare type VariadicOperator = {
|
|
319
|
+
nbInputs: 'many';
|
|
320
|
+
} & _Operator;
|
|
321
|
+
|
|
322
|
+
export { }
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// This file is read by tools that parse documentation comments conforming to the TSDoc standard.
|
|
2
|
+
// It should be published with your NPM package. It should not be tracked by Git.
|
|
3
|
+
{
|
|
4
|
+
"tsdocVersion": "0.12",
|
|
5
|
+
"toolPackages": [
|
|
6
|
+
{
|
|
7
|
+
"packageName": "@microsoft/api-extractor",
|
|
8
|
+
"packageVersion": "7.34.9"
|
|
9
|
+
}
|
|
10
|
+
]
|
|
11
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/expression-builder](./expression-builder.md)
|
|
4
|
+
|
|
5
|
+
## expression-builder package
|
|
6
|
+
|
|
7
|
+
## Namespaces
|
|
8
|
+
|
|
9
|
+
| Namespace | Description |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| [Config](./expression-builder.config.md) | |
|
|
12
|
+
| [Types](./expression-builder.types.md) | |
|
|
13
|
+
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md)
|
|
4
|
+
|
|
5
|
+
## API Reference
|
|
6
|
+
|
|
7
|
+
## Packages
|
|
8
|
+
|
|
9
|
+
| Package | Description |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| [@genesislcap/expression-builder](./expression-builder.md) | |
|
|
12
|
+
|