xfingine 0.0.2 → 0.1.0
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/package.json +1 -1
- package/xfingine.d.ts +68 -0
- package/xfingine.js +82 -0
- package/xfingine_bg.wasm +0 -0
package/package.json
CHANGED
package/xfingine.d.ts
CHANGED
|
@@ -91,6 +91,58 @@ export interface EmiResult {
|
|
|
91
91
|
|
|
92
92
|
|
|
93
93
|
|
|
94
|
+
export interface CategoryRule {
|
|
95
|
+
pattern: string;
|
|
96
|
+
category: string;
|
|
97
|
+
merchant: string;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export interface MapInput {
|
|
101
|
+
narration: string;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
export interface MapOutput {
|
|
105
|
+
category: string;
|
|
106
|
+
merchant: string;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
export interface CategorizeRequest {
|
|
110
|
+
data: MapInput[];
|
|
111
|
+
rules: CategoryRule[];
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export interface CategorizeResponse {
|
|
115
|
+
data: (MapOutput | null)[];
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
export interface DeriveInput {
|
|
119
|
+
narration: string;
|
|
120
|
+
category: string;
|
|
121
|
+
merchant: string;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export interface DeriveRulesRequest {
|
|
125
|
+
data: DeriveInput[];
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
export interface DeriveRulesResponse {
|
|
129
|
+
rules: CategoryRule[];
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Run the engine over a plain JavaScript object, returning a plain
|
|
136
|
+
* JavaScript object.
|
|
137
|
+
*/
|
|
138
|
+
export function categorize_transactions(request: CategorizeRequest): CategorizeResponse;
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* Run the engine over a JSON request string, returning a JSON result
|
|
142
|
+
* string.
|
|
143
|
+
*/
|
|
144
|
+
export function categorize_transactions_json(request_json: string): string;
|
|
145
|
+
|
|
94
146
|
/**
|
|
95
147
|
* Run the engine over a plain JavaScript object, returning a plain
|
|
96
148
|
* JavaScript object.
|
|
@@ -103,6 +155,18 @@ export function compute_emi(request: EmiRequest): EmiResult;
|
|
|
103
155
|
*/
|
|
104
156
|
export function compute_emi_json(request_json: string): string;
|
|
105
157
|
|
|
158
|
+
/**
|
|
159
|
+
* Run the engine over a plain JavaScript object, returning a plain
|
|
160
|
+
* JavaScript object.
|
|
161
|
+
*/
|
|
162
|
+
export function derive_rules(request: DeriveRulesRequest): DeriveRulesResponse;
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Run the engine over a JSON request string, returning a JSON result
|
|
166
|
+
* string.
|
|
167
|
+
*/
|
|
168
|
+
export function derive_rules_json(request_json: string): string;
|
|
169
|
+
|
|
106
170
|
/**
|
|
107
171
|
* The version of the `xfingine` engine this bundle was built from.
|
|
108
172
|
*/
|
|
@@ -112,6 +176,10 @@ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembl
|
|
|
112
176
|
|
|
113
177
|
export interface InitOutput {
|
|
114
178
|
readonly memory: WebAssembly.Memory;
|
|
179
|
+
readonly categorize_transactions: (a: any) => [number, number, number];
|
|
180
|
+
readonly categorize_transactions_json: (a: number, b: number) => [number, number, number, number];
|
|
181
|
+
readonly derive_rules: (a: any) => [number, number, number];
|
|
182
|
+
readonly derive_rules_json: (a: number, b: number) => [number, number, number, number];
|
|
115
183
|
readonly compute_emi: (a: any) => [number, number, number];
|
|
116
184
|
readonly compute_emi_json: (a: number, b: number) => [number, number, number, number];
|
|
117
185
|
readonly version: () => [number, number];
|
package/xfingine.js
CHANGED
|
@@ -1,5 +1,46 @@
|
|
|
1
1
|
/* @ts-self-types="./xfingine.d.ts" */
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* Run the engine over a plain JavaScript object, returning a plain
|
|
5
|
+
* JavaScript object.
|
|
6
|
+
* @param {CategorizeRequest} request
|
|
7
|
+
* @returns {CategorizeResponse}
|
|
8
|
+
*/
|
|
9
|
+
export function categorize_transactions(request) {
|
|
10
|
+
const ret = wasm.categorize_transactions(request);
|
|
11
|
+
if (ret[2]) {
|
|
12
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
13
|
+
}
|
|
14
|
+
return takeFromExternrefTable0(ret[0]);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Run the engine over a JSON request string, returning a JSON result
|
|
19
|
+
* string.
|
|
20
|
+
* @param {string} request_json
|
|
21
|
+
* @returns {string}
|
|
22
|
+
*/
|
|
23
|
+
export function categorize_transactions_json(request_json) {
|
|
24
|
+
let deferred3_0;
|
|
25
|
+
let deferred3_1;
|
|
26
|
+
try {
|
|
27
|
+
const ptr0 = passStringToWasm0(request_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
28
|
+
const len0 = WASM_VECTOR_LEN;
|
|
29
|
+
const ret = wasm.categorize_transactions_json(ptr0, len0);
|
|
30
|
+
var ptr2 = ret[0];
|
|
31
|
+
var len2 = ret[1];
|
|
32
|
+
if (ret[3]) {
|
|
33
|
+
ptr2 = 0; len2 = 0;
|
|
34
|
+
throw takeFromExternrefTable0(ret[2]);
|
|
35
|
+
}
|
|
36
|
+
deferred3_0 = ptr2;
|
|
37
|
+
deferred3_1 = len2;
|
|
38
|
+
return getStringFromWasm0(ptr2, len2);
|
|
39
|
+
} finally {
|
|
40
|
+
wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
3
44
|
/**
|
|
4
45
|
* Run the engine over a plain JavaScript object, returning a plain
|
|
5
46
|
* JavaScript object.
|
|
@@ -41,6 +82,47 @@ export function compute_emi_json(request_json) {
|
|
|
41
82
|
}
|
|
42
83
|
}
|
|
43
84
|
|
|
85
|
+
/**
|
|
86
|
+
* Run the engine over a plain JavaScript object, returning a plain
|
|
87
|
+
* JavaScript object.
|
|
88
|
+
* @param {DeriveRulesRequest} request
|
|
89
|
+
* @returns {DeriveRulesResponse}
|
|
90
|
+
*/
|
|
91
|
+
export function derive_rules(request) {
|
|
92
|
+
const ret = wasm.derive_rules(request);
|
|
93
|
+
if (ret[2]) {
|
|
94
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
95
|
+
}
|
|
96
|
+
return takeFromExternrefTable0(ret[0]);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Run the engine over a JSON request string, returning a JSON result
|
|
101
|
+
* string.
|
|
102
|
+
* @param {string} request_json
|
|
103
|
+
* @returns {string}
|
|
104
|
+
*/
|
|
105
|
+
export function derive_rules_json(request_json) {
|
|
106
|
+
let deferred3_0;
|
|
107
|
+
let deferred3_1;
|
|
108
|
+
try {
|
|
109
|
+
const ptr0 = passStringToWasm0(request_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
110
|
+
const len0 = WASM_VECTOR_LEN;
|
|
111
|
+
const ret = wasm.derive_rules_json(ptr0, len0);
|
|
112
|
+
var ptr2 = ret[0];
|
|
113
|
+
var len2 = ret[1];
|
|
114
|
+
if (ret[3]) {
|
|
115
|
+
ptr2 = 0; len2 = 0;
|
|
116
|
+
throw takeFromExternrefTable0(ret[2]);
|
|
117
|
+
}
|
|
118
|
+
deferred3_0 = ptr2;
|
|
119
|
+
deferred3_1 = len2;
|
|
120
|
+
return getStringFromWasm0(ptr2, len2);
|
|
121
|
+
} finally {
|
|
122
|
+
wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
|
|
44
126
|
/**
|
|
45
127
|
* The version of the `xfingine` engine this bundle was built from.
|
|
46
128
|
* @returns {string}
|
package/xfingine_bg.wasm
CHANGED
|
Binary file
|