@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.
- package/dist/api/fineract-creditlines-api.d.ts +95 -0
- package/dist/api/fineract-creditlines-api.d.ts.map +1 -0
- package/dist/api/fineract-creditlines-api.js +196 -0
- package/dist/api/fineract-creditlines-api.js.map +1 -0
- package/dist/api/fineract-datatable-api.d.ts +64 -0
- package/dist/api/fineract-datatable-api.d.ts.map +1 -0
- package/dist/api/fineract-datatable-api.js +146 -0
- package/dist/api/fineract-datatable-api.js.map +1 -0
- package/dist/api/fineract-holidays-api.d.ts +29 -0
- package/dist/api/fineract-holidays-api.d.ts.map +1 -0
- package/dist/api/fineract-holidays-api.js +57 -0
- package/dist/api/fineract-holidays-api.js.map +1 -0
- package/dist/api/fineract-loanproducts-api.d.ts +57 -0
- package/dist/api/fineract-loanproducts-api.d.ts.map +1 -0
- package/dist/api/fineract-loanproducts-api.js +140 -0
- package/dist/api/fineract-loanproducts-api.js.map +1 -0
- package/dist/api/fineract-loansaccounts-api.d.ts +77 -0
- package/dist/api/fineract-loansaccounts-api.d.ts.map +1 -0
- package/dist/api/fineract-loansaccounts-api.js +209 -0
- package/dist/api/fineract-loansaccounts-api.js.map +1 -0
- package/dist/api/fineract-reports-api.d.ts +33 -0
- package/dist/api/fineract-reports-api.d.ts.map +1 -0
- package/dist/api/fineract-reports-api.js +94 -0
- package/dist/api/fineract-reports-api.js.map +1 -0
- package/dist/api/fineract-savingsaccounts-api.d.ts +59 -0
- package/dist/api/fineract-savingsaccounts-api.d.ts.map +1 -0
- package/dist/api/fineract-savingsaccounts-api.js +141 -0
- package/dist/api/fineract-savingsaccounts-api.js.map +1 -0
- package/dist/api/fineract-savingsproducts-api.d.ts +86 -0
- package/dist/api/fineract-savingsproducts-api.d.ts.map +1 -0
- package/dist/api/fineract-savingsproducts-api.js +184 -0
- package/dist/api/fineract-savingsproducts-api.js.map +1 -0
- package/dist/api/fineract-sme-api.d.ts +39 -0
- package/dist/api/fineract-sme-api.d.ts.map +1 -0
- package/dist/api/fineract-sme-api.js +82 -0
- package/dist/api/fineract-sme-api.js.map +1 -0
- package/dist/api/fineract-workingdays-api.d.ts +28 -0
- package/dist/api/fineract-workingdays-api.d.ts.map +1 -0
- package/dist/api/fineract-workingdays-api.js +84 -0
- package/dist/api/fineract-workingdays-api.js.map +1 -0
- package/dist/examples/run-examples.d.ts +2 -0
- package/dist/examples/run-examples.d.ts.map +1 -0
- package/dist/examples/run-examples.js +868 -0
- package/dist/examples/run-examples.js.map +1 -0
- package/dist/fineract-sdk.d.ts +50 -0
- package/dist/fineract-sdk.d.ts.map +1 -0
- package/dist/fineract-sdk.js +55 -0
- package/dist/fineract-sdk.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +36 -0
- package/dist/index.js.map +1 -0
- package/dist/types/creditlines.d.ts +271 -0
- package/dist/types/creditlines.d.ts.map +1 -0
- package/dist/types/creditlines.js +3 -0
- package/dist/types/creditlines.js.map +1 -0
- package/dist/types/datatable.d.ts +36 -0
- package/dist/types/datatable.d.ts.map +1 -0
- package/dist/types/datatable.js +3 -0
- package/dist/types/datatable.js.map +1 -0
- package/dist/types/errors.d.ts +7 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +17 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/holidays.d.ts +32 -0
- package/dist/types/holidays.d.ts.map +1 -0
- package/dist/types/holidays.js +3 -0
- package/dist/types/holidays.js.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +25 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/loanproducts.d.ts +1 -0
- package/dist/types/loanproducts.d.ts.map +1 -0
- package/dist/types/loanproducts.js +2 -0
- package/dist/types/loanproducts.js.map +1 -0
- package/dist/types/loansaccounts.d.ts +195 -0
- package/dist/types/loansaccounts.d.ts.map +1 -0
- package/dist/types/loansaccounts.js +3 -0
- package/dist/types/loansaccounts.js.map +1 -0
- package/dist/types/reports.d.ts +49 -0
- package/dist/types/reports.d.ts.map +1 -0
- package/dist/types/reports.js +4 -0
- package/dist/types/reports.js.map +1 -0
- package/dist/types/savingsaccounts.d.ts +145 -0
- package/dist/types/savingsaccounts.d.ts.map +1 -0
- package/dist/types/savingsaccounts.js +3 -0
- package/dist/types/savingsaccounts.js.map +1 -0
- package/dist/types/savingsproducts.d.ts +83 -0
- package/dist/types/savingsproducts.d.ts.map +1 -0
- package/dist/types/savingsproducts.js +3 -0
- package/dist/types/savingsproducts.js.map +1 -0
- package/dist/types/sme.d.ts +68 -0
- package/dist/types/sme.d.ts.map +1 -0
- package/dist/types/sme.js +3 -0
- package/dist/types/sme.js.map +1 -0
- package/dist/types/workingdays.d.ts +41 -0
- package/dist/types/workingdays.d.ts.map +1 -0
- package/dist/types/workingdays.js +3 -0
- package/dist/types/workingdays.js.map +1 -0
- package/dist/utils/http-client.d.ts +29 -0
- package/dist/utils/http-client.d.ts.map +1 -0
- package/dist/utils/http-client.js +93 -0
- package/dist/utils/http-client.js.map +1 -0
- 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 @@
|
|
|
1
|
+
{"version":3,"file":"run-examples.d.ts","sourceRoot":"","sources":["../../src/examples/run-examples.ts"],"names":[],"mappings":""}
|