@itzenata/efact-node 1.0.1
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/LICENSE +21 -0
- package/README.md +154 -0
- package/dist/_generated/api/invoices-api.d.ts +367 -0
- package/dist/_generated/api/invoices-api.d.ts.map +1 -0
- package/dist/_generated/api/invoices-api.js +485 -0
- package/dist/_generated/api/invoices-api.js.map +1 -0
- package/dist/_generated/api.d.ts +13 -0
- package/dist/_generated/api.d.ts.map +1 -0
- package/dist/_generated/api.js +16 -0
- package/dist/_generated/api.js.map +1 -0
- package/dist/_generated/base.d.ts +67 -0
- package/dist/_generated/base.d.ts.map +1 -0
- package/dist/_generated/base.js +65 -0
- package/dist/_generated/base.js.map +1 -0
- package/dist/_generated/common.d.ts +66 -0
- package/dist/_generated/common.d.ts.map +1 -0
- package/dist/_generated/common.js +135 -0
- package/dist/_generated/common.js.map +1 -0
- package/dist/_generated/configuration.d.ts +92 -0
- package/dist/_generated/configuration.d.ts.map +1 -0
- package/dist/_generated/configuration.js +97 -0
- package/dist/_generated/configuration.js.map +1 -0
- package/dist/_generated/index.d.ts +15 -0
- package/dist/_generated/index.d.ts.map +1 -0
- package/dist/_generated/index.js +18 -0
- package/dist/_generated/index.js.map +1 -0
- package/dist/_generated/models/api-response-invoice-response.d.ts +45 -0
- package/dist/_generated/models/api-response-invoice-response.d.ts.map +1 -0
- package/dist/_generated/models/api-response-invoice-response.js +16 -0
- package/dist/_generated/models/api-response-invoice-response.js.map +1 -0
- package/dist/_generated/models/api-response-invoice-status-response.d.ts +45 -0
- package/dist/_generated/models/api-response-invoice-status-response.d.ts.map +1 -0
- package/dist/_generated/models/api-response-invoice-status-response.js +16 -0
- package/dist/_generated/models/api-response-invoice-status-response.js.map +1 -0
- package/dist/_generated/models/api-response-page-response-invoice-response.d.ts +45 -0
- package/dist/_generated/models/api-response-page-response-invoice-response.d.ts.map +1 -0
- package/dist/_generated/models/api-response-page-response-invoice-response.js +16 -0
- package/dist/_generated/models/api-response-page-response-invoice-response.js.map +1 -0
- package/dist/_generated/models/create-invoice-line-request.d.ts +55 -0
- package/dist/_generated/models/create-invoice-line-request.d.ts.map +1 -0
- package/dist/_generated/models/create-invoice-line-request.js +16 -0
- package/dist/_generated/models/create-invoice-line-request.js.map +1 -0
- package/dist/_generated/models/create-invoice-request.d.ts +82 -0
- package/dist/_generated/models/create-invoice-request.d.ts.map +1 -0
- package/dist/_generated/models/create-invoice-request.js +22 -0
- package/dist/_generated/models/create-invoice-request.js.map +1 -0
- package/dist/_generated/models/field-error.d.ts +31 -0
- package/dist/_generated/models/field-error.d.ts.map +1 -0
- package/dist/_generated/models/field-error.js +16 -0
- package/dist/_generated/models/field-error.js.map +1 -0
- package/dist/_generated/models/index.d.ts +11 -0
- package/dist/_generated/models/index.d.ts.map +1 -0
- package/dist/_generated/models/index.js +12 -0
- package/dist/_generated/models/index.js.map +1 -0
- package/dist/_generated/models/invoice-response.d.ts +221 -0
- package/dist/_generated/models/invoice-response.d.ts.map +1 -0
- package/dist/_generated/models/invoice-response.js +24 -0
- package/dist/_generated/models/invoice-response.js.map +1 -0
- package/dist/_generated/models/invoice-status-response.d.ts +83 -0
- package/dist/_generated/models/invoice-status-response.d.ts.map +1 -0
- package/dist/_generated/models/invoice-status-response.js +24 -0
- package/dist/_generated/models/invoice-status-response.js.map +1 -0
- package/dist/_generated/models/page-response-invoice-response.d.ts +62 -0
- package/dist/_generated/models/page-response-invoice-response.d.ts.map +1 -0
- package/dist/_generated/models/page-response-invoice-response.js +16 -0
- package/dist/_generated/models/page-response-invoice-response.js.map +1 -0
- package/dist/_generated/models/update-invoice-request.d.ts +121 -0
- package/dist/_generated/models/update-invoice-request.d.ts.map +1 -0
- package/dist/_generated/models/update-invoice-request.js +31 -0
- package/dist/_generated/models/update-invoice-request.js.map +1 -0
- package/dist/client.d.ts +73 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +155 -0
- package/dist/client.js.map +1 -0
- package/dist/errors.d.ts +100 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +129 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/invoices.d.ts +36 -0
- package/dist/invoices.d.ts.map +1 -0
- package/dist/invoices.js +53 -0
- package/dist/invoices.js.map +1 -0
- package/dist/runtime.d.ts +34 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +105 -0
- package/dist/runtime.js.map +1 -0
- package/package.json +66 -0
- package/src/_generated/.openapi-generator/FILES +21 -0
- package/src/_generated/.openapi-generator/VERSION +1 -0
- package/src/_generated/.openapi-generator-ignore +23 -0
- package/src/_generated/api/invoices-api.ts +662 -0
- package/src/_generated/api.ts +19 -0
- package/src/_generated/base.ts +87 -0
- package/src/_generated/common.ts +151 -0
- package/src/_generated/configuration.ts +111 -0
- package/src/_generated/git_push.sh +57 -0
- package/src/_generated/index.ts +19 -0
- package/src/_generated/models/api-response-invoice-response.ts +55 -0
- package/src/_generated/models/api-response-invoice-status-response.ts +55 -0
- package/src/_generated/models/api-response-page-response-invoice-response.ts +55 -0
- package/src/_generated/models/create-invoice-line-request.ts +61 -0
- package/src/_generated/models/create-invoice-request.ts +93 -0
- package/src/_generated/models/field-error.ts +37 -0
- package/src/_generated/models/index.ts +11 -0
- package/src/_generated/models/invoice-response.ts +230 -0
- package/src/_generated/models/invoice-status-response.ts +92 -0
- package/src/_generated/models/page-response-invoice-response.ts +70 -0
- package/src/_generated/models/update-invoice-request.ts +131 -0
- package/src/client.ts +215 -0
- package/src/errors.ts +166 -0
- package/src/index.ts +35 -0
- package/src/invoices.ts +80 -0
- package/src/runtime.ts +179 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EFact API
|
|
3
|
+
* Compliance-as-a-service backend for Moroccan DGI electronic invoicing
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: v0.0.1-SNAPSHOT
|
|
6
|
+
* Contact: contact@itzenata.com
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Lightweight status response for polling invoice processing state
|
|
14
|
+
* @export
|
|
15
|
+
* @interface InvoiceStatusResponse
|
|
16
|
+
*/
|
|
17
|
+
export interface InvoiceStatusResponse {
|
|
18
|
+
/**
|
|
19
|
+
* Unique invoice identifier
|
|
20
|
+
* @type {string}
|
|
21
|
+
* @memberof InvoiceStatusResponse
|
|
22
|
+
*/
|
|
23
|
+
'id'?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Current processing status
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof InvoiceStatusResponse
|
|
28
|
+
*/
|
|
29
|
+
'status'?: InvoiceStatusResponseStatusEnum;
|
|
30
|
+
/**
|
|
31
|
+
* DGI clearance reference assigned after successful submission
|
|
32
|
+
* @type {string}
|
|
33
|
+
* @memberof InvoiceStatusResponse
|
|
34
|
+
*/
|
|
35
|
+
'dgiReference'?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Raw QR code payload content assigned by DGI after clearance
|
|
38
|
+
* @type {string}
|
|
39
|
+
* @memberof InvoiceStatusResponse
|
|
40
|
+
*/
|
|
41
|
+
'dgiQrPayload'?: string;
|
|
42
|
+
/**
|
|
43
|
+
* DGI error code if submission was rejected
|
|
44
|
+
* @type {string}
|
|
45
|
+
* @memberof InvoiceStatusResponse
|
|
46
|
+
*/
|
|
47
|
+
'dgiErrorCode'?: string;
|
|
48
|
+
/**
|
|
49
|
+
* DGI human-readable error description if submission was rejected
|
|
50
|
+
* @type {string}
|
|
51
|
+
* @memberof InvoiceStatusResponse
|
|
52
|
+
*/
|
|
53
|
+
'dgiErrorMessage'?: string;
|
|
54
|
+
/**
|
|
55
|
+
* Timestamp when the invoice was submitted to DGI
|
|
56
|
+
* @type {string}
|
|
57
|
+
* @memberof InvoiceStatusResponse
|
|
58
|
+
*/
|
|
59
|
+
'dgiSubmittedAt'?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Timestamp when DGI validated (cleared) the invoice
|
|
62
|
+
* @type {string}
|
|
63
|
+
* @memberof InvoiceStatusResponse
|
|
64
|
+
*/
|
|
65
|
+
'dgiValidatedAt'?: string;
|
|
66
|
+
/**
|
|
67
|
+
* Timestamp when DGI rejected the invoice
|
|
68
|
+
* @type {string}
|
|
69
|
+
* @memberof InvoiceStatusResponse
|
|
70
|
+
*/
|
|
71
|
+
'dgiRejectedAt'?: string;
|
|
72
|
+
}
|
|
73
|
+
export declare const InvoiceStatusResponseStatusEnum: {
|
|
74
|
+
readonly Pending: "PENDING";
|
|
75
|
+
readonly Signed: "SIGNED";
|
|
76
|
+
readonly Transmitted: "TRANSMITTED";
|
|
77
|
+
readonly Accepted: "ACCEPTED";
|
|
78
|
+
readonly Rejected: "REJECTED";
|
|
79
|
+
readonly Failed: "FAILED";
|
|
80
|
+
readonly Cancelled: "CANCELLED";
|
|
81
|
+
};
|
|
82
|
+
export type InvoiceStatusResponseStatusEnum = typeof InvoiceStatusResponseStatusEnum[keyof typeof InvoiceStatusResponseStatusEnum];
|
|
83
|
+
//# sourceMappingURL=invoice-status-response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invoice-status-response.d.ts","sourceRoot":"","sources":["../../../src/_generated/models/invoice-status-response.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AAIH;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IAClC;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,+BAA+B,CAAC;IAC3C;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,+BAA+B;;;;;;;;CAQlC,CAAC;AAEX,MAAM,MAAM,+BAA+B,GAAG,OAAO,+BAA+B,CAAC,MAAM,OAAO,+BAA+B,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* EFact API
|
|
6
|
+
* Compliance-as-a-service backend for Moroccan DGI electronic invoicing
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: v0.0.1-SNAPSHOT
|
|
9
|
+
* Contact: contact@itzenata.com
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
export const InvoiceStatusResponseStatusEnum = {
|
|
16
|
+
Pending: 'PENDING',
|
|
17
|
+
Signed: 'SIGNED',
|
|
18
|
+
Transmitted: 'TRANSMITTED',
|
|
19
|
+
Accepted: 'ACCEPTED',
|
|
20
|
+
Rejected: 'REJECTED',
|
|
21
|
+
Failed: 'FAILED',
|
|
22
|
+
Cancelled: 'CANCELLED'
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=invoice-status-response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invoice-status-response.js","sourceRoot":"","sources":["../../../src/_generated/models/invoice-status-response.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,oBAAoB;AACpB,oBAAoB;AACpB;;;;;;;;;;GAUG;AAkEH,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC3C,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;CAChB,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EFact API
|
|
3
|
+
* Compliance-as-a-service backend for Moroccan DGI electronic invoicing
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: v0.0.1-SNAPSHOT
|
|
6
|
+
* Contact: contact@itzenata.com
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
import type { InvoiceResponse } from './invoice-response.js';
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
* @export
|
|
16
|
+
* @interface PageResponseInvoiceResponse
|
|
17
|
+
*/
|
|
18
|
+
export interface PageResponseInvoiceResponse {
|
|
19
|
+
/**
|
|
20
|
+
*
|
|
21
|
+
* @type {Array<InvoiceResponse>}
|
|
22
|
+
* @memberof PageResponseInvoiceResponse
|
|
23
|
+
*/
|
|
24
|
+
'content'?: Array<InvoiceResponse>;
|
|
25
|
+
/**
|
|
26
|
+
*
|
|
27
|
+
* @type {number}
|
|
28
|
+
* @memberof PageResponseInvoiceResponse
|
|
29
|
+
*/
|
|
30
|
+
'page'?: number;
|
|
31
|
+
/**
|
|
32
|
+
*
|
|
33
|
+
* @type {number}
|
|
34
|
+
* @memberof PageResponseInvoiceResponse
|
|
35
|
+
*/
|
|
36
|
+
'size'?: number;
|
|
37
|
+
/**
|
|
38
|
+
*
|
|
39
|
+
* @type {number}
|
|
40
|
+
* @memberof PageResponseInvoiceResponse
|
|
41
|
+
*/
|
|
42
|
+
'totalElements'?: number;
|
|
43
|
+
/**
|
|
44
|
+
*
|
|
45
|
+
* @type {number}
|
|
46
|
+
* @memberof PageResponseInvoiceResponse
|
|
47
|
+
*/
|
|
48
|
+
'totalPages'?: number;
|
|
49
|
+
/**
|
|
50
|
+
*
|
|
51
|
+
* @type {boolean}
|
|
52
|
+
* @memberof PageResponseInvoiceResponse
|
|
53
|
+
*/
|
|
54
|
+
'first'?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
*
|
|
57
|
+
* @type {boolean}
|
|
58
|
+
* @memberof PageResponseInvoiceResponse
|
|
59
|
+
*/
|
|
60
|
+
'last'?: boolean;
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=page-response-invoice-response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-response-invoice-response.d.ts","sourceRoot":"","sources":["../../../src/_generated/models/page-response-invoice-response.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IACxC;;;;OAIG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* EFact API
|
|
6
|
+
* Compliance-as-a-service backend for Moroccan DGI electronic invoicing
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: v0.0.1-SNAPSHOT
|
|
9
|
+
* Contact: contact@itzenata.com
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=page-response-invoice-response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-response-invoice-response.js","sourceRoot":"","sources":["../../../src/_generated/models/page-response-invoice-response.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,oBAAoB;AACpB,oBAAoB;AACpB;;;;;;;;;;GAUG"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EFact API
|
|
3
|
+
* Compliance-as-a-service backend for Moroccan DGI electronic invoicing
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: v0.0.1-SNAPSHOT
|
|
6
|
+
* Contact: contact@itzenata.com
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Request body to update an existing invoice. All fields are optional — only provided fields are applied.
|
|
14
|
+
* @export
|
|
15
|
+
* @interface UpdateInvoiceRequest
|
|
16
|
+
*/
|
|
17
|
+
export interface UpdateInvoiceRequest {
|
|
18
|
+
/**
|
|
19
|
+
* Updated invoice number
|
|
20
|
+
* @type {string}
|
|
21
|
+
* @memberof UpdateInvoiceRequest
|
|
22
|
+
*/
|
|
23
|
+
'invoiceNumber'?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Updated invoice status
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof UpdateInvoiceRequest
|
|
28
|
+
*/
|
|
29
|
+
'status'?: UpdateInvoiceRequestStatusEnum;
|
|
30
|
+
/**
|
|
31
|
+
* Buyer\'s ICE — 15-digit Moroccan business identifier
|
|
32
|
+
* @type {string}
|
|
33
|
+
* @memberof UpdateInvoiceRequest
|
|
34
|
+
*/
|
|
35
|
+
'buyerIce'?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Buyer\'s legal company name
|
|
38
|
+
* @type {string}
|
|
39
|
+
* @memberof UpdateInvoiceRequest
|
|
40
|
+
*/
|
|
41
|
+
'buyerName'?: string;
|
|
42
|
+
/**
|
|
43
|
+
* Buyer\'s registered address
|
|
44
|
+
* @type {string}
|
|
45
|
+
* @memberof UpdateInvoiceRequest
|
|
46
|
+
*/
|
|
47
|
+
'buyerAddress'?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Date the invoice was issued
|
|
50
|
+
* @type {string}
|
|
51
|
+
* @memberof UpdateInvoiceRequest
|
|
52
|
+
*/
|
|
53
|
+
'invoiceDate'?: string;
|
|
54
|
+
/**
|
|
55
|
+
* Payment due date
|
|
56
|
+
* @type {string}
|
|
57
|
+
* @memberof UpdateInvoiceRequest
|
|
58
|
+
*/
|
|
59
|
+
'dueDate'?: string;
|
|
60
|
+
/**
|
|
61
|
+
* 3-letter ISO 4217 currency code
|
|
62
|
+
* @type {string}
|
|
63
|
+
* @memberof UpdateInvoiceRequest
|
|
64
|
+
*/
|
|
65
|
+
'currency'?: string;
|
|
66
|
+
/**
|
|
67
|
+
* Payment method
|
|
68
|
+
* @type {string}
|
|
69
|
+
* @memberof UpdateInvoiceRequest
|
|
70
|
+
*/
|
|
71
|
+
'paymentMethod'?: UpdateInvoiceRequestPaymentMethodEnum;
|
|
72
|
+
/**
|
|
73
|
+
* DGI clearance reference assigned after submission
|
|
74
|
+
* @type {string}
|
|
75
|
+
* @memberof UpdateInvoiceRequest
|
|
76
|
+
*/
|
|
77
|
+
'dgiReference'?: string;
|
|
78
|
+
/**
|
|
79
|
+
* Error code if processing failed
|
|
80
|
+
* @type {string}
|
|
81
|
+
* @memberof UpdateInvoiceRequest
|
|
82
|
+
*/
|
|
83
|
+
'errorCode'?: string;
|
|
84
|
+
/**
|
|
85
|
+
* Human-readable error message if processing failed
|
|
86
|
+
* @type {string}
|
|
87
|
+
* @memberof UpdateInvoiceRequest
|
|
88
|
+
*/
|
|
89
|
+
'errorMessage'?: string;
|
|
90
|
+
/**
|
|
91
|
+
* Storage path of the generated UBL 2.1 XML
|
|
92
|
+
* @type {string}
|
|
93
|
+
* @memberof UpdateInvoiceRequest
|
|
94
|
+
*/
|
|
95
|
+
'ublXmlPath'?: string;
|
|
96
|
+
/**
|
|
97
|
+
* Storage path of the XAdES-B-B signed XML
|
|
98
|
+
* @type {string}
|
|
99
|
+
* @memberof UpdateInvoiceRequest
|
|
100
|
+
*/
|
|
101
|
+
'signedXmlPath'?: string;
|
|
102
|
+
}
|
|
103
|
+
export declare const UpdateInvoiceRequestStatusEnum: {
|
|
104
|
+
readonly Pending: "PENDING";
|
|
105
|
+
readonly Signed: "SIGNED";
|
|
106
|
+
readonly Transmitted: "TRANSMITTED";
|
|
107
|
+
readonly Accepted: "ACCEPTED";
|
|
108
|
+
readonly Rejected: "REJECTED";
|
|
109
|
+
readonly Failed: "FAILED";
|
|
110
|
+
readonly Cancelled: "CANCELLED";
|
|
111
|
+
};
|
|
112
|
+
export type UpdateInvoiceRequestStatusEnum = typeof UpdateInvoiceRequestStatusEnum[keyof typeof UpdateInvoiceRequestStatusEnum];
|
|
113
|
+
export declare const UpdateInvoiceRequestPaymentMethodEnum: {
|
|
114
|
+
readonly BankTransfer: "BANK_TRANSFER";
|
|
115
|
+
readonly Cash: "CASH";
|
|
116
|
+
readonly Check: "CHECK";
|
|
117
|
+
readonly Card: "CARD";
|
|
118
|
+
readonly Other: "OTHER";
|
|
119
|
+
};
|
|
120
|
+
export type UpdateInvoiceRequestPaymentMethodEnum = typeof UpdateInvoiceRequestPaymentMethodEnum[keyof typeof UpdateInvoiceRequestPaymentMethodEnum];
|
|
121
|
+
//# sourceMappingURL=update-invoice-request.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-invoice-request.d.ts","sourceRoot":"","sources":["../../../src/_generated/models/update-invoice-request.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AAIH;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACjC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,8BAA8B,CAAC;IAC1C;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,eAAe,CAAC,EAAE,qCAAqC,CAAC;IACxD;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,8BAA8B;;;;;;;;CAQjC,CAAC;AAEX,MAAM,MAAM,8BAA8B,GAAG,OAAO,8BAA8B,CAAC,MAAM,OAAO,8BAA8B,CAAC,CAAC;AAChI,eAAO,MAAM,qCAAqC;;;;;;CAMxC,CAAC;AAEX,MAAM,MAAM,qCAAqC,GAAG,OAAO,qCAAqC,CAAC,MAAM,OAAO,qCAAqC,CAAC,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* EFact API
|
|
6
|
+
* Compliance-as-a-service backend for Moroccan DGI electronic invoicing
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: v0.0.1-SNAPSHOT
|
|
9
|
+
* Contact: contact@itzenata.com
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
export const UpdateInvoiceRequestStatusEnum = {
|
|
16
|
+
Pending: 'PENDING',
|
|
17
|
+
Signed: 'SIGNED',
|
|
18
|
+
Transmitted: 'TRANSMITTED',
|
|
19
|
+
Accepted: 'ACCEPTED',
|
|
20
|
+
Rejected: 'REJECTED',
|
|
21
|
+
Failed: 'FAILED',
|
|
22
|
+
Cancelled: 'CANCELLED'
|
|
23
|
+
};
|
|
24
|
+
export const UpdateInvoiceRequestPaymentMethodEnum = {
|
|
25
|
+
BankTransfer: 'BANK_TRANSFER',
|
|
26
|
+
Cash: 'CASH',
|
|
27
|
+
Check: 'CHECK',
|
|
28
|
+
Card: 'CARD',
|
|
29
|
+
Other: 'OTHER'
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=update-invoice-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-invoice-request.js","sourceRoot":"","sources":["../../../src/_generated/models/update-invoice-request.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,oBAAoB;AACpB,oBAAoB;AACpB;;;;;;;;;;GAUG;AAgGH,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC1C,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;CAChB,CAAC;AAGX,MAAM,CAAC,MAAM,qCAAqC,GAAG;IACjD,YAAY,EAAE,eAAe;IAC7B,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACR,CAAC"}
|
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { InvoicesResource, type ListInvoicesParams } from "./invoices.js";
|
|
2
|
+
import type { CreateInvoiceRequest, InvoiceResponse, InvoiceStatusResponse, PageResponseInvoiceResponse, UpdateInvoiceRequest } from "./_generated/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Environnements publics et leur URL de base (host uniquement — les chemins
|
|
5
|
+
* générés portent déjà le préfixe /v1). Seuls les environnements destinés aux
|
|
6
|
+
* clients sont nommés ; le dev local passe par l'option `baseUrl`
|
|
7
|
+
* (ex. baseUrl: "http://localhost:8080").
|
|
8
|
+
*
|
|
9
|
+
* NOTE : l'URL "production" pointe temporairement sur preview, qui fait office
|
|
10
|
+
* de prod tant que l'URL de prod définitive n'est pas déployée. La changer ici
|
|
11
|
+
* (et dans les serveurs OpenAPI) suffira — aucun changement côté clients.
|
|
12
|
+
*/
|
|
13
|
+
export declare const ENVIRONMENTS: {
|
|
14
|
+
readonly production: "https://preview.efact-api.itzenata.com";
|
|
15
|
+
};
|
|
16
|
+
export type EFactEnvironment = keyof typeof ENVIRONMENTS;
|
|
17
|
+
export interface EFactOptions {
|
|
18
|
+
/** Environnement cible. Défaut "production". Ignoré si `baseUrl` est fourni. */
|
|
19
|
+
environment?: EFactEnvironment;
|
|
20
|
+
/** URL de base explicite (host), p.ex. "http://localhost:8080" en dev local. */
|
|
21
|
+
baseUrl?: string;
|
|
22
|
+
/** Délai max par requête, en ms (défaut 30000). */
|
|
23
|
+
timeout?: number;
|
|
24
|
+
/** Nombre max de nouveaux essais pour les requêtes sûres (défaut 2). */
|
|
25
|
+
maxRetries?: number;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Client EFact e-Facture.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* const efact = new EFact(process.env.EFACT_SECRET_KEY);
|
|
32
|
+
* const invoice = await efact.invoices.create({ ... });
|
|
33
|
+
*/
|
|
34
|
+
export declare class EFact {
|
|
35
|
+
private readonly http;
|
|
36
|
+
private readonly baseUrl;
|
|
37
|
+
private readonly maskedKey;
|
|
38
|
+
/** Opérations sur les factures : efact.invoices.create/list/retrieve/... */
|
|
39
|
+
readonly invoices: InvoicesResource;
|
|
40
|
+
/**
|
|
41
|
+
* @param secretKey Clé secrète au format efact_sk_... (jamais loggée en clair).
|
|
42
|
+
* @param options Options facultatives (environment, baseUrl, timeout, maxRetries).
|
|
43
|
+
*/
|
|
44
|
+
constructor(secretKey: string, options?: EFactOptions);
|
|
45
|
+
/** Configuration non sensible (la clé est toujours masquée). */
|
|
46
|
+
getConfig(): {
|
|
47
|
+
baseUrl: string;
|
|
48
|
+
apiKeyMasked: string;
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
export interface EFactClientConfig {
|
|
52
|
+
apiKey: string;
|
|
53
|
+
baseUrl?: string;
|
|
54
|
+
timeout?: number;
|
|
55
|
+
maxRetries?: number;
|
|
56
|
+
}
|
|
57
|
+
/** @deprecated Utiliser `new EFact(secretKey, { baseUrl })`. */
|
|
58
|
+
export declare class EFactClient extends EFact {
|
|
59
|
+
constructor(config: EFactClientConfig);
|
|
60
|
+
/** @deprecated Utiliser efact.invoices.create(). */
|
|
61
|
+
createInvoice(data: CreateInvoiceRequest): Promise<InvoiceResponse>;
|
|
62
|
+
/** @deprecated Utiliser efact.invoices.list(). */
|
|
63
|
+
listInvoices(params?: ListInvoicesParams): Promise<PageResponseInvoiceResponse>;
|
|
64
|
+
/** @deprecated Utiliser efact.invoices.retrieve(). */
|
|
65
|
+
getInvoice(invoiceId: string): Promise<InvoiceResponse>;
|
|
66
|
+
/** @deprecated Utiliser efact.invoices.retrieveStatus(). */
|
|
67
|
+
getInvoiceStatus(invoiceId: string): Promise<InvoiceStatusResponse>;
|
|
68
|
+
/** @deprecated Utiliser efact.invoices.update(). */
|
|
69
|
+
updateInvoice(invoiceId: string, data: UpdateInvoiceRequest): Promise<InvoiceResponse>;
|
|
70
|
+
/** @deprecated Utiliser efact.invoices.cancel(). */
|
|
71
|
+
cancelInvoice(invoiceId: string): Promise<InvoiceResponse>;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY;;CAEf,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,YAAY,CAAC;AAMzD,MAAM,WAAW,YAAY;IAC3B,gFAAgF;IAChF,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,4EAA4E;IAC5E,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;;OAGG;gBACS,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB;IAkBzD,gEAAgE;IACzD,SAAS,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE;CAG9D;AAMD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,gEAAgE;AAChE,qBAAa,WAAY,SAAQ,KAAK;gBACxB,MAAM,EAAE,iBAAiB;IAQrC,oDAAoD;IACpD,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAInE,kDAAkD;IAClD,YAAY,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAI/E,sDAAsD;IACtD,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAIvD,4DAA4D;IAC5D,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAInE,oDAAoD;IACpD,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAItF,oDAAoD;IACpD,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;CAG3D"}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { InvoicesApi } from "./_generated/api/invoices-api.js";
|
|
2
|
+
import { EFactConfigError } from "./errors.js";
|
|
3
|
+
import { createHttpInstance } from "./runtime.js";
|
|
4
|
+
import { InvoicesResource } from "./invoices.js";
|
|
5
|
+
/**
|
|
6
|
+
* Environnements publics et leur URL de base (host uniquement — les chemins
|
|
7
|
+
* générés portent déjà le préfixe /v1). Seuls les environnements destinés aux
|
|
8
|
+
* clients sont nommés ; le dev local passe par l'option `baseUrl`
|
|
9
|
+
* (ex. baseUrl: "http://localhost:8080").
|
|
10
|
+
*
|
|
11
|
+
* NOTE : l'URL "production" pointe temporairement sur preview, qui fait office
|
|
12
|
+
* de prod tant que l'URL de prod définitive n'est pas déployée. La changer ici
|
|
13
|
+
* (et dans les serveurs OpenAPI) suffira — aucun changement côté clients.
|
|
14
|
+
*/
|
|
15
|
+
export const ENVIRONMENTS = {
|
|
16
|
+
production: "https://preview.efact-api.itzenata.com",
|
|
17
|
+
};
|
|
18
|
+
const DEFAULT_ENVIRONMENT = "production";
|
|
19
|
+
const DEFAULT_TIMEOUT_MS = 30_000;
|
|
20
|
+
const DEFAULT_MAX_RETRIES = 2;
|
|
21
|
+
/**
|
|
22
|
+
* Client EFact e-Facture.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* const efact = new EFact(process.env.EFACT_SECRET_KEY);
|
|
26
|
+
* const invoice = await efact.invoices.create({ ... });
|
|
27
|
+
*/
|
|
28
|
+
export class EFact {
|
|
29
|
+
http;
|
|
30
|
+
baseUrl;
|
|
31
|
+
maskedKey;
|
|
32
|
+
/** Opérations sur les factures : efact.invoices.create/list/retrieve/... */
|
|
33
|
+
invoices;
|
|
34
|
+
/**
|
|
35
|
+
* @param secretKey Clé secrète au format efact_sk_... (jamais loggée en clair).
|
|
36
|
+
* @param options Options facultatives (environment, baseUrl, timeout, maxRetries).
|
|
37
|
+
*/
|
|
38
|
+
constructor(secretKey, options = {}) {
|
|
39
|
+
if (typeof secretKey !== "string" || secretKey.trim() === "") {
|
|
40
|
+
throw new EFactConfigError("[EFact] Erreur d'initialisation : la clé secrète est obligatoire.");
|
|
41
|
+
}
|
|
42
|
+
const key = secretKey.trim();
|
|
43
|
+
this.baseUrl = normalizeBaseUrl(resolveBaseUrl(options));
|
|
44
|
+
this.maskedKey = maskKey(key);
|
|
45
|
+
const timeoutMs = resolvePositiveInt(options.timeout, DEFAULT_TIMEOUT_MS, "timeout");
|
|
46
|
+
const maxRetries = resolveNonNegativeInt(options.maxRetries, DEFAULT_MAX_RETRIES, "maxRetries");
|
|
47
|
+
this.http = createHttpInstance(key, this.baseUrl, { timeoutMs, maxRetries });
|
|
48
|
+
// baseURL est porté par l'instance axios : InvoicesApi n'a besoin que d'elle.
|
|
49
|
+
this.invoices = new InvoicesResource(new InvoicesApi(undefined, undefined, this.http));
|
|
50
|
+
}
|
|
51
|
+
/** Configuration non sensible (la clé est toujours masquée). */
|
|
52
|
+
getConfig() {
|
|
53
|
+
return { baseUrl: this.baseUrl, apiKeyMasked: this.maskedKey };
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/** @deprecated Utiliser `new EFact(secretKey, { baseUrl })`. */
|
|
57
|
+
export class EFactClient extends EFact {
|
|
58
|
+
constructor(config) {
|
|
59
|
+
const opts = {};
|
|
60
|
+
if (config.baseUrl !== undefined)
|
|
61
|
+
opts.baseUrl = config.baseUrl;
|
|
62
|
+
if (config.timeout !== undefined)
|
|
63
|
+
opts.timeout = config.timeout;
|
|
64
|
+
if (config.maxRetries !== undefined)
|
|
65
|
+
opts.maxRetries = config.maxRetries;
|
|
66
|
+
super(config.apiKey, opts);
|
|
67
|
+
}
|
|
68
|
+
/** @deprecated Utiliser efact.invoices.create(). */
|
|
69
|
+
createInvoice(data) {
|
|
70
|
+
return this.invoices.create(data);
|
|
71
|
+
}
|
|
72
|
+
/** @deprecated Utiliser efact.invoices.list(). */
|
|
73
|
+
listInvoices(params) {
|
|
74
|
+
return this.invoices.list(params);
|
|
75
|
+
}
|
|
76
|
+
/** @deprecated Utiliser efact.invoices.retrieve(). */
|
|
77
|
+
getInvoice(invoiceId) {
|
|
78
|
+
return this.invoices.retrieve(invoiceId);
|
|
79
|
+
}
|
|
80
|
+
/** @deprecated Utiliser efact.invoices.retrieveStatus(). */
|
|
81
|
+
getInvoiceStatus(invoiceId) {
|
|
82
|
+
return this.invoices.retrieveStatus(invoiceId);
|
|
83
|
+
}
|
|
84
|
+
/** @deprecated Utiliser efact.invoices.update(). */
|
|
85
|
+
updateInvoice(invoiceId, data) {
|
|
86
|
+
return this.invoices.update(invoiceId, data);
|
|
87
|
+
}
|
|
88
|
+
/** @deprecated Utiliser efact.invoices.cancel(). */
|
|
89
|
+
cancelInvoice(invoiceId) {
|
|
90
|
+
return this.invoices.cancel(invoiceId);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
// ============================================================================
|
|
94
|
+
// Validation des options de configuration.
|
|
95
|
+
// ============================================================================
|
|
96
|
+
function resolveBaseUrl(options) {
|
|
97
|
+
if (options.baseUrl !== undefined) {
|
|
98
|
+
return options.baseUrl;
|
|
99
|
+
}
|
|
100
|
+
const env = options.environment ?? DEFAULT_ENVIRONMENT;
|
|
101
|
+
const url = ENVIRONMENTS[env];
|
|
102
|
+
if (url === undefined) {
|
|
103
|
+
const known = Object.keys(ENVIRONMENTS).join(", ");
|
|
104
|
+
throw new EFactConfigError(`[EFact] environment inconnu : "${env}". Valeurs valides : ${known}.`);
|
|
105
|
+
}
|
|
106
|
+
return url;
|
|
107
|
+
}
|
|
108
|
+
/** Valide la baseUrl (URL absolue http/https) et avertit si non-HTTPS hors localhost. */
|
|
109
|
+
function normalizeBaseUrl(raw) {
|
|
110
|
+
let parsed;
|
|
111
|
+
try {
|
|
112
|
+
parsed = new URL(raw);
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
throw new EFactConfigError(`[EFact] baseUrl invalide : "${raw}" n'est pas une URL absolue.`);
|
|
116
|
+
}
|
|
117
|
+
if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
|
|
118
|
+
throw new EFactConfigError(`[EFact] baseUrl invalide : protocole "${parsed.protocol}" non supporté (http/https requis).`);
|
|
119
|
+
}
|
|
120
|
+
const isLocal = parsed.hostname === "localhost" ||
|
|
121
|
+
parsed.hostname === "127.0.0.1" ||
|
|
122
|
+
parsed.hostname === "[::1]" ||
|
|
123
|
+
parsed.hostname === "::1";
|
|
124
|
+
if (parsed.protocol === "http:" && !isLocal) {
|
|
125
|
+
console.warn(`[EFact] Attention : baseUrl utilise HTTP non chiffré (${parsed.origin}). ` +
|
|
126
|
+
"La clé secrète transiterait en clair. Utilisez HTTPS en production.");
|
|
127
|
+
}
|
|
128
|
+
return raw;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Version masquée de la clé : au plus 4 caractères de tête/queue, jamais plus
|
|
132
|
+
* de la moitié d'une clé courte. Pour le diagnostic.
|
|
133
|
+
*/
|
|
134
|
+
function maskKey(k) {
|
|
135
|
+
if (k.length <= 8)
|
|
136
|
+
return "****";
|
|
137
|
+
return `${k.slice(0, 4)}...${k.slice(-4)}`;
|
|
138
|
+
}
|
|
139
|
+
function resolvePositiveInt(value, fallback, name) {
|
|
140
|
+
if (value === undefined)
|
|
141
|
+
return fallback;
|
|
142
|
+
if (!Number.isFinite(value) || value <= 0) {
|
|
143
|
+
throw new EFactConfigError(`[EFact] Option "${name}" invalide : un nombre positif est attendu.`);
|
|
144
|
+
}
|
|
145
|
+
return Math.floor(value);
|
|
146
|
+
}
|
|
147
|
+
function resolveNonNegativeInt(value, fallback, name) {
|
|
148
|
+
if (value === undefined)
|
|
149
|
+
return fallback;
|
|
150
|
+
if (!Number.isFinite(value) || value < 0) {
|
|
151
|
+
throw new EFactConfigError(`[EFact] Option "${name}" invalide : un entier >= 0 est attendu.`);
|
|
152
|
+
}
|
|
153
|
+
return Math.floor(value);
|
|
154
|
+
}
|
|
155
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|