node-firebird-driver 2.3.0 → 3.0.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/dist/lib/impl/attachment.d.ts +14 -3
- package/dist/lib/impl/attachment.js +112 -138
- package/dist/lib/impl/attachment.js.map +1 -1
- package/dist/lib/impl/blob.d.ts +3 -1
- package/dist/lib/impl/blob.js +11 -25
- package/dist/lib/impl/blob.js.map +1 -1
- package/dist/lib/impl/client.d.ts +1 -0
- package/dist/lib/impl/client.js +24 -36
- package/dist/lib/impl/client.js.map +1 -1
- package/dist/lib/impl/events.d.ts +1 -0
- package/dist/lib/impl/events.js +9 -18
- package/dist/lib/impl/events.js.map +1 -1
- package/dist/lib/impl/fb-util.d.ts +34 -5
- package/dist/lib/impl/fb-util.js +82 -42
- package/dist/lib/impl/fb-util.js.map +1 -1
- package/dist/lib/impl/index.js +5 -1
- package/dist/lib/impl/index.js.map +1 -1
- package/dist/lib/impl/resultset.d.ts +1 -0
- package/dist/lib/impl/resultset.js +33 -46
- package/dist/lib/impl/resultset.js.map +1 -1
- package/dist/lib/impl/statement.d.ts +6 -0
- package/dist/lib/impl/statement.js +47 -57
- package/dist/lib/impl/statement.js.map +1 -1
- package/dist/lib/impl/transaction.d.ts +1 -0
- package/dist/lib/impl/transaction.js +20 -34
- package/dist/lib/impl/transaction.js.map +1 -1
- package/dist/lib/index.d.ts +57 -3
- package/dist/lib/index.js +4 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/test/tests.js +385 -301
- package/dist/test/tests.js.map +1 -1
- package/package.json +3 -3
- package/src/lib/impl/attachment.ts +32 -9
- package/src/lib/impl/blob.ts +6 -1
- package/src/lib/impl/client.ts +5 -1
- package/src/lib/impl/events.ts +5 -1
- package/src/lib/impl/fb-util.ts +55 -0
- package/src/lib/impl/resultset.ts +5 -1
- package/src/lib/impl/statement.ts +21 -4
- package/src/lib/impl/transaction.ts +5 -1
- package/src/lib/index.ts +77 -3
- package/src/test/tests.ts +123 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { Attachment, ConnectOptions, CreateDatabaseOptions, Transaction, TransactionOptions } from '..';
|
|
2
|
+
import { Attachment, ConnectOptions, CreateBlobOptions, CreateDatabaseOptions, Transaction, TransactionOptions } from '..';
|
|
3
3
|
/** SQL_* type constants */
|
|
4
4
|
export declare namespace sqlTypes {
|
|
5
5
|
const SQL_TEXT = 452;
|
|
@@ -49,6 +49,21 @@ export declare namespace tpb {
|
|
|
49
49
|
const restart_requests = 19;
|
|
50
50
|
const no_auto_undo = 20;
|
|
51
51
|
}
|
|
52
|
+
/** BPB constants. */
|
|
53
|
+
export declare namespace bpb {
|
|
54
|
+
const version1 = 1;
|
|
55
|
+
const source_type = 1;
|
|
56
|
+
const target_type = 2;
|
|
57
|
+
const type = 3;
|
|
58
|
+
const source_interp = 4;
|
|
59
|
+
const target_interp = 5;
|
|
60
|
+
const filter_parameter = 6;
|
|
61
|
+
const storage = 7;
|
|
62
|
+
const type_segmented = 0;
|
|
63
|
+
const type_stream = 1;
|
|
64
|
+
const storage_main = 0;
|
|
65
|
+
const storage_temp = 2;
|
|
66
|
+
}
|
|
52
67
|
/** EPB constants. */
|
|
53
68
|
export declare namespace epb {
|
|
54
69
|
const version1 = 1;
|
|
@@ -57,11 +72,25 @@ export declare namespace epb {
|
|
|
57
72
|
export declare namespace blobInfo {
|
|
58
73
|
const totalLength = 6;
|
|
59
74
|
}
|
|
75
|
+
/** Statement info. */
|
|
76
|
+
export declare namespace statementInfo {
|
|
77
|
+
const sqlExecPathBlrText = 32;
|
|
78
|
+
}
|
|
79
|
+
/** Common info. */
|
|
80
|
+
export declare namespace commonInfo {
|
|
81
|
+
const end = 1;
|
|
82
|
+
const truncated = 2;
|
|
83
|
+
const error = 3;
|
|
84
|
+
const dataNotReady = 4;
|
|
85
|
+
const length = 126;
|
|
86
|
+
const flagEnd = 127;
|
|
87
|
+
}
|
|
60
88
|
export declare namespace charSets {
|
|
61
89
|
const ascii = 2;
|
|
62
90
|
}
|
|
63
91
|
export declare function createDpb(options?: ConnectOptions | CreateDatabaseOptions): Buffer;
|
|
64
92
|
export declare function createTpb(options?: TransactionOptions): Buffer;
|
|
93
|
+
export declare function createBpb(options?: CreateBlobOptions): Buffer;
|
|
65
94
|
/** Changes a number from a scale to another. */
|
|
66
95
|
/***
|
|
67
96
|
export function changeScale(value: number, inputScale: number, outputScale: number): number {
|
|
@@ -88,11 +117,11 @@ export interface Descriptor {
|
|
|
88
117
|
offset: number;
|
|
89
118
|
nullOffset: number;
|
|
90
119
|
}
|
|
91
|
-
export
|
|
92
|
-
export
|
|
120
|
+
export type DataReader = (attachment: Attachment, transaction: Transaction, buffer: Uint8Array) => Promise<any[]>;
|
|
121
|
+
export type ItemReader = (attachment: Attachment, transaction: Transaction, buffer: Uint8Array) => Promise<any>;
|
|
93
122
|
/** Creates a data reader. */
|
|
94
123
|
export declare function createDataReader(descriptors: Descriptor[]): DataReader;
|
|
95
|
-
export
|
|
96
|
-
export
|
|
124
|
+
export type DataWriter = (attachment: Attachment, transaction: Transaction, buffer: Uint8Array, values: Array<any> | undefined) => Promise<void>;
|
|
125
|
+
export type ItemWriter = (attachment: Attachment, transaction: Transaction, buffer: Uint8Array, values: any) => Promise<void>;
|
|
97
126
|
/** Creates a data writer. */
|
|
98
127
|
export declare function createDataWriter(descriptors: Descriptor[]): DataWriter;
|
package/dist/lib/impl/fb-util.js
CHANGED
|
@@ -1,15 +1,6 @@
|
|
|
1
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
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.createDataWriter = exports.createDataReader = exports.getPortableInteger = exports.createTpb = exports.createDpb = exports.charSets = exports.blobInfo = exports.epb = exports.tpb = exports.dpb = exports.sqlTypes = void 0;
|
|
3
|
+
exports.createDataWriter = exports.createDataReader = exports.getPortableInteger = exports.createBpb = exports.createTpb = exports.createDpb = exports.charSets = exports.commonInfo = exports.statementInfo = exports.blobInfo = exports.epb = exports.bpb = exports.tpb = exports.dpb = exports.sqlTypes = void 0;
|
|
13
4
|
const os = require("os");
|
|
14
5
|
const littleEndian = os.endianness() === 'LE';
|
|
15
6
|
const stringDecoder = require("string_decoder");
|
|
@@ -75,6 +66,24 @@ var tpb;
|
|
|
75
66
|
tpb.no_auto_undo = 20;
|
|
76
67
|
/* tslint:enable */
|
|
77
68
|
})(tpb = exports.tpb || (exports.tpb = {}));
|
|
69
|
+
/** BPB constants. */
|
|
70
|
+
var bpb;
|
|
71
|
+
(function (bpb) {
|
|
72
|
+
/* tslint:disable */
|
|
73
|
+
bpb.version1 = 1;
|
|
74
|
+
bpb.source_type = 1;
|
|
75
|
+
bpb.target_type = 2;
|
|
76
|
+
bpb.type = 3;
|
|
77
|
+
bpb.source_interp = 4;
|
|
78
|
+
bpb.target_interp = 5;
|
|
79
|
+
bpb.filter_parameter = 6;
|
|
80
|
+
bpb.storage = 7;
|
|
81
|
+
bpb.type_segmented = 0x0;
|
|
82
|
+
bpb.type_stream = 0x1;
|
|
83
|
+
bpb.storage_main = 0x0;
|
|
84
|
+
bpb.storage_temp = 0x2;
|
|
85
|
+
/* tslint:enable */
|
|
86
|
+
})(bpb = exports.bpb || (exports.bpb = {}));
|
|
78
87
|
/** EPB constants. */
|
|
79
88
|
var epb;
|
|
80
89
|
(function (epb) {
|
|
@@ -87,6 +96,21 @@ var blobInfo;
|
|
|
87
96
|
(function (blobInfo) {
|
|
88
97
|
blobInfo.totalLength = 6;
|
|
89
98
|
})(blobInfo = exports.blobInfo || (exports.blobInfo = {}));
|
|
99
|
+
/** Statement info. */
|
|
100
|
+
var statementInfo;
|
|
101
|
+
(function (statementInfo) {
|
|
102
|
+
statementInfo.sqlExecPathBlrText = 32;
|
|
103
|
+
})(statementInfo = exports.statementInfo || (exports.statementInfo = {}));
|
|
104
|
+
/** Common info. */
|
|
105
|
+
var commonInfo;
|
|
106
|
+
(function (commonInfo) {
|
|
107
|
+
commonInfo.end = 1;
|
|
108
|
+
commonInfo.truncated = 2;
|
|
109
|
+
commonInfo.error = 3;
|
|
110
|
+
commonInfo.dataNotReady = 4;
|
|
111
|
+
commonInfo.length = 126;
|
|
112
|
+
commonInfo.flagEnd = 127;
|
|
113
|
+
})(commonInfo = exports.commonInfo || (exports.commonInfo = {}));
|
|
90
114
|
var charSets;
|
|
91
115
|
(function (charSets) {
|
|
92
116
|
charSets.ascii = 2;
|
|
@@ -157,6 +181,22 @@ function createTpb(options) {
|
|
|
157
181
|
return Buffer.from(ret);
|
|
158
182
|
}
|
|
159
183
|
exports.createTpb = createTpb;
|
|
184
|
+
function createBpb(options) {
|
|
185
|
+
const code = (c) => String.fromCharCode(c);
|
|
186
|
+
let ret = code(bpb.version1);
|
|
187
|
+
if (!options)
|
|
188
|
+
options = {};
|
|
189
|
+
switch (options.type) {
|
|
190
|
+
case 'SEGMENTED':
|
|
191
|
+
ret += `${code(bpb.type)}${code(1)}${code(bpb.type_segmented)}`;
|
|
192
|
+
break;
|
|
193
|
+
case 'STREAM':
|
|
194
|
+
ret += `${code(bpb.type)}${code(1)}${code(bpb.type_stream)}`;
|
|
195
|
+
break;
|
|
196
|
+
}
|
|
197
|
+
return Buffer.from(ret);
|
|
198
|
+
}
|
|
199
|
+
exports.createBpb = createBpb;
|
|
160
200
|
/** Changes a number from a scale to another. */
|
|
161
201
|
/***
|
|
162
202
|
export function changeScale(value: number, inputScale: number, outputScale: number): number {
|
|
@@ -188,7 +228,7 @@ function createDataReader(descriptors) {
|
|
|
188
228
|
const mappers = new Array(descriptors.length);
|
|
189
229
|
for (let i = 0; i < descriptors.length; ++i) {
|
|
190
230
|
const descriptor = descriptors[i];
|
|
191
|
-
mappers[i] = (attachment, transaction, buffer) =>
|
|
231
|
+
mappers[i] = async (attachment, transaction, buffer) => {
|
|
192
232
|
const dataView = new DataView(buffer.buffer);
|
|
193
233
|
if (dataView.getInt16(descriptor.nullOffset, littleEndian) == -1)
|
|
194
234
|
return null;
|
|
@@ -217,14 +257,14 @@ function createDataReader(descriptors) {
|
|
|
217
257
|
return dataView.getFloat64(descriptor.offset, littleEndian);
|
|
218
258
|
case sqlTypes.SQL_TYPE_TIME: {
|
|
219
259
|
const now = new Date();
|
|
220
|
-
const decodedTime = date_time_1.decodeTime(dataView.getUint32(descriptor.offset, littleEndian));
|
|
260
|
+
const decodedTime = (0, date_time_1.decodeTime)(dataView.getUint32(descriptor.offset, littleEndian));
|
|
221
261
|
return new Date(now.getFullYear(), now.getMonth(), now.getDate(), decodedTime.hours, decodedTime.minutes, decodedTime.seconds, decodedTime.fractions / 10);
|
|
222
262
|
}
|
|
223
263
|
case sqlTypes.SQL_TIME_TZ_EX: {
|
|
224
264
|
const now = new Date();
|
|
225
|
-
const decodedTime = date_time_1.decodeTime(dataView.getUint32(descriptor.offset, littleEndian));
|
|
265
|
+
const decodedTime = (0, date_time_1.decodeTime)(dataView.getUint32(descriptor.offset, littleEndian));
|
|
226
266
|
const date = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), decodedTime.hours, decodedTime.minutes, decodedTime.seconds, decodedTime.fractions / 10));
|
|
227
|
-
const timeZone = time_zones_1.tzIdToString(dataView.getUint16(descriptor.offset + 4, littleEndian));
|
|
267
|
+
const timeZone = (0, time_zones_1.tzIdToString)(dataView.getUint16(descriptor.offset + 4, littleEndian));
|
|
228
268
|
const offset = dataView.getInt16(descriptor.offset + 6, littleEndian);
|
|
229
269
|
return {
|
|
230
270
|
date,
|
|
@@ -233,7 +273,7 @@ function createDataReader(descriptors) {
|
|
|
233
273
|
};
|
|
234
274
|
}
|
|
235
275
|
case sqlTypes.SQL_TYPE_DATE: {
|
|
236
|
-
const decodedDate = date_time_1.decodeDate(dataView.getInt32(descriptor.offset, littleEndian));
|
|
276
|
+
const decodedDate = (0, date_time_1.decodeDate)(dataView.getInt32(descriptor.offset, littleEndian));
|
|
237
277
|
if (decodedDate.year >= 100)
|
|
238
278
|
return new Date(decodedDate.year, decodedDate.month - 1, decodedDate.day);
|
|
239
279
|
else {
|
|
@@ -243,8 +283,8 @@ function createDataReader(descriptors) {
|
|
|
243
283
|
}
|
|
244
284
|
}
|
|
245
285
|
case sqlTypes.SQL_TIMESTAMP: {
|
|
246
|
-
const decodedDate = date_time_1.decodeDate(dataView.getInt32(descriptor.offset, littleEndian));
|
|
247
|
-
const decodedTime = date_time_1.decodeTime(dataView.getUint32(descriptor.offset + 4, littleEndian));
|
|
286
|
+
const decodedDate = (0, date_time_1.decodeDate)(dataView.getInt32(descriptor.offset, littleEndian));
|
|
287
|
+
const decodedTime = (0, date_time_1.decodeTime)(dataView.getUint32(descriptor.offset + 4, littleEndian));
|
|
248
288
|
if (decodedDate.year >= 100) {
|
|
249
289
|
return new Date(decodedDate.year, decodedDate.month - 1, decodedDate.day, decodedTime.hours, decodedTime.minutes, decodedTime.seconds, decodedTime.fractions / 10);
|
|
250
290
|
}
|
|
@@ -255,9 +295,9 @@ function createDataReader(descriptors) {
|
|
|
255
295
|
}
|
|
256
296
|
}
|
|
257
297
|
case sqlTypes.SQL_TIMESTAMP_TZ_EX: {
|
|
258
|
-
const decodedDate = date_time_1.decodeDate(dataView.getInt32(descriptor.offset, littleEndian));
|
|
259
|
-
const decodedTime = date_time_1.decodeTime(dataView.getUint32(descriptor.offset + 4, littleEndian));
|
|
260
|
-
const timeZone = time_zones_1.tzIdToString(dataView.getUint16(descriptor.offset + 8, littleEndian));
|
|
298
|
+
const decodedDate = (0, date_time_1.decodeDate)(dataView.getInt32(descriptor.offset, littleEndian));
|
|
299
|
+
const decodedTime = (0, date_time_1.decodeTime)(dataView.getUint32(descriptor.offset + 4, littleEndian));
|
|
300
|
+
const timeZone = (0, time_zones_1.tzIdToString)(dataView.getUint16(descriptor.offset + 8, littleEndian));
|
|
261
301
|
const offset = dataView.getInt16(descriptor.offset + 10, littleEndian);
|
|
262
302
|
let date;
|
|
263
303
|
if (decodedDate.year >= 100) {
|
|
@@ -282,11 +322,11 @@ function createDataReader(descriptors) {
|
|
|
282
322
|
default:
|
|
283
323
|
throw new Error(`Unrecognized Firebird type number ${descriptor.type}`);
|
|
284
324
|
}
|
|
285
|
-
}
|
|
325
|
+
};
|
|
286
326
|
}
|
|
287
|
-
return (attachment, transaction, buffer) =>
|
|
288
|
-
return
|
|
289
|
-
}
|
|
327
|
+
return async (attachment, transaction, buffer) => {
|
|
328
|
+
return await Promise.all(mappers.map(mapper => mapper(attachment, transaction, buffer)));
|
|
329
|
+
};
|
|
290
330
|
}
|
|
291
331
|
exports.createDataReader = createDataReader;
|
|
292
332
|
/** Creates a data writer. */
|
|
@@ -294,7 +334,7 @@ function createDataWriter(descriptors) {
|
|
|
294
334
|
const mappers = new Array(descriptors.length);
|
|
295
335
|
for (let i = 0; i < descriptors.length; ++i) {
|
|
296
336
|
const descriptor = descriptors[i];
|
|
297
|
-
mappers[i] = (attachment, transaction, buffer, value) =>
|
|
337
|
+
mappers[i] = async (attachment, transaction, buffer, value) => {
|
|
298
338
|
const dataView = new DataView(buffer.buffer);
|
|
299
339
|
if (value == null) {
|
|
300
340
|
dataView.setInt16(descriptor.nullOffset, -1, littleEndian);
|
|
@@ -337,33 +377,33 @@ function createDataWriter(descriptors) {
|
|
|
337
377
|
break;
|
|
338
378
|
case sqlTypes.SQL_TYPE_TIME: {
|
|
339
379
|
const date = value;
|
|
340
|
-
dataView.setUint32(descriptor.offset, date_time_1.encodeTime(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds() * 10), littleEndian);
|
|
380
|
+
dataView.setUint32(descriptor.offset, (0, date_time_1.encodeTime)(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds() * 10), littleEndian);
|
|
341
381
|
break;
|
|
342
382
|
}
|
|
343
383
|
case sqlTypes.SQL_TIME_TZ:
|
|
344
384
|
case sqlTypes.SQL_TIME_TZ_EX: {
|
|
345
385
|
const zonedDate = value;
|
|
346
|
-
dataView.setUint32(descriptor.offset, date_time_1.encodeTime(zonedDate.date.getUTCHours(), zonedDate.date.getUTCMinutes(), zonedDate.date.getUTCSeconds(), zonedDate.date.getUTCMilliseconds() * 10), littleEndian);
|
|
347
|
-
dataView.setUint16(descriptor.offset + 4, time_zones_1.tzStringToId(zonedDate.timeZone), littleEndian);
|
|
386
|
+
dataView.setUint32(descriptor.offset, (0, date_time_1.encodeTime)(zonedDate.date.getUTCHours(), zonedDate.date.getUTCMinutes(), zonedDate.date.getUTCSeconds(), zonedDate.date.getUTCMilliseconds() * 10), littleEndian);
|
|
387
|
+
dataView.setUint16(descriptor.offset + 4, (0, time_zones_1.tzStringToId)(zonedDate.timeZone), littleEndian);
|
|
348
388
|
break;
|
|
349
389
|
}
|
|
350
390
|
case sqlTypes.SQL_TYPE_DATE: {
|
|
351
391
|
const date = value;
|
|
352
|
-
dataView.setInt32(descriptor.offset, date_time_1.encodeDate(date.getFullYear(), date.getMonth() + 1, date.getDate()), littleEndian);
|
|
392
|
+
dataView.setInt32(descriptor.offset, (0, date_time_1.encodeDate)(date.getFullYear(), date.getMonth() + 1, date.getDate()), littleEndian);
|
|
353
393
|
break;
|
|
354
394
|
}
|
|
355
395
|
case sqlTypes.SQL_TIMESTAMP: {
|
|
356
396
|
const date = value;
|
|
357
|
-
dataView.setInt32(descriptor.offset, date_time_1.encodeDate(date.getFullYear(), date.getMonth() + 1, date.getDate()), littleEndian);
|
|
358
|
-
dataView.setUint32(descriptor.offset + 4, date_time_1.encodeTime(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds() * 10), littleEndian);
|
|
397
|
+
dataView.setInt32(descriptor.offset, (0, date_time_1.encodeDate)(date.getFullYear(), date.getMonth() + 1, date.getDate()), littleEndian);
|
|
398
|
+
dataView.setUint32(descriptor.offset + 4, (0, date_time_1.encodeTime)(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds() * 10), littleEndian);
|
|
359
399
|
break;
|
|
360
400
|
}
|
|
361
401
|
case sqlTypes.SQL_TIMESTAMP_TZ:
|
|
362
402
|
case sqlTypes.SQL_TIMESTAMP_TZ_EX: {
|
|
363
403
|
const zonedDate = value;
|
|
364
|
-
dataView.setInt32(descriptor.offset, date_time_1.encodeDate(zonedDate.date.getUTCFullYear(), zonedDate.date.getUTCMonth() + 1, zonedDate.date.getUTCDate()), littleEndian);
|
|
365
|
-
dataView.setUint32(descriptor.offset + 4, date_time_1.encodeTime(zonedDate.date.getUTCHours(), zonedDate.date.getUTCMinutes(), zonedDate.date.getUTCSeconds(), zonedDate.date.getUTCMilliseconds() * 10), littleEndian);
|
|
366
|
-
dataView.setUint16(descriptor.offset + 8, time_zones_1.tzStringToId(zonedDate.timeZone), littleEndian);
|
|
404
|
+
dataView.setInt32(descriptor.offset, (0, date_time_1.encodeDate)(zonedDate.date.getUTCFullYear(), zonedDate.date.getUTCMonth() + 1, zonedDate.date.getUTCDate()), littleEndian);
|
|
405
|
+
dataView.setUint32(descriptor.offset + 4, (0, date_time_1.encodeTime)(zonedDate.date.getUTCHours(), zonedDate.date.getUTCMinutes(), zonedDate.date.getUTCSeconds(), zonedDate.date.getUTCMilliseconds() * 10), littleEndian);
|
|
406
|
+
dataView.setUint16(descriptor.offset + 8, (0, time_zones_1.tzStringToId)(zonedDate.timeZone), littleEndian);
|
|
367
407
|
break;
|
|
368
408
|
}
|
|
369
409
|
case sqlTypes.SQL_BOOLEAN:
|
|
@@ -375,15 +415,15 @@ function createDataWriter(descriptors) {
|
|
|
375
415
|
if (value instanceof __1.BlobStream)
|
|
376
416
|
value = value.blob;
|
|
377
417
|
if (value instanceof Buffer) {
|
|
378
|
-
const blobStream =
|
|
418
|
+
const blobStream = await attachment.createBlob(transaction);
|
|
379
419
|
try {
|
|
380
|
-
|
|
420
|
+
await blobStream.write(value);
|
|
381
421
|
}
|
|
382
422
|
catch (e) {
|
|
383
|
-
|
|
423
|
+
await blobStream.cancel();
|
|
384
424
|
throw e;
|
|
385
425
|
}
|
|
386
|
-
|
|
426
|
+
await blobStream.close();
|
|
387
427
|
targetBlobId.set(blobStream.blob.id);
|
|
388
428
|
}
|
|
389
429
|
else if (value instanceof __1.Blob) {
|
|
@@ -401,13 +441,13 @@ function createDataWriter(descriptors) {
|
|
|
401
441
|
default:
|
|
402
442
|
throw new Error(`Unrecognized Firebird type number ${descriptor.type}`);
|
|
403
443
|
}
|
|
404
|
-
}
|
|
444
|
+
};
|
|
405
445
|
}
|
|
406
|
-
return (attachment, transaction, buffer, values) =>
|
|
446
|
+
return async (attachment, transaction, buffer, values) => {
|
|
407
447
|
if ((values || []).length !== descriptors.length)
|
|
408
448
|
throw new Error(`Incorrect number of parameters: expected ${descriptors.length}, received ${(values || []).length}.`);
|
|
409
|
-
|
|
410
|
-
}
|
|
449
|
+
await Promise.all(mappers.map((mapper, index) => mapper(attachment, transaction, buffer, values[index])));
|
|
450
|
+
};
|
|
411
451
|
}
|
|
412
452
|
exports.createDataWriter = createDataWriter;
|
|
413
453
|
//# sourceMappingURL=fb-util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fb-util.js","sourceRoot":"","sources":["../../../src/lib/impl/fb-util.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fb-util.js","sourceRoot":"","sources":["../../../src/lib/impl/fb-util.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/impl/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
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);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/impl/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/impl/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,yCAAuB;AACvB,2CAAyB;AACzB,8CAA4B;AAC5B,8CAA4B;AAC5B,gDAA8B;AAC9B,2CAAyB;AAEzB,8CAA4B;AAC5B,4CAA0B;AAC1B,+CAA6B"}
|
|
@@ -29,6 +29,7 @@ export declare abstract class AbstractResultSet implements ResultSet {
|
|
|
29
29
|
* If result set has no more rows, returns an empty array.
|
|
30
30
|
*/
|
|
31
31
|
fetchAsObject<T extends object>(options?: FetchOptions): Promise<T[]>;
|
|
32
|
+
get isValid(): boolean;
|
|
32
33
|
private check;
|
|
33
34
|
protected abstract internalClose(): Promise<void>;
|
|
34
35
|
protected abstract internalFetch(options?: FetchOptions): Promise<{
|
|
@@ -1,13 +1,4 @@
|
|
|
1
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
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.AbstractResultSet = void 0;
|
|
13
4
|
/** AbstractResultSet implementation. */
|
|
@@ -19,18 +10,16 @@ class AbstractResultSet {
|
|
|
19
10
|
this.diposeStatementOnClose = false;
|
|
20
11
|
}
|
|
21
12
|
/** Closes this result set. */
|
|
22
|
-
close() {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
this.statement = undefined;
|
|
33
|
-
});
|
|
13
|
+
async close() {
|
|
14
|
+
this.check();
|
|
15
|
+
if (this.diposeStatementOnClose) {
|
|
16
|
+
this.diposeStatementOnClose = false;
|
|
17
|
+
await this.statement.dispose();
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
await this.internalClose();
|
|
21
|
+
this.statement.resultSet = undefined;
|
|
22
|
+
this.statement = undefined;
|
|
34
23
|
}
|
|
35
24
|
/**
|
|
36
25
|
* Fetchs data from this result set as [col1, col2, ..., colN][].
|
|
@@ -39,17 +28,15 @@ class AbstractResultSet {
|
|
|
39
28
|
*
|
|
40
29
|
* If result set has no more rows, returns an empty array.
|
|
41
30
|
*/
|
|
42
|
-
fetch(options) {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
return fetchRet.rows;
|
|
52
|
-
});
|
|
31
|
+
async fetch(options) {
|
|
32
|
+
this.check();
|
|
33
|
+
if (this.finished)
|
|
34
|
+
return [];
|
|
35
|
+
const fetchRet = await this.internalFetch(options || this.defaultFetchOptions || this.statement.defaultFetchOptions || this.statement.attachment.defaultFetchOptions ||
|
|
36
|
+
this.statement.attachment.client.defaultFetchOptions);
|
|
37
|
+
if (fetchRet.finished)
|
|
38
|
+
this.finished = true;
|
|
39
|
+
return fetchRet.rows;
|
|
53
40
|
}
|
|
54
41
|
/**
|
|
55
42
|
* Fetchs data from this result set as T[].
|
|
@@ -59,24 +46,24 @@ class AbstractResultSet {
|
|
|
59
46
|
*
|
|
60
47
|
* If result set has no more rows, returns an empty array.
|
|
61
48
|
*/
|
|
62
|
-
fetchAsObject(options) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
const col = cols[idx];
|
|
72
|
-
obj[col] = v;
|
|
73
|
-
});
|
|
74
|
-
return obj;
|
|
49
|
+
async fetchAsObject(options) {
|
|
50
|
+
const array = await this.fetch(options);
|
|
51
|
+
const cols = (await this.statement?.columnLabels) || [];
|
|
52
|
+
return array.map(row => {
|
|
53
|
+
const obj = {};
|
|
54
|
+
// Loop on row column value.
|
|
55
|
+
row.forEach((v, idx) => {
|
|
56
|
+
const col = cols[idx];
|
|
57
|
+
obj[col] = v;
|
|
75
58
|
});
|
|
59
|
+
return obj;
|
|
76
60
|
});
|
|
77
61
|
}
|
|
62
|
+
get isValid() {
|
|
63
|
+
return !!this.statement;
|
|
64
|
+
}
|
|
78
65
|
check() {
|
|
79
|
-
if (!this.
|
|
66
|
+
if (!this.isValid)
|
|
80
67
|
throw new Error('ResultSet is already closed.');
|
|
81
68
|
}
|
|
82
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resultset.js","sourceRoot":"","sources":["../../../src/lib/impl/resultset.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resultset.js","sourceRoot":"","sources":["../../../src/lib/impl/resultset.ts"],"names":[],"mappings":";;;AAMA,wCAAwC;AACxC,MAAsB,iBAAiB;IAOtC,YAA6B,SAA6B,EAAS,WAAiC;QAAvE,cAAS,GAAT,SAAS,CAAoB;QAAS,gBAAW,GAAX,WAAW,CAAsB;QANpG,aAAQ,GAAG,KAAK,CAAC;QACjB,2BAAsB,GAAG,KAAK,CAAC;IAM/B,CAAC;IAED,8BAA8B;IAC9B,KAAK,CAAC,KAAK;QACV,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAChC,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;YACpC,MAAM,IAAI,CAAC,SAAU,CAAC,OAAO,EAAE,CAAC;YAChC,OAAO;SACP;QAED,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3B,IAAI,CAAC,SAAU,CAAC,SAAS,GAAG,SAAS,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,KAAK,CAAC,OAAsB;QACjC,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,IAAI,IAAI,CAAC,QAAQ;YAChB,OAAO,EAAE,CAAC;QAEX,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CACxC,OAAO,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,SAAU,CAAC,mBAAmB,IAAI,IAAI,CAAC,SAAU,CAAC,UAAW,CAAC,mBAAmB;YAC5H,IAAI,CAAC,SAAU,CAAC,UAAW,CAAC,MAAO,CAAC,mBAAmB,CAAC,CAAC;QAE3D,IAAI,QAAQ,CAAC,QAAQ;YACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAEtB,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CAAmB,OAAsB;QAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC;QAExD,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACtB,MAAM,GAAG,GAAG,EAAO,CAAC;YAEpB,4BAA4B;YAC5B,GAAG,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,GAAW,EAAE,EAAE;gBACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBACrB,GAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,OAAO,GAAG,CAAC;QACZ,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,OAAO;QACV,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;IACzB,CAAC;IAEO,KAAK;QACZ,IAAI,CAAC,IAAI,CAAC,OAAO;YAChB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;CAKD;AAtFD,8CAsFC"}
|
|
@@ -6,6 +6,7 @@ import { ExecuteOptions, ExecuteQueryOptions, FetchOptions, Statement } from '..
|
|
|
6
6
|
export declare abstract class AbstractStatement implements Statement {
|
|
7
7
|
attachment?: AbstractAttachment | undefined;
|
|
8
8
|
resultSet?: AbstractResultSet;
|
|
9
|
+
abstract getExecPathText(): Promise<string | undefined>;
|
|
9
10
|
/** Gets the query's result columns labels. Returns empty array for queries without result. */
|
|
10
11
|
abstract get columnLabels(): Promise<string[]>;
|
|
11
12
|
/** When true, query result must be obtained with method executeQuery. */
|
|
@@ -24,11 +25,16 @@ export declare abstract class AbstractStatement implements Statement {
|
|
|
24
25
|
/** Executes a prepared statement that has no result set. */
|
|
25
26
|
execute(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<void>;
|
|
26
27
|
/** Executes a statement that returns a single record as [col1, col2, ..., colN]. */
|
|
28
|
+
executeSingleton(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<any[]>;
|
|
29
|
+
/** Executes a statement that returns a single record as an object. */
|
|
30
|
+
executeSingletonAsObject<T extends object>(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<T>;
|
|
31
|
+
/** Executes a statement that returns a single record as [col1, col2, ..., colN]. */
|
|
27
32
|
executeReturning(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<any[]>;
|
|
28
33
|
/** Executes a statement that returns a single record as an object. */
|
|
29
34
|
executeReturningAsObject<T extends object>(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<T>;
|
|
30
35
|
/** Executes a prepared statement that has result set. */
|
|
31
36
|
executeQuery(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteQueryOptions): Promise<AbstractResultSet>;
|
|
37
|
+
get isValid(): boolean;
|
|
32
38
|
private check;
|
|
33
39
|
abstract setCursorName(cursorName: string): Promise<void>;
|
|
34
40
|
protected abstract internalDispose(): Promise<void>;
|