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.
Files changed (42) hide show
  1. package/dist/lib/impl/attachment.d.ts +14 -3
  2. package/dist/lib/impl/attachment.js +112 -138
  3. package/dist/lib/impl/attachment.js.map +1 -1
  4. package/dist/lib/impl/blob.d.ts +3 -1
  5. package/dist/lib/impl/blob.js +11 -25
  6. package/dist/lib/impl/blob.js.map +1 -1
  7. package/dist/lib/impl/client.d.ts +1 -0
  8. package/dist/lib/impl/client.js +24 -36
  9. package/dist/lib/impl/client.js.map +1 -1
  10. package/dist/lib/impl/events.d.ts +1 -0
  11. package/dist/lib/impl/events.js +9 -18
  12. package/dist/lib/impl/events.js.map +1 -1
  13. package/dist/lib/impl/fb-util.d.ts +34 -5
  14. package/dist/lib/impl/fb-util.js +82 -42
  15. package/dist/lib/impl/fb-util.js.map +1 -1
  16. package/dist/lib/impl/index.js +5 -1
  17. package/dist/lib/impl/index.js.map +1 -1
  18. package/dist/lib/impl/resultset.d.ts +1 -0
  19. package/dist/lib/impl/resultset.js +33 -46
  20. package/dist/lib/impl/resultset.js.map +1 -1
  21. package/dist/lib/impl/statement.d.ts +6 -0
  22. package/dist/lib/impl/statement.js +47 -57
  23. package/dist/lib/impl/statement.js.map +1 -1
  24. package/dist/lib/impl/transaction.d.ts +1 -0
  25. package/dist/lib/impl/transaction.js +20 -34
  26. package/dist/lib/impl/transaction.js.map +1 -1
  27. package/dist/lib/index.d.ts +57 -3
  28. package/dist/lib/index.js +4 -0
  29. package/dist/lib/index.js.map +1 -1
  30. package/dist/test/tests.js +385 -301
  31. package/dist/test/tests.js.map +1 -1
  32. package/package.json +3 -3
  33. package/src/lib/impl/attachment.ts +32 -9
  34. package/src/lib/impl/blob.ts +6 -1
  35. package/src/lib/impl/client.ts +5 -1
  36. package/src/lib/impl/events.ts +5 -1
  37. package/src/lib/impl/fb-util.ts +55 -0
  38. package/src/lib/impl/resultset.ts +5 -1
  39. package/src/lib/impl/statement.ts +21 -4
  40. package/src/lib/impl/transaction.ts +5 -1
  41. package/src/lib/index.ts +77 -3
  42. 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 declare type DataReader = (attachment: Attachment, transaction: Transaction, buffer: Uint8Array) => Promise<any[]>;
92
- export declare type ItemReader = (attachment: Attachment, transaction: Transaction, buffer: Uint8Array) => Promise<any>;
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 declare type DataWriter = (attachment: Attachment, transaction: Transaction, buffer: Uint8Array, values: Array<any> | undefined) => Promise<void>;
96
- export declare type ItemWriter = (attachment: Attachment, transaction: Transaction, buffer: Uint8Array, values: any) => Promise<void>;
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;
@@ -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) => __awaiter(this, void 0, void 0, function* () {
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) => __awaiter(this, void 0, void 0, function* () {
288
- return yield Promise.all(mappers.map(mapper => mapper(attachment, transaction, buffer)));
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) => __awaiter(this, void 0, void 0, function* () {
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 = yield attachment.createBlob(transaction);
418
+ const blobStream = await attachment.createBlob(transaction);
379
419
  try {
380
- yield blobStream.write(value);
420
+ await blobStream.write(value);
381
421
  }
382
422
  catch (e) {
383
- yield blobStream.cancel();
423
+ await blobStream.cancel();
384
424
  throw e;
385
425
  }
386
- yield blobStream.close();
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) => __awaiter(this, void 0, void 0, function* () {
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
- yield Promise.all(mappers.map((mapper, index) => mapper(attachment, transaction, buffer, values[index])));
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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"}
@@ -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.defineProperty(o, k2, { enumerable: true, get: function() { return m[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);
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":";;;;;;;;;;;;AAAA,+CAA6B;AAC7B,yCAAuB;AACvB,2CAAyB;AACzB,8CAA4B;AAC5B,8CAA4B;AAC5B,gDAA8B;AAC9B,2CAAyB;AAEzB,8CAA4B;AAC5B,4CAA0B;AAC1B,+CAA6B"}
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
- return __awaiter(this, void 0, void 0, function* () {
24
- this.check();
25
- if (this.diposeStatementOnClose) {
26
- this.diposeStatementOnClose = false;
27
- yield this.statement.dispose();
28
- return;
29
- }
30
- yield this.internalClose();
31
- this.statement.resultSet = undefined;
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
- return __awaiter(this, void 0, void 0, function* () {
44
- this.check();
45
- if (this.finished)
46
- return [];
47
- const fetchRet = yield this.internalFetch(options || this.defaultFetchOptions || this.statement.defaultFetchOptions || this.statement.attachment.defaultFetchOptions ||
48
- this.statement.attachment.client.defaultFetchOptions);
49
- if (fetchRet.finished)
50
- this.finished = true;
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
- var _a;
64
- return __awaiter(this, void 0, void 0, function* () {
65
- const array = yield this.fetch(options);
66
- const cols = (yield ((_a = this.statement) === null || _a === void 0 ? void 0 : _a.columnLabels)) || [];
67
- return array.map(row => {
68
- const obj = {};
69
- // Loop on row column value.
70
- row.forEach((v, idx) => {
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.statement)
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":";;;;;;;;;;;;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;IACxB,KAAK;;YACV,IAAI,CAAC,KAAK,EAAE,CAAC;YAEb,IAAI,IAAI,CAAC,sBAAsB,EAAE;gBAChC,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;gBACpC,MAAM,IAAI,CAAC,SAAU,CAAC,OAAO,EAAE,CAAC;gBAChC,OAAO;aACP;YAED,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAE3B,IAAI,CAAC,SAAU,CAAC,SAAS,GAAG,SAAS,CAAC;YACtC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC5B,CAAC;KAAA;IAED;;;;;;OAMG;IACG,KAAK,CAAC,OAAsB;;YACjC,IAAI,CAAC,KAAK,EAAE,CAAC;YAEb,IAAI,IAAI,CAAC,QAAQ;gBAChB,OAAO,EAAE,CAAC;YAEX,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;gBAC5H,IAAI,CAAC,SAAU,CAAC,UAAW,CAAC,MAAO,CAAC,mBAAmB,CAAC,CAAC;YAE3D,IAAI,QAAQ,CAAC,QAAQ;gBACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YAEtB,OAAO,QAAQ,CAAC,IAAI,CAAC;QACtB,CAAC;KAAA;IAED;;;;;;;OAOG;IACG,aAAa,CAAmB,OAAsB;;;YAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,YAAY,CAAA,CAAC,IAAI,EAAE,CAAC;YAExD,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACtB,MAAM,GAAG,GAAG,EAAO,CAAC;gBAEpB,4BAA4B;gBAC5B,GAAG,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,GAAW,EAAE,EAAE;oBACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;oBACrB,GAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACvB,CAAC,CAAC,CAAC;gBAEH,OAAO,GAAG,CAAC;YACZ,CAAC,CAAC,CAAC;;KACH;IAEO,KAAK;QACZ,IAAI,CAAC,IAAI,CAAC,SAAS;YAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;CAKD;AAlFD,8CAkFC"}
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>;