@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 @@
|
|
|
1
|
+
{"version":3,"file":"combinators.d.ts","sourceRoot":"","sources":["../../../src/config/combinators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,aAAa;AACb,eAAO,MAAM,wBAAwB,EAAE,UAAU,EAShD,CAAC;AAEF,aAAa;AACb,eAAO,MAAM,mBAAmB,EAAE,UAAU,EAkB3C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operators.d.ts","sourceRoot":"","sources":["../../../src/config/operators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,QAAQ,EAAE,MAAM,UAAU,CAAC;AAgBhD,cAAc;AACd,eAAO,MAAM,cAAc,EAAE,QAAQ,EA6EpC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEjE,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Group, GroupMetadata, Rule } from '../types';
|
|
2
|
+
export declare enum Events {
|
|
3
|
+
AddGroup = "add-group",
|
|
4
|
+
DelGroup = "del-group",
|
|
5
|
+
AddRule = "add-rule",
|
|
6
|
+
DelRule = "del-rule",
|
|
7
|
+
UpdateGroup = "update-group",
|
|
8
|
+
UpdateRule = "update-rule",
|
|
9
|
+
FieldSelected = "field-selected",
|
|
10
|
+
OperatorSelected = "operator-selected",
|
|
11
|
+
ValueUpdated = "value-updated",
|
|
12
|
+
RemoveVarArg = "remove-variadic-operand"
|
|
13
|
+
}
|
|
14
|
+
export type EventsDetailMap = {
|
|
15
|
+
[Events.AddGroup]: {
|
|
16
|
+
parentGroupId: string;
|
|
17
|
+
newGroup: Pick<GroupMetadata, 'level'>;
|
|
18
|
+
};
|
|
19
|
+
[Events.DelGroup]: {
|
|
20
|
+
groupId: string;
|
|
21
|
+
};
|
|
22
|
+
[Events.AddRule]: {
|
|
23
|
+
parentGroupId: string;
|
|
24
|
+
};
|
|
25
|
+
[Events.DelRule]: {
|
|
26
|
+
ruleId: string;
|
|
27
|
+
};
|
|
28
|
+
[Events.UpdateGroup]: {
|
|
29
|
+
groupId: string;
|
|
30
|
+
newData: Omit<Group, 'children'>;
|
|
31
|
+
};
|
|
32
|
+
[Events.UpdateRule]: {
|
|
33
|
+
ruleId: string;
|
|
34
|
+
newData: Rule;
|
|
35
|
+
};
|
|
36
|
+
[Events.FieldSelected]: {
|
|
37
|
+
fieldId: string;
|
|
38
|
+
};
|
|
39
|
+
[Events.OperatorSelected]: {
|
|
40
|
+
operatorId: string;
|
|
41
|
+
};
|
|
42
|
+
[Events.ValueUpdated]: {
|
|
43
|
+
value: any;
|
|
44
|
+
index: number;
|
|
45
|
+
};
|
|
46
|
+
[Events.RemoveVarArg]: {
|
|
47
|
+
index: number;
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/main/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEtD,oBAAY,MAAM;IAChB,QAAQ,cAAc;IACtB,QAAQ,cAAc;IAEtB,OAAO,aAAa;IACpB,OAAO,aAAa;IAEpB,WAAW,iBAAiB;IAE5B,UAAU,gBAAgB;IAC1B,aAAa,mBAAmB;IAChC,gBAAgB,sBAAsB;IACtC,YAAY,kBAAkB;IAC9B,YAAY,4BAA4B;CACzC;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IACrF,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAEvC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAErC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;KAAE,CAAC;IAE5E,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IACvD,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1C,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { GenesisElement } from '@genesislcap/web-core';
|
|
2
|
+
import { Config, Group, ModelGroup, Styles } from '../types';
|
|
3
|
+
import { MetadataProvider } from '../utils/data-model';
|
|
4
|
+
/** @alpha **/
|
|
5
|
+
export declare class ExpressionBuilder extends GenesisElement implements MetadataProvider {
|
|
6
|
+
config: Config;
|
|
7
|
+
styles?: Styles;
|
|
8
|
+
model: ModelGroup | null;
|
|
9
|
+
private ruleCount;
|
|
10
|
+
private groupCount;
|
|
11
|
+
/** @internal */
|
|
12
|
+
configChanged(_: Config, newConfig: Config): void;
|
|
13
|
+
/** @internal */
|
|
14
|
+
modelChanged(_: Config, newModel: ModelGroup): void;
|
|
15
|
+
/**
|
|
16
|
+
* @alpha
|
|
17
|
+
* Dispatches the provided model to the DOM.
|
|
18
|
+
*
|
|
19
|
+
* @remarks
|
|
20
|
+
* Override this to change the shape of model the component returns
|
|
21
|
+
*/
|
|
22
|
+
protected dispatchChangeEvent(group: Group): void;
|
|
23
|
+
/** @internal */
|
|
24
|
+
getConfig(): Config;
|
|
25
|
+
/** @internal */
|
|
26
|
+
getGroupId(): string;
|
|
27
|
+
/** @internal */
|
|
28
|
+
getRuleId(): string;
|
|
29
|
+
connectedCallback(): void;
|
|
30
|
+
disconnectedCallback(): void;
|
|
31
|
+
private handleAddGroup;
|
|
32
|
+
private _handleAddGroup;
|
|
33
|
+
private handleAddRule;
|
|
34
|
+
private _handleAddRule;
|
|
35
|
+
private handleDeleteGroup;
|
|
36
|
+
private _handleDeleteGroup;
|
|
37
|
+
private handleDeleteRule;
|
|
38
|
+
private _handleDeleteRule;
|
|
39
|
+
private handleUpdateGroupData;
|
|
40
|
+
private _handleUpdateGroupData;
|
|
41
|
+
private handleUpdateRuleData;
|
|
42
|
+
private _handleUpdateRuleData;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=expression-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-builder.d.ts","sourceRoot":"","sources":["../../../src/main/expression-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAc,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAa,MAAM,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAqB,gBAAgB,EAAqB,MAAM,qBAAqB,CAAC;AAkB7F,cAAc;AACd,qBAKa,iBAAkB,SAAQ,cAAe,YAAW,gBAAgB;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,UAAU,GAAG,IAAI,CAAQ;IAE5C,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,UAAU,CAAK;IAEvB,gBAAgB;IAChB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAQ1C,gBAAgB;IAChB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU;IAM5C;;;;;;OAMG;IACH,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,KAAK;IAa1C,gBAAgB;IAChB,SAAS,IAAI,MAAM;IAInB,gBAAgB;IAChB,UAAU;IAKV,gBAAgB;IAChB,SAAS;IAOT,iBAAiB;IA0BjB,oBAAoB,IAAI,IAAI;IAU5B,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,iBAAiB,CAAsC;IAC/D,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,gBAAgB,CAAqC;IAC7D,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,qBAAqB,CAA0C;IACvE,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,oBAAoB,CAAyC;IACrE,OAAO,CAAC,qBAAqB;CAI9B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ModelGroup, ModelRule } from '../types';
|
|
2
|
+
import { Events, EventsDetailMap } from './events';
|
|
3
|
+
type ChildrenOperatorFn = (children: ModelGroup['children']) => ModelGroup['children'];
|
|
4
|
+
/**
|
|
5
|
+
* Finds a group within a model and applies a function to create a new children
|
|
6
|
+
* @param model The root group to start searching from
|
|
7
|
+
* @param groupId The Group ID to find
|
|
8
|
+
* @param fn The function to apply to the children of the found group. A *new* object must be created and returned
|
|
9
|
+
* @returns A *new* root `Group` object which the function has been applied to. If the group isn't found an error is thrown
|
|
10
|
+
*/
|
|
11
|
+
export declare function findOperateOnGroup(model: ModelGroup, groupId: string, fn: ChildrenOperatorFn): ModelGroup;
|
|
12
|
+
export declare function addGroupOrRule(model: ModelGroup, parentGroupId: string, newItem: ModelGroup | ModelRule): ModelGroup;
|
|
13
|
+
export declare function deleteGroup(model: ModelGroup, groupIdToDelete: string): ModelGroup;
|
|
14
|
+
export declare function deleteRule(model: ModelGroup, ruleIdToDelete: string): ModelGroup;
|
|
15
|
+
export declare const ROOT_GROUP = "group-root";
|
|
16
|
+
export declare function updateGroupData(model: ModelGroup, groupIdToUpdate: string, newData: EventsDetailMap[Events.UpdateGroup]['newData']): ModelGroup;
|
|
17
|
+
export declare function updateRuleData(model: ModelGroup, ruleIdToUpdate: string, newData: EventsDetailMap[Events.UpdateRule]['newData']): ModelGroup;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=expression-builder.helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-builder.helpers.d.ts","sourceRoot":"","sources":["../../../src/main/expression-builder.helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAInD,KAAK,kBAAkB,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC;AAKvF;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,kBAAkB,GACrB,UAAU,CAoCZ;AA+CD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,UAAU,EACjB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,UAAU,GAAG,SAAS,GAC9B,UAAU,CAKZ;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,GAAG,UAAU,CAWlF;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,GAAG,UAAU,CAWhF;AAED,eAAO,MAAM,UAAU,eAAe,CAAC;AAEvC,wBAAgB,eAAe,CAC7B,KAAK,EAAE,UAAU,EACjB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,GACtD,UAAU,CAgBZ;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,UAAU,EACjB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,GACrD,UAAU,CAUZ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-builder.styles.d.ts","sourceRoot":"","sources":["../../../src/main/expression-builder.styles.ts"],"names":[],"mappings":"AAEA,cAAc;AACd,eAAO,MAAM,MAAM,iDA8KlB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-builder.template.d.ts","sourceRoot":"","sources":["../../../src/main/expression-builder.template.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAK9D,cAAc;AACd,eAAO,MAAM,QAAQ,wEAQpB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { GenesisElement } from '@genesislcap/web-core';
|
|
2
|
+
import { Combinator, Config, ModelGroup, Styles } from '../../types';
|
|
3
|
+
export declare class ExpressionGroup extends GenesisElement {
|
|
4
|
+
config: Config;
|
|
5
|
+
styles?: Styles;
|
|
6
|
+
model: ModelGroup;
|
|
7
|
+
index: number;
|
|
8
|
+
connectedCallback(): void;
|
|
9
|
+
get allowNestedGroup(): boolean;
|
|
10
|
+
dispatchAddRule(event: Event): void;
|
|
11
|
+
dispatchAddGroup(event: Event): void;
|
|
12
|
+
dispatchDeleteGroup(event: Event): void;
|
|
13
|
+
handleCombinatorChange(event: Event): void;
|
|
14
|
+
handleCustomCombinatorChange(event: Event): void;
|
|
15
|
+
private updateCombinator;
|
|
16
|
+
dispatchGroupDataUpdated(combinator: Combinator): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=expression-group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-group.d.ts","sourceRoot":"","sources":["../../../../src/main/expression-group/expression-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAMrE,qBAQa,eAAgB,SAAQ,cAAc;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IAE1B,iBAAiB,IAAI,IAAI;IAKzB,IACI,gBAAgB,IAAI,OAAO,CAI9B;IAaD,eAAe,CAAC,KAAK,EAAE,KAAK;IAQ5B,gBAAgB,CAAC,KAAK,EAAE,KAAK;IAY7B,mBAAmB,CAAC,KAAK,EAAE,KAAK;IAQhC,sBAAsB,CAAC,KAAK,EAAE,KAAK;IAQnC,4BAA4B,CAAC,KAAK,EAAE,KAAK;IAazC,OAAO,CAAC,gBAAgB;IAcxB,wBAAwB,CAAC,UAAU,EAAE,UAAU;CAWhD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-group.styles.d.ts","sourceRoot":"","sources":["../../../../src/main/expression-group/expression-group.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,iDA2ClB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-group.template.d.ts","sourceRoot":"","sources":["../../../../src/main/expression-group/expression-group.template.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,eAAO,MAAM,QAAQ,sEA4HpB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { GenesisElement } from '@genesislcap/web-core';
|
|
2
|
+
import { Config, ModelRule, Styles, VariadicOperator } from '../../types';
|
|
3
|
+
import { Events, EventsDetailMap } from '../events';
|
|
4
|
+
export declare class ExpressionRule extends GenesisElement {
|
|
5
|
+
config: Config;
|
|
6
|
+
styles?: Styles;
|
|
7
|
+
model: ModelRule | null;
|
|
8
|
+
index: number;
|
|
9
|
+
connectedCallback(): void;
|
|
10
|
+
variadicRule(model: ModelRule): model is ModelRule & {
|
|
11
|
+
operator: VariadicOperator;
|
|
12
|
+
value: any[];
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* @internal
|
|
16
|
+
* Creates an array of length n to represent to number of argument to the operator
|
|
17
|
+
*/
|
|
18
|
+
get operandIterator(): true[];
|
|
19
|
+
operandValue(index: number): any;
|
|
20
|
+
dispatchAddVarArg(): void;
|
|
21
|
+
handleRemoveVarArg(event: CustomEvent<EventsDetailMap[Events.RemoveVarArg]>): void;
|
|
22
|
+
dispatchDeleteRule(event: Event): void;
|
|
23
|
+
handleFieldSelected(event: CustomEvent<EventsDetailMap[Events.FieldSelected]>): void;
|
|
24
|
+
handleValueChanged(event: CustomEvent<EventsDetailMap[Events.ValueUpdated]>): void;
|
|
25
|
+
handleOperatorSelected(event: CustomEvent<EventsDetailMap[Events.OperatorSelected]>): void;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=expression-rule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-rule.d.ts","sourceRoot":"","sources":["../../../../src/main/expression-rule/expression-rule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAEL,MAAM,EAEN,SAAS,EAET,MAAM,EAGN,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAYpD,qBAQa,cAAe,SAAQ,cAAc;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IAE1B,iBAAiB,IAAI,IAAI;IAKzB,YAAY,CACV,KAAK,EAAE,SAAS,GACf,KAAK,IAAI,SAAS,GAAG;QAAE,QAAQ,EAAE,gBAAgB,CAAC;QAAC,KAAK,EAAE,GAAG,EAAE,CAAA;KAAE;IAIpE;;;OAGG;IACH,IACI,eAAe,IAAI,IAAI,EAAE,CAM5B;IAED,YAAY,CAAC,KAAK,EAAE,MAAM;IAc1B,iBAAiB,IAAI,IAAI;IAgBzB,kBAAkB,CAAC,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,IAAI;IAiBlF,kBAAkB,CAAC,KAAK,EAAE,KAAK;IAQ/B,mBAAmB,CAAC,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAqB7E,kBAAkB,CAAC,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAkC3E,sBAAsB,CAAC,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;CAkDpF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-rule.helpers.d.ts","sourceRoot":"","sources":["../../../../src/main/expression-rule/expression-rule.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,eAAO,MAAM,UAAU,MAAO,KAAK,QAC8B,CAAC;AAElE,eAAO,MAAM,YAAY,MAAO,KAAK,uBAqBpC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-rule.styles.d.ts","sourceRoot":"","sources":["../../../../src/main/expression-rule/expression-rule.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,iDAuDlB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-rule.template.d.ts","sourceRoot":"","sources":["../../../../src/main/expression-rule/expression-rule.template.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,eAAO,MAAM,QAAQ,qEAgFpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/main/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GenesisElement } from '@genesislcap/web-core';
|
|
2
|
+
import { Config, Field, Styles } from '../../types';
|
|
3
|
+
export declare class RuleField extends GenesisElement {
|
|
4
|
+
fields: Field[];
|
|
5
|
+
field: Field;
|
|
6
|
+
config: Config;
|
|
7
|
+
styles?: Styles;
|
|
8
|
+
connectedCallback(): void;
|
|
9
|
+
get groupedFieldss(): (Field | {
|
|
10
|
+
optgroup: string | null;
|
|
11
|
+
xs: Field[];
|
|
12
|
+
})[];
|
|
13
|
+
dispatchFieldsChanged(event: Event): void;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=rule-field.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule-field.d.ts","sourceRoot":"","sources":["../../../../src/main/rule-field/rule-field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAKpD,qBAIa,SAAU,SAAQ,cAAc;IAC/B,MAAM,EAAE,KAAK,EAAE,CAAM;IACrB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAE5B,iBAAiB,IAAI,IAAI;IAKzB,IACI,cAAc,IAAI,CAAC,KAAK,GAAG;QAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,EAAE,EAAE,KAAK,EAAE,CAAA;KAAE,CAAC,EAAE,CAEzE;IAED,qBAAqB,CAAC,KAAK,EAAE,KAAK;CAUnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule-field.template.d.ts","sourceRoot":"","sources":["../../../../src/main/rule-field/rule-field.template.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,eAAO,MAAM,QAAQ,gEAoDpB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { GenesisElement } from '@genesislcap/web-core';
|
|
2
|
+
import { Config, Field, Operator, Styles } from '../../types';
|
|
3
|
+
export declare class RuleOperator extends GenesisElement {
|
|
4
|
+
operators: Operator[];
|
|
5
|
+
operator: Operator;
|
|
6
|
+
field: Field | null;
|
|
7
|
+
config: Config;
|
|
8
|
+
styles?: Styles;
|
|
9
|
+
connectedCallback(): void;
|
|
10
|
+
get allowedOperators(): Operator[];
|
|
11
|
+
get groupedOperators(): (Operator | {
|
|
12
|
+
optgroup: string | null;
|
|
13
|
+
xs: Operator[];
|
|
14
|
+
})[];
|
|
15
|
+
handleOperatorChange(event: Event): void;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=rule-operator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule-operator.d.ts","sourceRoot":"","sources":["../../../../src/main/rule-operator/rule-operator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAK9D,qBAIa,YAAa,SAAQ,cAAc;IAClC,SAAS,EAAE,QAAQ,EAAE,CAAM;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAQ;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAE5B,iBAAiB,IAAI,IAAI;IAKzB,IACI,gBAAgB,IAAI,QAAQ,EAAE,CAMjC;IAED,IACI,gBAAgB,IAAI,CAAC,QAAQ,GAAG;QAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,EAAE,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAC,EAAE,CAEjF;IAED,oBAAoB,CAAC,KAAK,EAAE,KAAK;CAUlC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule-operator.template.d.ts","sourceRoot":"","sources":["../../../../src/main/rule-operator/rule-operator.template.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,eAAO,MAAM,QAAQ,mEAiDpB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { GenesisElement } from '@genesislcap/web-core';
|
|
2
|
+
import { Config, Field, Styles } from '../../types';
|
|
3
|
+
export declare class RuleValue extends GenesisElement {
|
|
4
|
+
valueIndex: string;
|
|
5
|
+
variadic: boolean;
|
|
6
|
+
validationError: boolean;
|
|
7
|
+
validationMsg: string;
|
|
8
|
+
field: Field | null;
|
|
9
|
+
value: any;
|
|
10
|
+
config: Config;
|
|
11
|
+
styles?: Styles;
|
|
12
|
+
connectedCallback(): void;
|
|
13
|
+
validateInput(value: string): string | null;
|
|
14
|
+
handleInputChange(event: Event): void;
|
|
15
|
+
handleRemoveVariadicOperand(): void;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=rule-value.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule-value.d.ts","sourceRoot":"","sources":["../../../../src/main/rule-value/rule-value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,cAAc,EAAc,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAOpD,qBAQa,SAAU,SAAQ,cAAc;IACP,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAS;IACK,eAAe,EAAE,OAAO,CAAS;IACpD,aAAa,EAAE,MAAM,CAAC;IACjD,KAAK,EAAE,KAAK,GAAG,IAAI,CAAQ;IAC3B,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAE5B,iBAAiB,IAAI,IAAI;IAMzB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAc3C,iBAAiB,CAAC,KAAK,EAAE,KAAK;IA6C9B,2BAA2B;CAS5B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Field } from '../../types';
|
|
2
|
+
export declare const isIntType: (type: Field['type']) => boolean;
|
|
3
|
+
export declare const isFloatType: (type: Field['type']) => boolean;
|
|
4
|
+
export declare const pattern: (type: Field['type']) => RegExp;
|
|
5
|
+
export declare const numberPatternValidator: (type: Field['type'], value: string) => string | null;
|
|
6
|
+
//# sourceMappingURL=rule-value.helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule-value.helpers.d.ts","sourceRoot":"","sources":["../../../../src/main/rule-value/rule-value.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,eAAO,MAAM,SAAS,SAAU,KAAK,CAAC,MAAM,CAAC,YAA4C,CAAC;AAE1F,eAAO,MAAM,WAAW,SAAU,KAAK,CAAC,MAAM,CAAC,YAA4C,CAAC;AAE5F,eAAO,MAAM,OAAO,SAAU,KAAK,CAAC,MAAM,CAAC,WAQ1C,CAAC;AAEF,eAAO,MAAM,sBAAsB,SAAU,KAAK,CAAC,MAAM,CAAC,SAAS,MAAM,KAAG,MAAM,GAAG,IAEpF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule-value.styles.d.ts","sourceRoot":"","sources":["../../../../src/main/rule-value/rule-value.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,iDASlB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule-value.template.d.ts","sourceRoot":"","sources":["../../../../src/main/rule-value/rule-value.template.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AA4H9C,eAAO,MAAM,iBAAiB,gEAQ7B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Config, Group, Rule } from './public.types';
|
|
2
|
+
/** @internal **/
|
|
3
|
+
export type RuleMetadata = {
|
|
4
|
+
ruleId: string;
|
|
5
|
+
config: Config;
|
|
6
|
+
};
|
|
7
|
+
/** @internal **/
|
|
8
|
+
export type ModelRule = Rule & RuleMetadata;
|
|
9
|
+
/** @internal **/
|
|
10
|
+
export type GroupStructure = Omit<Group, 'children'> & {
|
|
11
|
+
children: (ModelRule | ModelGroup)[];
|
|
12
|
+
};
|
|
13
|
+
/** @internal **/
|
|
14
|
+
export type GroupMetadata = {
|
|
15
|
+
groupId: string;
|
|
16
|
+
level: number;
|
|
17
|
+
config: Config;
|
|
18
|
+
};
|
|
19
|
+
/** @internal **/
|
|
20
|
+
export type ModelGroup = GroupMetadata & GroupStructure;
|
|
21
|
+
//# sourceMappingURL=private.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"private.types.d.ts","sourceRoot":"","sources":["../../../src/types/private.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAErD,iBAAiB;AACjB,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,iBAAiB;AACjB,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,YAAY,CAAC;AAE5C,iBAAiB;AACjB,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG;IACrD,QAAQ,EAAE,CAAC,SAAS,GAAG,UAAU,CAAC,EAAE,CAAC;CACtC,CAAC;AAEF,iBAAiB;AACjB,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,iBAAiB;AACjB,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,cAAc,CAAC"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
/** @alpha **/
|
|
2
|
+
export type CustomElements = {
|
|
3
|
+
/** Custom element tag for checkbox inputs */
|
|
4
|
+
checkbox?: string;
|
|
5
|
+
/** Custom element tag for text inputs */
|
|
6
|
+
text?: string;
|
|
7
|
+
/** Custom element tag for number inputs */
|
|
8
|
+
number?: string;
|
|
9
|
+
/** Custom element tag for date inputs */
|
|
10
|
+
date?: string;
|
|
11
|
+
/** Custom element tag for datetime-local inputs */
|
|
12
|
+
datetimeLocal?: string;
|
|
13
|
+
/** Custom element tag for select inputs */
|
|
14
|
+
select?: string;
|
|
15
|
+
/** Custom element tag for option elements */
|
|
16
|
+
option?: string;
|
|
17
|
+
/** Custom element tag for button elements */
|
|
18
|
+
button?: string;
|
|
19
|
+
/** Custom element tag for radio and radio group elements
|
|
20
|
+
* Assume that the radio group still exposes change event and value attribute */
|
|
21
|
+
radio?: {
|
|
22
|
+
input: string;
|
|
23
|
+
group: string;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
/** @alpha **/
|
|
27
|
+
export type CustomStyles = {
|
|
28
|
+
/** Additional CSS for expression rule component */
|
|
29
|
+
rule?: string;
|
|
30
|
+
/** Additional CSS for rule value component */
|
|
31
|
+
value?: string;
|
|
32
|
+
/** Additional CSS for rule field component */
|
|
33
|
+
field?: string;
|
|
34
|
+
/** Additional CSS for rule operator component */
|
|
35
|
+
operator?: string;
|
|
36
|
+
/** Additional CSS for expression group component */
|
|
37
|
+
group?: string;
|
|
38
|
+
};
|
|
39
|
+
/** @alpha **/
|
|
40
|
+
export type Styles = {
|
|
41
|
+
/** Custom element tags for HTML elements */
|
|
42
|
+
customElements?: CustomElements;
|
|
43
|
+
/** Custom styles for components */
|
|
44
|
+
customStyles?: CustomStyles;
|
|
45
|
+
};
|
|
46
|
+
/** @alpha **/
|
|
47
|
+
export type Config = {
|
|
48
|
+
operators: Operator[];
|
|
49
|
+
fields: Field[];
|
|
50
|
+
combinators: Combinator[];
|
|
51
|
+
/** Model to hydrate */
|
|
52
|
+
model?: Group;
|
|
53
|
+
/** If set and more than 0, is a 1-indexed config for the nesting of groups */
|
|
54
|
+
maxNesting?: number;
|
|
55
|
+
};
|
|
56
|
+
/** @alpha **/
|
|
57
|
+
export type _Operator = {
|
|
58
|
+
applyTo: FieldTypes['type'][];
|
|
59
|
+
optgroup?: string | null;
|
|
60
|
+
type: string;
|
|
61
|
+
};
|
|
62
|
+
/** @alpha **/
|
|
63
|
+
export type UniraryOperator = {
|
|
64
|
+
nbInputs: 0;
|
|
65
|
+
} & _Operator;
|
|
66
|
+
/** @alpha **/
|
|
67
|
+
export type BinaryOperator = {
|
|
68
|
+
nbInputs: 1;
|
|
69
|
+
} & _Operator;
|
|
70
|
+
/** @alpha **/
|
|
71
|
+
export type TernararyOperator = {
|
|
72
|
+
nbInputs: 2;
|
|
73
|
+
} & _Operator;
|
|
74
|
+
/** @alpha **/
|
|
75
|
+
export type VariadicOperator = {
|
|
76
|
+
nbInputs: 'many';
|
|
77
|
+
} & _Operator;
|
|
78
|
+
/** @alpha **/
|
|
79
|
+
export type Operator = UniraryOperator | BinaryOperator | TernararyOperator | VariadicOperator;
|
|
80
|
+
/** @alpha **/
|
|
81
|
+
export type TextInput = {
|
|
82
|
+
type: 'string';
|
|
83
|
+
input: 'text';
|
|
84
|
+
validation?: (x: unknown) => string | null;
|
|
85
|
+
};
|
|
86
|
+
/** @alpha **/
|
|
87
|
+
export type NumberInput = {
|
|
88
|
+
input: 'number';
|
|
89
|
+
type: 'int' | 'short' | 'double' | 'long' | 'bigdecimal';
|
|
90
|
+
validation?: (x: unknown) => string | null;
|
|
91
|
+
};
|
|
92
|
+
/** @alpha **/
|
|
93
|
+
export type CheckboxInput = {
|
|
94
|
+
input: 'checkbox';
|
|
95
|
+
type: 'boolean';
|
|
96
|
+
};
|
|
97
|
+
/** @alpha **/
|
|
98
|
+
export type SelectInput = {
|
|
99
|
+
input: 'select';
|
|
100
|
+
type: 'enum';
|
|
101
|
+
values: Record<string, string | number>;
|
|
102
|
+
};
|
|
103
|
+
/** @alpha **/
|
|
104
|
+
export type DateInput = {
|
|
105
|
+
input: 'date';
|
|
106
|
+
type: 'date';
|
|
107
|
+
validation?: (x: unknown) => string | null;
|
|
108
|
+
};
|
|
109
|
+
/** @alpha **/
|
|
110
|
+
export type DateTimeInput = {
|
|
111
|
+
input: 'datetime-local';
|
|
112
|
+
type: 'date-time';
|
|
113
|
+
validation?: (x: unknown) => string | null;
|
|
114
|
+
};
|
|
115
|
+
/** @alpha **/
|
|
116
|
+
export type FieldTypes = TextInput | NumberInput | CheckboxInput | SelectInput | DateInput | DateTimeInput;
|
|
117
|
+
/** @alpha **/
|
|
118
|
+
export type Field = {
|
|
119
|
+
optgroup?: string | null;
|
|
120
|
+
data?: any;
|
|
121
|
+
defaultValue?: any;
|
|
122
|
+
fieldId: string;
|
|
123
|
+
label: string;
|
|
124
|
+
operators?: string[];
|
|
125
|
+
} & FieldTypes;
|
|
126
|
+
/** @alpha **/
|
|
127
|
+
export type Combinator = {
|
|
128
|
+
type: string;
|
|
129
|
+
maxRules: 1 | 2 | 'many';
|
|
130
|
+
label?: string;
|
|
131
|
+
description?: string;
|
|
132
|
+
allowedFields?: Field['fieldId'][];
|
|
133
|
+
allowedOperators?: Operator['type'][];
|
|
134
|
+
validator?: (group: Group) => string | null;
|
|
135
|
+
allowLiterals?: boolean;
|
|
136
|
+
forceFieldOnly?: boolean;
|
|
137
|
+
};
|
|
138
|
+
/** @alpha **/
|
|
139
|
+
export type Rule = {
|
|
140
|
+
field: Field | null;
|
|
141
|
+
} & ({
|
|
142
|
+
operator: null;
|
|
143
|
+
} | {
|
|
144
|
+
operator: UniraryOperator;
|
|
145
|
+
} | {
|
|
146
|
+
operator: BinaryOperator;
|
|
147
|
+
value: any;
|
|
148
|
+
} | {
|
|
149
|
+
operator: TernararyOperator;
|
|
150
|
+
value: [any, any];
|
|
151
|
+
} | {
|
|
152
|
+
operator: VariadicOperator;
|
|
153
|
+
value: any[];
|
|
154
|
+
});
|
|
155
|
+
/** @alpha **/
|
|
156
|
+
export type Group = {
|
|
157
|
+
combinator: Combinator;
|
|
158
|
+
children: (Rule | Group)[];
|
|
159
|
+
};
|
|
160
|
+
//# sourceMappingURL=public.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.types.d.ts","sourceRoot":"","sources":["../../../src/types/public.types.ts"],"names":[],"mappings":"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"}
|