@servicelabsco/nestjs-utility-services 1.2.106 → 1.2.107

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.
@@ -8,6 +8,9 @@ export * from './generic.show.param.dto';
8
8
  export * from './group.param.dto';
9
9
  export * from './index.column.dto';
10
10
  export * from './index.params.dto';
11
+ export * from './json.condition.settings.dto';
12
+ export * from './json.field.condition.dto';
13
+ export * from './json.field.rule.dto';
11
14
  export * from './key.value.param.dto';
12
15
  export * from './layout.column.db.dto';
13
16
  export * from './meta.data.dto';
@@ -24,6 +24,9 @@ __exportStar(require("./generic.show.param.dto"), exports);
24
24
  __exportStar(require("./group.param.dto"), exports);
25
25
  __exportStar(require("./index.column.dto"), exports);
26
26
  __exportStar(require("./index.params.dto"), exports);
27
+ __exportStar(require("./json.condition.settings.dto"), exports);
28
+ __exportStar(require("./json.field.condition.dto"), exports);
29
+ __exportStar(require("./json.field.rule.dto"), exports);
27
30
  __exportStar(require("./key.value.param.dto"), exports);
28
31
  __exportStar(require("./layout.column.db.dto"), exports);
29
32
  __exportStar(require("./meta.data.dto"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/dtos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AAAA,6DAA2C;AAAA,4DAA0C;AAAA,uDAAqC;AAAA,0DAAwC;AAAA,4DAA0C;AAAA,2DAAyC;AAAA,oDAAkC;AAAA,qDAAmC;AAAA,qDAAmC;AAAA,wDAAsC;AAAA,yDAAuC;AAAA,kDAAgC;AAAA,4DAA0C;AAAA,mDAAiC;AAAA,sDAAoC;AAAA,oDAAkC;AAAA,4DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/dtos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AAAA,6DAA2C;AAAA,4DAA0C;AAAA,uDAAqC;AAAA,0DAAwC;AAAA,4DAA0C;AAAA,2DAAyC;AAAA,oDAAkC;AAAA,qDAAmC;AAAA,qDAAmC;AAAA,gEAA8C;AAAA,6DAA2C;AAAA,wDAAsC;AAAA,wDAAsC;AAAA,yDAAuC;AAAA,kDAAgC;AAAA,4DAA0C;AAAA,mDAAiC;AAAA,sDAAoC;AAAA,oDAAkC;AAAA,4DAAyC"}
@@ -0,0 +1,6 @@
1
+ import { JsonFieldConditionDto } from './json.field.condition.dto';
2
+ export declare class JsonConditionSettingsDto extends JsonFieldConditionDto {
3
+ transformValueFn?: (value: any, reference: any, property: string) => any;
4
+ previousValueFn?: (reference: any, property: string) => any;
5
+ log?: (str: string) => void;
6
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonConditionSettingsDto = void 0;
4
+ const json_field_condition_dto_1 = require("./json.field.condition.dto");
5
+ class JsonConditionSettingsDto extends json_field_condition_dto_1.JsonFieldConditionDto {
6
+ }
7
+ exports.JsonConditionSettingsDto = JsonConditionSettingsDto;
8
+ //# sourceMappingURL=json.condition.settings.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.condition.settings.dto.js","sourceRoot":"","sources":["../../../src/common/dtos/json.condition.settings.dto.ts"],"names":[],"mappings":";;;AAAA,yEAAmE;AAEnE,MAAa,wBAAyB,SAAQ,gDAAqB;CAIlE;AAJD,4DAIC"}
@@ -0,0 +1,5 @@
1
+ import { JsonFieldRuleDto } from './json.field.rule.dto';
2
+ export declare class JsonFieldConditionDto {
3
+ rules: JsonFieldRuleDto[];
4
+ combinator?: 'and' | 'or';
5
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonFieldConditionDto = void 0;
4
+ class JsonFieldConditionDto {
5
+ }
6
+ exports.JsonFieldConditionDto = JsonFieldConditionDto;
7
+ //# sourceMappingURL=json.field.condition.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.field.condition.dto.js","sourceRoot":"","sources":["../../../src/common/dtos/json.field.condition.dto.ts"],"names":[],"mappings":";;;AAEA,MAAa,qBAAqB;CAGjC;AAHD,sDAGC"}
@@ -0,0 +1,9 @@
1
+ import { JsonFieldConditionDto } from './json.field.condition.dto';
2
+ type JsonConditionOptions = '=' | '!=' | '>' | '>=' | '<' | '<=' | 'null' | 'not null' | 'all' | 'some' | 'none' | 'crosses' | 'startsWith' | 'endsWith' | 'contains' | 'not contains' | 'notContains' | 'in' | 'notIn' | 'matches' | 'not matches' | 'like' | 'between' | 'notBetween' | 'notNull';
3
+ export declare class JsonFieldRuleDto extends JsonFieldConditionDto {
4
+ field: string;
5
+ operator: JsonConditionOptions;
6
+ value: any;
7
+ required?: boolean;
8
+ }
9
+ export {};
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonFieldRuleDto = void 0;
4
+ const json_field_condition_dto_1 = require("./json.field.condition.dto");
5
+ class JsonFieldRuleDto extends json_field_condition_dto_1.JsonFieldConditionDto {
6
+ }
7
+ exports.JsonFieldRuleDto = JsonFieldRuleDto;
8
+ //# sourceMappingURL=json.field.rule.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.field.rule.dto.js","sourceRoot":"","sources":["../../../src/common/dtos/json.field.rule.dto.ts"],"names":[],"mappings":";;;AAAA,yEAAmE;AA6BnE,MAAa,gBAAiB,SAAQ,gDAAqB;CAK1D;AALD,4CAKC"}
@@ -8,6 +8,7 @@ import { GenericIndexParamDto } from './dtos/generic.index.param.dto';
8
8
  import { GenericShowParamDto } from './dtos/generic.show.param.dto';
9
9
  import { GroupParamDto } from './dtos/group.param.dto';
10
10
  import { IndexColumnDto } from './dtos/index.column.dto';
11
+ import { JsonFieldConditionDto } from './dtos/json.field.condition.dto';
11
12
  import { KeyValueParamDto } from './dtos/key.value.param.dto';
12
13
  import { LayoutColumnDbDto } from './dtos/layout.column.db.dto';
13
14
  import { MetaDataDto } from './dtos/meta.data.dto';
@@ -31,7 +32,7 @@ import { ReportListManager } from './libraries/report.list.manager';
31
32
  import { SeederUtility } from './libraries/seeder.utility';
32
33
  declare const es6Classes: {
33
34
  adapters: (typeof RedisIoAdapter)[];
34
- dtos: (typeof MetaDataDto | typeof DatabaseEventDto | typeof LayoutColumnDbDto | typeof GenericIndexParamDto | typeof RecordDataManagerDto | typeof RecordTabDto | typeof AggregationParamDto | typeof GroupParamDto | typeof ReportBodyDto | typeof ReportDataManagerDto | typeof CaptureRecordIndexDto | typeof CaptureRecordShowDto | typeof ForeignMigrationDto | typeof GenericShowParamDto | typeof IndexColumnDto | typeof KeyValueParamDto | typeof RenameColumnDto)[];
35
+ dtos: (typeof MetaDataDto | typeof DatabaseEventDto | typeof LayoutColumnDbDto | typeof GenericIndexParamDto | typeof RecordDataManagerDto | typeof RecordTabDto | typeof AggregationParamDto | typeof GroupParamDto | typeof ReportBodyDto | typeof ReportDataManagerDto | typeof CaptureRecordIndexDto | typeof CaptureRecordShowDto | typeof ForeignMigrationDto | typeof GenericShowParamDto | typeof IndexColumnDto | typeof JsonFieldConditionDto | typeof KeyValueParamDto | typeof RenameColumnDto)[];
35
36
  exceptions: (typeof AccessException)[];
36
37
  libraries: (typeof CommonJob | typeof GenericIndexParser | typeof GenericShowParser | typeof DataManager | typeof ListManager | typeof RecordManager | typeof ReportDataManager | typeof ReportListManager | typeof BaseMigrationUtility | typeof CommonConsumer | typeof DatabaseEventEvaluator | typeof SeederUtility)[];
37
38
  };
@@ -11,6 +11,9 @@ const generic_show_param_dto_1 = require("./dtos/generic.show.param.dto");
11
11
  const group_param_dto_1 = require("./dtos/group.param.dto");
12
12
  const index_column_dto_1 = require("./dtos/index.column.dto");
13
13
  const index_params_dto_1 = require("./dtos/index.params.dto");
14
+ const json_condition_settings_dto_1 = require("./dtos/json.condition.settings.dto");
15
+ const json_field_condition_dto_1 = require("./dtos/json.field.condition.dto");
16
+ const json_field_rule_dto_1 = require("./dtos/json.field.rule.dto");
14
17
  const key_value_param_dto_1 = require("./dtos/key.value.param.dto");
15
18
  const layout_column_db_dto_1 = require("./dtos/layout.column.db.dto");
16
19
  const meta_data_dto_1 = require("./dtos/meta.data.dto");
@@ -42,6 +45,7 @@ const entity_evaluator_1 = require("./libraries/entity.evaluator");
42
45
  const generic_index_parser_1 = require("./libraries/generic.index.parser");
43
46
  const generic_show_parser_1 = require("./libraries/generic.show.parser");
44
47
  const hash_1 = require("./libraries/hash");
48
+ const json_evaluator_1 = require("./libraries/json.evaluator");
45
49
  const list_manager_1 = require("./libraries/list.manager");
46
50
  const migration_utility_1 = require("./libraries/migration.utility");
47
51
  const platform_utility_1 = require("./libraries/platform.utility");
@@ -64,6 +68,9 @@ const es6Classes = {
64
68
  group_param_dto_1.GroupParamDto,
65
69
  index_column_dto_1.IndexColumnDto,
66
70
  index_params_dto_1.IndexParamsDto,
71
+ json_condition_settings_dto_1.JsonConditionSettingsDto,
72
+ json_field_condition_dto_1.JsonFieldConditionDto,
73
+ json_field_rule_dto_1.JsonFieldRuleDto,
67
74
  key_value_param_dto_1.KeyValueParamDto,
68
75
  layout_column_db_dto_1.LayoutColumnDbDto,
69
76
  meta_data_dto_1.MetaDataDto,
@@ -92,6 +99,7 @@ const es6Classes = {
92
99
  generic_index_parser_1.GenericIndexParser,
93
100
  generic_show_parser_1.GenericShowParser,
94
101
  hash_1.Hash,
102
+ json_evaluator_1.JsonEvaluator,
95
103
  list_manager_1.ListManager,
96
104
  migration_utility_1.MigrationUtility,
97
105
  platform_utility_1.PlatformUtility,
@@ -1 +1 @@
1
- {"version":3,"file":"es6.classes.js","sourceRoot":"","sources":["../../src/common/es6.classes.ts"],"names":[],"mappings":";;AAAA,kEAA6D;AAC7D,wEAAmE;AACnE,8EAAwE;AACxE,4EAAsE;AACtE,kEAA6D;AAC7D,wEAAmE;AACnE,4EAAsE;AACtE,0EAAoE;AACpE,4DAAuD;AACvD,8DAAyD;AACzD,8DAAyD;AACzD,oEAA8D;AAC9D,sEAAgE;AAChE,wDAAmD;AACnD,4EAAsE;AACtE,0DAAqD;AACrD,gEAA2D;AAC3D,4DAAuD;AACvD,4EAAsE;AACtE,oEAAgE;AAChE,gEAA4D;AAC5D,8EAA0E;AAC1E,oFAA8E;AAC9E,0EAAsE;AACtE,gFAA4E;AAC5E,2CAAwC;AACxC,+EAA0E;AAC1E,2DAAuD;AACvD,iEAA6D;AAC7D,6DAAyD;AACzD,uDAAmD;AACnD,qEAAgE;AAChE,yEAAoE;AACpE,qEAAiE;AACjE,2DAAuD;AACvD,2DAAuD;AACvD,mFAA8E;AAC9E,qDAAiD;AACjD,mEAA+D;AAC/D,2EAAsE;AACtE,yEAAoE;AACpE,2CAAwC;AACxC,2DAAuD;AACvD,qEAAiE;AACjE,mEAA+D;AAC/D,+DAA2D;AAC3D,uEAAkE;AAClE,yEAAoE;AACpE,yEAAoE;AACpE,qFAAgF;AAChF,+DAA2D;AAE3D,MAAM,UAAU,GAAG;IACf,QAAQ,EAAE,CAAC,iCAAc,CAAC;IAC1B,IAAI,EAAE;QACF,2CAAmB;QACnB,gDAAqB;QACrB,8CAAoB;QACpB,qCAAgB;QAChB,2CAAmB;QACnB,8CAAoB;QACpB,4CAAmB;QACnB,+BAAa;QACb,iCAAc;QACd,iCAAc;QACd,sCAAgB;QAChB,wCAAiB;QACjB,2BAAW;QACX,8CAAoB;QACpB,6BAAY;QACZ,mCAAe;QACf,+BAAa;QACb,8CAAoB;KACvB;IACD,UAAU,EAAE,CAAC,kCAAe,EAAE,8BAAa,EAAE,4CAAoB,EAAE,gDAAqB,EAAE,wCAAkB,EAAE,8CAAqB,CAAC;IACpI,SAAS,EAAE;QACP,WAAI;QACJ,6CAAoB;QACpB,0BAAW;QACX,gCAAc;QACd,4BAAY;QACZ,sBAAS;QACT,mCAAe;QACf,uCAAiB;QACjB,oCAAgB;QAChB,0BAAW;QACX,0BAAW;QACX,iDAAsB;QACtB,oBAAQ;QACR,kCAAe;QACf,yCAAkB;QAClB,uCAAiB;QACjB,WAAI;QACJ,0BAAW;QACX,oCAAgB;QAChB,kCAAe;QACf,8BAAa;QACb,qCAAgB;QAChB,uCAAiB;QACjB,uCAAiB;QACjB,mDAAuB;QACvB,8BAAa;KAChB;CACJ,CAAC;AAEF,kBAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"es6.classes.js","sourceRoot":"","sources":["../../src/common/es6.classes.ts"],"names":[],"mappings":";;AAAA,kEAA6D;AAC7D,wEAAmE;AACnE,8EAAwE;AACxE,4EAAsE;AACtE,kEAA6D;AAC7D,wEAAmE;AACnE,4EAAsE;AACtE,0EAAoE;AACpE,4DAAuD;AACvD,8DAAyD;AACzD,8DAAyD;AACzD,oFAA8E;AAC9E,8EAAwE;AACxE,oEAA8D;AAC9D,oEAA8D;AAC9D,sEAAgE;AAChE,wDAAmD;AACnD,4EAAsE;AACtE,0DAAqD;AACrD,gEAA2D;AAC3D,4DAAuD;AACvD,4EAAsE;AACtE,oEAAgE;AAChE,gEAA4D;AAC5D,8EAA0E;AAC1E,oFAA8E;AAC9E,0EAAsE;AACtE,gFAA4E;AAC5E,2CAAwC;AACxC,+EAA0E;AAC1E,2DAAuD;AACvD,iEAA6D;AAC7D,6DAAyD;AACzD,uDAAmD;AACnD,qEAAgE;AAChE,yEAAoE;AACpE,qEAAiE;AACjE,2DAAuD;AACvD,2DAAuD;AACvD,mFAA8E;AAC9E,qDAAiD;AACjD,mEAA+D;AAC/D,2EAAsE;AACtE,yEAAoE;AACpE,2CAAwC;AACxC,+DAA2D;AAC3D,2DAAuD;AACvD,qEAAiE;AACjE,mEAA+D;AAC/D,+DAA2D;AAC3D,uEAAkE;AAClE,yEAAoE;AACpE,yEAAoE;AACpE,qFAAgF;AAChF,+DAA2D;AAE3D,MAAM,UAAU,GAAG;IACf,QAAQ,EAAE,CAAC,iCAAc,CAAC;IAC1B,IAAI,EAAE;QACF,2CAAmB;QACnB,gDAAqB;QACrB,8CAAoB;QACpB,qCAAgB;QAChB,2CAAmB;QACnB,8CAAoB;QACpB,4CAAmB;QACnB,+BAAa;QACb,iCAAc;QACd,iCAAc;QACd,sDAAwB;QACxB,gDAAqB;QACrB,sCAAgB;QAChB,sCAAgB;QAChB,wCAAiB;QACjB,2BAAW;QACX,8CAAoB;QACpB,6BAAY;QACZ,mCAAe;QACf,+BAAa;QACb,8CAAoB;KACvB;IACD,UAAU,EAAE,CAAC,kCAAe,EAAE,8BAAa,EAAE,4CAAoB,EAAE,gDAAqB,EAAE,wCAAkB,EAAE,8CAAqB,CAAC;IACpI,SAAS,EAAE;QACP,WAAI;QACJ,6CAAoB;QACpB,0BAAW;QACX,gCAAc;QACd,4BAAY;QACZ,sBAAS;QACT,mCAAe;QACf,uCAAiB;QACjB,oCAAgB;QAChB,0BAAW;QACX,0BAAW;QACX,iDAAsB;QACtB,oBAAQ;QACR,kCAAe;QACf,yCAAkB;QAClB,uCAAiB;QACjB,WAAI;QACJ,8BAAa;QACb,0BAAW;QACX,oCAAgB;QAChB,kCAAe;QACf,8BAAa;QACb,qCAAgB;QAChB,uCAAiB;QACjB,uCAAiB;QACjB,mDAAuB;QACvB,8BAAa;KAChB;CACJ,CAAC;AAEF,kBAAe,UAAU,CAAC"}
@@ -16,6 +16,7 @@ export * from './entity.evaluator';
16
16
  export * from './generic.index.parser';
17
17
  export * from './generic.show.parser';
18
18
  export * from './hash';
19
+ export * from './json.evaluator';
19
20
  export * from './list.manager';
20
21
  export * from './migration.utility';
21
22
  export * from './platform.utility';
@@ -32,6 +32,7 @@ __exportStar(require("./entity.evaluator"), exports);
32
32
  __exportStar(require("./generic.index.parser"), exports);
33
33
  __exportStar(require("./generic.show.parser"), exports);
34
34
  __exportStar(require("./hash"), exports);
35
+ __exportStar(require("./json.evaluator"), exports);
35
36
  __exportStar(require("./list.manager"), exports);
36
37
  __exportStar(require("./migration.utility"), exports);
37
38
  __exportStar(require("./platform.utility"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/libraries/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AAAA,uDAAqC;AAAA,2DAAyC;AAAA,iDAA+B;AAAA,oDAAkC;AAAA,kDAAgC;AAAA,+CAA6B;AAAA,sDAAoC;AAAA,wDAAsC;AAAA,sDAAoC;AAAA,iDAA+B;AAAA,iDAA+B;AAAA,6DAA2C;AAAA,8CAA4B;AAAA,qDAAmC;AAAA,yDAAuC;AAAA,wDAAsC;AAAA,yCAAuB;AAAA,iDAA+B;AAAA,sDAAoC;AAAA,qDAAmC;AAAA,mDAAiC;AAAA,uDAAqC;AAAA,wDAAsC;AAAA,wDAAsC;AAAA,8DAA4C;AAAA,mDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/libraries/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AAAA,uDAAqC;AAAA,2DAAyC;AAAA,iDAA+B;AAAA,oDAAkC;AAAA,kDAAgC;AAAA,+CAA6B;AAAA,sDAAoC;AAAA,wDAAsC;AAAA,sDAAoC;AAAA,iDAA+B;AAAA,iDAA+B;AAAA,6DAA2C;AAAA,8CAA4B;AAAA,qDAAmC;AAAA,yDAAuC;AAAA,wDAAsC;AAAA,yCAAuB;AAAA,mDAAiC;AAAA,iDAA+B;AAAA,sDAAoC;AAAA,qDAAmC;AAAA,mDAAiC;AAAA,uDAAqC;AAAA,wDAAsC;AAAA,wDAAsC;AAAA,8DAA4C;AAAA,mDAAgC"}
@@ -0,0 +1,10 @@
1
+ import { JsonConditionSettingsDto } from '../dtos/json.condition.settings.dto';
2
+ export declare class JsonEvaluator {
3
+ validate(settings: JsonConditionSettingsDto, reference: any): boolean;
4
+ private getObjectProperty;
5
+ private toString;
6
+ private getDateValue;
7
+ private isLiteralDateColumn;
8
+ private getLiteralDateValue;
9
+ private isValidDate;
10
+ }
@@ -0,0 +1,250 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonEvaluator = void 0;
4
+ const date_fns_1 = require("date-fns");
5
+ const locale_1 = require("date-fns/locale");
6
+ class JsonEvaluator {
7
+ validate(settings, reference) {
8
+ if (!(settings && Array.isArray(settings.rules)))
9
+ return false;
10
+ let debugStr = '';
11
+ let requiredPassed = 0;
12
+ let normalPassed = 0;
13
+ settings.rules.map((rule, index) => {
14
+ let result;
15
+ if (rule.combinator) {
16
+ result = this.validate(rule, reference);
17
+ if (result) {
18
+ if (rule.required)
19
+ requiredPassed += 1;
20
+ else
21
+ normalPassed += 1;
22
+ }
23
+ return;
24
+ }
25
+ let error;
26
+ if (!rule.field) {
27
+ error = new Error(`field not specified for rule ${index}`);
28
+ error.rule = rule;
29
+ throw error;
30
+ }
31
+ let value = this.getObjectProperty(reference, rule.field);
32
+ if (rule.field.includes('[]')) {
33
+ const [topPath, nPath] = rule.field.split('[]');
34
+ const nestedPath = nPath.substring(1);
35
+ value = this.getObjectProperty(reference, topPath).map((item) => (nestedPath ? this.getObjectProperty(item, nestedPath) : item));
36
+ }
37
+ let targetValue = rule.value;
38
+ const targetArrayValue = Array.isArray(targetValue)
39
+ ? targetValue
40
+ : this.toString(targetValue)
41
+ .replaceAll('\\', '')
42
+ .split(',')
43
+ .map((item) => item.trim());
44
+ if (typeof settings.transformValueFn === 'function') {
45
+ targetValue = settings.transformValueFn(targetValue, reference, rule.field);
46
+ }
47
+ let altComparison = null;
48
+ if (typeof value === 'boolean' && (typeof targetValue === 'string' || targetValue instanceof String)) {
49
+ if (targetValue.toLowerCase() === 'false')
50
+ altComparison = false;
51
+ if (targetValue.toLowerCase() === 'true')
52
+ altComparison = true;
53
+ }
54
+ switch (rule.operator) {
55
+ case '=':
56
+ result = value === targetValue;
57
+ if (this.isValidDate(value)) {
58
+ result = (0, date_fns_1.isEqual)(this.getDateValue(value), this.getDateValue(targetValue));
59
+ }
60
+ if (this.isLiteralDateColumn(targetValue) && this.isValidDate(value)) {
61
+ result = (0, date_fns_1.isEqual)((0, date_fns_1.startOfDay)(this.getDateValue(value)), (0, date_fns_1.startOfDay)(this.getLiteralDateValue(targetValue, reference)));
62
+ }
63
+ if (altComparison !== null)
64
+ result = result || value === altComparison;
65
+ break;
66
+ case '!=':
67
+ result = value !== targetValue;
68
+ if (this.isValidDate(value)) {
69
+ result = !(0, date_fns_1.isEqual)(this.getDateValue(value), this.getDateValue(targetValue));
70
+ }
71
+ if (this.isLiteralDateColumn(targetValue) && this.isValidDate(value)) {
72
+ result = !(0, date_fns_1.isEqual)((0, date_fns_1.startOfDay)(this.getDateValue(value)), (0, date_fns_1.startOfDay)(this.getLiteralDateValue(targetValue, reference)));
73
+ }
74
+ if (altComparison !== null)
75
+ result = result && value !== altComparison;
76
+ break;
77
+ case '>':
78
+ result = value > targetValue;
79
+ if (this.isValidDate(value)) {
80
+ result = (0, date_fns_1.isAfter)(this.getDateValue(value), this.getDateValue(targetValue));
81
+ }
82
+ if (this.isLiteralDateColumn(targetValue) && this.isValidDate(value)) {
83
+ result = (0, date_fns_1.isAfter)(this.getDateValue(value), this.getLiteralDateValue(targetValue, reference));
84
+ }
85
+ break;
86
+ case '>=':
87
+ result = value >= targetValue;
88
+ if (this.isValidDate(value)) {
89
+ result =
90
+ (0, date_fns_1.isAfter)(this.getDateValue(value), this.getDateValue(targetValue)) ||
91
+ (0, date_fns_1.isEqual)(this.getDateValue(value), this.getDateValue(targetValue));
92
+ }
93
+ if (this.isLiteralDateColumn(targetValue) && this.isValidDate(value)) {
94
+ result =
95
+ (0, date_fns_1.isAfter)(this.getDateValue(value), this.getLiteralDateValue(targetValue, reference)) ||
96
+ (0, date_fns_1.isEqual)((0, date_fns_1.startOfDay)(this.getDateValue(value)), (0, date_fns_1.startOfDay)(this.getLiteralDateValue(targetValue, reference)));
97
+ }
98
+ break;
99
+ case '<':
100
+ result = value < targetValue;
101
+ if (this.isValidDate(value)) {
102
+ result = (0, date_fns_1.isBefore)(this.getDateValue(value), this.getDateValue(targetValue));
103
+ }
104
+ if (this.isLiteralDateColumn(targetValue) && this.isValidDate(value)) {
105
+ result = (0, date_fns_1.isBefore)(this.getDateValue(value), this.getLiteralDateValue(targetValue, reference));
106
+ }
107
+ break;
108
+ case '<=':
109
+ result = value <= targetValue;
110
+ if (this.isValidDate(value)) {
111
+ result =
112
+ (0, date_fns_1.isBefore)(this.getDateValue(value), this.getDateValue(targetValue)) ||
113
+ (0, date_fns_1.isEqual)(this.getDateValue(value), this.getDateValue(targetValue));
114
+ }
115
+ if (this.isLiteralDateColumn(targetValue) && this.isValidDate(value)) {
116
+ result =
117
+ (0, date_fns_1.isBefore)(this.getDateValue(value), this.getLiteralDateValue(targetValue, reference)) ||
118
+ (0, date_fns_1.isEqual)((0, date_fns_1.startOfDay)(this.getDateValue(value)), (0, date_fns_1.startOfDay)(this.getLiteralDateValue(targetValue, reference)));
119
+ }
120
+ break;
121
+ case 'startsWith':
122
+ result = this.toString(value).startsWith(targetValue);
123
+ break;
124
+ case 'endsWith':
125
+ result = this.toString(value).endsWith(targetValue);
126
+ break;
127
+ case 'like':
128
+ result = this.toString(value).includes(targetValue);
129
+ break;
130
+ case 'not null':
131
+ result = Boolean(value);
132
+ break;
133
+ case 'notNull':
134
+ result = Boolean(value);
135
+ break;
136
+ case 'null':
137
+ result = !value;
138
+ break;
139
+ case 'matches':
140
+ result = value == this.getObjectProperty(reference, targetValue);
141
+ break;
142
+ case 'not matches':
143
+ result = value != this.getObjectProperty(reference, targetValue);
144
+ break;
145
+ case 'contains':
146
+ global.console.log('targetArrayValue', targetArrayValue);
147
+ result = targetArrayValue.some((targetValue) => targetValue == value);
148
+ break;
149
+ case 'not contains':
150
+ result = !targetArrayValue.some((targetValue) => targetValue == value);
151
+ break;
152
+ case 'all':
153
+ result = Array.isArray(value) && !value.find((v) => v !== targetValue);
154
+ break;
155
+ case 'some':
156
+ result = Array.isArray(value) && value.includes(targetValue);
157
+ break;
158
+ case 'none':
159
+ result = (Array.isArray(value) || value === null || typeof value === 'undefined') && !(value || []).includes(targetValue);
160
+ break;
161
+ case 'crosses': {
162
+ if (typeof settings.previousValueFn !== 'function') {
163
+ throw new Error('Comparison "crosses" selected, but no function supplied to return previous value');
164
+ }
165
+ const lastValue = settings.previousValueFn(reference, rule.field);
166
+ result = targetValue > lastValue && targetValue <= value;
167
+ debugStr = `(${index}) ${rule.field} was ${lastValue} and became ${value}. crossed ${targetValue}? ${result}\n`;
168
+ break;
169
+ }
170
+ case 'between': {
171
+ const between = rule.value.split(',').map((a) => Number(a));
172
+ const val = this.getObjectProperty(reference, rule.field);
173
+ result = val > between[0] && val < between[1];
174
+ break;
175
+ }
176
+ case 'notBetween': {
177
+ const notBetween = rule.value.split(',').map((a) => Number(a));
178
+ const refVal = this.getObjectProperty(reference, rule.field);
179
+ result = refVal <= notBetween[0] || refVal >= notBetween[1];
180
+ break;
181
+ }
182
+ default:
183
+ error = new Error(`Unknown comparison for rule (${rule.operator})`);
184
+ error.rule = rule;
185
+ throw error;
186
+ }
187
+ if (result) {
188
+ if (rule.required)
189
+ requiredPassed += 1;
190
+ else
191
+ normalPassed += 1;
192
+ }
193
+ const unary = ['absent', 'present'].includes(rule.operator);
194
+ debugStr += `(${index}) ${rule.field} (${value}) ${unary ? 'is' : ''} ${rule.operator} ${unary ? '' : targetValue}? ${result}\n`;
195
+ });
196
+ const requiredTotal = settings.rules.reduce((total, rule) => total + (rule.required ? 1 : 0), 0);
197
+ const normalTotal = settings.rules.length - requiredTotal;
198
+ const combinator = settings.combinator || 'or';
199
+ const requiredSatisfied = !requiredTotal || requiredTotal === requiredPassed;
200
+ const normalSatisfied = !normalTotal || (combinator === 'and' ? normalPassed === normalTotal : normalPassed > 0);
201
+ const outcome = normalSatisfied && requiredSatisfied;
202
+ if (normalTotal > 0) {
203
+ debugStr += `Passed ${normalPassed} / ${normalTotal} (need ${combinator}, ${normalSatisfied ? 'pass' : 'fail'})\n`;
204
+ }
205
+ if (requiredTotal > 0)
206
+ debugStr += `Passed ${requiredPassed} / ${requiredTotal} required conditions (${requiredSatisfied ? 'pass' : 'fail'})\n`;
207
+ debugStr += `Result: ${outcome ? 'PASS' : 'FAIL'}`;
208
+ if (settings.log)
209
+ settings.log(debugStr);
210
+ return outcome;
211
+ }
212
+ getObjectProperty(object, path, defVal = undefined) {
213
+ if (typeof path === 'string')
214
+ path = path.split('.');
215
+ if (Array.isArray(path) && path.length < 1)
216
+ return object[path[0]] || defVal;
217
+ return path.reduce((xs, x) => (xs && xs[x] !== undefined ? xs[x] : defVal), object);
218
+ }
219
+ toString(value) {
220
+ return typeof value === 'string' ? value : JSON.stringify(value);
221
+ }
222
+ getDateValue(value) {
223
+ if ((0, date_fns_1.isValid)(new Date(value)))
224
+ return new Date(value);
225
+ return (0, date_fns_1.parse)(value, 'P', new Date(), { locale: locale_1.enIN });
226
+ }
227
+ isLiteralDateColumn(value) {
228
+ return Array.isArray(value) && value.length === 3;
229
+ }
230
+ getLiteralDateValue(value, reference) {
231
+ const [days, direction, selector] = value;
232
+ let date = (0, date_fns_1.startOfDay)(new Date());
233
+ if (selector !== 'today') {
234
+ date = this.getDateValue(this.getObjectProperty(reference, selector));
235
+ }
236
+ if (direction === 'before') {
237
+ date = (0, date_fns_1.subDays)(date, days);
238
+ }
239
+ if (direction === 'after') {
240
+ date = (0, date_fns_1.addDays)(date, days);
241
+ }
242
+ return date;
243
+ }
244
+ isValidDate(value) {
245
+ const parsedDate = this.getDateValue(value);
246
+ return (0, date_fns_1.isValid)(parsedDate);
247
+ }
248
+ }
249
+ exports.JsonEvaluator = JsonEvaluator;
250
+ //# sourceMappingURL=json.evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.evaluator.js","sourceRoot":"","sources":["../../../src/common/libraries/json.evaluator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicelabsco/nestjs-utility-services",
3
- "version": "1.2.106",
3
+ "version": "1.2.107",
4
4
  "description": "NestJS generic packages to support development",
5
5
  "author": "Hemant Kumar Sah <hemantanshu@gmail.com>",
6
6
  "license": "MIT",