law-common 10.26.1-beta.0 → 10.26.1-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.
Files changed (81) hide show
  1. package/dist/src/api/index.d.ts +0 -11
  2. package/dist/src/api/index.js +0 -12
  3. package/dist/src/api/interface/billing.entity.response.d.ts +2 -3
  4. package/dist/src/api/interface/billing.transaction.create.dto.interface.d.ts +7 -2
  5. package/dist/src/api/interface/billing.transaction.entity.response.d.ts +25 -4
  6. package/dist/src/api/interface/billing.transaction.update.dto.interface.d.ts +13 -2
  7. package/dist/src/api/interface/leave.api.d.ts +1 -3
  8. package/dist/src/api/interface/reimbursement.entity.response.d.ts +3 -6
  9. package/dist/src/constants/entity_constants.d.ts +1 -0
  10. package/dist/src/constants/entity_constants.js +2 -1
  11. package/dist/src/entities/enums/billing-transaction-action.enum.d.ts +5 -0
  12. package/dist/src/entities/enums/billing-transaction-action.enum.js +15 -0
  13. package/dist/src/entities/enums/billing-transaction-status.enum.d.ts +6 -0
  14. package/dist/src/entities/enums/billing-transaction-status.enum.js +10 -0
  15. package/dist/src/entities/func/convert-to-common-entity.func.js +8 -2
  16. package/dist/src/entities/index.d.ts +5 -0
  17. package/dist/src/entities/index.js +5 -0
  18. package/dist/src/entities/interface/billing-reimbursement-expense.entity.interface.d.ts +2 -2
  19. package/dist/src/entities/interface/billing-transaction-history.entity.d.ts +7 -0
  20. package/dist/src/entities/interface/billing.entity.interface.d.ts +1 -0
  21. package/dist/src/entities/interface/billing_payment.entity.interface.d.ts +2 -2
  22. package/dist/src/entities/interface/billing_transaction.entity.interface.d.ts +9 -2
  23. package/dist/src/entities/interface/entity.utils.interface.d.ts +19 -9
  24. package/dist/src/entities/interface/entity.utils.interface.js +2 -1
  25. package/dist/src/entities/interface/leave.entity.interface.d.ts +3 -11
  26. package/dist/src/entities/interface/leave.entity.interface.js +1 -1
  27. package/dist/src/entities/interface/reimbursement.entity.interface.d.ts +2 -2
  28. package/dist/src/entities/interface/reimbursement_expense.entity.interface.d.ts +2 -2
  29. package/dist/src/entities/model/base.entity.model.d.ts +8 -2
  30. package/dist/src/entities/model/base.entity.model.js +53 -34
  31. package/dist/src/entities/model/billing-reimbursement-expense.entity.model.d.ts +5 -5
  32. package/dist/src/entities/model/billing-reimbursement-expense.entity.model.js +6 -6
  33. package/dist/src/entities/model/billing-timesheet.entity.model.d.ts +1 -1
  34. package/dist/src/entities/model/billing-timesheet.entity.model.js +1 -1
  35. package/dist/src/entities/model/billing-transaction.model.d.ts +38 -0
  36. package/dist/src/entities/model/billing-transaction.model.js +71 -0
  37. package/dist/src/entities/model/billing.entity.model.d.ts +5 -2
  38. package/dist/src/entities/model/billing.entity.model.js +12 -2
  39. package/dist/src/entities/model/entity.model.interface.d.ts +12 -1
  40. package/dist/src/entities/model/entity.model.interface.js +49 -5
  41. package/dist/src/entities/model/holiday.entity.model.d.ts +14 -1
  42. package/dist/src/entities/model/holiday.entity.model.js +26 -42
  43. package/dist/src/entities/model/leave.entity.model.d.ts +54 -7
  44. package/dist/src/entities/model/leave.entity.model.js +171 -23
  45. package/dist/src/entities/model/leave_count.entity.model.d.ts +19 -0
  46. package/dist/src/entities/model/leave_count.entity.model.js +60 -0
  47. package/dist/src/entities/model/reimbursement-expense.entity.model.d.ts +5 -5
  48. package/dist/src/entities/model/reimbursement-expense.entity.model.js +3 -3
  49. package/dist/src/entities/model/reimbursement.entity.model.d.ts +5 -5
  50. package/dist/src/entities/model/reimbursement.entity.model.js +6 -6
  51. package/dist/src/utils/entity.flow.util.d.ts +32 -0
  52. package/dist/src/utils/entity.flow.util.js +83 -0
  53. package/dist/src/utils/helper.fn.util.d.ts +37 -1
  54. package/dist/src/utils/helper.fn.util.js +53 -0
  55. package/dist/src/utils/index.d.ts +2 -0
  56. package/dist/src/utils/index.js +2 -0
  57. package/dist/src/utils/string.util.d.ts +1 -0
  58. package/dist/src/utils/string.util.js +14 -0
  59. package/package.json +1 -1
  60. package/dist/src/api/interface/bank_history.api.d.ts +0 -3
  61. package/dist/src/api/interface/billing-reimbursement-expense-history.api.d.ts +0 -4
  62. package/dist/src/api/interface/billing-reimbursement-expense-history.api.js +0 -2
  63. package/dist/src/api/interface/billing-reimbursement-expense.api.d.ts +0 -3
  64. package/dist/src/api/interface/billing-reimbursement-expense.api.js +0 -2
  65. package/dist/src/api/interface/billing.history.api.d.ts +0 -3
  66. package/dist/src/api/interface/billing.history.api.js +0 -2
  67. package/dist/src/api/interface/billing.payment.entity.api.d.ts +0 -3
  68. package/dist/src/api/interface/billing.payment.entity.api.js +0 -2
  69. package/dist/src/api/interface/billing_timesheet_history.api.d.ts +0 -3
  70. package/dist/src/api/interface/billing_timesheet_history.api.js +0 -2
  71. package/dist/src/api/interface/leave_history.api.d.ts +0 -3
  72. package/dist/src/api/interface/leave_history.api.js +0 -2
  73. package/dist/src/api/interface/reimbursement_expense.api.d.ts +0 -3
  74. package/dist/src/api/interface/reimbursement_expense.api.js +0 -2
  75. package/dist/src/api/interface/reimbursement_history.api.d.ts +0 -3
  76. package/dist/src/api/interface/reimbursement_history.api.js +0 -2
  77. package/dist/src/api/interface/timesheet.history.api.d.ts +0 -3
  78. package/dist/src/api/interface/timesheet.history.api.js +0 -2
  79. package/dist/src/api/interface/work_from_home_history.api.d.ts +0 -4
  80. package/dist/src/api/interface/work_from_home_history.api.js +0 -2
  81. /package/dist/src/{api/interface/bank_history.api.js → entities/interface/billing-transaction-history.entity.js} +0 -0
@@ -33,6 +33,7 @@ exports.createKeyLabelMap = createKeyLabelMap;
33
33
  exports.transformDate = transformDate;
34
34
  exports.capitalizeFirstWord = capitalizeFirstWord;
35
35
  exports.getEntitiesFromSearchV2Response = getEntitiesFromSearchV2Response;
36
+ exports.findEntitiesFromSearchV2RelatedEntities = findEntitiesFromSearchV2RelatedEntities;
36
37
  exports.areDecimalNumbersEqual = areDecimalNumbersEqual;
37
38
  exports.formatIndianNumber = formatIndianNumber;
38
39
  exports.findDuplicateIds = findDuplicateIds;
@@ -403,6 +404,58 @@ function getEntitiesFromSearchV2Response(searchResponseV2, entityEnumKey, Entity
403
404
  }
404
405
  return (((_a = searchResponseV2.relatedEntities[entityEnumKey]) === null || _a === void 0 ? void 0 : _a.baseEntities) || []).map((entity) => Object.assign(new EntityClass(), entity));
405
406
  }
407
+ /**
408
+ * Recursively searches for entities of a specific type within a nested `relatedEntities` structure.
409
+ *
410
+ * This function traverses the `relatedEntities` tree, looking for a target entity key.
411
+ * When found, it collects all `baseEntities` for that key and instantiates them
412
+ * as instances of the provided `EntityClass`. The function continues to traverse
413
+ * all nested `relatedEntities` recursively, accumulating all matches.
414
+ *
415
+ * @template E - The enum type representing the target entity key (`EntityEnum`).
416
+ * @template T - The corresponding entity type for the target key (`EnumEntityType<E>`).
417
+ *
418
+ * @param relatedEntities - The nested `relatedEntities` structure, typically from a
419
+ * `IBaseEntityServiceResponse`. Can be undefined, in which case an empty array is returned.
420
+ * @param targetKey - The entity key (`EntityEnum`) to search for in the nested structure.
421
+ * @param EntityClass - A constructor function for the entity type `T`. Used to
422
+ * instantiate new objects from the raw base entity data.
423
+ *
424
+ * @returns An array of entities of type `T` found at any level of the nested structure.
425
+ * If no entities are found, an empty array is returned.
426
+ *
427
+ * @example
428
+ * ```ts
429
+ * const billingEntities = findEntitiesAtAnyLevel(
430
+ * projectUserMappingsOfCurrentUser.relatedEntities,
431
+ * EntityEnum.BILLING,
432
+ * BillingEntity
433
+ * );
434
+ *
435
+ * console.log(billingEntities); // [BillingEntity {...}, BillingEntity {...}]
436
+ * ```
437
+ *
438
+ * @note
439
+ * - This function preserves the type of entities by mapping the raw objects to the provided `EntityClass`.
440
+ * - It can handle deeply nested `relatedEntities` structures.
441
+ */
442
+ function findEntitiesFromSearchV2RelatedEntities(relatedEntities, targetKey, EntityClass) {
443
+ if (!relatedEntities)
444
+ return [];
445
+ let result = [];
446
+ for (const key of Object.keys(relatedEntities)) {
447
+ const value = relatedEntities[key];
448
+ // If this key is the target and has baseEntities
449
+ if (key === targetKey && (value === null || value === void 0 ? void 0 : value.baseEntities)) {
450
+ result.push(...value.baseEntities.map((entity) => Object.assign(new EntityClass(), entity)));
451
+ }
452
+ // If value has relatedEntities, recurse
453
+ if (value === null || value === void 0 ? void 0 : value.relatedEntities) {
454
+ result.push(...findEntitiesFromSearchV2RelatedEntities(value.relatedEntities, targetKey, EntityClass));
455
+ }
456
+ }
457
+ return result;
458
+ }
406
459
  /**
407
460
  * Checks if two decimal numbers are approximately equal within a given tolerance.
408
461
  *
@@ -1,3 +1,5 @@
1
1
  export * from "./date.util";
2
2
  export * from "./helper.fn.util";
3
3
  export * from "./models/date-code.model.util";
4
+ export * from "./string.util";
5
+ export * from "./entity.flow.util";
@@ -17,3 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./date.util"), exports);
18
18
  __exportStar(require("./helper.fn.util"), exports);
19
19
  __exportStar(require("./models/date-code.model.util"), exports);
20
+ __exportStar(require("./string.util"), exports);
21
+ __exportStar(require("./entity.flow.util"), exports);
@@ -0,0 +1 @@
1
+ export declare function formatString(input: string): string;
@@ -1 +1,15 @@
1
1
  "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formatString = formatString;
4
+ function formatString(input) {
5
+ if (input.includes('_')) {
6
+ return input
7
+ .split('_')
8
+ .map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
9
+ .join(' ');
10
+ }
11
+ else {
12
+ // For single-word strings, capitalize the first letter
13
+ return input.charAt(0).toUpperCase() + input.slice(1).toLowerCase();
14
+ }
15
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "law-common",
3
- "version": "10.26.1-beta.0",
3
+ "version": "10.26.1-beta.10",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -1,3 +0,0 @@
1
- import { IApiEntity, IBankHistoryEntity } from "../../entities";
2
- export type IBankHistoryApiEntity = IApiEntity<IBankHistoryEntity>;
3
- export type IBankHistoryApiEntityArray = IBankHistoryApiEntity[];
@@ -1,4 +0,0 @@
1
- import { IApiEntity } from "../../entities";
2
- import { IBillingReimbursementExpenseHistoryEntity } from "../../entities/interface/billing-reimbursement-expense-history.entity.interface";
3
- export type IBillingReimbursementExpenseHistoryApiEntity = IApiEntity<IBillingReimbursementExpenseHistoryEntity>;
4
- export type IBillingReimbursementExpenseHistoryApiEntityArray = IBillingReimbursementExpenseHistoryApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- import { IApiEntity, IBillingReimbursementExpenseEntity } from "../../entities";
2
- export type IBillingReimbursementExpenseApiEntity = IApiEntity<IBillingReimbursementExpenseEntity>;
3
- export type IBillingReimbursementExpenseApiEntityArray = IBillingReimbursementExpenseApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- import { IApiEntity, IBillingHistoryEntity } from "../../entities";
2
- export type IBillingHistoryApiEntity = IApiEntity<IBillingHistoryEntity>;
3
- export type IBillingHistoryApiEntityArray = IBillingHistoryApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- import { IApiEntity, IBillingPaymentEntity } from "../../entities";
2
- export type IBillingPaymentApiEntity = IApiEntity<IBillingPaymentEntity>;
3
- export type IBillingPaymentApiEntityArray = IBillingPaymentApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- import { IApiEntity, IBillingTimesheetHistoryEntity } from "../../entities";
2
- export type IBillingTimesheetHistoryApiEntity = IApiEntity<IBillingTimesheetHistoryEntity>;
3
- export type IBillingTimesheetHistoryApiEntityArray = IBillingTimesheetHistoryApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- import { IApiEntity, ILeaveHistoryEntity } from "../../entities";
2
- export type ILeaveHistoryApiEntity = IApiEntity<ILeaveHistoryEntity>;
3
- export type ILeaveHistoryApiEntityArray = ILeaveHistoryApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- import { IApiEntity, IReimbursementExpenseEntity } from "../../entities";
2
- export type IReimbursementExpenseApiEntity = IApiEntity<IReimbursementExpenseEntity>;
3
- export type IReimbursementExpenseApiEntityArray = IReimbursementExpenseApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- import { IApiEntity, IReimbursementHistoryEntity } from "../../entities";
2
- export type IReimbursementHistoryApiEntity = IApiEntity<IReimbursementHistoryEntity>;
3
- export type IReimbursementHistoryApiEntityArray = IReimbursementHistoryApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- import { IApiEntity, ITimesheetHistoryEntity } from "../../entities";
2
- export type ITimesheetHistoryApiEntity = IApiEntity<ITimesheetHistoryEntity>;
3
- export type ITimesheetHistoryApiEntityArray = ITimesheetHistoryApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,4 +0,0 @@
1
- import { IApiEntity } from "../../entities";
2
- import { IWorkFromHomeHistoryEntity } from "../../entities/interface/work_from_home_history.entity.interface";
3
- export type IWorkFromHomeHistoryApiEntity = IApiEntity<IWorkFromHomeHistoryEntity>;
4
- export type IWorkFromHomeHistoryApiEntityArray = IWorkFromHomeHistoryApiEntity[];
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });