monetdb 2.0.1 → 2.0.2
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/README.md +2 -1
- package/dist/PrepareStatement.d.ts +12 -0
- package/dist/PrepareStatement.js +29 -0
- package/dist/PrepareStatement.js.map +1 -0
- package/dist/QueryStream.d.ts +7 -0
- package/dist/QueryStream.js +13 -0
- package/dist/QueryStream.js.map +1 -0
- package/dist/connection.d.ts +25 -0
- package/dist/connection.js +104 -0
- package/dist/connection.js.map +1 -0
- package/dist/connections.d.ts +1 -0
- package/dist/connections.js +49 -0
- package/dist/connections.js.map +1 -0
- package/dist/defaults.d.ts +10 -0
- package/dist/defaults.js +13 -0
- package/dist/defaults.js.map +1 -0
- package/dist/file-transfer.d.ts +34 -0
- package/dist/file-transfer.js +194 -0
- package/dist/file-transfer.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/mapi.d.ts +148 -0
- package/dist/mapi.js +851 -0
- package/dist/mapi.js.map +1 -0
- package/dist/monetize.d.ts +2 -0
- package/dist/monetize.js +57 -0
- package/dist/monetize.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +7 -2
- package/.github/workflows/Linux.yml +0 -45
- package/.github/workflows/docs.yml +0 -79
- package/.github/workflows/macos.yml +0 -43
- package/.github/workflows/monetdb-versions.yml +0 -43
- package/docs/components/alert.tsx +0 -10
- package/docs/components/info.tsx +0 -6
- package/docs/next.config.js +0 -24
- package/docs/package-lock.json +0 -5069
- package/docs/package.json +0 -22
- package/docs/pages/_app.js +0 -9
- package/docs/pages/_meta.json +0 -18
- package/docs/pages/apis/_meta.json +0 -4
- package/docs/pages/apis/connection.mdx +0 -60
- package/docs/pages/apis/result.mdx +0 -39
- package/docs/pages/filetransfer.mdx +0 -43
- package/docs/pages/index.mdx +0 -27
- package/docs/pages/prepstmt.mdx +0 -13
- package/docs/pages/result.mdx +0 -41
- package/docs/theme.config.js +0 -35
- package/docs/v0/README.v0.md +0 -138
- package/docs/v1/MapiConnection.md +0 -53
- package/docs/v1/README.md +0 -532
- package/docs/v1/v1-notes.md +0 -173
- package/test/connection.ts +0 -43
- package/test/exec-queries.ts +0 -112
- package/test/filetransfer.ts +0 -94
- package/test/prepare-statement.ts +0 -27
- package/test/query-stream.ts +0 -41
- package/test/tmp/.gitignore +0 -4
- package/tsconfig.json +0 -24
package/README.md
CHANGED
@@ -2,7 +2,8 @@
|
|
2
2
|
|
3
3
|

|
4
4
|

|
5
|
-

|
6
|
+

|
6
7
|
|
7
8
|
Node.js connector for MonetDB.
|
8
9
|
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import { MapiConnection, QueryResult } from './mapi';
|
2
|
+
declare class PrepareStatement {
|
3
|
+
id: number;
|
4
|
+
rowCnt: number;
|
5
|
+
columnCnt: number;
|
6
|
+
mapi: MapiConnection;
|
7
|
+
data: any[];
|
8
|
+
constructor(res: QueryResult, mapi: MapiConnection);
|
9
|
+
execute(...args: any[]): Promise<any>;
|
10
|
+
release(): Promise<any>;
|
11
|
+
}
|
12
|
+
export default PrepareStatement;
|
@@ -0,0 +1,29 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const monetize_1 = require("./monetize");
|
4
|
+
class PrepareStatement {
|
5
|
+
constructor(res, mapi) {
|
6
|
+
this.id = res.id;
|
7
|
+
this.rowCnt = res.rowCnt;
|
8
|
+
this.columnCnt = res.columnCnt;
|
9
|
+
this.data = res.data; // columns and placeholder columns info
|
10
|
+
this.mapi = mapi;
|
11
|
+
}
|
12
|
+
execute(...args) {
|
13
|
+
const colInfo = this.data.slice(-args.length);
|
14
|
+
const placeholders = args.map((arg, i) => {
|
15
|
+
const type = colInfo[i][0];
|
16
|
+
const digits = colInfo[i][1];
|
17
|
+
const scale = colInfo[i][2];
|
18
|
+
return (0, monetize_1.convert)(type, arg, digits, scale);
|
19
|
+
});
|
20
|
+
const query = `sEXECUTE ${this.id}(${placeholders.join(', ')});\n`;
|
21
|
+
return this.mapi.request(query);
|
22
|
+
}
|
23
|
+
release() {
|
24
|
+
const stmt = `sDEALLOCATE ${this.id};\n`;
|
25
|
+
return this.mapi.request(stmt);
|
26
|
+
}
|
27
|
+
}
|
28
|
+
exports.default = PrepareStatement;
|
29
|
+
//# sourceMappingURL=PrepareStatement.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"PrepareStatement.js","sourceRoot":"","sources":["../src/PrepareStatement.ts"],"names":[],"mappings":";;AACA,yCAAqC;AAErC,MAAM,gBAAgB;IAMlB,YAAY,GAAgB,EAAE,IAAoB;QAC9C,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,uCAAuC;QAC7D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,OAAO,CAAC,GAAG,IAAW;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,OAAO,IAAA,kBAAO,EAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAA;QACF,MAAM,KAAK,GAAG,YAAY,IAAI,CAAC,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QACnE,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,OAAO;QACH,MAAM,IAAI,GAAG,eAAe,IAAI,CAAC,EAAE,KAAK,CAAC;QACzC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;CAEJ;AAED,kBAAe,gBAAgB,CAAC"}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const events_1 = require("events");
|
4
|
+
class QueryStream extends events_1.EventEmitter {
|
5
|
+
constructor() {
|
6
|
+
super();
|
7
|
+
}
|
8
|
+
end(res) {
|
9
|
+
this.emit('end');
|
10
|
+
}
|
11
|
+
}
|
12
|
+
exports.default = QueryStream;
|
13
|
+
//# sourceMappingURL=QueryStream.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"QueryStream.js","sourceRoot":"","sources":["../src/QueryStream.ts"],"names":[],"mappings":";;AAAA,mCAAiD;AAEjD,MAAM,WAAY,SAAQ,qBAAY;IAClC;QACI,KAAK,EAAE,CAAC;IACZ,CAAC;IAED,GAAG,CAAC,GAAS;QACT,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;CACJ;AAED,kBAAe,WAAW,CAAC"}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
/// <reference types="node" />
|
2
|
+
import { EventEmitter } from "events";
|
3
|
+
import { MapiConfig, MapiConnection } from "./mapi";
|
4
|
+
import PrepareStatement from "./PrepareStatement";
|
5
|
+
type MAPI_URI = string;
|
6
|
+
type ConnectCallback = (err?: Error) => void;
|
7
|
+
declare class Connection extends EventEmitter {
|
8
|
+
autoCommit?: boolean;
|
9
|
+
replySize?: number;
|
10
|
+
sizeHeader?: boolean;
|
11
|
+
mapi: MapiConnection;
|
12
|
+
constructor(params: MapiConfig | MAPI_URI);
|
13
|
+
connect(callback?: ConnectCallback): Promise<boolean>;
|
14
|
+
close(): Promise<boolean>;
|
15
|
+
commit(): Promise<void>;
|
16
|
+
private command;
|
17
|
+
execute(sql: string, stream?: boolean): Promise<any>;
|
18
|
+
prepare(sql: string): Promise<PrepareStatement>;
|
19
|
+
setAutocommit(v: boolean): Promise<boolean>;
|
20
|
+
setReplySize(v: number): Promise<number>;
|
21
|
+
setSizeHeader(v: boolean): Promise<boolean>;
|
22
|
+
setTimezone(sec: number): Promise<any>;
|
23
|
+
rollback(): Promise<void>;
|
24
|
+
}
|
25
|
+
export default Connection;
|
@@ -0,0 +1,104 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
const events_1 = require("events");
|
16
|
+
const mapi_1 = require("./mapi");
|
17
|
+
const PrepareStatement_1 = __importDefault(require("./PrepareStatement"));
|
18
|
+
class Connection extends events_1.EventEmitter {
|
19
|
+
constructor(params) {
|
20
|
+
super();
|
21
|
+
const config = typeof params === "string"
|
22
|
+
? (0, mapi_1.createMapiConfig)((0, mapi_1.parseMapiUri)(params))
|
23
|
+
: (0, mapi_1.createMapiConfig)(params);
|
24
|
+
this.mapi = new mapi_1.MapiConnection(config);
|
25
|
+
this.autoCommit = config.autoCommit;
|
26
|
+
this.replySize = config.replySize;
|
27
|
+
}
|
28
|
+
connect(callback) {
|
29
|
+
const options = [
|
30
|
+
new mapi_1.HandShakeOption(1, "auto_commit", this.autoCommit, this.setAutocommit),
|
31
|
+
new mapi_1.HandShakeOption(2, "reply_size", this.replySize, this.setReplySize),
|
32
|
+
new mapi_1.HandShakeOption(3, "size_header", true, this.setSizeHeader),
|
33
|
+
new mapi_1.HandShakeOption(5, "time_zone", new Date().getTimezoneOffset() * 60, this.setTimezone),
|
34
|
+
];
|
35
|
+
const mapi = this.mapi;
|
36
|
+
return new Promise(function (resolve, reject) {
|
37
|
+
return __awaiter(this, void 0, void 0, function* () {
|
38
|
+
try {
|
39
|
+
yield mapi.connect(options);
|
40
|
+
resolve(mapi.ready());
|
41
|
+
if (callback)
|
42
|
+
callback();
|
43
|
+
}
|
44
|
+
catch (err) {
|
45
|
+
reject(err);
|
46
|
+
if (callback)
|
47
|
+
callback(err);
|
48
|
+
}
|
49
|
+
});
|
50
|
+
});
|
51
|
+
}
|
52
|
+
close() {
|
53
|
+
return this.mapi.disconnect();
|
54
|
+
}
|
55
|
+
commit() {
|
56
|
+
return this.execute("COMMIT");
|
57
|
+
}
|
58
|
+
command(str) {
|
59
|
+
return this.mapi.request(str);
|
60
|
+
}
|
61
|
+
execute(sql, stream = false) {
|
62
|
+
const query = `s${sql};\n`;
|
63
|
+
if (stream && this.replySize !== -1)
|
64
|
+
this.setReplySize(-1);
|
65
|
+
return this.mapi.request(query, stream);
|
66
|
+
}
|
67
|
+
prepare(sql) {
|
68
|
+
return __awaiter(this, void 0, void 0, function* () {
|
69
|
+
const prepSQL = `PREPARE ${sql}`;
|
70
|
+
const res = yield this.execute(prepSQL);
|
71
|
+
return new PrepareStatement_1.default(res, this.mapi);
|
72
|
+
});
|
73
|
+
}
|
74
|
+
setAutocommit(v) {
|
75
|
+
const cmd = `Xauto_commit ${Number(v)}`;
|
76
|
+
return this.command(cmd).then(() => {
|
77
|
+
this.autoCommit = v;
|
78
|
+
return this.autoCommit;
|
79
|
+
});
|
80
|
+
}
|
81
|
+
setReplySize(v) {
|
82
|
+
const cmd = `Xreply_size ${Number(v)}`;
|
83
|
+
return this.command(cmd).then(() => {
|
84
|
+
this.replySize = Number(v);
|
85
|
+
return this.replySize;
|
86
|
+
});
|
87
|
+
}
|
88
|
+
setSizeHeader(v) {
|
89
|
+
const cmd = `Xsizeheader ${Number(v)}`;
|
90
|
+
return this.command(cmd).then(() => {
|
91
|
+
this.sizeHeader = v;
|
92
|
+
return this.sizeHeader;
|
93
|
+
});
|
94
|
+
}
|
95
|
+
setTimezone(sec) {
|
96
|
+
const qry = `SET TIME ZONE INTERVAL '${sec}' SECOND`;
|
97
|
+
return this.execute(qry);
|
98
|
+
}
|
99
|
+
rollback() {
|
100
|
+
return this.execute("ROLLBACK");
|
101
|
+
}
|
102
|
+
}
|
103
|
+
exports.default = Connection;
|
104
|
+
//# sourceMappingURL=connection.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,49 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
const events_1 = require("events");
|
13
|
+
const mapi_1 = require("./mapi");
|
14
|
+
class Connection extends events_1.EventEmitter {
|
15
|
+
constructor(params) {
|
16
|
+
super();
|
17
|
+
const config = (typeof params === 'string') ? (0, mapi_1.parseMapiUri)(params) : (0, mapi_1.createMapiConfig)(params);
|
18
|
+
this.mapi = new mapi_1.MapiConnection(config);
|
19
|
+
}
|
20
|
+
connect(callback) {
|
21
|
+
// TODO hand shake options
|
22
|
+
const options = [];
|
23
|
+
return new Promise(function (resolve, reject) {
|
24
|
+
return __awaiter(this, void 0, void 0, function* () {
|
25
|
+
try {
|
26
|
+
yield this.mapi.connect();
|
27
|
+
resolve(this.mapi.ready());
|
28
|
+
if (callback)
|
29
|
+
callback();
|
30
|
+
}
|
31
|
+
catch (err) {
|
32
|
+
reject(err);
|
33
|
+
if (callback)
|
34
|
+
callback(err);
|
35
|
+
}
|
36
|
+
});
|
37
|
+
});
|
38
|
+
}
|
39
|
+
close() {
|
40
|
+
return this.mapi.disconnect();
|
41
|
+
}
|
42
|
+
execute(query) {
|
43
|
+
return this.command(`s${query}\n;`);
|
44
|
+
}
|
45
|
+
command(str) {
|
46
|
+
return this.mapi.send(str);
|
47
|
+
}
|
48
|
+
}
|
49
|
+
//# sourceMappingURL=connections.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"connections.js","sourceRoot":"","sources":["../src/connections.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,mCAAuD;AACvD,iCAAoF;AAUpF,MAAM,UAAW,SAAQ,qBAAY;IAKjC,YAAY,MAA8B;QACtC,KAAK,EAAE,CAAC;QACR,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAY,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,uBAAgB,EAAC,MAAM,CAAC,CAAC;QAC9F,IAAI,CAAC,IAAI,GAAG,IAAI,qBAAc,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,QAA0B;QAC9B,0BAA0B;QAC1B,MAAM,OAAO,GAAG,EAEf,CAAC;QACF,OAAO,IAAI,OAAO,CAAC,UAAe,OAAO,EAAE,MAAM;;gBAC7C,IAAI;oBACA,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC1B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC3B,IAAI,QAAQ;wBACR,QAAQ,EAAE,CAAC;iBAClB;gBAAC,OAAM,GAAG,EAAE;oBACT,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,IAAI,QAAQ;wBACR,QAAQ,CAAC,GAAG,CAAC,CAAC;iBACrB;YACL,CAAC;SAAA,CAAC,CAAC;IACP,CAAC;IAED,KAAK;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;IAClC,CAAC;IAED,OAAO,CAAC,KAAa;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;IACxC,CAAC;IAEO,OAAO,CAAC,GAAW;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;CAEJ"}
|
package/dist/defaults.js
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const defaults = {
|
4
|
+
host: process.env.MAPI_HOST || "localhost",
|
5
|
+
port: process.env.MAPI_PORT || 50000,
|
6
|
+
username: process.env.MAPI_USER || "monetdb",
|
7
|
+
password: process.env.MAPI_PASSWORD || "monetdb",
|
8
|
+
database: process.env.MAPI_DATABASE,
|
9
|
+
autoCommit: false,
|
10
|
+
replySize: -1,
|
11
|
+
};
|
12
|
+
exports.default = defaults;
|
13
|
+
//# sourceMappingURL=defaults.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":";;AAAA,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,WAAW;IAC1C,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,KAAK;IACpC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,SAAS;IAC5C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,SAAS;IAChD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;IACnC,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE,CAAC,CAAC;CACd,CAAC;AAEF,kBAAe,QAAQ,CAAC"}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
/// <reference types="node" />
|
2
|
+
/// <reference types="node" />
|
3
|
+
import * as fs from 'node:fs/promises';
|
4
|
+
declare class FileHandler {
|
5
|
+
mapi: any;
|
6
|
+
file: string;
|
7
|
+
state: string;
|
8
|
+
err?: string;
|
9
|
+
eof?: boolean;
|
10
|
+
fhandle?: fs.FileHandle;
|
11
|
+
resolve?: (v?: any) => void;
|
12
|
+
reject?: (err?: Error) => void;
|
13
|
+
constructor(mapi: any, file: string);
|
14
|
+
close(): Promise<void>;
|
15
|
+
protected makePromise(): Promise<void>;
|
16
|
+
ready(): boolean;
|
17
|
+
initTransfer(flag: 'r' | 'w'): Promise<void>;
|
18
|
+
}
|
19
|
+
declare class FileDownloader extends FileHandler {
|
20
|
+
bytesWritten: number;
|
21
|
+
constructor(mapi: any, file: string);
|
22
|
+
download(): Promise<void>;
|
23
|
+
writeChunk(data: Buffer): Promise<number>;
|
24
|
+
}
|
25
|
+
declare class FileUploader extends FileHandler {
|
26
|
+
skip: number;
|
27
|
+
bytesSent: number;
|
28
|
+
chunkSize: number;
|
29
|
+
eof: boolean;
|
30
|
+
constructor(mapi: any, file: string, skip?: number);
|
31
|
+
upload(): Promise<void>;
|
32
|
+
private sendChunk;
|
33
|
+
}
|
34
|
+
export { FileUploader, FileDownloader };
|
@@ -0,0 +1,194 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
19
|
+
if (mod && mod.__esModule) return mod;
|
20
|
+
var result = {};
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
+
__setModuleDefault(result, mod);
|
23
|
+
return result;
|
24
|
+
};
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
32
|
+
});
|
33
|
+
};
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
35
|
+
exports.FileDownloader = exports.FileUploader = void 0;
|
36
|
+
const fs = __importStar(require("node:fs/promises"));
|
37
|
+
const path = __importStar(require("node:path"));
|
38
|
+
const node_process_1 = require("node:process");
|
39
|
+
class FileHandler {
|
40
|
+
constructor(mapi, file) {
|
41
|
+
this.mapi = mapi;
|
42
|
+
this.file = file;
|
43
|
+
this.state = 'init';
|
44
|
+
}
|
45
|
+
close() {
|
46
|
+
return __awaiter(this, void 0, void 0, function* () {
|
47
|
+
if (this.fhandle) {
|
48
|
+
this.state = 'closed';
|
49
|
+
yield this.fhandle.close();
|
50
|
+
this.fhandle = undefined;
|
51
|
+
}
|
52
|
+
});
|
53
|
+
}
|
54
|
+
makePromise() {
|
55
|
+
return new Promise((resolve, reject) => {
|
56
|
+
this.resolve = resolve;
|
57
|
+
this.reject = reject;
|
58
|
+
});
|
59
|
+
}
|
60
|
+
ready() {
|
61
|
+
return this.fhandle !== undefined
|
62
|
+
&& this.err === undefined
|
63
|
+
&& this.state === 'ready';
|
64
|
+
}
|
65
|
+
initTransfer(flag) {
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
67
|
+
if (this.fhandle === undefined) {
|
68
|
+
// for security reasons we do
|
69
|
+
// expect file to be relative to cwd
|
70
|
+
const fpath = path.join((0, node_process_1.cwd)(), this.file);
|
71
|
+
if (fpath.startsWith((0, node_process_1.cwd)())) {
|
72
|
+
try {
|
73
|
+
this.fhandle = yield fs.open(fpath, flag);
|
74
|
+
}
|
75
|
+
catch (err) {
|
76
|
+
yield this.mapi.requestFileTransferError(`${err}\n`, this);
|
77
|
+
return this.makePromise();
|
78
|
+
}
|
79
|
+
// tell server we are okay with the download
|
80
|
+
// send magic new line
|
81
|
+
yield this.mapi.requestFileTransfer(Buffer.from('\n'), this);
|
82
|
+
this.state = 'ready';
|
83
|
+
if (flag === 'r')
|
84
|
+
this.eof = false;
|
85
|
+
return this.makePromise();
|
86
|
+
}
|
87
|
+
else {
|
88
|
+
// send err msg
|
89
|
+
yield this.mapi.requestFileTransferError('Forbidden\n', this);
|
90
|
+
return this.makePromise();
|
91
|
+
}
|
92
|
+
}
|
93
|
+
});
|
94
|
+
}
|
95
|
+
}
|
96
|
+
class FileDownloader extends FileHandler {
|
97
|
+
constructor(mapi, file) {
|
98
|
+
super(mapi, file);
|
99
|
+
this.bytesWritten = 0;
|
100
|
+
}
|
101
|
+
download() {
|
102
|
+
return __awaiter(this, void 0, void 0, function* () {
|
103
|
+
if (this.state === 'init')
|
104
|
+
return this.initTransfer('w');
|
105
|
+
});
|
106
|
+
}
|
107
|
+
writeChunk(data) {
|
108
|
+
return __awaiter(this, void 0, void 0, function* () {
|
109
|
+
let bytes = 0;
|
110
|
+
if (this.ready()) {
|
111
|
+
try {
|
112
|
+
const { bytesWritten, buffer } = yield this.fhandle.write(data);
|
113
|
+
bytes += bytesWritten;
|
114
|
+
}
|
115
|
+
catch (err) {
|
116
|
+
this.err = err;
|
117
|
+
try {
|
118
|
+
yield this.mapi.requestAbort();
|
119
|
+
}
|
120
|
+
catch (err) {
|
121
|
+
// pass
|
122
|
+
console.error(err);
|
123
|
+
}
|
124
|
+
yield this.close();
|
125
|
+
this.reject(err);
|
126
|
+
// kill connection
|
127
|
+
yield this.mapi.disconnect();
|
128
|
+
throw err;
|
129
|
+
}
|
130
|
+
}
|
131
|
+
this.bytesWritten += bytes;
|
132
|
+
return bytes;
|
133
|
+
});
|
134
|
+
}
|
135
|
+
}
|
136
|
+
exports.FileDownloader = FileDownloader;
|
137
|
+
class FileUploader extends FileHandler {
|
138
|
+
constructor(mapi, file, skip = 0) {
|
139
|
+
super(mapi, file);
|
140
|
+
this.skip = skip > 0 ? skip - 1 : 0; // line based offset, super confusing
|
141
|
+
this.bytesSent = 0;
|
142
|
+
// configurable?
|
143
|
+
this.chunkSize = 1024 * 1024;
|
144
|
+
}
|
145
|
+
upload() {
|
146
|
+
return __awaiter(this, void 0, void 0, function* () {
|
147
|
+
if (this.state === 'init')
|
148
|
+
return this.initTransfer('r');
|
149
|
+
try {
|
150
|
+
yield this.sendChunk();
|
151
|
+
}
|
152
|
+
catch (err) {
|
153
|
+
this.err = err;
|
154
|
+
yield this.mapi.requestAbort();
|
155
|
+
yield this.close();
|
156
|
+
return this.reject(err);
|
157
|
+
}
|
158
|
+
});
|
159
|
+
}
|
160
|
+
sendChunk() {
|
161
|
+
return __awaiter(this, void 0, void 0, function* () {
|
162
|
+
let bytesRead = 0;
|
163
|
+
let buffer = Buffer.alloc(0);
|
164
|
+
do {
|
165
|
+
const res = yield this.fhandle.read(Buffer.alloc(this.chunkSize), 0, this.chunkSize);
|
166
|
+
bytesRead += res.bytesRead;
|
167
|
+
const data = Buffer.concat([buffer, res.buffer]).toString('utf8');
|
168
|
+
let offset = 0;
|
169
|
+
let eol = data.indexOf('\n');
|
170
|
+
while (this.skip && eol) {
|
171
|
+
offset = eol + 1;
|
172
|
+
this.skip--;
|
173
|
+
eol = data.indexOf('\n', offset);
|
174
|
+
}
|
175
|
+
buffer = Buffer.from(data).subarray(offset);
|
176
|
+
} while (this.skip && this.bytesSent === 0);
|
177
|
+
if (bytesRead > 0) {
|
178
|
+
// console.log(`read ${bytesRead} bytes`)
|
179
|
+
yield this.mapi.requestFileTransfer(buffer.subarray(0, bytesRead), this);
|
180
|
+
this.bytesSent += bytesRead;
|
181
|
+
// console.log(`sent ${bytesRead} bytes`)
|
182
|
+
}
|
183
|
+
else {
|
184
|
+
// reached EOF
|
185
|
+
this.eof = true;
|
186
|
+
// console.log(`reached eof`);
|
187
|
+
// send empty block to indicate end of upload
|
188
|
+
yield this.mapi.requestFileTransfer(Buffer.from(''), this);
|
189
|
+
}
|
190
|
+
});
|
191
|
+
}
|
192
|
+
}
|
193
|
+
exports.FileUploader = FileUploader;
|
194
|
+
//# sourceMappingURL=file-transfer.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"file-transfer.js","sourceRoot":"","sources":["../src/file-transfer.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
exports.Connection = void 0;
|
7
|
+
const connection_1 = __importDefault(require("./connection"));
|
8
|
+
exports.Connection = connection_1.default;
|
9
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAsC;AAE7B,qBAFF,oBAAU,CAEE"}
|