mindee 3.4.0 → 3.4.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/CHANGELOG.md +9 -0
- package/README.md +5 -0
- package/package.json +19 -19
- package/src/api/index.d.ts +1 -1
- package/src/api/response.d.ts +3 -0
- package/src/client.d.ts +3 -3
- package/src/client.js +1 -1
- package/src/documents/{custom.d.ts → custom/customV1.d.ts} +4 -4
- package/src/documents/{custom.js → custom/customV1.js} +2 -2
- package/src/{fields/apiBuilder.d.ts → documents/custom/fields.d.ts} +8 -6
- package/src/{fields/apiBuilder.js → documents/custom/fields.js} +1 -1
- package/src/documents/document.d.ts +4 -4
- package/src/documents/eu/licensePlate/licensePlateV1.d.ts +2 -2
- package/src/documents/eu/licensePlate/licensePlateV1.js +1 -1
- package/src/documents/financialDocument/financialDocumentV1.d.ts +9 -9
- package/src/documents/financialDocument/financialDocumentV1.js +5 -5
- package/src/documents/fr/bankAccountDetails/bankAccountDetailsV1.d.ts +4 -4
- package/src/documents/fr/bankAccountDetails/bankAccountDetailsV1.js +3 -3
- package/src/documents/fr/carteVitale/carteVitaleV1.d.ts +4 -4
- package/src/documents/fr/carteVitale/carteVitaleV1.js +3 -3
- package/src/documents/fr/idCard/idCardV1.d.ts +9 -9
- package/src/documents/fr/idCard/idCardV1.js +8 -8
- package/src/documents/index.d.ts +1 -1
- package/src/documents/index.js +2 -2
- package/src/documents/invoice/invoiceLineItem.d.ts +2 -2
- package/src/documents/invoice/invoiceV3.d.ts +7 -7
- package/src/documents/invoice/invoiceV3.js +5 -5
- package/src/documents/invoice/invoiceV4.d.ts +7 -9
- package/src/documents/invoice/invoiceV4.js +6 -6
- package/src/documents/invoice/reconstruction.js +5 -4
- package/src/documents/passport/passportV1.d.ts +11 -11
- package/src/documents/passport/passportV1.js +15 -13
- package/src/documents/receipt/receiptV3.d.ts +4 -4
- package/src/documents/receipt/receiptV3.js +6 -7
- package/src/documents/receipt/receiptV4.d.ts +6 -6
- package/src/documents/receipt/receiptV4.js +5 -6
- package/src/documents/shipping_container/shippingContainerV1.d.ts +4 -4
- package/src/documents/shipping_container/shippingContainerV1.js +3 -3
- package/src/documents/us/bankCheck/bankCheckV1.d.ts +5 -5
- package/src/documents/us/bankCheck/bankCheckV1.js +4 -4
- package/src/fields/amount.d.ts +1 -1
- package/src/fields/amount.js +2 -0
- package/src/fields/base.d.ts +27 -0
- package/src/fields/base.js +53 -0
- package/src/fields/companyRegistration.d.ts +3 -1
- package/src/fields/date.d.ts +4 -1
- package/src/fields/date.js +16 -8
- package/src/fields/field.d.ts +8 -38
- package/src/fields/field.js +6 -53
- package/src/fields/fullText.d.ts +1 -1
- package/src/fields/fullText.js +4 -4
- package/src/fields/index.d.ts +3 -3
- package/src/fields/index.js +5 -8
- package/src/fields/locale.d.ts +13 -9
- package/src/fields/locale.js +4 -3
- package/src/fields/orientation.d.ts +3 -1
- package/src/fields/orientation.js +2 -2
- package/src/fields/paymentDetails.d.ts +4 -1
- package/src/fields/paymentDetails.js +26 -23
- package/src/fields/position.d.ts +2 -2
- package/src/fields/tax.d.ts +2 -1
- package/src/fields/text.d.ts +13 -0
- package/src/fields/text.js +10 -0
- package/src/geometry.d.ts +1 -2
- package/src/index.d.ts +4 -3
- package/src/index.js +5 -1
- package/src/inputs/sources.d.ts +4 -4
- package/src/inputs/sources.js +9 -9
package/src/fields/field.d.ts
CHANGED
|
@@ -1,33 +1,11 @@
|
|
|
1
|
+
import { StringDict, BaseField } from "./base";
|
|
1
2
|
import { Polygon } from "../geometry";
|
|
2
|
-
export type stringDict = {
|
|
3
|
-
[index: string]: any;
|
|
4
|
-
};
|
|
5
3
|
export interface FieldConstructor {
|
|
6
|
-
prediction:
|
|
4
|
+
prediction: StringDict;
|
|
7
5
|
valueKey?: string;
|
|
8
6
|
reconstructed?: boolean;
|
|
9
7
|
pageId?: number | undefined;
|
|
10
8
|
}
|
|
11
|
-
export interface BaseFieldConstructor {
|
|
12
|
-
prediction: stringDict;
|
|
13
|
-
valueKey?: string;
|
|
14
|
-
reconstructed?: boolean;
|
|
15
|
-
}
|
|
16
|
-
export declare class BaseField {
|
|
17
|
-
/** The value. */
|
|
18
|
-
value?: any;
|
|
19
|
-
/**
|
|
20
|
-
* True if the field was reconstructed or computed using other fields.
|
|
21
|
-
*/
|
|
22
|
-
reconstructed: boolean;
|
|
23
|
-
/**
|
|
24
|
-
* @param {Object} prediction - Prediction object from HTTP response
|
|
25
|
-
* @param {String} valueKey - Key to use in the prediction dict
|
|
26
|
-
* @param {Boolean} reconstructed - Does the object is reconstructed (not extracted by the API)
|
|
27
|
-
*/
|
|
28
|
-
constructor({ prediction, valueKey, reconstructed, }: BaseFieldConstructor);
|
|
29
|
-
toString(): string;
|
|
30
|
-
}
|
|
31
9
|
export declare class Field extends BaseField {
|
|
32
10
|
/**
|
|
33
11
|
* Contains exactly 4 relative vertices coordinates (points) of a right
|
|
@@ -40,10 +18,8 @@ export declare class Field extends BaseField {
|
|
|
40
18
|
*/
|
|
41
19
|
polygon: Polygon;
|
|
42
20
|
/** The document page on which the information was found. */
|
|
43
|
-
pageId: number
|
|
44
|
-
/**
|
|
45
|
-
* The confidence score of the prediction.
|
|
46
|
-
*/
|
|
21
|
+
pageId: number;
|
|
22
|
+
/** The confidence score of the prediction. */
|
|
47
23
|
confidence: number;
|
|
48
24
|
/**
|
|
49
25
|
* @param {Object} prediction - Prediction object from HTTP response
|
|
@@ -53,22 +29,16 @@ export declare class Field extends BaseField {
|
|
|
53
29
|
* @param {Array<String>} extraFields - Extra fields to get from the prediction and to set as attribute of the Field
|
|
54
30
|
*/
|
|
55
31
|
constructor({ prediction, valueKey, reconstructed, pageId, }: FieldConstructor);
|
|
56
|
-
compare(other: Field): boolean;
|
|
57
32
|
/**
|
|
58
|
-
@param {
|
|
59
|
-
@param {
|
|
33
|
+
@param {Field[]} array1 - first Array of Fields
|
|
34
|
+
@param {Field[]} array2 - second Array of Fields
|
|
60
35
|
@param {String} attr - Attribute to compare
|
|
61
36
|
@returns {Boolean} - true if all elements in array1 exist in array2 and vice-versa, false otherwise
|
|
62
37
|
*/
|
|
63
38
|
static compareArrays(array1: Field[], array2: Field[], attr?: string): boolean;
|
|
64
39
|
/**
|
|
65
|
-
* @param {
|
|
40
|
+
* @param {Field[]} array - Array of Fields
|
|
66
41
|
* @returns {Number} product of all the fields probaility
|
|
67
42
|
*/
|
|
68
|
-
static arrayConfidence(array:
|
|
69
|
-
/**
|
|
70
|
-
* @param {Array<Field>} array - Array of Fields
|
|
71
|
-
* @returns {Number} Sum of all the Fields values in the array
|
|
72
|
-
*/
|
|
73
|
-
static arraySum(array: any): number;
|
|
43
|
+
static arrayConfidence(array: Field[]): number;
|
|
74
44
|
}
|
package/src/fields/field.js
CHANGED
|
@@ -1,33 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Field =
|
|
3
|
+
exports.Field = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
4
5
|
const geometry_1 = require("../geometry");
|
|
5
|
-
class BaseField {
|
|
6
|
-
/**
|
|
7
|
-
* @param {Object} prediction - Prediction object from HTTP response
|
|
8
|
-
* @param {String} valueKey - Key to use in the prediction dict
|
|
9
|
-
* @param {Boolean} reconstructed - Does the object is reconstructed (not extracted by the API)
|
|
10
|
-
*/
|
|
11
|
-
constructor({ prediction, valueKey = "value", reconstructed = false, }) {
|
|
12
|
-
/** The value. */
|
|
13
|
-
this.value = undefined;
|
|
14
|
-
this.reconstructed = reconstructed;
|
|
15
|
-
if (prediction !== undefined &&
|
|
16
|
-
prediction !== null &&
|
|
17
|
-
valueKey in prediction &&
|
|
18
|
-
prediction[valueKey] !== null) {
|
|
19
|
-
this.value = prediction[valueKey];
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
toString() {
|
|
23
|
-
if (this.value !== undefined) {
|
|
24
|
-
return `${this.value}`;
|
|
25
|
-
}
|
|
26
|
-
return "";
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
exports.BaseField = BaseField;
|
|
30
|
-
class Field extends BaseField {
|
|
6
|
+
class Field extends base_1.BaseField {
|
|
31
7
|
/**
|
|
32
8
|
* @param {Object} prediction - Prediction object from HTTP response
|
|
33
9
|
* @param {String} valueKey - Key to use in the prediction dict
|
|
@@ -54,19 +30,9 @@ class Field extends BaseField {
|
|
|
54
30
|
this.bbox = (0, geometry_1.getBboxAsPolygon)(prediction.polygon);
|
|
55
31
|
}
|
|
56
32
|
}
|
|
57
|
-
compare(other) {
|
|
58
|
-
if (this.value === null && other.value === null)
|
|
59
|
-
return true;
|
|
60
|
-
if (this.value === null || other.value === null)
|
|
61
|
-
return false;
|
|
62
|
-
if (typeof this.value === "string") {
|
|
63
|
-
return this.value.toLowerCase() === other.value.toLowerCase();
|
|
64
|
-
}
|
|
65
|
-
return this.value === other.value;
|
|
66
|
-
}
|
|
67
33
|
/**
|
|
68
|
-
@param {
|
|
69
|
-
@param {
|
|
34
|
+
@param {Field[]} array1 - first Array of Fields
|
|
35
|
+
@param {Field[]} array2 - second Array of Fields
|
|
70
36
|
@param {String} attr - Attribute to compare
|
|
71
37
|
@returns {Boolean} - true if all elements in array1 exist in array2 and vice-versa, false otherwise
|
|
72
38
|
*/
|
|
@@ -82,7 +48,7 @@ class Field extends BaseField {
|
|
|
82
48
|
return true;
|
|
83
49
|
}
|
|
84
50
|
/**
|
|
85
|
-
* @param {
|
|
51
|
+
* @param {Field[]} array - Array of Fields
|
|
86
52
|
* @returns {Number} product of all the fields probaility
|
|
87
53
|
*/
|
|
88
54
|
static arrayConfidence(array) {
|
|
@@ -94,18 +60,5 @@ class Field extends BaseField {
|
|
|
94
60
|
}
|
|
95
61
|
return total;
|
|
96
62
|
}
|
|
97
|
-
/**
|
|
98
|
-
* @param {Array<Field>} array - Array of Fields
|
|
99
|
-
* @returns {Number} Sum of all the Fields values in the array
|
|
100
|
-
*/
|
|
101
|
-
static arraySum(array) {
|
|
102
|
-
let total = 0.0;
|
|
103
|
-
for (const field of array) {
|
|
104
|
-
total += field.value;
|
|
105
|
-
if (isNaN(total))
|
|
106
|
-
return 0.0;
|
|
107
|
-
}
|
|
108
|
-
return total;
|
|
109
|
-
}
|
|
110
63
|
}
|
|
111
64
|
exports.Field = Field;
|
package/src/fields/fullText.d.ts
CHANGED
package/src/fields/fullText.js
CHANGED
|
@@ -27,22 +27,22 @@ exports.FullText = void 0;
|
|
|
27
27
|
const geometry = __importStar(require("../geometry"));
|
|
28
28
|
function orderLines(fullText) {
|
|
29
29
|
const lines = [];
|
|
30
|
-
const
|
|
30
|
+
const indexes = [];
|
|
31
31
|
let current = undefined;
|
|
32
32
|
fullText.forEach(() => {
|
|
33
33
|
let line = [];
|
|
34
34
|
fullText.forEach((word, idx) => {
|
|
35
|
-
if (!
|
|
35
|
+
if (!indexes.includes(idx)) {
|
|
36
36
|
if (current === undefined) {
|
|
37
37
|
current = word;
|
|
38
|
-
|
|
38
|
+
indexes.push(idx);
|
|
39
39
|
line = [current];
|
|
40
40
|
}
|
|
41
41
|
else {
|
|
42
42
|
const centroid = geometry.getCentroid(word.polygon);
|
|
43
43
|
if (geometry.isPointInPolygonY(centroid, current.polygon)) {
|
|
44
44
|
line.push(word);
|
|
45
|
-
|
|
45
|
+
indexes.push(idx);
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
}
|
package/src/fields/index.d.ts
CHANGED
|
@@ -4,8 +4,8 @@ export { OrientationField } from "./orientation";
|
|
|
4
4
|
export { Locale } from "./locale";
|
|
5
5
|
export { Amount } from "./amount";
|
|
6
6
|
export { DateField } from "./date";
|
|
7
|
-
export { BaseField,
|
|
8
|
-
export {
|
|
9
|
-
export { FullText } from "./fullText";
|
|
7
|
+
export { BaseField, StringDict } from "./base";
|
|
8
|
+
export { FullText, Word } from "./fullText";
|
|
10
9
|
export { CompanyRegistration } from "./companyRegistration";
|
|
11
10
|
export { PositionField } from "./position";
|
|
11
|
+
export { TextField } from "./text";
|
package/src/fields/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.TextField = exports.PositionField = exports.CompanyRegistration = exports.FullText = exports.BaseField = exports.DateField = exports.Amount = exports.Locale = exports.OrientationField = exports.PaymentDetails = exports.TaxField = void 0;
|
|
4
4
|
var tax_1 = require("./tax");
|
|
5
5
|
Object.defineProperty(exports, "TaxField", { enumerable: true, get: function () { return tax_1.TaxField; } });
|
|
6
6
|
var paymentDetails_1 = require("./paymentDetails");
|
|
@@ -13,16 +13,13 @@ var amount_1 = require("./amount");
|
|
|
13
13
|
Object.defineProperty(exports, "Amount", { enumerable: true, get: function () { return amount_1.Amount; } });
|
|
14
14
|
var date_1 = require("./date");
|
|
15
15
|
Object.defineProperty(exports, "DateField", { enumerable: true, get: function () { return date_1.DateField; } });
|
|
16
|
-
var
|
|
17
|
-
Object.defineProperty(exports, "BaseField", { enumerable: true, get: function () { return
|
|
18
|
-
Object.defineProperty(exports, "Field", { enumerable: true, get: function () { return field_1.Field; } });
|
|
19
|
-
var apiBuilder_1 = require("./apiBuilder");
|
|
20
|
-
Object.defineProperty(exports, "ListField", { enumerable: true, get: function () { return apiBuilder_1.ListField; } });
|
|
21
|
-
Object.defineProperty(exports, "ListFieldValue", { enumerable: true, get: function () { return apiBuilder_1.ListFieldValue; } });
|
|
22
|
-
Object.defineProperty(exports, "ClassificationField", { enumerable: true, get: function () { return apiBuilder_1.ClassificationField; } });
|
|
16
|
+
var base_1 = require("./base");
|
|
17
|
+
Object.defineProperty(exports, "BaseField", { enumerable: true, get: function () { return base_1.BaseField; } });
|
|
23
18
|
var fullText_1 = require("./fullText");
|
|
24
19
|
Object.defineProperty(exports, "FullText", { enumerable: true, get: function () { return fullText_1.FullText; } });
|
|
25
20
|
var companyRegistration_1 = require("./companyRegistration");
|
|
26
21
|
Object.defineProperty(exports, "CompanyRegistration", { enumerable: true, get: function () { return companyRegistration_1.CompanyRegistration; } });
|
|
27
22
|
var position_1 = require("./position");
|
|
28
23
|
Object.defineProperty(exports, "PositionField", { enumerable: true, get: function () { return position_1.PositionField; } });
|
|
24
|
+
var text_1 = require("./text");
|
|
25
|
+
Object.defineProperty(exports, "TextField", { enumerable: true, get: function () { return text_1.TextField; } });
|
package/src/fields/locale.d.ts
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare class Locale extends
|
|
3
|
-
/**
|
|
4
|
-
|
|
5
|
-
/** The
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
|
|
1
|
+
import { BaseField, BaseFieldConstructor } from "./base";
|
|
2
|
+
export declare class Locale extends BaseField {
|
|
3
|
+
/** Locale in ISO format. */
|
|
4
|
+
value?: string;
|
|
5
|
+
/** The confidence score of the prediction. */
|
|
6
|
+
confidence: number;
|
|
7
|
+
/** ISO 639-1 language code */
|
|
8
|
+
language?: string;
|
|
9
|
+
/** ISO 3166-1 alpha-2 country code */
|
|
10
|
+
country?: string;
|
|
11
|
+
/** ISO 4217 currency code */
|
|
12
|
+
currency?: string;
|
|
9
13
|
/**
|
|
10
14
|
* @param {Object} prediction - Prediction object from HTTP response
|
|
11
15
|
* @param {String} valueKey - Key to use in the prediction dict
|
|
12
16
|
* @param {boolean} reconstructed - Does the object is reconstructed (not extracted by the API)
|
|
13
17
|
*/
|
|
14
|
-
constructor({ prediction, reconstructed, valueKey }:
|
|
18
|
+
constructor({ prediction, reconstructed, valueKey, }: BaseFieldConstructor);
|
|
15
19
|
toString(): string;
|
|
16
20
|
}
|
package/src/fields/locale.js
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Locale = void 0;
|
|
4
|
-
const
|
|
5
|
-
class Locale extends
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
class Locale extends base_1.BaseField {
|
|
6
6
|
/**
|
|
7
7
|
* @param {Object} prediction - Prediction object from HTTP response
|
|
8
8
|
* @param {String} valueKey - Key to use in the prediction dict
|
|
9
9
|
* @param {boolean} reconstructed - Does the object is reconstructed (not extracted by the API)
|
|
10
10
|
*/
|
|
11
|
-
constructor({ prediction, reconstructed = false, valueKey = "value" }) {
|
|
11
|
+
constructor({ prediction, reconstructed = false, valueKey = "value", }) {
|
|
12
12
|
super({ prediction, valueKey, reconstructed });
|
|
13
|
+
this.confidence = prediction.confidence ? prediction.confidence : 0.0;
|
|
13
14
|
this.language = undefined;
|
|
14
15
|
this.country = undefined;
|
|
15
16
|
this.currency = undefined;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { BaseField, BaseFieldConstructor } from "./
|
|
1
|
+
import { BaseField, BaseFieldConstructor } from "./base";
|
|
2
2
|
interface OrientationFieldConstructor extends BaseFieldConstructor {
|
|
3
3
|
pageId: number;
|
|
4
4
|
}
|
|
5
5
|
export declare class OrientationField extends BaseField {
|
|
6
|
+
/** Degrees of the rotation. */
|
|
6
7
|
value: number;
|
|
8
|
+
/** Page id. */
|
|
7
9
|
pageId: number;
|
|
8
10
|
/**
|
|
9
11
|
* @param {Object} prediction - Prediction object from HTTP response
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.OrientationField = void 0;
|
|
4
|
-
const
|
|
5
|
-
class OrientationField extends
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
class OrientationField extends base_1.BaseField {
|
|
6
6
|
/**
|
|
7
7
|
* @param {Object} prediction - Prediction object from HTTP response
|
|
8
8
|
* @param {String} valueKey - Key to use in the prediction dict
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { StringDict } from "./base";
|
|
1
2
|
import { Field } from "./field";
|
|
2
3
|
interface PaymentDetailsConstructor {
|
|
3
|
-
prediction:
|
|
4
|
+
prediction: StringDict;
|
|
4
5
|
valueKey?: string;
|
|
5
6
|
accountNumberKey?: string;
|
|
6
7
|
ibanKey?: string;
|
|
@@ -11,6 +12,8 @@ interface PaymentDetailsConstructor {
|
|
|
11
12
|
}
|
|
12
13
|
export declare class PaymentDetails extends Field {
|
|
13
14
|
#private;
|
|
15
|
+
/** Synonym for the `iban` property */
|
|
16
|
+
value?: string | undefined;
|
|
14
17
|
/** The account number. */
|
|
15
18
|
accountNumber: number | undefined;
|
|
16
19
|
/** The account IBAN. */
|
|
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
5
5
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
6
6
|
};
|
|
7
|
-
var
|
|
7
|
+
var _a, _PaymentDetails_isKeySet;
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.PaymentDetails = void 0;
|
|
10
10
|
const field_1 = require("./field");
|
|
@@ -21,38 +21,41 @@ class PaymentDetails extends field_1.Field {
|
|
|
21
21
|
*/
|
|
22
22
|
constructor({ prediction, valueKey = "iban", accountNumberKey = "account_number", ibanKey = "iban", routingNumberKey = "routing_number", swiftKey = "swift", reconstructed = false, pageId = undefined, }) {
|
|
23
23
|
super({ prediction, valueKey, reconstructed, pageId });
|
|
24
|
-
_PaymentDetails_instances.add(this);
|
|
25
24
|
this.accountNumber = undefined;
|
|
26
25
|
this.iban = undefined;
|
|
27
26
|
this.routingNumber = undefined;
|
|
28
27
|
this.swift = undefined;
|
|
29
|
-
__classPrivateFieldGet(
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
__classPrivateFieldGet(
|
|
28
|
+
if (__classPrivateFieldGet(PaymentDetails, _a, "m", _PaymentDetails_isKeySet).call(PaymentDetails, prediction[accountNumberKey])) {
|
|
29
|
+
this.accountNumber = prediction[accountNumberKey];
|
|
30
|
+
}
|
|
31
|
+
if (__classPrivateFieldGet(PaymentDetails, _a, "m", _PaymentDetails_isKeySet).call(PaymentDetails, prediction[ibanKey])) {
|
|
32
|
+
this.iban = prediction[ibanKey];
|
|
33
|
+
}
|
|
34
|
+
if (__classPrivateFieldGet(PaymentDetails, _a, "m", _PaymentDetails_isKeySet).call(PaymentDetails, prediction[routingNumberKey])) {
|
|
35
|
+
this.routingNumber = prediction[routingNumberKey];
|
|
36
|
+
}
|
|
37
|
+
if (__classPrivateFieldGet(PaymentDetails, _a, "m", _PaymentDetails_isKeySet).call(PaymentDetails, prediction[swiftKey])) {
|
|
38
|
+
this.swift = prediction[swiftKey];
|
|
39
|
+
}
|
|
33
40
|
}
|
|
34
41
|
toString() {
|
|
35
42
|
let str = "";
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
43
|
+
if (this.accountNumber !== undefined) {
|
|
44
|
+
str += `${this.accountNumber}; `;
|
|
45
|
+
}
|
|
46
|
+
if (this.iban !== undefined) {
|
|
47
|
+
str += `${this.iban}; `;
|
|
48
|
+
}
|
|
49
|
+
if (this.routingNumber !== undefined) {
|
|
50
|
+
str += `${this.routingNumber}; `;
|
|
51
|
+
}
|
|
52
|
+
if (this.swift !== undefined) {
|
|
53
|
+
str += `${this.swift}; `;
|
|
42
54
|
}
|
|
43
55
|
return str;
|
|
44
56
|
}
|
|
45
57
|
}
|
|
46
58
|
exports.PaymentDetails = PaymentDetails;
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
50
|
-
// @ts-ignore
|
|
51
|
-
this[key] = value;
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
55
|
-
// @ts-ignore
|
|
56
|
-
this[key] = undefined;
|
|
57
|
-
}
|
|
59
|
+
_a = PaymentDetails, _PaymentDetails_isKeySet = function _PaymentDetails_isKeySet(value) {
|
|
60
|
+
return typeof value === "string" && value !== "N/A";
|
|
58
61
|
};
|
package/src/fields/position.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { StringDict } from "./base";
|
|
2
2
|
import { Polygon } from "../geometry";
|
|
3
3
|
export interface PositionFieldConstructor {
|
|
4
|
-
prediction:
|
|
4
|
+
prediction: StringDict;
|
|
5
5
|
valueKey?: string;
|
|
6
6
|
pageId?: number | undefined;
|
|
7
7
|
}
|
package/src/fields/tax.d.ts
CHANGED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { StringDict } from "./base";
|
|
2
|
+
import { Field } from "./field";
|
|
3
|
+
export interface FieldConstructor {
|
|
4
|
+
prediction: StringDict;
|
|
5
|
+
valueKey?: string;
|
|
6
|
+
reconstructed?: boolean;
|
|
7
|
+
pageId?: number | undefined;
|
|
8
|
+
}
|
|
9
|
+
export declare class TextField extends Field {
|
|
10
|
+
/** The value. */
|
|
11
|
+
value?: string;
|
|
12
|
+
constructor({ prediction, valueKey, reconstructed, pageId, }: FieldConstructor);
|
|
13
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TextField = void 0;
|
|
4
|
+
const field_1 = require("./field");
|
|
5
|
+
class TextField extends field_1.Field {
|
|
6
|
+
constructor({ prediction, valueKey = "value", reconstructed = false, pageId, }) {
|
|
7
|
+
super({ prediction, valueKey, reconstructed, pageId });
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.TextField = TextField;
|
package/src/geometry.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
type MinMax = {
|
|
1
|
+
export type MinMax = {
|
|
2
2
|
min: number;
|
|
3
3
|
max: number;
|
|
4
4
|
};
|
|
@@ -56,4 +56,3 @@ export declare function isPointInPolygonX(centroid: Point, polygon: Polygon): bo
|
|
|
56
56
|
* Can be used to order (sort) words in the same line.
|
|
57
57
|
*/
|
|
58
58
|
export declare function relativeX(polygon: Polygon): number;
|
|
59
|
-
export {};
|
package/src/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export { CustomV1, FinancialDocumentV1, InvoiceV3, InvoiceV4, PassportV1, ReceiptV3, ReceiptV4, CropperV1, ShippingContainerV1, fr, us, eu, } from "./documents";
|
|
2
|
-
export { Client, ClientOptions } from "./client";
|
|
3
|
-
export {
|
|
1
|
+
export { CustomV1, Document, FinancialDocumentV1, InvoiceV3, InvoiceV4, PassportV1, ReceiptV3, ReceiptV4, CropperV1, ShippingContainerV1, fr, us, eu, } from "./documents";
|
|
2
|
+
export { Client, ClientOptions, CustomConfigParams, PredictOptions, } from "./client";
|
|
3
|
+
export { ResponseSig, Response } from "./api";
|
|
4
|
+
export { InputSource, PageOptionsOperation } from "./inputs";
|
package/src/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PageOptionsOperation = exports.Client = exports.eu = exports.us = exports.fr = exports.ShippingContainerV1 = exports.CropperV1 = exports.ReceiptV4 = exports.ReceiptV3 = exports.PassportV1 = exports.InvoiceV4 = exports.InvoiceV3 = exports.FinancialDocumentV1 = exports.CustomV1 = void 0;
|
|
3
|
+
exports.PageOptionsOperation = exports.InputSource = exports.Response = exports.Client = exports.eu = exports.us = exports.fr = exports.ShippingContainerV1 = exports.CropperV1 = exports.ReceiptV4 = exports.ReceiptV3 = exports.PassportV1 = exports.InvoiceV4 = exports.InvoiceV3 = exports.FinancialDocumentV1 = exports.Document = exports.CustomV1 = void 0;
|
|
4
4
|
var documents_1 = require("./documents");
|
|
5
5
|
Object.defineProperty(exports, "CustomV1", { enumerable: true, get: function () { return documents_1.CustomV1; } });
|
|
6
|
+
Object.defineProperty(exports, "Document", { enumerable: true, get: function () { return documents_1.Document; } });
|
|
6
7
|
Object.defineProperty(exports, "FinancialDocumentV1", { enumerable: true, get: function () { return documents_1.FinancialDocumentV1; } });
|
|
7
8
|
Object.defineProperty(exports, "InvoiceV3", { enumerable: true, get: function () { return documents_1.InvoiceV3; } });
|
|
8
9
|
Object.defineProperty(exports, "InvoiceV4", { enumerable: true, get: function () { return documents_1.InvoiceV4; } });
|
|
@@ -16,5 +17,8 @@ Object.defineProperty(exports, "us", { enumerable: true, get: function () { retu
|
|
|
16
17
|
Object.defineProperty(exports, "eu", { enumerable: true, get: function () { return documents_1.eu; } });
|
|
17
18
|
var client_1 = require("./client");
|
|
18
19
|
Object.defineProperty(exports, "Client", { enumerable: true, get: function () { return client_1.Client; } });
|
|
20
|
+
var api_1 = require("./api");
|
|
21
|
+
Object.defineProperty(exports, "Response", { enumerable: true, get: function () { return api_1.Response; } });
|
|
19
22
|
var inputs_1 = require("./inputs");
|
|
23
|
+
Object.defineProperty(exports, "InputSource", { enumerable: true, get: function () { return inputs_1.InputSource; } });
|
|
20
24
|
Object.defineProperty(exports, "PageOptionsOperation", { enumerable: true, get: function () { return inputs_1.PageOptionsOperation; } });
|
package/src/inputs/sources.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
-
import {
|
|
4
|
-
import { Buffer } from "
|
|
3
|
+
import { Readable } from "stream";
|
|
4
|
+
import { Buffer } from "buffer";
|
|
5
5
|
import { InputSource } from "./base";
|
|
6
6
|
interface PathInputProps {
|
|
7
7
|
inputPath: string;
|
|
@@ -23,7 +23,7 @@ export declare class Base64Input extends InputSource {
|
|
|
23
23
|
init(): Promise<void>;
|
|
24
24
|
}
|
|
25
25
|
interface StreamInputProps {
|
|
26
|
-
inputStream:
|
|
26
|
+
inputStream: Readable;
|
|
27
27
|
filename: string;
|
|
28
28
|
}
|
|
29
29
|
export declare class StreamInput extends InputSource {
|
|
@@ -31,7 +31,7 @@ export declare class StreamInput extends InputSource {
|
|
|
31
31
|
fileObject: Buffer;
|
|
32
32
|
constructor({ inputStream, filename }: StreamInputProps);
|
|
33
33
|
init(): Promise<void>;
|
|
34
|
-
stream2buffer(stream:
|
|
34
|
+
stream2buffer(stream: Readable): Promise<Buffer>;
|
|
35
35
|
}
|
|
36
36
|
interface BytesInputProps {
|
|
37
37
|
inputBytes: string;
|
package/src/inputs/sources.js
CHANGED
|
@@ -27,7 +27,7 @@ exports.BufferInput = exports.UrlInput = exports.BytesInput = exports.StreamInpu
|
|
|
27
27
|
const fs_1 = require("fs");
|
|
28
28
|
const path = __importStar(require("path"));
|
|
29
29
|
const handler_1 = require("../errors/handler");
|
|
30
|
-
const
|
|
30
|
+
const buffer_1 = require("buffer");
|
|
31
31
|
const logger_1 = require("../logger");
|
|
32
32
|
const base_1 = require("./base");
|
|
33
33
|
class PathInput extends base_1.InputSource {
|
|
@@ -35,13 +35,13 @@ class PathInput extends base_1.InputSource {
|
|
|
35
35
|
super({
|
|
36
36
|
inputType: base_1.INPUT_TYPE_PATH,
|
|
37
37
|
});
|
|
38
|
-
this.fileObject =
|
|
38
|
+
this.fileObject = buffer_1.Buffer.alloc(0);
|
|
39
39
|
this.inputPath = inputPath;
|
|
40
40
|
this.filename = path.basename(this.inputPath);
|
|
41
41
|
}
|
|
42
42
|
async init() {
|
|
43
43
|
logger_1.logger.debug(`Loading from: ${this.inputPath}`);
|
|
44
|
-
this.fileObject =
|
|
44
|
+
this.fileObject = buffer_1.Buffer.from(await fs_1.promises.readFile(this.inputPath));
|
|
45
45
|
this.mimeType = await this.checkMimetype();
|
|
46
46
|
}
|
|
47
47
|
}
|
|
@@ -51,12 +51,12 @@ class Base64Input extends base_1.InputSource {
|
|
|
51
51
|
super({
|
|
52
52
|
inputType: base_1.INPUT_TYPE_BASE64,
|
|
53
53
|
});
|
|
54
|
-
this.fileObject =
|
|
54
|
+
this.fileObject = buffer_1.Buffer.alloc(0);
|
|
55
55
|
this.filename = filename;
|
|
56
56
|
this.inputString = inputString;
|
|
57
57
|
}
|
|
58
58
|
async init() {
|
|
59
|
-
this.fileObject =
|
|
59
|
+
this.fileObject = buffer_1.Buffer.from(this.inputString, "base64");
|
|
60
60
|
this.mimeType = await this.checkMimetype();
|
|
61
61
|
// clear out the string
|
|
62
62
|
this.inputString = "";
|
|
@@ -68,7 +68,7 @@ class StreamInput extends base_1.InputSource {
|
|
|
68
68
|
super({
|
|
69
69
|
inputType: base_1.INPUT_TYPE_STREAM,
|
|
70
70
|
});
|
|
71
|
-
this.fileObject =
|
|
71
|
+
this.fileObject = buffer_1.Buffer.alloc(0);
|
|
72
72
|
this.filename = filename;
|
|
73
73
|
this.inputStream = inputStream;
|
|
74
74
|
}
|
|
@@ -80,7 +80,7 @@ class StreamInput extends base_1.InputSource {
|
|
|
80
80
|
return new Promise((resolve, reject) => {
|
|
81
81
|
const _buf = Array();
|
|
82
82
|
stream.on("data", (chunk) => _buf.push(chunk));
|
|
83
|
-
stream.on("end", () => resolve(
|
|
83
|
+
stream.on("end", () => resolve(buffer_1.Buffer.concat(_buf)));
|
|
84
84
|
stream.on("error", (err) => reject(`Error converting stream - ${err}`));
|
|
85
85
|
});
|
|
86
86
|
}
|
|
@@ -91,12 +91,12 @@ class BytesInput extends base_1.InputSource {
|
|
|
91
91
|
super({
|
|
92
92
|
inputType: base_1.INPUT_TYPE_BYTES,
|
|
93
93
|
});
|
|
94
|
-
this.fileObject =
|
|
94
|
+
this.fileObject = buffer_1.Buffer.alloc(0);
|
|
95
95
|
this.filename = filename;
|
|
96
96
|
this.inputBytes = inputBytes;
|
|
97
97
|
}
|
|
98
98
|
async init() {
|
|
99
|
-
this.fileObject =
|
|
99
|
+
this.fileObject = buffer_1.Buffer.from(this.inputBytes, "hex");
|
|
100
100
|
this.mimeType = await this.checkMimetype();
|
|
101
101
|
// clear out the string
|
|
102
102
|
this.inputBytes = "";
|