law-common 10.45.3-beta.1 → 10.45.3-beta.10

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.
@@ -1,8 +1,4 @@
1
1
  import { EntityEnum, EntityIndexMap, VirtualEntityEnum } from "../interface/entity.utils.interface";
2
- export declare enum RelationType {
3
- ONE = "one",
4
- MANY = "many"
5
- }
6
2
  export declare abstract class BaseEntityModel<T extends EntityEnum | VirtualEntityEnum> {
7
3
  readonly entityName: T;
8
4
  constructor(entityName: T);
@@ -1,11 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseEntityModel = exports.RelationType = void 0;
4
- var RelationType;
5
- (function (RelationType) {
6
- RelationType["ONE"] = "one";
7
- RelationType["MANY"] = "many";
8
- })(RelationType || (exports.RelationType = RelationType = {}));
3
+ exports.BaseEntityModel = void 0;
4
+ // @ts-nocheck
5
+ const relation_type_enum_1 = require("../enums/relation-type.enum");
9
6
  class BaseEntityModel {
10
7
  constructor(entityName) {
11
8
  this.entityName = entityName;
@@ -16,7 +13,7 @@ class BaseEntityModel {
16
13
  const relatedMappingKey = relationConfig.mapKeyConfig.relationKey;
17
14
  const thisKey = relationConfig.key;
18
15
  // debugger;
19
- if (relationConfig.relation === RelationType.ONE) {
16
+ if (relationConfig.relation === relation_type_enum_1.RelationType.ONE) {
20
17
  const relatedEntitiesIndex = entityIndexMap[relationConfig.name] || {};
21
18
  if (Object.is(relatedEntitiesIndex, null))
22
19
  continue;
@@ -31,7 +28,9 @@ class BaseEntityModel {
31
28
  console.warn(`[populateRelationsByIndex] Missing child key "${childKey}" in parent "${parentKey}" on entity "${this.entityName}". Parent value:`, this[parentKey]);
32
29
  continue;
33
30
  }
34
- foundRelatedEntities = [relatedEntitiesIndex[this[parentKey][childKey]]];
31
+ foundRelatedEntities = [
32
+ relatedEntitiesIndex[this[parentKey][childKey]],
33
+ ];
35
34
  }
36
35
  else {
37
36
  // foundRelatedEntities = relatedEntities[this[thisKey]] ? [relatedEntities[this[thisKey]]] : [];
@@ -57,7 +56,7 @@ class BaseEntityModel {
57
56
  }
58
57
  this[thisKey] = foundRelatedEntities[0];
59
58
  }
60
- else if (relationConfig.relation === RelationType.MANY) {
59
+ else if (relationConfig.relation === relation_type_enum_1.RelationType.MANY) {
61
60
  this[thisKey] = [];
62
61
  const relatedEntities = entityIndexMap[relationConfig.name] || {};
63
62
  for (const relatedEntity of Object.values(relatedEntities)) {
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BillingTransactionEntityModel = void 0;
4
4
  const billing_transaction_status_enum_1 = require("../enums/billing-transaction-status.enum");
5
5
  const billing_transaction_enum_1 = require("../enums/billing.transaction.enum");
6
+ const relation_type_enum_1 = require("../enums/relation-type.enum");
6
7
  const entity_utils_interface_1 = require("../interface/entity.utils.interface");
7
8
  const base_entity_model_1 = require("./base.entity.model");
8
9
  class BillingTransactionEntityModel extends base_entity_model_1.BaseEntityModel {
@@ -34,7 +35,7 @@ exports.BillingTransactionEntityModel = BillingTransactionEntityModel;
34
35
  BillingTransactionEntityModel.relationConfigs = [
35
36
  {
36
37
  name: entity_utils_interface_1.EntityEnum.USER,
37
- relation: base_entity_model_1.RelationType.ONE,
38
+ relation: relation_type_enum_1.RelationType.ONE,
38
39
  key: "createdByUser",
39
40
  mapKeyConfig: {
40
41
  relationKey: "id",
@@ -43,7 +44,7 @@ BillingTransactionEntityModel.relationConfigs = [
43
44
  },
44
45
  {
45
46
  name: entity_utils_interface_1.EntityEnum.USER,
46
- relation: base_entity_model_1.RelationType.ONE,
47
+ relation: relation_type_enum_1.RelationType.ONE,
47
48
  key: "updatedByUser",
48
49
  mapKeyConfig: {
49
50
  relationKey: "id",
@@ -52,7 +53,7 @@ BillingTransactionEntityModel.relationConfigs = [
52
53
  },
53
54
  {
54
55
  name: entity_utils_interface_1.EntityEnum.BANK,
55
- relation: base_entity_model_1.RelationType.ONE,
56
+ relation: relation_type_enum_1.RelationType.ONE,
56
57
  key: "bank",
57
58
  mapKeyConfig: {
58
59
  relationKey: "id",
@@ -61,7 +62,7 @@ BillingTransactionEntityModel.relationConfigs = [
61
62
  },
62
63
  {
63
64
  name: entity_utils_interface_1.EntityEnum.BILLING,
64
- relation: base_entity_model_1.RelationType.ONE,
65
+ relation: relation_type_enum_1.RelationType.ONE,
65
66
  key: "billing",
66
67
  mapKeyConfig: {
67
68
  relationKey: "id",
@@ -10,30 +10,30 @@ exports.entityMapToEntityIndexMap = entityMapToEntityIndexMap;
10
10
  exports.parseEntitiesWithoutModels = parseEntitiesWithoutModels;
11
11
  exports.removeEntityById = removeEntityById;
12
12
  const entity_utils_interface_1 = require("../interface/entity.utils.interface");
13
+ const address_book_model_1 = require("./address_book.model");
13
14
  const bank_entity_model_1 = require("./bank.entity.model");
14
15
  const base_entity_model_1 = require("./base.entity.model");
15
16
  const billing_reimbursement_expense_entity_model_1 = require("./billing-reimbursement-expense.entity.model");
16
17
  const billing_timesheet_entity_model_1 = require("./billing-timesheet.entity.model");
18
+ const billing_transaction_model_1 = require("./billing-transaction.model");
17
19
  const billing_entity_model_1 = require("./billing.entity.model");
18
20
  const client_affiliate_entity_model_1 = require("./client-affiliate.entity.model");
19
21
  const client_entity_model_1 = require("./client.entity.model");
22
+ const configuration_model_1 = require("./configuration.model");
23
+ const country_entity_model_1 = require("./country.entity.model");
24
+ const gst_rate_entity_model_1 = require("./gst_rate.entity.model");
20
25
  const holiday_entity_model_1 = require("./holiday.entity.model");
21
26
  const leave_entity_model_1 = require("./leave.entity.model");
22
27
  const leave_count_entity_model_1 = require("./leave_count.entity.model");
23
- const configuration_model_1 = require("./configuration.model");
28
+ const organization_type_entity_model_1 = require("./organization_type.entity.model");
24
29
  const project_user_mapping_entity_model_1 = require("./project-user-mapping.entity.model");
25
30
  const project_entity_model_1 = require("./project.entity.model");
26
31
  const reimbursement_expense_entity_model_1 = require("./reimbursement-expense.entity.model");
27
32
  const reimbursement_entity_model_1 = require("./reimbursement.entity.model");
33
+ const state_entity_model_1 = require("./state.entity.model");
28
34
  const task_entity_model_1 = require("./task.entity.model");
29
35
  const timesheet_entity_model_1 = require("./timesheet.entity.model");
30
36
  const user_entity_model_1 = require("./user.entity.model");
31
- const country_entity_model_1 = require("./country.entity.model");
32
- const address_book_model_1 = require("./address_book.model");
33
- const billing_transaction_model_1 = require("./billing-transaction.model");
34
- const state_entity_model_1 = require("./state.entity.model");
35
- const gst_rate_entity_model_1 = require("./gst_rate.entity.model");
36
- const organization_type_entity_model_1 = require("./organization_type.entity.model");
37
37
  function mapToIndex(entityMap) {
38
38
  return Object.keys(entityMap).reduce((acc, key) => {
39
39
  // @ts-ignore
@@ -92,17 +92,18 @@ function entityMapToModels(entityMap) {
92
92
  if (!(entityName in exports.entityEnumToEntityModel)) {
93
93
  throw new Error(`Unknown entity: ${entityName}`);
94
94
  }
95
- entityMap[entityName] = entityMap[entityName].map((entity) =>
95
+ entityMap[entityName] = entityMap[entityName].map((entity) => exports.entityEnumToEntityModel[entityName](
96
96
  // @ts-ignore
97
- exports.entityEnumToEntityModel[entityName](entity));
97
+ entity));
98
98
  }
99
99
  }
100
100
  function parseEntities(json, baseEntity, entityMap) {
101
- var _a;
102
101
  if (!(baseEntity in exports.entityEnumToEntityModel)) {
103
102
  throw new Error(`Unknown entity: ${baseEntity}`);
104
103
  }
105
- entityMap[baseEntity] = ((_a = json["baseEntities"]) !== null && _a !== void 0 ? _a : []).map(
104
+ entityMap[baseEntity] = ((entityMap[baseEntity] && entityMap[baseEntity].length > 0
105
+ ? [...entityMap[baseEntity], ...json["baseEntities"]]
106
+ : json["baseEntities"]) || []).map(
106
107
  // @ts-ignore
107
108
  (e) => exports.entityEnumToEntityModel[baseEntity](e));
108
109
  if (json["relatedEntities"]) {
@@ -162,9 +163,10 @@ class EntityModelRelationHelper {
162
163
  if (!(entityName in exports.entityEnumToEntityModel)) {
163
164
  throw new Error(`Unknown entity: ${entityName}`);
164
165
  }
165
- this.entityModelMap[entityName] = this.entityMap[entityName].map((entity) =>
166
- // @ts-ignore
167
- exports.entityEnumToEntityModel[entityName](entity));
166
+ this.entityModelMap[entityName] =
167
+ this.entityMap[entityName].map((entity) => exports.entityEnumToEntityModel[entityName
168
+ // @ts-ignore
169
+ ](entity));
168
170
  }
169
171
  return this;
170
172
  }
@@ -193,7 +195,8 @@ class EntityModelRelationHelper {
193
195
  }
194
196
  populateRelationsByEntityEnum(entityEnum) {
195
197
  for (const key of Object.keys(this.entityModelIndexMap[entityEnum] || {})) {
196
- const entityModel = this.entityModelIndexMap[entityEnum][key];
198
+ const entityModel = this
199
+ .entityModelIndexMap[entityEnum][key];
197
200
  entityModel.populateRelationsByIndex(this.entityModelIndexMap);
198
201
  }
199
202
  }
@@ -202,9 +205,12 @@ class EntityModelRelationHelper {
202
205
  }
203
206
  addEntityModel(entityModel, config = { populateRelations: false }) {
204
207
  const entityEnum = entityModel.entityName;
205
- this.entityModelIndexMap[entityEnum] = this.entityModelIndexMap[entityEnum] || {};
208
+ this.entityModelIndexMap[entityEnum] =
209
+ this.entityModelIndexMap[entityEnum] || {};
206
210
  // @ts-ignore
207
- this.entityModelIndexMap[entityEnum][entityModel.id] = entityModel;
211
+ this.entityModelIndexMap[entityEnum][entityModel.id] =
212
+ // @ts-ignore
213
+ entityModel;
208
214
  if (config.populateRelations) {
209
215
  this.populateRelationsByEntityModel(entityModel);
210
216
  }
@@ -219,9 +225,12 @@ class EntityModelRelationHelper {
219
225
  }
220
226
  updateEntityModel(entityModel, config = { populateRelations: false }) {
221
227
  const entityEnum = entityModel.entityName;
222
- this.entityModelIndexMap[entityEnum] = this.entityModelIndexMap[entityEnum] || {};
228
+ this.entityModelIndexMap[entityEnum] =
229
+ this.entityModelIndexMap[entityEnum] || {};
223
230
  // @ts-ignore
224
- this.entityModelIndexMap[entityEnum][entityModel.id] = entityModel;
231
+ this.entityModelIndexMap[entityEnum][entityModel.id] =
232
+ // @ts-ignore
233
+ entityModel;
225
234
  if (config.populateRelations) {
226
235
  this.populateRelationsByEntityModel(entityModel);
227
236
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "law-common",
3
- "version": "10.45.3-beta.1",
3
+ "version": "10.45.3-beta.10",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "files": [