tedious 6.4.0 → 6.6.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.
Files changed (86) hide show
  1. package/lib/bulk-load.js +17 -22
  2. package/lib/connection.js +363 -251
  3. package/lib/connector.js +3 -1
  4. package/lib/data-type.js +111 -109
  5. package/lib/data-types/bigint.js +19 -7
  6. package/lib/data-types/binary.js +19 -10
  7. package/lib/data-types/bit.js +14 -4
  8. package/lib/data-types/bitn.js +26 -3
  9. package/lib/data-types/char.js +26 -13
  10. package/lib/data-types/date.js +18 -9
  11. package/lib/data-types/datetime.js +23 -5
  12. package/lib/data-types/datetime2.js +10 -22
  13. package/lib/data-types/datetimen.js +26 -3
  14. package/lib/data-types/datetimeoffset.js +11 -22
  15. package/lib/data-types/decimal.js +14 -6
  16. package/lib/data-types/decimaln.js +26 -5
  17. package/lib/data-types/float.js +14 -4
  18. package/lib/data-types/floatn.js +26 -3
  19. package/lib/data-types/image.js +12 -5
  20. package/lib/data-types/int.js +14 -4
  21. package/lib/data-types/intn.js +26 -3
  22. package/lib/data-types/money.js +14 -4
  23. package/lib/data-types/moneyn.js +26 -3
  24. package/lib/data-types/nchar.js +17 -6
  25. package/lib/data-types/ntext.js +26 -5
  26. package/lib/data-types/null.js +27 -3
  27. package/lib/data-types/numeric.js +14 -6
  28. package/lib/data-types/numericn.js +26 -5
  29. package/lib/data-types/nvarchar.js +20 -11
  30. package/lib/data-types/real.js +14 -4
  31. package/lib/data-types/smalldatetime.js +14 -4
  32. package/lib/data-types/smallint.js +14 -4
  33. package/lib/data-types/smallmoney.js +14 -4
  34. package/lib/data-types/sql-variant.js +23 -4
  35. package/lib/data-types/text.js +13 -7
  36. package/lib/data-types/time.js +9 -21
  37. package/lib/data-types/tinyint.js +14 -4
  38. package/lib/data-types/tvp.js +12 -3
  39. package/lib/data-types/udt.js +26 -3
  40. package/lib/data-types/uniqueidentifier.js +12 -5
  41. package/lib/data-types/varbinary.js +18 -8
  42. package/lib/data-types/varchar.js +19 -10
  43. package/lib/data-types/xml.js +26 -3
  44. package/lib/debug.js +3 -1
  45. package/lib/guid-parser.js +6 -6
  46. package/lib/incoming-message-stream.js +10 -7
  47. package/lib/instance-lookup.js +12 -6
  48. package/lib/library.js +6 -1
  49. package/lib/login7-payload.js +2 -3
  50. package/lib/message-io.js +14 -3
  51. package/lib/message.js +2 -3
  52. package/lib/metadata-parser.js +259 -136
  53. package/lib/ntlm-payload.js +12 -21
  54. package/lib/outgoing-message-stream.js +7 -6
  55. package/lib/packet.js +4 -5
  56. package/lib/prelogin-payload.js +3 -4
  57. package/lib/request.js +11 -11
  58. package/lib/rpcrequest-payload.js +28 -22
  59. package/lib/sender.js +25 -11
  60. package/lib/special-stored-procedure.js +9 -2
  61. package/lib/tds-versions.js +8 -2
  62. package/lib/tedious.js +75 -9
  63. package/lib/token/colmetadata-token-parser.js +20 -10
  64. package/lib/token/done-token-parser.js +32 -25
  65. package/lib/token/env-change-token-parser.js +50 -20
  66. package/lib/token/feature-ext-ack-parser.js +19 -14
  67. package/lib/token/fedauth-info-parser.js +17 -11
  68. package/lib/token/infoerror-token-parser.js +14 -14
  69. package/lib/token/loginack-token-parser.js +21 -12
  70. package/lib/token/nbcrow-token-parser.js +35 -23
  71. package/lib/token/order-token-parser.js +14 -7
  72. package/lib/token/returnstatus-token-parser.js +14 -7
  73. package/lib/token/returnvalue-token-parser.js +22 -11
  74. package/lib/token/row-token-parser.js +34 -22
  75. package/lib/token/sspi-token-parser.js +14 -8
  76. package/lib/token/stream-parser.js +95 -36
  77. package/lib/token/token-stream-parser.js +16 -10
  78. package/lib/token/token.js +396 -2
  79. package/lib/tracking-buffer/writable-tracking-buffer.js +37 -5
  80. package/lib/transaction.js +25 -16
  81. package/lib/transient-error-lookup.js +6 -1
  82. package/lib/value-parser.js +412 -315
  83. package/package.json +24 -21
  84. package/pull_request_template.md +1 -1
  85. package/tsconfig.json +1 -1
  86. package/lib/tracking-buffer/bigint.js +0 -102
@@ -1,13 +1,18 @@
1
1
  "use strict";
2
2
 
3
- const NumericN = require('./numericn');
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
4
7
 
5
- module.exports = {
8
+ var _numericn = _interopRequireDefault(require("./numericn"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ const Numeric = {
6
13
  id: 0x3F,
7
14
  type: 'NUMERIC',
8
15
  name: 'Numeric',
9
- hasPrecision: true,
10
- hasScale: true,
11
16
  declaration: function declaration(parameter) {
12
17
  return 'numeric(' + this.resolvePrecision(parameter) + ', ' + this.resolveScale(parameter) + ')';
13
18
  },
@@ -28,7 +33,7 @@ module.exports = {
28
33
  }
29
34
  },
30
35
  writeTypeInfo: function writeTypeInfo(buffer, parameter) {
31
- buffer.writeUInt8(NumericN.id);
36
+ buffer.writeUInt8(_numericn.default.id);
32
37
 
33
38
  if (parameter.precision <= 9) {
34
39
  buffer.writeUInt8(5);
@@ -87,4 +92,7 @@ module.exports = {
87
92
 
88
93
  return value;
89
94
  }
90
- };
95
+ };
96
+ var _default = Numeric;
97
+ exports.default = _default;
98
+ module.exports = Numeric;
@@ -1,10 +1,31 @@
1
1
  "use strict";
2
2
 
3
- module.exports = {
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const NumericN = {
4
8
  id: 0x6C,
5
9
  type: 'NUMERICN',
6
10
  name: 'NumericN',
7
- dataLengthLength: 1,
8
- hasPrecision: true,
9
- hasScale: true
10
- };
11
+
12
+ declaration() {
13
+ throw new Error('not implemented');
14
+ },
15
+
16
+ writeTypeInfo() {
17
+ throw new Error('not implemented');
18
+ },
19
+
20
+ writeParameterData() {
21
+ throw new Error('not implemented');
22
+ },
23
+
24
+ validate() {
25
+ throw new Error('not implemented');
26
+ }
27
+
28
+ };
29
+ var _default = NumericN;
30
+ exports.default = _default;
31
+ module.exports = NumericN;
@@ -1,22 +1,26 @@
1
1
  "use strict";
2
2
 
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
3
7
  const NULL = (1 << 16) - 1;
4
8
  const MAX = (1 << 16) - 1;
5
- module.exports = {
9
+ const NVarChar = {
6
10
  id: 0xE7,
7
11
  type: 'NVARCHAR',
8
12
  name: 'NVarChar',
9
- hasCollation: true,
10
- dataLengthLength: 2,
11
13
  maximumLength: 4000,
12
14
  declaration: function declaration(parameter) {
15
+ const value = parameter.value; // Temporary solution. Remove 'any' later.
16
+
13
17
  let length;
14
18
 
15
19
  if (parameter.length) {
16
20
  length = parameter.length;
17
- } else if (parameter.value != null) {
18
- length = parameter.value.toString().length || 1;
19
- } else if (parameter.value === null && !parameter.output) {
21
+ } else if (value != null) {
22
+ length = value.toString().length || 1;
23
+ } else if (value === null && !parameter.output) {
20
24
  length = 1;
21
25
  } else {
22
26
  length = this.maximumLength;
@@ -29,13 +33,15 @@ module.exports = {
29
33
  }
30
34
  },
31
35
  resolveLength: function resolveLength(parameter) {
36
+ const value = parameter.value; // Temporary solution. Remove 'any' later.
37
+
32
38
  if (parameter.length != null) {
33
39
  return parameter.length;
34
- } else if (parameter.value != null) {
35
- if (Buffer.isBuffer(parameter.value)) {
36
- return parameter.value.length / 2 || 1;
40
+ } else if (value != null) {
41
+ if (Buffer.isBuffer(value)) {
42
+ return value.length / 2 || 1;
37
43
  } else {
38
- return parameter.value.toString().length || 1;
44
+ return value.toString().length || 1;
39
45
  }
40
46
  } else {
41
47
  return this.maximumLength;
@@ -83,4 +89,7 @@ module.exports = {
83
89
 
84
90
  return value;
85
91
  }
86
- };
92
+ };
93
+ var _default = NVarChar;
94
+ exports.default = _default;
95
+ module.exports = NVarChar;
@@ -1,8 +1,15 @@
1
1
  "use strict";
2
2
 
3
- const FloatN = require('./floatn');
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
4
7
 
5
- module.exports = {
8
+ var _floatn = _interopRequireDefault(require("./floatn"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ const Real = {
6
13
  id: 0x3B,
7
14
  type: 'FLT4',
8
15
  name: 'Real',
@@ -10,7 +17,7 @@ module.exports = {
10
17
  return 'real';
11
18
  },
12
19
  writeTypeInfo: function writeTypeInfo(buffer) {
13
- buffer.writeUInt8(FloatN.id);
20
+ buffer.writeUInt8(_floatn.default.id);
14
21
  buffer.writeUInt8(4);
15
22
  },
16
23
  writeParameterData: function writeParameterData(buffer, parameter, options, cb) {
@@ -36,4 +43,7 @@ module.exports = {
36
43
 
37
44
  return value;
38
45
  }
39
- };
46
+ };
47
+ var _default = Real;
48
+ exports.default = _default;
49
+ module.exports = Real;
@@ -1,10 +1,17 @@
1
1
  "use strict";
2
2
 
3
- const DateTimeN = require('./datetimen');
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _datetimen = _interopRequireDefault(require("./datetimen"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4
11
 
5
12
  const EPOCH_DATE = new Date(1900, 0, 1);
6
13
  const UTC_EPOCH_DATE = new Date(Date.UTC(1900, 0, 1));
7
- module.exports = {
14
+ const SmallDateTime = {
8
15
  id: 0x3A,
9
16
  type: 'DATETIM4',
10
17
  name: 'SmallDateTime',
@@ -12,7 +19,7 @@ module.exports = {
12
19
  return 'smalldatetime';
13
20
  },
14
21
  writeTypeInfo: function writeTypeInfo(buffer) {
15
- buffer.writeUInt8(DateTimeN.id);
22
+ buffer.writeUInt8(_datetimen.default.id);
16
23
  buffer.writeUInt8(4);
17
24
  },
18
25
  writeParameterData: function writeParameterData(buffer, parameter, options, cb) {
@@ -52,4 +59,7 @@ module.exports = {
52
59
 
53
60
  return value;
54
61
  }
55
- };
62
+ };
63
+ var _default = SmallDateTime;
64
+ exports.default = _default;
65
+ module.exports = SmallDateTime;
@@ -1,8 +1,15 @@
1
1
  "use strict";
2
2
 
3
- const IntN = require('./intn');
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
4
7
 
5
- module.exports = {
8
+ var _intn = _interopRequireDefault(require("./intn"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ const SmallInt = {
6
13
  id: 0x34,
7
14
  type: 'INT2',
8
15
  name: 'SmallInt',
@@ -10,7 +17,7 @@ module.exports = {
10
17
  return 'smallint';
11
18
  },
12
19
  writeTypeInfo: function writeTypeInfo(buffer) {
13
- buffer.writeUInt8(IntN.id);
20
+ buffer.writeUInt8(_intn.default.id);
14
21
  buffer.writeUInt8(2);
15
22
  },
16
23
  writeParameterData: function writeParameterData(buffer, parameter, options, cb) {
@@ -40,4 +47,7 @@ module.exports = {
40
47
 
41
48
  return value;
42
49
  }
43
- };
50
+ };
51
+ var _default = SmallInt;
52
+ exports.default = _default;
53
+ module.exports = SmallInt;
@@ -1,8 +1,15 @@
1
1
  "use strict";
2
2
 
3
- const MoneyN = require('./moneyn');
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
4
7
 
5
- module.exports = {
8
+ var _moneyn = _interopRequireDefault(require("./moneyn"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ const SmallMoney = {
6
13
  id: 0x7A,
7
14
  type: 'MONEY4',
8
15
  name: 'SmallMoney',
@@ -10,7 +17,7 @@ module.exports = {
10
17
  return 'smallmoney';
11
18
  },
12
19
  writeTypeInfo: function writeTypeInfo(buffer) {
13
- buffer.writeUInt8(MoneyN.id);
20
+ buffer.writeUInt8(_moneyn.default.id);
14
21
  buffer.writeUInt8(4);
15
22
  },
16
23
  writeParameterData: function writeParameterData(buffer, parameter, options, cb) {
@@ -40,4 +47,7 @@ module.exports = {
40
47
 
41
48
  return value;
42
49
  }
43
- };
50
+ };
51
+ var _default = SmallMoney;
52
+ exports.default = _default;
53
+ module.exports = SmallMoney;
@@ -1,11 +1,30 @@
1
1
  "use strict";
2
2
 
3
- module.exports = {
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const Variant = {
4
8
  id: 0x62,
5
9
  type: 'SSVARIANTTYPE',
6
10
  name: 'Variant',
7
- dataLengthLength: 4,
8
- declaration: function declaration(parameter) {
11
+ declaration: function declaration() {
9
12
  return 'sql_variant';
13
+ },
14
+
15
+ writeTypeInfo() {
16
+ throw new Error('not implemented');
17
+ },
18
+
19
+ writeParameterData() {
20
+ throw new Error('not implemented');
21
+ },
22
+
23
+ validate() {
24
+ throw new Error('not implemented');
10
25
  }
11
- };
26
+
27
+ };
28
+ var _default = Variant;
29
+ exports.default = _default;
30
+ module.exports = Variant;
@@ -1,19 +1,22 @@
1
1
  "use strict";
2
2
 
3
- module.exports = {
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const Text = {
4
8
  id: 0x23,
5
9
  type: 'TEXT',
6
10
  name: 'Text',
7
- hasCollation: true,
8
11
  hasTableName: true,
9
- hasTextPointerAndTimestamp: true,
10
- dataLengthLength: 4,
11
12
  declaration: function declaration() {
12
13
  return 'text';
13
14
  },
14
15
  resolveLength: function resolveLength(parameter) {
15
- if (parameter.value != null) {
16
- return parameter.value.length;
16
+ const value = parameter.value; // Temporary solution. Remove 'any' later.
17
+
18
+ if (value != null) {
19
+ return value.length;
17
20
  } else {
18
21
  return -1;
19
22
  }
@@ -49,4 +52,7 @@ module.exports = {
49
52
 
50
53
  return value;
51
54
  }
52
- };
55
+ };
56
+ var _default = Text;
57
+ exports.default = _default;
58
+ module.exports = Text;
@@ -1,28 +1,13 @@
1
1
  "use strict";
2
2
 
3
- module.exports = {
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const Time = {
4
8
  id: 0x29,
5
9
  type: 'TIMEN',
6
10
  name: 'Time',
7
- hasScale: true,
8
- dataLengthLength: 1,
9
- dataLengthFromScale: function dataLengthFromScale(scale) {
10
- switch (scale) {
11
- case 0:
12
- case 1:
13
- case 2:
14
- return 3;
15
-
16
- case 3:
17
- case 4:
18
- return 4;
19
-
20
- case 5:
21
- case 6:
22
- case 7:
23
- return 5;
24
- }
25
- },
26
11
  declaration: function declaration(parameter) {
27
12
  return 'time(' + this.resolveScale(parameter) + ')';
28
13
  },
@@ -97,4 +82,7 @@ module.exports = {
97
82
 
98
83
  return value;
99
84
  }
100
- };
85
+ };
86
+ var _default = Time;
87
+ exports.default = _default;
88
+ module.exports = Time;
@@ -1,8 +1,15 @@
1
1
  "use strict";
2
2
 
3
- const IntN = require('./intn');
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
4
7
 
5
- module.exports = {
8
+ var _intn = _interopRequireDefault(require("./intn"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ const TinyInt = {
6
13
  id: 0x30,
7
14
  type: 'INT1',
8
15
  name: 'TinyInt',
@@ -10,7 +17,7 @@ module.exports = {
10
17
  return 'tinyint';
11
18
  },
12
19
  writeTypeInfo: function writeTypeInfo(buffer) {
13
- buffer.writeUInt8(IntN.id);
20
+ buffer.writeUInt8(_intn.default.id);
14
21
  buffer.writeUInt8(1);
15
22
  },
16
23
  writeParameterData: function writeParameterData(buffer, parameter, options, cb) {
@@ -40,4 +47,7 @@ module.exports = {
40
47
 
41
48
  return value;
42
49
  }
43
- };
50
+ };
51
+ var _default = TinyInt;
52
+ exports.default = _default;
53
+ module.exports = TinyInt;
@@ -1,11 +1,17 @@
1
1
  "use strict";
2
2
 
3
- module.exports = {
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const TVP = {
4
8
  id: 0xF3,
5
9
  type: 'TVPTYPE',
6
10
  name: 'TVP',
7
11
  declaration: function declaration(parameter) {
8
- return parameter.value.name + ' readonly';
12
+ const value = parameter.value; // Temporary solution. Remove 'any' later.
13
+
14
+ return value.name + ' readonly';
9
15
  },
10
16
  writeTypeInfo: function writeTypeInfo(buffer, parameter) {
11
17
  let ref, ref1, ref2, ref3;
@@ -83,4 +89,7 @@ module.exports = {
83
89
 
84
90
  return value;
85
91
  }
86
- };
92
+ };
93
+ var _default = TVP;
94
+ exports.default = _default;
95
+ module.exports = TVP;
@@ -1,8 +1,31 @@
1
1
  "use strict";
2
2
 
3
- module.exports = {
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const UDT = {
4
8
  id: 0xF0,
5
9
  type: 'UDTTYPE',
6
10
  name: 'UDT',
7
- hasUDTInfo: true
8
- };
11
+
12
+ declaration() {
13
+ throw new Error('not implemented');
14
+ },
15
+
16
+ writeTypeInfo() {
17
+ throw new Error('not implemented');
18
+ },
19
+
20
+ writeParameterData() {
21
+ throw new Error('not implemented');
22
+ },
23
+
24
+ validate() {
25
+ throw new Error('not implemented');
26
+ }
27
+
28
+ };
29
+ var _default = UDT;
30
+ exports.default = _default;
31
+ module.exports = UDT;
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
 
3
- const guidParser = require('../guid-parser');
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
4
7
 
5
- module.exports = {
8
+ var _guidParser = require("../guid-parser");
9
+
10
+ const UniqueIdentifier = {
6
11
  id: 0x24,
7
12
  type: 'GUIDN',
8
13
  name: 'UniqueIdentifier',
9
- dataLengthLength: 1,
10
14
  declaration: function declaration() {
11
15
  return 'uniqueidentifier';
12
16
  },
@@ -20,7 +24,7 @@ module.exports = {
20
24
  writeParameterData: function writeParameterData(buffer, parameter, options, cb) {
21
25
  if (parameter.value != null) {
22
26
  buffer.writeUInt8(0x10);
23
- buffer.writeBuffer(Buffer.from(guidParser.guidToArray(parameter.value)));
27
+ buffer.writeBuffer(Buffer.from((0, _guidParser.guidToArray)(parameter.value)));
24
28
  } else {
25
29
  buffer.writeUInt8(0);
26
30
  }
@@ -42,4 +46,7 @@ module.exports = {
42
46
 
43
47
  return value;
44
48
  }
45
- };
49
+ };
50
+ var _default = UniqueIdentifier;
51
+ exports.default = _default;
52
+ module.exports = UniqueIdentifier;
@@ -1,21 +1,26 @@
1
1
  "use strict";
2
2
 
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
3
7
  const NULL = (1 << 16) - 1;
4
8
  const MAX = (1 << 16) - 1;
5
- module.exports = {
9
+ const VarBinary = {
6
10
  id: 0xA5,
7
11
  type: 'BIGVARBIN',
8
12
  name: 'VarBinary',
9
- dataLengthLength: 2,
10
13
  maximumLength: 8000,
11
14
  declaration: function declaration(parameter) {
15
+ const value = parameter.value; // Temporary solution. Remove 'any' later.
16
+
12
17
  let length;
13
18
 
14
19
  if (parameter.length) {
15
20
  length = parameter.length;
16
- } else if (parameter.value != null) {
17
- length = parameter.value.length || 1;
18
- } else if (parameter.value === null && !parameter.output) {
21
+ } else if (value != null) {
22
+ length = value.length || 1;
23
+ } else if (value === null && !parameter.output) {
19
24
  length = 1;
20
25
  } else {
21
26
  length = this.maximumLength;
@@ -28,10 +33,12 @@ module.exports = {
28
33
  }
29
34
  },
30
35
  resolveLength: function resolveLength(parameter) {
36
+ const value = parameter.value; // Temporary solution. Remove 'any' later.
37
+
31
38
  if (parameter.length != null) {
32
39
  return parameter.length;
33
- } else if (parameter.value != null) {
34
- return parameter.value.length;
40
+ } else if (value != null) {
41
+ return value.length;
35
42
  } else {
36
43
  return this.maximumLength;
37
44
  }
@@ -72,4 +79,7 @@ module.exports = {
72
79
 
73
80
  return value;
74
81
  }
75
- };
82
+ };
83
+ var _default = VarBinary;
84
+ exports.default = _default;
85
+ module.exports = VarBinary;
@@ -1,22 +1,26 @@
1
1
  "use strict";
2
2
 
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
3
7
  const NULL = (1 << 16) - 1;
4
8
  const MAX = (1 << 16) - 1;
5
- module.exports = {
9
+ const VarChar = {
6
10
  id: 0xA7,
7
11
  type: 'BIGVARCHR',
8
12
  name: 'VarChar',
9
- hasCollation: true,
10
- dataLengthLength: 2,
11
13
  maximumLength: 8000,
12
14
  declaration: function declaration(parameter) {
15
+ const value = parameter.value; // Temporary solution. Remove 'any' later.
16
+
13
17
  let length;
14
18
 
15
19
  if (parameter.length) {
16
20
  length = parameter.length;
17
- } else if (parameter.value != null) {
18
- length = parameter.value.toString().length || 1;
19
- } else if (parameter.value === null && !parameter.output) {
21
+ } else if (value != null) {
22
+ length = value.toString().length || 1;
23
+ } else if (value === null && !parameter.output) {
20
24
  length = 1;
21
25
  } else {
22
26
  length = this.maximumLength;
@@ -29,13 +33,15 @@ module.exports = {
29
33
  }
30
34
  },
31
35
  resolveLength: function resolveLength(parameter) {
36
+ const value = parameter.value; // Temporary solution. Remove 'any' later.
37
+
32
38
  if (parameter.length != null) {
33
39
  return parameter.length;
34
- } else if (parameter.value != null) {
40
+ } else if (value != null) {
35
41
  if (Buffer.isBuffer(parameter.value)) {
36
- return parameter.value.length || 1;
42
+ return value.length || 1;
37
43
  } else {
38
- return parameter.value.toString().length || 1;
44
+ return value.toString().length || 1;
39
45
  }
40
46
  } else {
41
47
  return this.maximumLength;
@@ -83,4 +89,7 @@ module.exports = {
83
89
 
84
90
  return value;
85
91
  }
86
- };
92
+ };
93
+ var _default = VarChar;
94
+ exports.default = _default;
95
+ module.exports = VarChar;
@@ -1,8 +1,31 @@
1
1
  "use strict";
2
2
 
3
- module.exports = {
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const XML = {
4
8
  id: 0xF1,
5
9
  type: 'XML',
6
10
  name: 'Xml',
7
- hasSchemaPresent: true
8
- };
11
+
12
+ declaration() {
13
+ throw new Error('not implemented');
14
+ },
15
+
16
+ writeTypeInfo() {
17
+ throw new Error('not implemented');
18
+ },
19
+
20
+ writeParameterData() {
21
+ throw new Error('not implemented');
22
+ },
23
+
24
+ validate() {
25
+ throw new Error('not implemented');
26
+ }
27
+
28
+ };
29
+ var _default = XML;
30
+ exports.default = _default;
31
+ module.exports = XML;