@crediblex.io/fineract-api-client 0.1.6

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 (105) hide show
  1. package/dist/api/fineract-creditlines-api.d.ts +95 -0
  2. package/dist/api/fineract-creditlines-api.d.ts.map +1 -0
  3. package/dist/api/fineract-creditlines-api.js +196 -0
  4. package/dist/api/fineract-creditlines-api.js.map +1 -0
  5. package/dist/api/fineract-datatable-api.d.ts +64 -0
  6. package/dist/api/fineract-datatable-api.d.ts.map +1 -0
  7. package/dist/api/fineract-datatable-api.js +146 -0
  8. package/dist/api/fineract-datatable-api.js.map +1 -0
  9. package/dist/api/fineract-holidays-api.d.ts +29 -0
  10. package/dist/api/fineract-holidays-api.d.ts.map +1 -0
  11. package/dist/api/fineract-holidays-api.js +57 -0
  12. package/dist/api/fineract-holidays-api.js.map +1 -0
  13. package/dist/api/fineract-loanproducts-api.d.ts +57 -0
  14. package/dist/api/fineract-loanproducts-api.d.ts.map +1 -0
  15. package/dist/api/fineract-loanproducts-api.js +140 -0
  16. package/dist/api/fineract-loanproducts-api.js.map +1 -0
  17. package/dist/api/fineract-loansaccounts-api.d.ts +77 -0
  18. package/dist/api/fineract-loansaccounts-api.d.ts.map +1 -0
  19. package/dist/api/fineract-loansaccounts-api.js +209 -0
  20. package/dist/api/fineract-loansaccounts-api.js.map +1 -0
  21. package/dist/api/fineract-reports-api.d.ts +33 -0
  22. package/dist/api/fineract-reports-api.d.ts.map +1 -0
  23. package/dist/api/fineract-reports-api.js +94 -0
  24. package/dist/api/fineract-reports-api.js.map +1 -0
  25. package/dist/api/fineract-savingsaccounts-api.d.ts +59 -0
  26. package/dist/api/fineract-savingsaccounts-api.d.ts.map +1 -0
  27. package/dist/api/fineract-savingsaccounts-api.js +141 -0
  28. package/dist/api/fineract-savingsaccounts-api.js.map +1 -0
  29. package/dist/api/fineract-savingsproducts-api.d.ts +86 -0
  30. package/dist/api/fineract-savingsproducts-api.d.ts.map +1 -0
  31. package/dist/api/fineract-savingsproducts-api.js +184 -0
  32. package/dist/api/fineract-savingsproducts-api.js.map +1 -0
  33. package/dist/api/fineract-sme-api.d.ts +39 -0
  34. package/dist/api/fineract-sme-api.d.ts.map +1 -0
  35. package/dist/api/fineract-sme-api.js +82 -0
  36. package/dist/api/fineract-sme-api.js.map +1 -0
  37. package/dist/api/fineract-workingdays-api.d.ts +28 -0
  38. package/dist/api/fineract-workingdays-api.d.ts.map +1 -0
  39. package/dist/api/fineract-workingdays-api.js +84 -0
  40. package/dist/api/fineract-workingdays-api.js.map +1 -0
  41. package/dist/examples/run-examples.d.ts +2 -0
  42. package/dist/examples/run-examples.d.ts.map +1 -0
  43. package/dist/examples/run-examples.js +868 -0
  44. package/dist/examples/run-examples.js.map +1 -0
  45. package/dist/fineract-sdk.d.ts +50 -0
  46. package/dist/fineract-sdk.d.ts.map +1 -0
  47. package/dist/fineract-sdk.js +55 -0
  48. package/dist/fineract-sdk.js.map +1 -0
  49. package/dist/index.d.ts +8 -0
  50. package/dist/index.d.ts.map +1 -0
  51. package/dist/index.js +36 -0
  52. package/dist/index.js.map +1 -0
  53. package/dist/types/creditlines.d.ts +271 -0
  54. package/dist/types/creditlines.d.ts.map +1 -0
  55. package/dist/types/creditlines.js +3 -0
  56. package/dist/types/creditlines.js.map +1 -0
  57. package/dist/types/datatable.d.ts +36 -0
  58. package/dist/types/datatable.d.ts.map +1 -0
  59. package/dist/types/datatable.js +3 -0
  60. package/dist/types/datatable.js.map +1 -0
  61. package/dist/types/errors.d.ts +7 -0
  62. package/dist/types/errors.d.ts.map +1 -0
  63. package/dist/types/errors.js +17 -0
  64. package/dist/types/errors.js.map +1 -0
  65. package/dist/types/holidays.d.ts +32 -0
  66. package/dist/types/holidays.d.ts.map +1 -0
  67. package/dist/types/holidays.js +3 -0
  68. package/dist/types/holidays.js.map +1 -0
  69. package/dist/types/index.d.ts +7 -0
  70. package/dist/types/index.d.ts.map +1 -0
  71. package/dist/types/index.js +25 -0
  72. package/dist/types/index.js.map +1 -0
  73. package/dist/types/loanproducts.d.ts +1 -0
  74. package/dist/types/loanproducts.d.ts.map +1 -0
  75. package/dist/types/loanproducts.js +2 -0
  76. package/dist/types/loanproducts.js.map +1 -0
  77. package/dist/types/loansaccounts.d.ts +195 -0
  78. package/dist/types/loansaccounts.d.ts.map +1 -0
  79. package/dist/types/loansaccounts.js +3 -0
  80. package/dist/types/loansaccounts.js.map +1 -0
  81. package/dist/types/reports.d.ts +49 -0
  82. package/dist/types/reports.d.ts.map +1 -0
  83. package/dist/types/reports.js +4 -0
  84. package/dist/types/reports.js.map +1 -0
  85. package/dist/types/savingsaccounts.d.ts +145 -0
  86. package/dist/types/savingsaccounts.d.ts.map +1 -0
  87. package/dist/types/savingsaccounts.js +3 -0
  88. package/dist/types/savingsaccounts.js.map +1 -0
  89. package/dist/types/savingsproducts.d.ts +83 -0
  90. package/dist/types/savingsproducts.d.ts.map +1 -0
  91. package/dist/types/savingsproducts.js +3 -0
  92. package/dist/types/savingsproducts.js.map +1 -0
  93. package/dist/types/sme.d.ts +68 -0
  94. package/dist/types/sme.d.ts.map +1 -0
  95. package/dist/types/sme.js +3 -0
  96. package/dist/types/sme.js.map +1 -0
  97. package/dist/types/workingdays.d.ts +41 -0
  98. package/dist/types/workingdays.d.ts.map +1 -0
  99. package/dist/types/workingdays.js +3 -0
  100. package/dist/types/workingdays.js.map +1 -0
  101. package/dist/utils/http-client.d.ts +29 -0
  102. package/dist/utils/http-client.d.ts.map +1 -0
  103. package/dist/utils/http-client.js +93 -0
  104. package/dist/utils/http-client.js.map +1 -0
  105. package/package.json +51 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fineract-workingdays-api.d.ts","sourceRoot":"","sources":["../../src/api/fineract-workingdays-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EACL,mBAAmB,EAEpB,MAAM,sBAAsB,CAAC;AAE9B;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;gBAE5B,UAAU,EAAE,UAAU;IAIlC;;;;;;OAMG;IACG,cAAc,IAAI,OAAO,CAAC,mBAAmB,CAAC;IA2BpD;;;;;;;OAOG;IACH,OAAO,CAAC,qBAAqB;CA4C9B"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FineractWorkingDaysApi = void 0;
4
+ const errors_1 = require("../types/errors");
5
+ /**
6
+ * API client for Fineract Working Days related operations.
7
+ * It uses the HttpClient for making requests.
8
+ */
9
+ class FineractWorkingDaysApi {
10
+ constructor(httpClient) {
11
+ this.httpClient = httpClient;
12
+ }
13
+ /**
14
+ * Retrieves working days configuration from Fineract and formats it for easy consumption.
15
+ * Corresponds to the GET /workingdays endpoint.
16
+ * Returns a formatted object with each day of the week mapped to a boolean indicating if it's a working day.
17
+ *
18
+ * @returns A promise that resolves to the formatted working days configuration or rejects with an error.
19
+ */
20
+ async getWorkingDays() {
21
+ try {
22
+ const apiPath = "/fineract-provider/api/v1/workingdays";
23
+ const response = await this.httpClient.get(apiPath);
24
+ // Parse the recurrence string to determine working days
25
+ const workingDays = this.parseRecurrenceString(response.data.recurrence);
26
+ return workingDays;
27
+ }
28
+ catch (rawError) {
29
+ const errorPayload = rawError;
30
+ const message = errorPayload?.message ||
31
+ errorPayload?.error ||
32
+ "Fineract API request failed";
33
+ throw new errors_1.FineractApiError(message, errorPayload?.statusCode, errorPayload?.details, errorPayload?.error);
34
+ }
35
+ }
36
+ /**
37
+ * Parses the RRULE recurrence string to determine which days are working days.
38
+ * Expected format: "FREQ=WEEKLY;INTERVAL=1;BYDAY=MO,TU,WE,TH,FR,"
39
+ *
40
+ * @param recurrence The recurrence string from Fineract API
41
+ * @returns Formatted working days object
42
+ * @private
43
+ */
44
+ parseRecurrenceString(recurrence) {
45
+ // Initialize all days as non-working days
46
+ const workingDays = {
47
+ Monday: false,
48
+ Tuesday: false,
49
+ Wednesday: false,
50
+ Thursday: false,
51
+ Friday: false,
52
+ Saturday: false,
53
+ Sunday: false,
54
+ };
55
+ // Extract the BYDAY part from the recurrence string
56
+ const byDayRegex = /BYDAY=([^;]*)/;
57
+ const byDayMatch = byDayRegex.exec(recurrence);
58
+ if (!byDayMatch) {
59
+ return workingDays;
60
+ }
61
+ const byDayPart = byDayMatch[1];
62
+ // Map the abbreviations to full day names
63
+ const dayMapping = {
64
+ MO: "Monday",
65
+ TU: "Tuesday",
66
+ WE: "Wednesday",
67
+ TH: "Thursday",
68
+ FR: "Friday",
69
+ SA: "Saturday",
70
+ SU: "Sunday",
71
+ };
72
+ // Split by comma and process each day abbreviation
73
+ const workingDayAbbreviations = byDayPart.split(",").filter(Boolean);
74
+ for (const dayAbbr of workingDayAbbreviations) {
75
+ const trimmedDay = dayAbbr.trim();
76
+ if (dayMapping[trimmedDay]) {
77
+ workingDays[dayMapping[trimmedDay]] = true;
78
+ }
79
+ }
80
+ return workingDays;
81
+ }
82
+ }
83
+ exports.FineractWorkingDaysApi = FineractWorkingDaysApi;
84
+ //# sourceMappingURL=fineract-workingdays-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fineract-workingdays-api.js","sourceRoot":"","sources":["../../src/api/fineract-workingdays-api.ts"],"names":[],"mappings":";;;AAEA,4CAAmD;AAMnD;;;GAGG;AACH,MAAa,sBAAsB;IAGjC,YAAY,UAAsB;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,uCAAuC,CAAC;YAExD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CACxC,OAAO,CACR,CAAC;YAEF,wDAAwD;YACxD,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAEzE,OAAO,WAAW,CAAC;QACrB,CAAC;QAAC,OAAO,QAAQ,EAAE,CAAC;YAClB,MAAM,YAAY,GAAG,QAAiC,CAAC;YACvD,MAAM,OAAO,GACX,YAAY,EAAE,OAAO;gBACrB,YAAY,EAAE,KAAK;gBACnB,6BAA6B,CAAC;YAChC,MAAM,IAAI,yBAAgB,CACxB,OAAO,EACP,YAAY,EAAE,UAAU,EACxB,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,KAAK,CACpB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,qBAAqB,CAAC,UAAkB;QAC9C,0CAA0C;QAC1C,MAAM,WAAW,GAAwB;YACvC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,KAAK;YAChB,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE,KAAK;SACd,CAAC;QAEF,oDAAoD;QACpD,MAAM,UAAU,GAAG,eAAe,CAAC;QACnC,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAEhC,0CAA0C;QAC1C,MAAM,UAAU,GAAiD;YAC/D,EAAE,EAAE,QAAQ;YACZ,EAAE,EAAE,SAAS;YACb,EAAE,EAAE,WAAW;YACf,EAAE,EAAE,UAAU;YACd,EAAE,EAAE,QAAQ;YACZ,EAAE,EAAE,UAAU;YACd,EAAE,EAAE,QAAQ;SACb,CAAC;QAEF,mDAAmD;QACnD,MAAM,uBAAuB,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAErE,KAAK,MAAM,OAAO,IAAI,uBAAuB,EAAE,CAAC;YAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3B,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AA7FD,wDA6FC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=run-examples.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-examples.d.ts","sourceRoot":"","sources":["../../src/examples/run-examples.ts"],"names":[],"mappings":""}