@defra/forms-model 3.0.2 → 3.0.4
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/dist/browser/components/enums.d.ts +27 -0
- package/dist/browser/components/enums.d.ts.map +1 -0
- package/dist/browser/components/enums.js +46 -0
- package/dist/browser/components/enums.js.map +1 -0
- package/dist/browser/components/index.d.ts +2 -1
- package/dist/browser/components/index.d.ts.map +1 -1
- package/dist/browser/components/index.js +10 -19
- package/dist/browser/components/index.js.map +1 -1
- package/dist/browser/components/types.d.ts +0 -29
- package/dist/browser/components/types.d.ts.map +1 -1
- package/dist/browser/components/types.js +4 -44
- package/dist/browser/components/types.js.map +1 -1
- package/dist/browser/conditions/condition-abstract.d.ts +1 -1
- package/dist/browser/conditions/condition-abstract.js +5 -5
- package/dist/browser/conditions/condition-abstract.js.map +1 -1
- package/dist/browser/conditions/condition-group.d.ts +2 -1
- package/dist/browser/conditions/condition-group.d.ts.map +1 -1
- package/dist/browser/conditions/condition-group.js.map +1 -1
- package/dist/browser/conditions/condition-model.d.ts.map +1 -1
- package/dist/browser/conditions/condition-model.js +6 -6
- package/dist/browser/conditions/condition-model.js.map +1 -1
- package/dist/browser/conditions/condition-ref.d.ts +1 -1
- package/dist/browser/conditions/condition-ref.js.map +1 -1
- package/dist/browser/conditions/condition.d.ts +1 -1
- package/dist/browser/conditions/condition.js.map +1 -1
- package/dist/browser/conditions/enums.d.ts +5 -0
- package/dist/browser/conditions/enums.d.ts.map +1 -0
- package/dist/browser/conditions/enums.js +24 -0
- package/dist/browser/conditions/enums.js.map +1 -0
- package/dist/browser/conditions/index.d.ts +1 -1
- package/dist/browser/conditions/index.js +5 -5
- package/dist/browser/conditions/index.js.map +1 -1
- package/dist/browser/conditions/types.d.ts +0 -4
- package/dist/browser/conditions/types.d.ts.map +1 -1
- package/dist/browser/conditions/types.js +4 -12
- package/dist/browser/conditions/types.js.map +1 -1
- package/dist/browser/data-model/enums.d.ts +6 -0
- package/dist/browser/data-model/enums.d.ts.map +1 -0
- package/dist/browser/data-model/enums.js +25 -0
- package/dist/browser/data-model/enums.js.map +1 -0
- package/dist/browser/data-model/index.d.ts +1 -0
- package/dist/browser/data-model/index.d.ts.map +1 -1
- package/dist/browser/data-model/index.js +10 -4
- package/dist/browser/data-model/index.js.map +1 -1
- package/dist/browser/data-model/types.d.ts +1 -5
- package/dist/browser/data-model/types.d.ts.map +1 -1
- package/dist/browser/data-model/types.js +0 -7
- package/dist/browser/data-model/types.js.map +1 -1
- package/dist/browser/index.d.ts +4 -5
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/index.js +19 -34
- package/dist/browser/index.js.map +1 -1
- package/dist/module/components/enums.d.ts +27 -0
- package/dist/module/components/enums.d.ts.map +1 -0
- package/dist/module/components/enums.js +32 -0
- package/dist/module/components/enums.js.map +1 -0
- package/dist/module/components/index.d.ts +2 -1
- package/dist/module/components/index.d.ts.map +1 -1
- package/dist/module/components/index.js +7 -16
- package/dist/module/components/index.js.map +1 -1
- package/dist/module/components/types.d.ts +0 -29
- package/dist/module/components/types.d.ts.map +1 -1
- package/dist/module/components/types.js +1 -42
- package/dist/module/components/types.js.map +1 -1
- package/dist/module/conditions/condition-abstract.d.ts +1 -1
- package/dist/module/conditions/condition-abstract.js +2 -2
- package/dist/module/conditions/condition-abstract.js.map +1 -1
- package/dist/module/conditions/condition-group.d.ts +2 -1
- package/dist/module/conditions/condition-group.d.ts.map +1 -1
- package/dist/module/conditions/condition-group.js.map +1 -1
- package/dist/module/conditions/condition-model.d.ts.map +1 -1
- package/dist/module/conditions/condition-model.js +3 -3
- package/dist/module/conditions/condition-model.js.map +1 -1
- package/dist/module/conditions/condition-ref.d.ts +1 -1
- package/dist/module/conditions/condition-ref.js.map +1 -1
- package/dist/module/conditions/condition.d.ts +1 -1
- package/dist/module/conditions/condition.js.map +1 -1
- package/dist/module/conditions/enums.d.ts +5 -0
- package/dist/module/conditions/enums.d.ts.map +1 -0
- package/dist/module/conditions/enums.js +10 -0
- package/dist/module/conditions/enums.js.map +1 -0
- package/dist/module/conditions/index.d.ts +1 -1
- package/dist/module/conditions/index.js +2 -2
- package/dist/module/conditions/index.js.map +1 -1
- package/dist/module/conditions/types.d.ts +0 -4
- package/dist/module/conditions/types.d.ts.map +1 -1
- package/dist/module/conditions/types.js +1 -10
- package/dist/module/conditions/types.js.map +1 -1
- package/dist/module/data-model/enums.d.ts +6 -0
- package/dist/module/data-model/enums.d.ts.map +1 -0
- package/dist/module/data-model/enums.js +11 -0
- package/dist/module/data-model/enums.js.map +1 -0
- package/dist/module/data-model/index.d.ts +1 -0
- package/dist/module/data-model/index.d.ts.map +1 -1
- package/dist/module/data-model/index.js +7 -0
- package/dist/module/data-model/index.js.map +1 -1
- package/dist/module/data-model/types.d.ts +1 -5
- package/dist/module/data-model/types.d.ts.map +1 -1
- package/dist/module/data-model/types.js +0 -7
- package/dist/module/data-model/types.js.map +1 -1
- package/dist/module/index.d.ts +4 -5
- package/dist/module/index.d.ts.map +1 -1
- package/dist/module/index.js +15 -33
- package/dist/module/index.js.map +1 -1
- package/package.json +5 -7
- package/src/components/enums.ts +26 -0
- package/src/components/index.ts +2 -1
- package/src/components/types.ts +0 -31
- package/src/conditions/condition-abstract.ts +1 -1
- package/src/conditions/condition-group.ts +2 -1
- package/src/conditions/condition-model.ts +2 -1
- package/src/conditions/condition-ref.ts +1 -1
- package/src/conditions/condition.ts +1 -1
- package/src/conditions/enums.ts +4 -0
- package/src/conditions/index.ts +1 -1
- package/src/conditions/types.ts +0 -5
- package/src/data-model/enums.ts +5 -0
- package/src/data-model/index.ts +1 -0
- package/src/data-model/types.ts +1 -6
- package/src/index.ts +8 -5
@@ -0,0 +1,27 @@
|
|
1
|
+
export declare enum ComponentTypeEnum {
|
2
|
+
TextField = "TextField",
|
3
|
+
MultilineTextField = "MultilineTextField",
|
4
|
+
YesNoField = "YesNoField",
|
5
|
+
DateField = "DateField",
|
6
|
+
TimeField = "TimeField",
|
7
|
+
DateTimeField = "DateTimeField",
|
8
|
+
DatePartsField = "DatePartsField",
|
9
|
+
MonthYearField = "MonthYearField",
|
10
|
+
DateTimePartsField = "DateTimePartsField",
|
11
|
+
SelectField = "SelectField",
|
12
|
+
AutocompleteField = "AutocompleteField",
|
13
|
+
RadiosField = "RadiosField",
|
14
|
+
CheckboxesField = "CheckboxesField",
|
15
|
+
NumberField = "NumberField",
|
16
|
+
UkAddressField = "UkAddressField",
|
17
|
+
TelephoneNumberField = "TelephoneNumberField",
|
18
|
+
EmailAddressField = "EmailAddressField",
|
19
|
+
FileUploadField = "FileUploadField",
|
20
|
+
Para = "Para",
|
21
|
+
Html = "Html",
|
22
|
+
InsetText = "InsetText",
|
23
|
+
Details = "Details",
|
24
|
+
FlashCard = "FlashCard",
|
25
|
+
List = "List"
|
26
|
+
}
|
27
|
+
//# sourceMappingURL=enums.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/components/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,iBAAiB;IAC3B,SAAS,cAAc;IACvB,kBAAkB,uBAAuB;IACzC,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,kBAAkB,uBAAuB;IACzC,WAAW,gBAAgB;IAC3B,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,eAAe,oBAAoB;IACnC,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,oBAAoB,yBAAyB;IAC7C,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;IACnC,IAAI,SAAS;IACb,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,IAAI,SAAS;CACd"}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
(function (global, factory) {
|
2
|
+
if (typeof define === "function" && define.amd) {
|
3
|
+
define(["exports"], factory);
|
4
|
+
} else if (typeof exports !== "undefined") {
|
5
|
+
factory(exports);
|
6
|
+
} else {
|
7
|
+
var mod = {
|
8
|
+
exports: {}
|
9
|
+
};
|
10
|
+
factory(mod.exports);
|
11
|
+
global.enums = mod.exports;
|
12
|
+
}
|
13
|
+
})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports) {
|
14
|
+
"use strict";
|
15
|
+
|
16
|
+
_exports.__esModule = true;
|
17
|
+
_exports.ComponentTypeEnum = void 0;
|
18
|
+
let ComponentTypeEnum = _exports.ComponentTypeEnum = /*#__PURE__*/function (ComponentTypeEnum) {
|
19
|
+
ComponentTypeEnum["TextField"] = "TextField";
|
20
|
+
ComponentTypeEnum["MultilineTextField"] = "MultilineTextField";
|
21
|
+
ComponentTypeEnum["YesNoField"] = "YesNoField";
|
22
|
+
ComponentTypeEnum["DateField"] = "DateField";
|
23
|
+
ComponentTypeEnum["TimeField"] = "TimeField";
|
24
|
+
ComponentTypeEnum["DateTimeField"] = "DateTimeField";
|
25
|
+
ComponentTypeEnum["DatePartsField"] = "DatePartsField";
|
26
|
+
ComponentTypeEnum["MonthYearField"] = "MonthYearField";
|
27
|
+
ComponentTypeEnum["DateTimePartsField"] = "DateTimePartsField";
|
28
|
+
ComponentTypeEnum["SelectField"] = "SelectField";
|
29
|
+
ComponentTypeEnum["AutocompleteField"] = "AutocompleteField";
|
30
|
+
ComponentTypeEnum["RadiosField"] = "RadiosField";
|
31
|
+
ComponentTypeEnum["CheckboxesField"] = "CheckboxesField";
|
32
|
+
ComponentTypeEnum["NumberField"] = "NumberField";
|
33
|
+
ComponentTypeEnum["UkAddressField"] = "UkAddressField";
|
34
|
+
ComponentTypeEnum["TelephoneNumberField"] = "TelephoneNumberField";
|
35
|
+
ComponentTypeEnum["EmailAddressField"] = "EmailAddressField";
|
36
|
+
ComponentTypeEnum["FileUploadField"] = "FileUploadField";
|
37
|
+
ComponentTypeEnum["Para"] = "Para";
|
38
|
+
ComponentTypeEnum["Html"] = "Html";
|
39
|
+
ComponentTypeEnum["InsetText"] = "InsetText";
|
40
|
+
ComponentTypeEnum["Details"] = "Details";
|
41
|
+
ComponentTypeEnum["FlashCard"] = "FlashCard";
|
42
|
+
ComponentTypeEnum["List"] = "List";
|
43
|
+
return ComponentTypeEnum;
|
44
|
+
}({});
|
45
|
+
});
|
46
|
+
//# sourceMappingURL=enums.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"enums.js","names":["ComponentTypeEnum","_exports"],"sources":["../../../src/components/enums.ts"],"sourcesContent":["export enum ComponentTypeEnum {\n TextField = 'TextField',\n MultilineTextField = 'MultilineTextField',\n YesNoField = 'YesNoField',\n DateField = 'DateField',\n TimeField = 'TimeField',\n DateTimeField = 'DateTimeField',\n DatePartsField = 'DatePartsField',\n MonthYearField = 'MonthYearField',\n DateTimePartsField = 'DateTimePartsField',\n SelectField = 'SelectField',\n AutocompleteField = 'AutocompleteField',\n RadiosField = 'RadiosField',\n CheckboxesField = 'CheckboxesField',\n NumberField = 'NumberField',\n UkAddressField = 'UkAddressField',\n TelephoneNumberField = 'TelephoneNumberField',\n EmailAddressField = 'EmailAddressField',\n FileUploadField = 'FileUploadField',\n Para = 'Para',\n Html = 'Html',\n InsetText = 'InsetText',\n Details = 'Details',\n FlashCard = 'FlashCard',\n List = 'List'\n}\n"],"mappings":";;;;;;;;;;;;;;;;;MAAYA,iBAAiB,GAAAC,QAAA,CAAAD,iBAAA,0BAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAjBA,iBAAiB;IAAA,OAAjBA,iBAAiB;EAAA;AAAA"}
|
@@ -1,4 +1,5 @@
|
|
1
1
|
export { ComponentTypes } from './component-types';
|
2
2
|
export { ConditionalComponentTypes } from './conditional-component-types';
|
3
|
-
export
|
3
|
+
export { ComponentTypeEnum } from './enums';
|
4
|
+
export type * from './types';
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AACzE,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAC3C,mBAAmB,SAAS,CAAA"}
|
@@ -1,23 +1,25 @@
|
|
1
1
|
(function (global, factory) {
|
2
2
|
if (typeof define === "function" && define.amd) {
|
3
|
-
define(["exports", "./component-types", "./conditional-component-types", "./
|
3
|
+
define(["exports", "./component-types", "./conditional-component-types", "./enums"], factory);
|
4
4
|
} else if (typeof exports !== "undefined") {
|
5
|
-
factory(exports, require("./component-types"), require("./conditional-component-types"), require("./
|
5
|
+
factory(exports, require("./component-types"), require("./conditional-component-types"), require("./enums"));
|
6
6
|
} else {
|
7
7
|
var mod = {
|
8
8
|
exports: {}
|
9
9
|
};
|
10
|
-
factory(mod.exports, global.componentTypes, global.conditionalComponentTypes, global.
|
10
|
+
factory(mod.exports, global.componentTypes, global.conditionalComponentTypes, global.enums);
|
11
11
|
global.index = mod.exports;
|
12
12
|
}
|
13
|
-
})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _componentTypes, _conditionalComponentTypes,
|
13
|
+
})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _componentTypes, _conditionalComponentTypes, _enums) {
|
14
14
|
"use strict";
|
15
15
|
|
16
16
|
_exports.__esModule = true;
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
17
|
+
Object.defineProperty(_exports, "ComponentTypeEnum", {
|
18
|
+
enumerable: true,
|
19
|
+
get: function () {
|
20
|
+
return _enums.ComponentTypeEnum;
|
21
|
+
}
|
22
|
+
});
|
21
23
|
Object.defineProperty(_exports, "ComponentTypes", {
|
22
24
|
enumerable: true,
|
23
25
|
get: function () {
|
@@ -30,16 +32,5 @@
|
|
30
32
|
return _conditionalComponentTypes.ConditionalComponentTypes;
|
31
33
|
}
|
32
34
|
});
|
33
|
-
Object.keys(_types).forEach(function (key) {
|
34
|
-
if (key === "default" || key === "__esModule") return;
|
35
|
-
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
36
|
-
if (key in _exports && _exports[key] === _types[key]) return;
|
37
|
-
Object.defineProperty(_exports, key, {
|
38
|
-
enumerable: true,
|
39
|
-
get: function () {
|
40
|
-
return _types[key];
|
41
|
-
}
|
42
|
-
});
|
43
|
-
});
|
44
35
|
});
|
45
36
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","names":[
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/index.ts"],"sourcesContent":["export { ComponentTypes } from './component-types'\nexport { ConditionalComponentTypes } from './conditional-component-types'\nexport { ComponentTypeEnum } from './enums'\nexport type * from './types'\n"],"mappings":""}
|
@@ -1,29 +1,3 @@
|
|
1
|
-
export declare enum ComponentTypeEnum {
|
2
|
-
TextField = "TextField",
|
3
|
-
MultilineTextField = "MultilineTextField",
|
4
|
-
YesNoField = "YesNoField",
|
5
|
-
DateField = "DateField",
|
6
|
-
TimeField = "TimeField",
|
7
|
-
DateTimeField = "DateTimeField",
|
8
|
-
DatePartsField = "DatePartsField",
|
9
|
-
MonthYearField = "MonthYearField",
|
10
|
-
DateTimePartsField = "DateTimePartsField",
|
11
|
-
SelectField = "SelectField",
|
12
|
-
AutocompleteField = "AutocompleteField",
|
13
|
-
RadiosField = "RadiosField",
|
14
|
-
CheckboxesField = "CheckboxesField",
|
15
|
-
NumberField = "NumberField",
|
16
|
-
UkAddressField = "UkAddressField",
|
17
|
-
TelephoneNumberField = "TelephoneNumberField",
|
18
|
-
EmailAddressField = "EmailAddressField",
|
19
|
-
FileUploadField = "FileUploadField",
|
20
|
-
Para = "Para",
|
21
|
-
Html = "Html",
|
22
|
-
InsetText = "InsetText",
|
23
|
-
Details = "Details",
|
24
|
-
FlashCard = "FlashCard",
|
25
|
-
List = "List"
|
26
|
-
}
|
27
1
|
export type ComponentType = 'TextField' | 'MultilineTextField' | 'YesNoField' | 'DateField' | 'TimeField' | 'DateTimeField' | 'MonthYearField' | 'DatePartsField' | 'DateTimePartsField' | 'SelectField' | 'AutocompleteField' | 'RadiosField' | 'CheckboxesField' | 'NumberField' | 'UkAddressField' | 'TelephoneNumberField' | 'EmailAddressField' | 'FileUploadField' | 'Para' | 'Html' | 'InsetText' | 'Details' | 'FlashCard' | 'List' | 'WebsiteField';
|
28
2
|
export type ComponentSubType = 'field' | 'content';
|
29
3
|
export type ConditionalComponent = {
|
@@ -138,9 +112,6 @@ export interface WebsiteFieldComponent extends TextFieldBase {
|
|
138
112
|
customValidationMessage?: string;
|
139
113
|
};
|
140
114
|
}
|
141
|
-
export interface MultilineTextFieldComponent {
|
142
|
-
type: 'MultilineTextField';
|
143
|
-
}
|
144
115
|
export interface TelephoneNumberFieldComponent extends TextFieldBase {
|
145
116
|
type: 'TelephoneNumberField';
|
146
117
|
options: TextFieldBase['options'] & {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/types.ts"],"names":[],"mappings":"AAAA,
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/types.ts"],"names":[],"mappings":"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"}
|
@@ -1,56 +1,16 @@
|
|
1
1
|
(function (global, factory) {
|
2
2
|
if (typeof define === "function" && define.amd) {
|
3
|
-
define([
|
3
|
+
define([], factory);
|
4
4
|
} else if (typeof exports !== "undefined") {
|
5
|
-
factory(
|
5
|
+
factory();
|
6
6
|
} else {
|
7
7
|
var mod = {
|
8
8
|
exports: {}
|
9
9
|
};
|
10
|
-
factory(
|
10
|
+
factory();
|
11
11
|
global.types = mod.exports;
|
12
12
|
}
|
13
|
-
})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (
|
13
|
+
})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function () {
|
14
14
|
"use strict";
|
15
|
-
|
16
|
-
_exports.__esModule = true;
|
17
|
-
_exports.ComponentTypeEnum = void 0;
|
18
|
-
let ComponentTypeEnum = _exports.ComponentTypeEnum = /*#__PURE__*/function (ComponentTypeEnum) {
|
19
|
-
ComponentTypeEnum["TextField"] = "TextField";
|
20
|
-
ComponentTypeEnum["MultilineTextField"] = "MultilineTextField";
|
21
|
-
ComponentTypeEnum["YesNoField"] = "YesNoField";
|
22
|
-
ComponentTypeEnum["DateField"] = "DateField";
|
23
|
-
ComponentTypeEnum["TimeField"] = "TimeField";
|
24
|
-
ComponentTypeEnum["DateTimeField"] = "DateTimeField";
|
25
|
-
ComponentTypeEnum["DatePartsField"] = "DatePartsField";
|
26
|
-
ComponentTypeEnum["MonthYearField"] = "MonthYearField";
|
27
|
-
ComponentTypeEnum["DateTimePartsField"] = "DateTimePartsField";
|
28
|
-
ComponentTypeEnum["SelectField"] = "SelectField";
|
29
|
-
ComponentTypeEnum["AutocompleteField"] = "AutocompleteField";
|
30
|
-
ComponentTypeEnum["RadiosField"] = "RadiosField";
|
31
|
-
ComponentTypeEnum["CheckboxesField"] = "CheckboxesField";
|
32
|
-
ComponentTypeEnum["NumberField"] = "NumberField";
|
33
|
-
ComponentTypeEnum["UkAddressField"] = "UkAddressField";
|
34
|
-
ComponentTypeEnum["TelephoneNumberField"] = "TelephoneNumberField";
|
35
|
-
ComponentTypeEnum["EmailAddressField"] = "EmailAddressField";
|
36
|
-
ComponentTypeEnum["FileUploadField"] = "FileUploadField";
|
37
|
-
ComponentTypeEnum["Para"] = "Para";
|
38
|
-
ComponentTypeEnum["Html"] = "Html";
|
39
|
-
ComponentTypeEnum["InsetText"] = "InsetText";
|
40
|
-
ComponentTypeEnum["Details"] = "Details";
|
41
|
-
ComponentTypeEnum["FlashCard"] = "FlashCard";
|
42
|
-
ComponentTypeEnum["List"] = "List";
|
43
|
-
return ComponentTypeEnum;
|
44
|
-
}({});
|
45
|
-
/**
|
46
|
-
* Types for Components JSON structure which are expected by engine and turned into actual form input/content/lists
|
47
|
-
*/
|
48
|
-
// Text Fields
|
49
|
-
// Date Fields
|
50
|
-
// Content Fields
|
51
|
-
// List Fields
|
52
|
-
// Components that render inputs.
|
53
|
-
// Components that render content.
|
54
|
-
// Components that render Lists
|
55
15
|
});
|
56
16
|
//# sourceMappingURL=types.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.js","names":[
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../src/components/types.ts"],"sourcesContent":["export type ComponentType =\n | 'TextField'\n | 'MultilineTextField'\n | 'YesNoField'\n | 'DateField'\n | 'TimeField'\n | 'DateTimeField'\n | 'MonthYearField'\n | 'DatePartsField'\n | 'DateTimePartsField'\n | 'SelectField'\n | 'AutocompleteField'\n | 'RadiosField'\n | 'CheckboxesField'\n | 'NumberField'\n | 'UkAddressField'\n | 'TelephoneNumberField'\n | 'EmailAddressField'\n | 'FileUploadField'\n | 'Para'\n | 'Html'\n | 'InsetText'\n | 'Details'\n | 'FlashCard'\n | 'List'\n | 'WebsiteField'\n\nexport type ComponentSubType = 'field' | 'content'\n\nexport type ConditionalComponent = {\n name: 'TextField' | 'NumberField'\n title: string\n subType: 'field'\n}\n\nexport type ContentOptions = {\n condition?: string\n}\n\n/**\n * Types for Components JSON structure which are expected by engine and turned into actual form input/content/lists\n */\ninterface TextFieldBase {\n subType?: 'field'\n type: string\n name: string\n title: string\n hint?: string\n options: {\n hideTitle?: boolean\n required?: boolean\n optionalText?: boolean\n classes?: string\n allow?: string\n autocomplete?: string\n exposeToContext?: boolean\n }\n schema: {\n max?: number\n min?: number\n length?: number\n regex?: string\n error?: any // TODO: in same cases this is a function e.g. addressLine1 in ukaddress\n }\n}\n\ninterface NumberFieldBase {\n subType?: 'field'\n type: string\n name: string\n title: string\n hint: string\n options: {\n prefix?: string\n suffix?: string\n exposeToContext?: boolean\n }\n schema: {\n min?: number\n max?: number\n precision?: number\n }\n}\n\ninterface ListFieldBase {\n subType?: 'listField' | 'content'\n type: string\n name: string\n title: string\n options: {\n type?: string\n hideTitle?: boolean\n required?: boolean\n optionalText?: boolean\n classes?: string\n bold?: boolean\n exposeToContext?: boolean\n allowPrePopulation?: boolean\n }\n list: string\n schema: {}\n}\n\ninterface ContentFieldBase {\n subType?: 'content'\n type: string\n name: string\n title: string\n content: string\n options: ContentOptions\n schema: {}\n}\n\ninterface DateFieldBase {\n subType?: 'field'\n type: string\n name: string\n title: string\n hint: string\n options: {\n hideTitle?: boolean\n required?: boolean\n optionalText?: boolean\n maxDaysInFuture?: number\n maxDaysInPast?: number\n exposeToContext?: boolean\n }\n schema: {}\n}\n\n// Text Fields\nexport interface TextFieldComponent extends TextFieldBase {\n type: 'TextField'\n options: TextFieldBase['options'] & {\n customValidationMessage?: string\n }\n}\n\nexport interface EmailAddressFieldComponent extends TextFieldBase {\n type: 'EmailAddressField'\n}\n\nexport interface NumberFieldComponent extends NumberFieldBase {\n type: 'NumberField'\n}\n\nexport interface WebsiteFieldComponent extends TextFieldBase {\n type: 'WebsiteField'\n options: TextFieldBase['options'] & {\n customValidationMessage?: string\n }\n}\n\nexport interface TelephoneNumberFieldComponent extends TextFieldBase {\n type: 'TelephoneNumberField'\n options: TextFieldBase['options'] & {\n customValidationMessage?: string\n }\n}\n\nexport interface YesNoFieldComponent extends TextFieldBase {\n type: 'YesNoField'\n}\n\nexport interface MultilineTextFieldComponent extends TextFieldBase {\n type: 'MultilineTextField'\n options: TextFieldBase['options'] & {\n customValidationMessage?: string\n rows?: number\n maxWords?: number\n }\n schema: {\n max?: number\n min?: number\n }\n}\n\nexport interface FileUploadFieldComponent {\n subType?: 'field'\n type: 'FileUploadField'\n name: string\n title: string\n hint: string\n options: {\n required?: boolean\n hideTitle?: boolean\n multiple?: boolean\n classes?: string\n exposeToContext?: boolean\n imageQualityPlayback?: boolean\n }\n schema: {}\n}\n\nexport interface UkAddressFieldComponent extends TextFieldBase {\n type: 'UkAddressField'\n}\n\n// Date Fields\nexport interface DateFieldComponent extends DateFieldBase {\n type: 'DateField'\n}\n\nexport interface DateTimeFieldComponent extends DateFieldBase {\n type: 'DateTimeField'\n}\n\nexport interface DatePartsFieldFieldComponent extends DateFieldBase {\n type: 'DatePartsField'\n}\n\nexport interface MonthYearFieldComponent extends DateFieldBase {\n type: 'MonthYearField'\n}\n\nexport interface DateTimePartsFieldComponent extends DateFieldBase {\n type: 'DateTimePartsField'\n}\n\nexport interface TimeFieldComponent extends DateFieldBase {\n type: 'TimeField'\n}\n\n// Content Fields\nexport interface ParaComponent extends ContentFieldBase {\n type: 'Para'\n}\n\nexport interface DetailsComponent extends ContentFieldBase {\n type: 'Details'\n}\n\nexport interface HtmlComponent extends ContentFieldBase {\n type: 'Html'\n}\n\nexport interface InsetTextComponent extends ContentFieldBase {\n type: 'InsetText'\n}\n\n// List Fields\nexport interface ListComponent extends ListFieldBase {\n type: 'List'\n}\n\nexport interface AutocompleteFieldComponent extends ListFieldBase {\n type: 'AutocompleteField'\n subType?: 'listField'\n}\n\nexport interface CheckboxesFieldComponent extends ListFieldBase {\n type: 'CheckboxesField'\n subType?: 'listField'\n}\n\nexport interface FlashCardComponent extends ListFieldBase {\n type: 'FlashCard'\n}\n\nexport interface RadiosFieldComponent extends ListFieldBase {\n type: 'RadiosField'\n subType?: 'listField'\n}\n\nexport interface SelectFieldComponent extends ListFieldBase {\n type: 'SelectField'\n options: ListFieldBase['options'] & { autocomplete?: string }\n subType?: 'listField'\n}\n\nexport type ComponentDef =\n | InsetTextComponent\n | AutocompleteFieldComponent\n | CheckboxesFieldComponent\n | DateFieldComponent\n | DatePartsFieldFieldComponent\n | MonthYearFieldComponent\n | DateTimeFieldComponent\n | DateTimePartsFieldComponent\n | DetailsComponent\n | EmailAddressFieldComponent\n | FileUploadFieldComponent\n | FlashCardComponent\n | HtmlComponent\n | ListComponent\n | MultilineTextFieldComponent\n | NumberFieldComponent\n | ParaComponent\n | RadiosFieldComponent\n | SelectFieldComponent\n | TelephoneNumberFieldComponent\n | TextFieldComponent\n | TimeFieldComponent\n | UkAddressFieldComponent\n | YesNoFieldComponent\n | WebsiteFieldComponent\n\n// Components that render inputs.\nexport type InputFieldsComponentsDef =\n | TextFieldComponent\n | EmailAddressFieldComponent\n | NumberFieldComponent\n | MultilineTextFieldComponent\n | TelephoneNumberFieldComponent\n | YesNoFieldComponent\n | FileUploadFieldComponent\n | DateFieldComponent\n | DateTimeFieldComponent\n | DateTimePartsFieldComponent\n | MonthYearFieldComponent\n | TimeFieldComponent\n | UkAddressFieldComponent\n | WebsiteFieldComponent\n\n// Components that render content.\nexport type ContentComponentsDef =\n | ParaComponent\n | DetailsComponent\n | HtmlComponent\n | InsetTextComponent\n | ListComponent\n | FlashCardComponent\n\n// Components that render Lists\nexport type ListComponentsDef =\n | ListComponent\n | AutocompleteFieldComponent\n | CheckboxesFieldComponent\n | FlashCardComponent\n | RadiosFieldComponent\n | SelectFieldComponent\n"],"mappings":""}
|
@@ -1,16 +1,16 @@
|
|
1
1
|
(function (global, factory) {
|
2
2
|
if (typeof define === "function" && define.amd) {
|
3
|
-
define(["exports", "./
|
3
|
+
define(["exports", "./enums"], factory);
|
4
4
|
} else if (typeof exports !== "undefined") {
|
5
|
-
factory(exports, require("./
|
5
|
+
factory(exports, require("./enums"));
|
6
6
|
} else {
|
7
7
|
var mod = {
|
8
8
|
exports: {}
|
9
9
|
};
|
10
|
-
factory(mod.exports, global.
|
10
|
+
factory(mod.exports, global.enums);
|
11
11
|
global.conditionAbstract = mod.exports;
|
12
12
|
}
|
13
|
-
})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports,
|
13
|
+
})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _enums) {
|
14
14
|
"use strict";
|
15
15
|
|
16
16
|
_exports.__esModule = true;
|
@@ -21,7 +21,7 @@
|
|
21
21
|
class ConditionAbstract {
|
22
22
|
constructor(coordinator) {
|
23
23
|
_defineProperty(this, "coordinator", void 0);
|
24
|
-
if (coordinator && !Object.values(
|
24
|
+
if (coordinator && !Object.values(_enums.Coordinator).includes(coordinator)) {
|
25
25
|
throw Error(`coordinator ${coordinator} is not a valid coordinator`);
|
26
26
|
}
|
27
27
|
this.coordinator = coordinator;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"condition-abstract.js","names":["ConditionAbstract","constructor","coordinator","_defineProperty","Object","values","Coordinator","includes","Error","coordinatorString","getCoordinator","setCoordinator","isGroup","getGroupedConditions","_asFirstCondition","asFirstCondition","clone","conditionString","conditionExpression","_exports"],"sources":["../../../src/conditions/condition-abstract.ts"],"sourcesContent":["import { Coordinator } from './
|
1
|
+
{"version":3,"file":"condition-abstract.js","names":["ConditionAbstract","constructor","coordinator","_defineProperty","Object","values","Coordinator","includes","Error","coordinatorString","getCoordinator","setCoordinator","isGroup","getGroupedConditions","_asFirstCondition","asFirstCondition","clone","conditionString","conditionExpression","_exports"],"sources":["../../../src/conditions/condition-abstract.ts"],"sourcesContent":["import { Coordinator } from './enums'\n\nexport class ConditionAbstract {\n coordinator: Coordinator | undefined\n\n constructor(coordinator: Coordinator | undefined) {\n if (coordinator && !Object.values(Coordinator).includes(coordinator)) {\n throw Error(`coordinator ${coordinator} is not a valid coordinator`)\n }\n\n this.coordinator = coordinator\n }\n\n coordinatorString() {\n return this.coordinator ? `${this.coordinator} ` : ''\n }\n\n getCoordinator() {\n return this.coordinator\n }\n\n setCoordinator(coordinator: Coordinator | undefined) {\n this.coordinator = coordinator\n }\n\n isGroup() {\n return false\n }\n\n getGroupedConditions() {\n return [this]\n }\n\n _asFirstCondition() {\n delete this.coordinator\n }\n\n asFirstCondition() {\n throw Error(\n 'Unsupported Operation. Method asFirstCondition have not been implemented'\n )\n }\n\n clone() {\n throw Error('Unsupported Operation. Method clone have not been implemented')\n }\n\n conditionString() {\n throw Error(\n 'Unsupported Operation. Method conditionString have not been implemented'\n )\n }\n\n conditionExpression() {\n throw Error(\n 'Unsupported Operation. Method conditionExpression have not been implemented'\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAEO,MAAMA,iBAAiB,CAAC;IAG7BC,WAAWA,CAACC,WAAoC,EAAE;MAAAC,eAAA;MAChD,IAAID,WAAW,IAAI,CAACE,MAAM,CAACC,MAAM,CAACC,kBAAW,CAAC,CAACC,QAAQ,CAACL,WAAW,CAAC,EAAE;QACpE,MAAMM,KAAK,CAAE,eAAcN,WAAY,6BAA4B,CAAC;MACtE;MAEA,IAAI,CAACA,WAAW,GAAGA,WAAW;IAChC;IAEAO,iBAAiBA,CAAA,EAAG;MAClB,OAAO,IAAI,CAACP,WAAW,GAAI,GAAE,IAAI,CAACA,WAAY,GAAE,GAAG,EAAE;IACvD;IAEAQ,cAAcA,CAAA,EAAG;MACf,OAAO,IAAI,CAACR,WAAW;IACzB;IAEAS,cAAcA,CAACT,WAAoC,EAAE;MACnD,IAAI,CAACA,WAAW,GAAGA,WAAW;IAChC;IAEAU,OAAOA,CAAA,EAAG;MACR,OAAO,KAAK;IACd;IAEAC,oBAAoBA,CAAA,EAAG;MACrB,OAAO,CAAC,IAAI,CAAC;IACf;IAEAC,iBAAiBA,CAAA,EAAG;MAClB,OAAO,IAAI,CAACZ,WAAW;IACzB;IAEAa,gBAAgBA,CAAA,EAAG;MACjB,MAAMP,KAAK,CACT,0EACF,CAAC;IACH;IAEAQ,KAAKA,CAAA,EAAG;MACN,MAAMR,KAAK,CAAC,+DAA+D,CAAC;IAC9E;IAEAS,eAAeA,CAAA,EAAG;MAChB,MAAMT,KAAK,CACT,yEACF,CAAC;IACH;IAEAU,mBAAmBA,CAAA,EAAG;MACpB,MAAMV,KAAK,CACT,6EACF,CAAC;IACH;EACF;EAACW,QAAA,CAAAnB,iBAAA,GAAAA,iBAAA;AAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"condition-group.d.ts","sourceRoot":"","sources":["../../../src/conditions/condition-group.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"condition-group.d.ts","sourceRoot":"","sources":["../../../src/conditions/condition-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzC,qBAAa,cAAc;IACzB,UAAU,EAAE,eAAe,CAAA;gBAEf,UAAU,GAAE,eAAoB;IAQ5C,iBAAiB;IAIjB,eAAe;IAQf,mBAAmB;IAQnB,gBAAgB;IAKhB,cAAc;IAId,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS;IAInD,OAAO;IAIP,oBAAoB;IAIpB,KAAK;CAKN"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"condition-group.js","names":["ConditionGroup","constructor","conditions","_defineProperty","Array","isArray","length","Error","coordinatorString","conditionString","copy","splice","map","condition","toPresentationString","join","conditionExpression","toExpression","asFirstCondition","getCoordinator","setCoordinator","coordinator","isGroup","getGroupedConditions","clone","_exports"],"sources":["../../../src/conditions/condition-group.ts"],"sourcesContent":["import { toPresentationString, toExpression } from './helpers'\nimport {
|
1
|
+
{"version":3,"file":"condition-group.js","names":["ConditionGroup","constructor","conditions","_defineProperty","Array","isArray","length","Error","coordinatorString","conditionString","copy","splice","map","condition","toPresentationString","join","conditionExpression","toExpression","asFirstCondition","getCoordinator","setCoordinator","coordinator","isGroup","getGroupedConditions","clone","_exports"],"sources":["../../../src/conditions/condition-group.ts"],"sourcesContent":["import { Coordinator } from './enums'\nimport { toPresentationString, toExpression } from './helpers'\nimport { ConditionsArray } from './types'\n\nexport class ConditionGroup {\n conditions: ConditionsArray\n\n constructor(conditions: ConditionsArray = []) {\n if (!Array.isArray(conditions) || conditions.length < 2) {\n throw Error('Cannot construct a condition group from a single condition')\n }\n\n this.conditions = conditions\n }\n\n coordinatorString() {\n return this.conditions[0].coordinatorString()\n }\n\n conditionString() {\n const copy = [...this.conditions]\n copy.splice(0, 1)\n return `(${this.conditions[0].conditionString()} ${copy\n .map((condition) => toPresentationString(condition))\n .join(' ')})`\n }\n\n conditionExpression() {\n const copy = [...this.conditions]\n copy.splice(0, 1)\n return `(${this.conditions[0].conditionExpression()} ${copy\n .map((condition) => toExpression(condition))\n .join(' ')})`\n }\n\n asFirstCondition() {\n this.conditions[0].asFirstCondition()\n return this\n }\n\n getCoordinator() {\n return this.conditions[0].getCoordinator()\n }\n\n setCoordinator(coordinator: Coordinator | undefined) {\n this.conditions[0].setCoordinator(coordinator)\n }\n\n isGroup() {\n return true\n }\n\n getGroupedConditions() {\n return this.conditions.map((condition) => condition.clone())\n }\n\n clone() {\n return new ConditionGroup(\n this.conditions.map((condition) => condition.clone())\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAIO,MAAMA,cAAc,CAAC;IAG1BC,WAAWA,CAACC,UAA2B,GAAG,EAAE,EAAE;MAAAC,eAAA;MAC5C,IAAI,CAACC,KAAK,CAACC,OAAO,CAACH,UAAU,CAAC,IAAIA,UAAU,CAACI,MAAM,GAAG,CAAC,EAAE;QACvD,MAAMC,KAAK,CAAC,4DAA4D,CAAC;MAC3E;MAEA,IAAI,CAACL,UAAU,GAAGA,UAAU;IAC9B;IAEAM,iBAAiBA,CAAA,EAAG;MAClB,OAAO,IAAI,CAACN,UAAU,CAAC,CAAC,CAAC,CAACM,iBAAiB,CAAC,CAAC;IAC/C;IAEAC,eAAeA,CAAA,EAAG;MAChB,MAAMC,IAAI,GAAG,CAAC,GAAG,IAAI,CAACR,UAAU,CAAC;MACjCQ,IAAI,CAACC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;MACjB,OAAQ,IAAG,IAAI,CAACT,UAAU,CAAC,CAAC,CAAC,CAACO,eAAe,CAAC,CAAE,IAAGC,IAAI,CACpDE,GAAG,CAAEC,SAAS,IAAK,IAAAC,6BAAoB,EAACD,SAAS,CAAC,CAAC,CACnDE,IAAI,CAAC,GAAG,CAAE,GAAE;IACjB;IAEAC,mBAAmBA,CAAA,EAAG;MACpB,MAAMN,IAAI,GAAG,CAAC,GAAG,IAAI,CAACR,UAAU,CAAC;MACjCQ,IAAI,CAACC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;MACjB,OAAQ,IAAG,IAAI,CAACT,UAAU,CAAC,CAAC,CAAC,CAACc,mBAAmB,CAAC,CAAE,IAAGN,IAAI,CACxDE,GAAG,CAAEC,SAAS,IAAK,IAAAI,qBAAY,EAACJ,SAAS,CAAC,CAAC,CAC3CE,IAAI,CAAC,GAAG,CAAE,GAAE;IACjB;IAEAG,gBAAgBA,CAAA,EAAG;MACjB,IAAI,CAAChB,UAAU,CAAC,CAAC,CAAC,CAACgB,gBAAgB,CAAC,CAAC;MACrC,OAAO,IAAI;IACb;IAEAC,cAAcA,CAAA,EAAG;MACf,OAAO,IAAI,CAACjB,UAAU,CAAC,CAAC,CAAC,CAACiB,cAAc,CAAC,CAAC;IAC5C;IAEAC,cAAcA,CAACC,WAAoC,EAAE;MACnD,IAAI,CAACnB,UAAU,CAAC,CAAC,CAAC,CAACkB,cAAc,CAACC,WAAW,CAAC;IAChD;IAEAC,OAAOA,CAAA,EAAG;MACR,OAAO,IAAI;IACb;IAEAC,oBAAoBA,CAAA,EAAG;MACrB,OAAO,IAAI,CAACrB,UAAU,CAACU,GAAG,CAAEC,SAAS,IAAKA,SAAS,CAACW,KAAK,CAAC,CAAC,CAAC;IAC9D;IAEAA,KAAKA,CAAA,EAAG;MACN,OAAO,IAAIxB,cAAc,CACvB,IAAI,CAACE,UAAU,CAACU,GAAG,CAAEC,SAAS,IAAKA,SAAS,CAACW,KAAK,CAAC,CAAC,CACtD,CAAC;IACH;EACF;EAACC,QAAA,CAAAzB,cAAA,GAAAA,cAAA;AAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"condition-model.d.ts","sourceRoot":"","sources":["../../../src/conditions/condition-model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;
|
1
|
+
{"version":3,"file":"condition-model.d.ts","sourceRoot":"","sources":["../../../src/conditions/condition-model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIlD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzC,KAAK,kBAAkB,GACnB,eAAe,GACf;IACE,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,SAAS,EAAE,CAAA;CACxB,CAAA;AAEL,qBAAa,eAAe;;gBAKd,iBAAiB,CAAC,EAAE,kBAAkB;IAElD,KAAK;IAYL,KAAK;IAOL,IAAI,IAAI,CAAC,IAAI,oBAAA,EAEZ;IAED,IAAI,IAAI,uBAEP;IAED,GAAG,CAAC,SAAS,EAAE,SAAS;IAexB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;IAmB3C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE;IAWxB,SAAS,CAAC,SAAS,EAAE,iBAAiB,EAAE;IASxC,UAAU,CAAC,KAAK,EAAE,MAAM;IASxB,WAAW,CAAC,KAAK,EAAE,MAAM;IAezB,SAAS,CAAC,KAAK,EAAE,MAAM;IAevB,kBAAkB;IAOlB,IAAI,kBAAkB,kDAErB;IAED,IAAI,aAAa,YAEhB;IAED,IAAI,SAAS,WAEZ;IAED,oBAAoB;IAMpB,YAAY;IAMZ,YAAY,CACV,qBAAqB,EAAE,CAAC,SAAS,GAAG,cAAc,GAAG,YAAY,CAAC,EAAE;IAmBtE,MAAM,CAAC,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,iBAAiB,EAAE;IAiBlE,QAAQ,CAAC,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM;IAaxD,cAAc,CAAC,UAAU,EAAE,eAAe;IAkC1C,MAAM;;;;IAUN,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,GAAG,eAAe;CActD"}
|
@@ -1,16 +1,16 @@
|
|
1
1
|
(function (global, factory) {
|
2
2
|
if (typeof define === "function" && define.amd) {
|
3
|
-
define(["exports", "./condition-field", "./condition-group-def", "./condition", "./condition-ref", "./condition-group", "./condition-values", "./
|
3
|
+
define(["exports", "./condition-field", "./condition-group-def", "./condition", "./condition-ref", "./condition-group", "./condition-values", "./enums", "./helpers"], factory);
|
4
4
|
} else if (typeof exports !== "undefined") {
|
5
|
-
factory(exports, require("./condition-field"), require("./condition-group-def"), require("./condition"), require("./condition-ref"), require("./condition-group"), require("./condition-values"), require("./
|
5
|
+
factory(exports, require("./condition-field"), require("./condition-group-def"), require("./condition"), require("./condition-ref"), require("./condition-group"), require("./condition-values"), require("./enums"), require("./helpers"));
|
6
6
|
} else {
|
7
7
|
var mod = {
|
8
8
|
exports: {}
|
9
9
|
};
|
10
|
-
factory(mod.exports, global.conditionField, global.conditionGroupDef, global.condition, global.conditionRef, global.conditionGroup, global.conditionValues, global.
|
10
|
+
factory(mod.exports, global.conditionField, global.conditionGroupDef, global.condition, global.conditionRef, global.conditionGroup, global.conditionValues, global.enums, global.helpers);
|
11
11
|
global.conditionModel = mod.exports;
|
12
12
|
}
|
13
|
-
})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _conditionField, _conditionGroupDef, _condition2, _conditionRef, _conditionGroup, _conditionValues,
|
13
|
+
})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _conditionField, _conditionGroupDef, _condition2, _conditionRef, _conditionGroup, _conditionValues, _enums, _helpers) {
|
14
14
|
"use strict";
|
15
15
|
|
16
16
|
_exports.__esModule = true;
|
@@ -155,12 +155,12 @@
|
|
155
155
|
_autoGroupDefs(conditions) {
|
156
156
|
const orPositions = [];
|
157
157
|
conditions.forEach((condition, index) => {
|
158
|
-
if (condition.getCoordinator() ===
|
158
|
+
if (condition.getCoordinator() === _enums.Coordinator.OR) {
|
159
159
|
orPositions.push(index);
|
160
160
|
}
|
161
161
|
});
|
162
162
|
const hasOr = orPositions.length > 0;
|
163
|
-
const hasAnd = !!conditions.find(condition => condition.getCoordinator() ===
|
163
|
+
const hasAnd = !!conditions.find(condition => condition.getCoordinator() === _enums.Coordinator.AND);
|
164
164
|
if (hasAnd && hasOr) {
|
165
165
|
let start = 0;
|
166
166
|
const groupDefs = [];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"condition-model.js","names":["ConditionsModel","constructor","_conditionsObject","_classPrivateFieldInitSpec","_groupedConditions","_userGroupedConditions","_conditionName","undefined","clone","toReturn","_classPrivateFieldSet","_classPrivateFieldGet","map","it","clear","name","add","condition","coordinatorExpected","length","getCoordinator","Error","push","_applyGroups","replace","index","splice","remove","indexes","filter","_condition","includes","asFirstCondition","addGroups","groupDefs","_group","splitGroup","_ungroup","moveEarlier","switchCoordinators","moveLater","setCoordinator","asPerUserGroupings","hasConditions","lastIndex","toPresentationString","join","toExpression","userGroupedConditions","correctedUserGroups","ConditionGroup","conditions","_autoGroupDefs","reduce","groups","groupDef","find","contains","startsWith","groupConditions","applyTo","splitIndex","isGroup","copy","getGroupedConditions","orPositions","forEach","Coordinator","OR","hasOr","hasAnd","AND","start","position","ConditionGroupDef","thisIsTheLastOr","thereAreMoreConditions","toJSON","from","obj","conditionFrom","_exports","ConditionRef","conditionName","conditionDisplayName","coordinator","Condition","ConditionField","field","operator","conditionValueFrom","value"],"sources":["../../../src/conditions/condition-model.ts"],"sourcesContent":["import { ConditionField } from './condition-field'\nimport { ConditionGroupDef } from './condition-group-def'\nimport { Condition } from './condition'\nimport { ConditionRef } from './condition-ref'\nimport { ConditionGroup } from './condition-group'\nimport { conditionValueFrom } from './condition-values'\nimport { toPresentationString, toExpression } from './helpers'\nimport { Coordinator, ConditionsArray } from './types'\n\ntype ConditionRawObject =\n | ConditionsModel\n | {\n name: string\n conditions: Condition[]\n }\n\nexport class ConditionsModel {\n #groupedConditions: ConditionsArray = []\n #userGroupedConditions: ConditionsArray = []\n #conditionName: string | undefined = undefined\n\n constructor(_conditionsObject?: ConditionRawObject) {}\n\n clone() {\n const toReturn = new ConditionsModel()\n toReturn.#groupedConditions = this.#groupedConditions.map((it) =>\n it.clone()\n )\n toReturn.#userGroupedConditions = this.#userGroupedConditions.map((it) =>\n it.clone()\n )\n toReturn.#conditionName = this.#conditionName\n return toReturn\n }\n\n clear() {\n this.#userGroupedConditions = []\n this.#groupedConditions = []\n this.#conditionName = undefined\n return this\n }\n\n set name(name) {\n this.#conditionName = name\n }\n\n get name() {\n return this.#conditionName\n }\n\n add(condition: Condition) {\n const coordinatorExpected = this.#userGroupedConditions.length !== 0\n\n if (condition.getCoordinator() && !coordinatorExpected) {\n throw Error('No coordinator allowed on the first condition')\n } else if (!condition.getCoordinator() && coordinatorExpected) {\n throw Error('Coordinator must be present on subsequent conditions')\n }\n\n this.#userGroupedConditions.push(condition)\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n\n return this\n }\n\n replace(index: number, condition: Condition) {\n const coordinatorExpected = index !== 0\n\n if (condition.getCoordinator() && !coordinatorExpected) {\n throw Error('No coordinator allowed on the first condition')\n } else if (!condition.getCoordinator() && coordinatorExpected) {\n throw Error('Coordinator must be present on subsequent conditions')\n } else if (index >= this.#userGroupedConditions.length) {\n throw Error(\n `Cannot replace condition ${index} as no such condition exists`\n )\n }\n\n this.#userGroupedConditions.splice(index, 1, condition)\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n\n return this\n }\n\n remove(indexes: number[]) {\n this.#userGroupedConditions = this.#userGroupedConditions\n .filter((_condition, index) => !indexes.includes(index))\n .map((condition, index) =>\n index === 0 ? condition.asFirstCondition() : condition\n )\n\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n return this\n }\n\n addGroups(groupDefs: ConditionGroupDef[]) {\n this.#userGroupedConditions = this._group(\n this.#userGroupedConditions,\n groupDefs\n )\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n return this\n }\n\n splitGroup(index: number) {\n this.#userGroupedConditions = this._ungroup(\n this.#userGroupedConditions,\n index\n )\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n return this\n }\n\n moveEarlier(index: number) {\n if (index > 0 && index < this.#userGroupedConditions.length) {\n this.#userGroupedConditions.splice(\n index - 1,\n 0,\n this.#userGroupedConditions.splice(index, 1)[0]\n )\n if (index === 1) {\n this.switchCoordinators()\n }\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n }\n return this\n }\n\n moveLater(index: number) {\n if (index >= 0 && index < this.#userGroupedConditions.length - 1) {\n this.#userGroupedConditions.splice(\n index + 1,\n 0,\n this.#userGroupedConditions.splice(index, 1)[0]\n )\n if (index === 0) {\n this.switchCoordinators()\n }\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n }\n return this\n }\n\n switchCoordinators() {\n this.#userGroupedConditions[1].setCoordinator(\n this.#userGroupedConditions[0].getCoordinator()\n )\n this.#userGroupedConditions[0].setCoordinator(undefined)\n }\n\n get asPerUserGroupings() {\n return [...this.#userGroupedConditions]\n }\n\n get hasConditions() {\n return this.#userGroupedConditions.length > 0\n }\n\n get lastIndex() {\n return this.#userGroupedConditions.length - 1\n }\n\n toPresentationString() {\n return this.#groupedConditions\n .map((condition) => toPresentationString(condition))\n .join(' ')\n }\n\n toExpression() {\n return this.#groupedConditions\n .map((condition) => toExpression(condition))\n .join(' ')\n }\n\n _applyGroups(\n userGroupedConditions: (Condition | ConditionGroup | ConditionRef)[]\n ) {\n const correctedUserGroups = userGroupedConditions.map((condition) =>\n condition instanceof ConditionGroup && condition.conditions.length > 2\n ? new ConditionGroup(\n this._group(\n condition.conditions,\n this._autoGroupDefs(condition.conditions)\n )\n )\n : condition\n )\n\n return this._group(\n correctedUserGroups,\n this._autoGroupDefs(correctedUserGroups)\n )\n }\n\n _group(conditions: ConditionsArray, groupDefs: ConditionGroupDef[]) {\n return conditions.reduce((groups, condition, index, conditions) => {\n const groupDef = groupDefs.find((groupDef) => groupDef.contains(index))\n\n if (groupDef) {\n if (groupDef.startsWith(index)) {\n const groupConditions = groupDef.applyTo(conditions)\n groups.push(new ConditionGroup(groupConditions))\n }\n } else {\n groups.push(condition)\n }\n\n return groups\n }, [] as ConditionsArray)\n }\n\n _ungroup(conditions: ConditionsArray, splitIndex: number) {\n if (conditions[splitIndex].isGroup()) {\n const copy = [...conditions]\n copy.splice(\n splitIndex,\n 1,\n ...conditions[splitIndex].getGroupedConditions()\n )\n return copy\n }\n return conditions\n }\n\n _autoGroupDefs(conditions: ConditionsArray) {\n const orPositions: number[] = []\n\n conditions.forEach((condition, index) => {\n if (condition.getCoordinator() === Coordinator.OR) {\n orPositions.push(index)\n }\n })\n\n const hasOr = orPositions.length > 0\n const hasAnd = !!conditions.find(\n (condition) => condition.getCoordinator() === Coordinator.AND\n )\n\n if (hasAnd && hasOr) {\n let start = 0\n const groupDefs: ConditionGroupDef[] = []\n orPositions.forEach((position, index) => {\n if (start < position - 1) {\n groupDefs.push(new ConditionGroupDef(start, position - 1))\n }\n const thisIsTheLastOr = orPositions.length === index + 1\n const thereAreMoreConditions = conditions.length - 1 > position\n if (thisIsTheLastOr && thereAreMoreConditions) {\n groupDefs.push(new ConditionGroupDef(position, conditions.length - 1))\n }\n start = position\n })\n return groupDefs\n }\n\n return []\n }\n\n toJSON() {\n const name = this.#conditionName\n const conditions = this.#userGroupedConditions\n return {\n name,\n conditions: conditions.map((it) => it.clone())\n }\n }\n\n // TODO:- why is this not a constructor?\n static from(obj: ConditionRawObject | ConditionsModel) {\n if (obj instanceof ConditionsModel) {\n return obj\n }\n const toReturn = new ConditionsModel()\n toReturn.#conditionName = obj.name\n toReturn.#userGroupedConditions = obj.conditions.map((condition) =>\n conditionFrom(condition)\n )\n toReturn.#groupedConditions = toReturn._applyGroups(\n toReturn.#userGroupedConditions\n )\n return toReturn\n }\n}\n\ninterface ConditionFrom {\n (\n it: Condition | ConditionRef | ConditionGroup\n ): Condition | ConditionRef | ConditionGroup\n}\n\nconst conditionFrom: ConditionFrom = function (it) {\n if ('conditions' in it) {\n return new ConditionGroup(\n (it as ConditionGroup).conditions.map((condition) =>\n conditionFrom(condition)\n )\n )\n }\n\n if ('conditionName' in it) {\n return new ConditionRef(\n it.conditionName,\n it.conditionDisplayName,\n it.coordinator\n )\n }\n\n return new Condition(\n ConditionField.from(it.field),\n it.operator,\n conditionValueFrom(it.value),\n it.coordinator\n )\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"condition-model.js","names":["ConditionsModel","constructor","_conditionsObject","_classPrivateFieldInitSpec","_groupedConditions","_userGroupedConditions","_conditionName","undefined","clone","toReturn","_classPrivateFieldSet","_classPrivateFieldGet","map","it","clear","name","add","condition","coordinatorExpected","length","getCoordinator","Error","push","_applyGroups","replace","index","splice","remove","indexes","filter","_condition","includes","asFirstCondition","addGroups","groupDefs","_group","splitGroup","_ungroup","moveEarlier","switchCoordinators","moveLater","setCoordinator","asPerUserGroupings","hasConditions","lastIndex","toPresentationString","join","toExpression","userGroupedConditions","correctedUserGroups","ConditionGroup","conditions","_autoGroupDefs","reduce","groups","groupDef","find","contains","startsWith","groupConditions","applyTo","splitIndex","isGroup","copy","getGroupedConditions","orPositions","forEach","Coordinator","OR","hasOr","hasAnd","AND","start","position","ConditionGroupDef","thisIsTheLastOr","thereAreMoreConditions","toJSON","from","obj","conditionFrom","_exports","ConditionRef","conditionName","conditionDisplayName","coordinator","Condition","ConditionField","field","operator","conditionValueFrom","value"],"sources":["../../../src/conditions/condition-model.ts"],"sourcesContent":["import { ConditionField } from './condition-field'\nimport { ConditionGroupDef } from './condition-group-def'\nimport { Condition } from './condition'\nimport { ConditionRef } from './condition-ref'\nimport { ConditionGroup } from './condition-group'\nimport { conditionValueFrom } from './condition-values'\nimport { Coordinator } from './enums'\nimport { toPresentationString, toExpression } from './helpers'\nimport { ConditionsArray } from './types'\n\ntype ConditionRawObject =\n | ConditionsModel\n | {\n name: string\n conditions: Condition[]\n }\n\nexport class ConditionsModel {\n #groupedConditions: ConditionsArray = []\n #userGroupedConditions: ConditionsArray = []\n #conditionName: string | undefined = undefined\n\n constructor(_conditionsObject?: ConditionRawObject) {}\n\n clone() {\n const toReturn = new ConditionsModel()\n toReturn.#groupedConditions = this.#groupedConditions.map((it) =>\n it.clone()\n )\n toReturn.#userGroupedConditions = this.#userGroupedConditions.map((it) =>\n it.clone()\n )\n toReturn.#conditionName = this.#conditionName\n return toReturn\n }\n\n clear() {\n this.#userGroupedConditions = []\n this.#groupedConditions = []\n this.#conditionName = undefined\n return this\n }\n\n set name(name) {\n this.#conditionName = name\n }\n\n get name() {\n return this.#conditionName\n }\n\n add(condition: Condition) {\n const coordinatorExpected = this.#userGroupedConditions.length !== 0\n\n if (condition.getCoordinator() && !coordinatorExpected) {\n throw Error('No coordinator allowed on the first condition')\n } else if (!condition.getCoordinator() && coordinatorExpected) {\n throw Error('Coordinator must be present on subsequent conditions')\n }\n\n this.#userGroupedConditions.push(condition)\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n\n return this\n }\n\n replace(index: number, condition: Condition) {\n const coordinatorExpected = index !== 0\n\n if (condition.getCoordinator() && !coordinatorExpected) {\n throw Error('No coordinator allowed on the first condition')\n } else if (!condition.getCoordinator() && coordinatorExpected) {\n throw Error('Coordinator must be present on subsequent conditions')\n } else if (index >= this.#userGroupedConditions.length) {\n throw Error(\n `Cannot replace condition ${index} as no such condition exists`\n )\n }\n\n this.#userGroupedConditions.splice(index, 1, condition)\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n\n return this\n }\n\n remove(indexes: number[]) {\n this.#userGroupedConditions = this.#userGroupedConditions\n .filter((_condition, index) => !indexes.includes(index))\n .map((condition, index) =>\n index === 0 ? condition.asFirstCondition() : condition\n )\n\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n return this\n }\n\n addGroups(groupDefs: ConditionGroupDef[]) {\n this.#userGroupedConditions = this._group(\n this.#userGroupedConditions,\n groupDefs\n )\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n return this\n }\n\n splitGroup(index: number) {\n this.#userGroupedConditions = this._ungroup(\n this.#userGroupedConditions,\n index\n )\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n return this\n }\n\n moveEarlier(index: number) {\n if (index > 0 && index < this.#userGroupedConditions.length) {\n this.#userGroupedConditions.splice(\n index - 1,\n 0,\n this.#userGroupedConditions.splice(index, 1)[0]\n )\n if (index === 1) {\n this.switchCoordinators()\n }\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n }\n return this\n }\n\n moveLater(index: number) {\n if (index >= 0 && index < this.#userGroupedConditions.length - 1) {\n this.#userGroupedConditions.splice(\n index + 1,\n 0,\n this.#userGroupedConditions.splice(index, 1)[0]\n )\n if (index === 0) {\n this.switchCoordinators()\n }\n this.#groupedConditions = this._applyGroups(this.#userGroupedConditions)\n }\n return this\n }\n\n switchCoordinators() {\n this.#userGroupedConditions[1].setCoordinator(\n this.#userGroupedConditions[0].getCoordinator()\n )\n this.#userGroupedConditions[0].setCoordinator(undefined)\n }\n\n get asPerUserGroupings() {\n return [...this.#userGroupedConditions]\n }\n\n get hasConditions() {\n return this.#userGroupedConditions.length > 0\n }\n\n get lastIndex() {\n return this.#userGroupedConditions.length - 1\n }\n\n toPresentationString() {\n return this.#groupedConditions\n .map((condition) => toPresentationString(condition))\n .join(' ')\n }\n\n toExpression() {\n return this.#groupedConditions\n .map((condition) => toExpression(condition))\n .join(' ')\n }\n\n _applyGroups(\n userGroupedConditions: (Condition | ConditionGroup | ConditionRef)[]\n ) {\n const correctedUserGroups = userGroupedConditions.map((condition) =>\n condition instanceof ConditionGroup && condition.conditions.length > 2\n ? new ConditionGroup(\n this._group(\n condition.conditions,\n this._autoGroupDefs(condition.conditions)\n )\n )\n : condition\n )\n\n return this._group(\n correctedUserGroups,\n this._autoGroupDefs(correctedUserGroups)\n )\n }\n\n _group(conditions: ConditionsArray, groupDefs: ConditionGroupDef[]) {\n return conditions.reduce((groups, condition, index, conditions) => {\n const groupDef = groupDefs.find((groupDef) => groupDef.contains(index))\n\n if (groupDef) {\n if (groupDef.startsWith(index)) {\n const groupConditions = groupDef.applyTo(conditions)\n groups.push(new ConditionGroup(groupConditions))\n }\n } else {\n groups.push(condition)\n }\n\n return groups\n }, [] as ConditionsArray)\n }\n\n _ungroup(conditions: ConditionsArray, splitIndex: number) {\n if (conditions[splitIndex].isGroup()) {\n const copy = [...conditions]\n copy.splice(\n splitIndex,\n 1,\n ...conditions[splitIndex].getGroupedConditions()\n )\n return copy\n }\n return conditions\n }\n\n _autoGroupDefs(conditions: ConditionsArray) {\n const orPositions: number[] = []\n\n conditions.forEach((condition, index) => {\n if (condition.getCoordinator() === Coordinator.OR) {\n orPositions.push(index)\n }\n })\n\n const hasOr = orPositions.length > 0\n const hasAnd = !!conditions.find(\n (condition) => condition.getCoordinator() === Coordinator.AND\n )\n\n if (hasAnd && hasOr) {\n let start = 0\n const groupDefs: ConditionGroupDef[] = []\n orPositions.forEach((position, index) => {\n if (start < position - 1) {\n groupDefs.push(new ConditionGroupDef(start, position - 1))\n }\n const thisIsTheLastOr = orPositions.length === index + 1\n const thereAreMoreConditions = conditions.length - 1 > position\n if (thisIsTheLastOr && thereAreMoreConditions) {\n groupDefs.push(new ConditionGroupDef(position, conditions.length - 1))\n }\n start = position\n })\n return groupDefs\n }\n\n return []\n }\n\n toJSON() {\n const name = this.#conditionName\n const conditions = this.#userGroupedConditions\n return {\n name,\n conditions: conditions.map((it) => it.clone())\n }\n }\n\n // TODO:- why is this not a constructor?\n static from(obj: ConditionRawObject | ConditionsModel) {\n if (obj instanceof ConditionsModel) {\n return obj\n }\n const toReturn = new ConditionsModel()\n toReturn.#conditionName = obj.name\n toReturn.#userGroupedConditions = obj.conditions.map((condition) =>\n conditionFrom(condition)\n )\n toReturn.#groupedConditions = toReturn._applyGroups(\n toReturn.#userGroupedConditions\n )\n return toReturn\n }\n}\n\ninterface ConditionFrom {\n (\n it: Condition | ConditionRef | ConditionGroup\n ): Condition | ConditionRef | ConditionGroup\n}\n\nconst conditionFrom: ConditionFrom = function (it) {\n if ('conditions' in it) {\n return new ConditionGroup(\n (it as ConditionGroup).conditions.map((condition) =>\n conditionFrom(condition)\n )\n )\n }\n\n if ('conditionName' in it) {\n return new ConditionRef(\n it.conditionName,\n it.conditionDisplayName,\n it.coordinator\n )\n }\n\n return new Condition(\n ConditionField.from(it.field),\n it.operator,\n conditionValueFrom(it.value),\n it.coordinator\n )\n}\n"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"condition-ref.js","names":["ConditionRef","ConditionAbstract","constructor","conditionName","conditionDisplayName","coordinator","_defineProperty","Error","asFirstCondition","_asFirstCondition","conditionString","conditionExpression","clone","_exports"],"sources":["../../../src/conditions/condition-ref.ts"],"sourcesContent":["import { ConditionAbstract } from './condition-abstract'\nimport { Coordinator } from './
|
1
|
+
{"version":3,"file":"condition-ref.js","names":["ConditionRef","ConditionAbstract","constructor","conditionName","conditionDisplayName","coordinator","_defineProperty","Error","asFirstCondition","_asFirstCondition","conditionString","conditionExpression","clone","_exports"],"sources":["../../../src/conditions/condition-ref.ts"],"sourcesContent":["import { ConditionAbstract } from './condition-abstract'\nimport { Coordinator } from './enums'\n\nexport class ConditionRef extends ConditionAbstract {\n conditionName: string\n conditionDisplayName: string\n\n constructor(\n conditionName: string,\n conditionDisplayName: string,\n coordinator: Coordinator | undefined\n ) {\n super(coordinator)\n\n if (typeof conditionName !== 'string') {\n throw Error(`condition name ${conditionName} is not valid`)\n }\n\n if (typeof conditionDisplayName !== 'string') {\n throw Error(`condition display name ${conditionDisplayName} is not valid`)\n }\n\n this.conditionName = conditionName\n this.conditionDisplayName = conditionDisplayName\n }\n\n asFirstCondition() {\n this._asFirstCondition()\n return this\n }\n\n conditionString() {\n return `'${this.conditionDisplayName}'`\n }\n\n conditionExpression() {\n return this.conditionName\n }\n\n clone() {\n return new ConditionRef(\n this.conditionName,\n this.conditionDisplayName,\n this.coordinator\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAGO,MAAMA,YAAY,SAASC,oCAAiB,CAAC;IAIlDC,WAAWA,CACTC,aAAqB,EACrBC,oBAA4B,EAC5BC,WAAoC,EACpC;MACA,KAAK,CAACA,WAAW,CAAC;MAAAC,eAAA;MAAAA,eAAA;MAElB,IAAI,OAAOH,aAAa,KAAK,QAAQ,EAAE;QACrC,MAAMI,KAAK,CAAE,kBAAiBJ,aAAc,eAAc,CAAC;MAC7D;MAEA,IAAI,OAAOC,oBAAoB,KAAK,QAAQ,EAAE;QAC5C,MAAMG,KAAK,CAAE,0BAAyBH,oBAAqB,eAAc,CAAC;MAC5E;MAEA,IAAI,CAACD,aAAa,GAAGA,aAAa;MAClC,IAAI,CAACC,oBAAoB,GAAGA,oBAAoB;IAClD;IAEAI,gBAAgBA,CAAA,EAAG;MACjB,IAAI,CAACC,iBAAiB,CAAC,CAAC;MACxB,OAAO,IAAI;IACb;IAEAC,eAAeA,CAAA,EAAG;MAChB,OAAQ,IAAG,IAAI,CAACN,oBAAqB,GAAE;IACzC;IAEAO,mBAAmBA,CAAA,EAAG;MACpB,OAAO,IAAI,CAACR,aAAa;IAC3B;IAEAS,KAAKA,CAAA,EAAG;MACN,OAAO,IAAIZ,YAAY,CACrB,IAAI,CAACG,aAAa,EAClB,IAAI,CAACC,oBAAoB,EACzB,IAAI,CAACC,WACP,CAAC;IACH;EACF;EAACQ,QAAA,CAAAb,YAAA,GAAAA,YAAA;AAAA"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { ConditionField } from './condition-field';
|
2
2
|
import { ConditionAbstract } from './condition-abstract';
|
3
3
|
import { ConditionValue, RelativeTimeValue } from './condition-values';
|
4
|
-
import { Coordinator } from './
|
4
|
+
import { Coordinator } from './enums';
|
5
5
|
export declare class Condition extends ConditionAbstract {
|
6
6
|
field: ConditionField;
|
7
7
|
operator: string;
|