tedious 16.2.0 → 16.4.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 (205) hide show
  1. package/lib/all-headers.js +1 -2
  2. package/lib/all-headers.js.map +1 -0
  3. package/lib/always-encrypted/aead-aes-256-cbc-hmac-algorithm.js +9 -31
  4. package/lib/always-encrypted/aead-aes-256-cbc-hmac-algorithm.js.map +1 -0
  5. package/lib/always-encrypted/aead-aes-256-cbc-hmac-encryption-key.js +9 -24
  6. package/lib/always-encrypted/aead-aes-256-cbc-hmac-encryption-key.js.map +1 -0
  7. package/lib/always-encrypted/cek-entry.js +8 -12
  8. package/lib/always-encrypted/cek-entry.js.map +1 -0
  9. package/lib/always-encrypted/get-parameter-encryption-metadata.js +2 -24
  10. package/lib/always-encrypted/get-parameter-encryption-metadata.js.map +1 -0
  11. package/lib/always-encrypted/key-crypto.js +5 -30
  12. package/lib/always-encrypted/key-crypto.js.map +1 -0
  13. package/lib/always-encrypted/keystore-provider-azure-key-vault.js +11 -72
  14. package/lib/always-encrypted/keystore-provider-azure-key-vault.js.map +1 -0
  15. package/lib/always-encrypted/symmetric-key-cache.js +2 -13
  16. package/lib/always-encrypted/symmetric-key-cache.js.map +1 -0
  17. package/lib/always-encrypted/symmetric-key.js +3 -8
  18. package/lib/always-encrypted/symmetric-key.js.map +1 -0
  19. package/lib/always-encrypted/types.js +19 -27
  20. package/lib/always-encrypted/types.js.map +1 -0
  21. package/lib/always-encrypted/utils.js +2 -6
  22. package/lib/always-encrypted/utils.js.map +1 -0
  23. package/lib/bulk-load-payload.js +7 -15
  24. package/lib/bulk-load-payload.js.map +1 -0
  25. package/lib/bulk-load.js +58 -131
  26. package/lib/bulk-load.js.map +1 -0
  27. package/lib/collation.js +7 -15
  28. package/lib/collation.js.map +1 -0
  29. package/lib/connection.js +307 -534
  30. package/lib/connection.js.map +1 -0
  31. package/lib/connector.js +6 -37
  32. package/lib/connector.js.map +1 -0
  33. package/lib/data-type.js +2 -43
  34. package/lib/data-type.js.map +1 -0
  35. package/lib/data-types/bigint.js +1 -15
  36. package/lib/data-types/bigint.js.map +1 -0
  37. package/lib/data-types/binary.js +1 -12
  38. package/lib/data-types/binary.js.map +1 -0
  39. package/lib/data-types/bit.js +1 -11
  40. package/lib/data-types/bit.js.map +1 -0
  41. package/lib/data-types/bitn.js +1 -7
  42. package/lib/data-types/bitn.js.map +1 -0
  43. package/lib/data-types/char.js +1 -20
  44. package/lib/data-types/char.js.map +1 -0
  45. package/lib/data-types/date.js +1 -15
  46. package/lib/data-types/date.js.map +1 -0
  47. package/lib/data-types/datetime.js +3 -20
  48. package/lib/data-types/datetime.js.map +1 -0
  49. package/lib/data-types/datetime2.js +1 -26
  50. package/lib/data-types/datetime2.js.map +1 -0
  51. package/lib/data-types/datetimen.js +1 -7
  52. package/lib/data-types/datetimen.js.map +1 -0
  53. package/lib/data-types/datetimeoffset.js +1 -23
  54. package/lib/data-types/datetimeoffset.js.map +1 -0
  55. package/lib/data-types/decimal.js +1 -18
  56. package/lib/data-types/decimal.js.map +1 -0
  57. package/lib/data-types/decimaln.js +1 -7
  58. package/lib/data-types/decimaln.js.map +1 -0
  59. package/lib/data-types/float.js +1 -13
  60. package/lib/data-types/float.js.map +1 -0
  61. package/lib/data-types/floatn.js +1 -7
  62. package/lib/data-types/floatn.js.map +1 -0
  63. package/lib/data-types/image.js +1 -10
  64. package/lib/data-types/image.js.map +1 -0
  65. package/lib/data-types/int.js +1 -14
  66. package/lib/data-types/int.js.map +1 -0
  67. package/lib/data-types/intn.js +1 -7
  68. package/lib/data-types/intn.js.map +1 -0
  69. package/lib/data-types/money.js +1 -12
  70. package/lib/data-types/money.js.map +1 -0
  71. package/lib/data-types/moneyn.js +1 -7
  72. package/lib/data-types/moneyn.js.map +1 -0
  73. package/lib/data-types/nchar.js +1 -14
  74. package/lib/data-types/nchar.js.map +1 -0
  75. package/lib/data-types/ntext.js +1 -10
  76. package/lib/data-types/ntext.js.map +1 -0
  77. package/lib/data-types/null.js +1 -7
  78. package/lib/data-types/null.js.map +1 -0
  79. package/lib/data-types/numeric.js +1 -18
  80. package/lib/data-types/numeric.js.map +1 -0
  81. package/lib/data-types/numericn.js +1 -7
  82. package/lib/data-types/numericn.js.map +1 -0
  83. package/lib/data-types/nvarchar.js +1 -22
  84. package/lib/data-types/nvarchar.js.map +1 -0
  85. package/lib/data-types/real.js +1 -13
  86. package/lib/data-types/real.js.map +1 -0
  87. package/lib/data-types/smalldatetime.js +1 -14
  88. package/lib/data-types/smalldatetime.js.map +1 -0
  89. package/lib/data-types/smallint.js +1 -14
  90. package/lib/data-types/smallint.js.map +1 -0
  91. package/lib/data-types/smallmoney.js +1 -13
  92. package/lib/data-types/smallmoney.js.map +1 -0
  93. package/lib/data-types/sql-variant.js +1 -6
  94. package/lib/data-types/sql-variant.js.map +1 -0
  95. package/lib/data-types/text.js +1 -18
  96. package/lib/data-types/text.js.map +1 -0
  97. package/lib/data-types/time.js +1 -22
  98. package/lib/data-types/time.js.map +1 -0
  99. package/lib/data-types/tinyint.js +1 -14
  100. package/lib/data-types/tinyint.js.map +1 -0
  101. package/lib/data-types/tvp.js +11 -27
  102. package/lib/data-types/tvp.js.map +1 -0
  103. package/lib/data-types/udt.js +1 -7
  104. package/lib/data-types/udt.js.map +1 -0
  105. package/lib/data-types/uniqueidentifier.js +1 -11
  106. package/lib/data-types/uniqueidentifier.js.map +1 -0
  107. package/lib/data-types/varbinary.js +1 -22
  108. package/lib/data-types/varbinary.js.map +1 -0
  109. package/lib/data-types/varchar.js +1 -23
  110. package/lib/data-types/varchar.js.map +1 -0
  111. package/lib/data-types/xml.js +1 -7
  112. package/lib/data-types/xml.js.map +1 -0
  113. package/lib/debug.js +4 -16
  114. package/lib/debug.js.map +1 -0
  115. package/lib/errors/abort-error.js +2 -5
  116. package/lib/errors/abort-error.js.map +1 -0
  117. package/lib/errors/timeout-error.js +2 -5
  118. package/lib/errors/timeout-error.js.map +1 -0
  119. package/lib/errors.js +10 -16
  120. package/lib/errors.js.map +1 -0
  121. package/lib/guid-parser.js +1 -7
  122. package/lib/guid-parser.js.map +1 -0
  123. package/lib/incoming-message-stream.js +9 -29
  124. package/lib/incoming-message-stream.js.map +1 -0
  125. package/lib/instance-lookup.js +3 -34
  126. package/lib/instance-lookup.js.map +1 -0
  127. package/lib/library.js +1 -1
  128. package/lib/library.js.map +1 -0
  129. package/lib/login7-payload.js +99 -100
  130. package/lib/login7-payload.js.map +1 -0
  131. package/lib/message-io.js +17 -45
  132. package/lib/message-io.js.map +1 -0
  133. package/lib/message.js +4 -8
  134. package/lib/message.js.map +1 -0
  135. package/lib/metadata-parser.js +1 -22
  136. package/lib/metadata-parser.js.map +1 -0
  137. package/lib/ntlm-payload.js +2 -22
  138. package/lib/ntlm-payload.js.map +1 -0
  139. package/lib/ntlm.js +1 -4
  140. package/lib/ntlm.js.map +1 -0
  141. package/lib/outgoing-message-stream.js +12 -21
  142. package/lib/outgoing-message-stream.js.map +1 -0
  143. package/lib/packet.js +2 -47
  144. package/lib/packet.js.map +1 -0
  145. package/lib/prelogin-payload.js +11 -54
  146. package/lib/prelogin-payload.js.map +1 -0
  147. package/lib/request.js +88 -66
  148. package/lib/request.js.map +1 -0
  149. package/lib/rpcrequest-payload.js +8 -35
  150. package/lib/rpcrequest-payload.js.map +1 -0
  151. package/lib/sender.js +1 -24
  152. package/lib/sender.js.map +1 -0
  153. package/lib/special-stored-procedure.js +1 -1
  154. package/lib/special-stored-procedure.js.map +1 -0
  155. package/lib/sqlbatch-payload.js +5 -18
  156. package/lib/sqlbatch-payload.js.map +1 -0
  157. package/lib/tds-versions.js +3 -3
  158. package/lib/tds-versions.js.map +1 -0
  159. package/lib/tedious.js +1 -12
  160. package/lib/tedious.js.map +1 -0
  161. package/lib/token/colmetadata-token-parser.js +1 -17
  162. package/lib/token/colmetadata-token-parser.js.map +1 -0
  163. package/lib/token/done-token-parser.js +2 -8
  164. package/lib/token/done-token-parser.js.map +1 -0
  165. package/lib/token/env-change-token-parser.js +7 -28
  166. package/lib/token/env-change-token-parser.js.map +1 -0
  167. package/lib/token/feature-ext-ack-parser.js +1 -10
  168. package/lib/token/feature-ext-ack-parser.js.map +1 -0
  169. package/lib/token/fedauth-info-parser.js +2 -10
  170. package/lib/token/fedauth-info-parser.js.map +1 -0
  171. package/lib/token/handler.js +39 -149
  172. package/lib/token/handler.js.map +1 -0
  173. package/lib/token/infoerror-token-parser.js +1 -5
  174. package/lib/token/infoerror-token-parser.js.map +1 -0
  175. package/lib/token/loginack-token-parser.js +1 -6
  176. package/lib/token/loginack-token-parser.js.map +1 -0
  177. package/lib/token/nbcrow-token-parser.js +2 -15
  178. package/lib/token/nbcrow-token-parser.js.map +1 -0
  179. package/lib/token/order-token-parser.js +2 -7
  180. package/lib/token/order-token-parser.js.map +1 -0
  181. package/lib/token/returnstatus-token-parser.js +2 -4
  182. package/lib/token/returnstatus-token-parser.js.map +1 -0
  183. package/lib/token/returnvalue-token-parser.js +4 -9
  184. package/lib/token/returnvalue-token-parser.js.map +1 -0
  185. package/lib/token/row-token-parser.js +2 -11
  186. package/lib/token/row-token-parser.js.map +1 -0
  187. package/lib/token/sspi-token-parser.js +1 -5
  188. package/lib/token/sspi-token-parser.js.map +1 -0
  189. package/lib/token/stream-parser.js +24 -86
  190. package/lib/token/stream-parser.js.map +1 -0
  191. package/lib/token/token-stream-parser.js +4 -13
  192. package/lib/token/token-stream-parser.js.map +1 -0
  193. package/lib/token/token.js +88 -168
  194. package/lib/token/token.js.map +1 -0
  195. package/lib/tracking-buffer/writable-tracking-buffer.js +20 -60
  196. package/lib/tracking-buffer/writable-tracking-buffer.js.map +1 -0
  197. package/lib/transaction.js +9 -33
  198. package/lib/transaction.js.map +1 -0
  199. package/lib/transient-error-lookup.js +1 -4
  200. package/lib/transient-error-lookup.js.map +1 -0
  201. package/lib/utils/with-timeout.js +1 -9
  202. package/lib/utils/with-timeout.js.map +1 -0
  203. package/lib/value-parser.js +1 -143
  204. package/lib/value-parser.js.map +1 -0
  205. package/package.json +27 -71
@@ -4,15 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _writableTrackingBuffer = _interopRequireDefault(require("./tracking-buffer/writable-tracking-buffer"));
9
-
10
8
  var _allHeaders = require("./all-headers");
11
-
12
- let _Symbol$iterator;
13
-
14
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
10
  // const OPTION = {
17
11
  // WITH_RECOMPILE: 0x01,
18
12
  // NO_METADATA: 0x02,
@@ -22,81 +16,66 @@ const STATUS = {
22
16
  BY_REF_VALUE: 0x01,
23
17
  DEFAULT_VALUE: 0x02
24
18
  };
19
+
25
20
  /*
26
21
  s2.2.6.5
27
22
  */
28
-
29
- _Symbol$iterator = Symbol.iterator;
30
-
31
23
  class RpcRequestPayload {
24
+ procedure;
25
+ parameters;
26
+ options;
27
+ txnDescriptor;
28
+ collation;
32
29
  constructor(procedure, parameters, txnDescriptor, options, collation) {
33
- this.procedure = void 0;
34
- this.parameters = void 0;
35
- this.options = void 0;
36
- this.txnDescriptor = void 0;
37
- this.collation = void 0;
38
30
  this.procedure = procedure;
39
31
  this.parameters = parameters;
40
32
  this.options = options;
41
33
  this.txnDescriptor = txnDescriptor;
42
34
  this.collation = collation;
43
35
  }
44
-
45
- [_Symbol$iterator]() {
36
+ [Symbol.iterator]() {
46
37
  return this.generateData();
47
38
  }
48
-
49
39
  *generateData() {
50
40
  const buffer = new _writableTrackingBuffer.default(500);
51
-
52
41
  if (this.options.tdsVersion >= '7_2') {
53
42
  const outstandingRequestCount = 1;
54
43
  (0, _allHeaders.writeToTrackingBuffer)(buffer, this.txnDescriptor, outstandingRequestCount);
55
44
  }
56
-
57
45
  if (typeof this.procedure === 'string') {
58
46
  buffer.writeUsVarchar(this.procedure);
59
47
  } else {
60
48
  buffer.writeUShort(0xFFFF);
61
49
  buffer.writeUShort(this.procedure);
62
50
  }
63
-
64
51
  const optionFlags = 0;
65
52
  buffer.writeUInt16LE(optionFlags);
66
53
  yield buffer.data;
67
54
  const parametersLength = this.parameters.length;
68
-
69
55
  for (let i = 0; i < parametersLength; i++) {
70
56
  yield* this.generateParameterData(this.parameters[i]);
71
57
  }
72
58
  }
73
-
74
59
  toString(indent = '') {
75
60
  return indent + ('RPC Request - ' + this.procedure);
76
61
  }
77
-
78
62
  *generateParameterData(parameter) {
79
63
  const buffer = new _writableTrackingBuffer.default(1 + 2 + Buffer.byteLength(parameter.name, 'ucs-2') + 1);
80
-
81
64
  if (parameter.name) {
82
65
  buffer.writeBVarchar('@' + parameter.name);
83
66
  } else {
84
67
  buffer.writeBVarchar('');
85
68
  }
86
-
87
69
  let statusFlags = 0;
88
-
89
70
  if (parameter.output) {
90
71
  statusFlags |= STATUS.BY_REF_VALUE;
91
72
  }
92
-
93
73
  buffer.writeUInt8(statusFlags);
94
74
  yield buffer.data;
95
75
  const param = {
96
76
  value: parameter.value
97
77
  };
98
78
  const type = parameter.type;
99
-
100
79
  if ((type.id & 0x30) === 0x20) {
101
80
  if (parameter.length) {
102
81
  param.length = parameter.length;
@@ -104,31 +83,25 @@ class RpcRequestPayload {
104
83
  param.length = type.resolveLength(parameter);
105
84
  }
106
85
  }
107
-
108
86
  if (parameter.precision) {
109
87
  param.precision = parameter.precision;
110
88
  } else if (type.resolvePrecision) {
111
89
  param.precision = type.resolvePrecision(parameter);
112
90
  }
113
-
114
91
  if (parameter.scale) {
115
92
  param.scale = parameter.scale;
116
93
  } else if (type.resolveScale) {
117
94
  param.scale = type.resolveScale(parameter);
118
95
  }
119
-
120
96
  if (this.collation) {
121
97
  param.collation = this.collation;
122
98
  }
123
-
124
99
  yield type.generateTypeInfo(param, this.options);
125
100
  yield type.generateParameterLength(param, this.options);
126
101
  yield* type.generateParameterData(param, this.options);
127
102
  }
128
-
129
103
  }
130
-
131
104
  var _default = RpcRequestPayload;
132
105
  exports.default = _default;
133
106
  module.exports = RpcRequestPayload;
134
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTVEFUVVMiLCJCWV9SRUZfVkFMVUUiLCJERUZBVUxUX1ZBTFVFIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJScGNSZXF1ZXN0UGF5bG9hZCIsImNvbnN0cnVjdG9yIiwicHJvY2VkdXJlIiwicGFyYW1ldGVycyIsInR4bkRlc2NyaXB0b3IiLCJvcHRpb25zIiwiY29sbGF0aW9uIiwiZ2VuZXJhdGVEYXRhIiwiYnVmZmVyIiwiV3JpdGFibGVUcmFja2luZ0J1ZmZlciIsInRkc1ZlcnNpb24iLCJvdXRzdGFuZGluZ1JlcXVlc3RDb3VudCIsIndyaXRlVXNWYXJjaGFyIiwid3JpdGVVU2hvcnQiLCJvcHRpb25GbGFncyIsIndyaXRlVUludDE2TEUiLCJkYXRhIiwicGFyYW1ldGVyc0xlbmd0aCIsImxlbmd0aCIsImkiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJ0b1N0cmluZyIsImluZGVudCIsInBhcmFtZXRlciIsIkJ1ZmZlciIsImJ5dGVMZW5ndGgiLCJuYW1lIiwid3JpdGVCVmFyY2hhciIsInN0YXR1c0ZsYWdzIiwib3V0cHV0Iiwid3JpdGVVSW50OCIsInBhcmFtIiwidmFsdWUiLCJ0eXBlIiwiaWQiLCJyZXNvbHZlTGVuZ3RoIiwicHJlY2lzaW9uIiwicmVzb2x2ZVByZWNpc2lvbiIsInNjYWxlIiwicmVzb2x2ZVNjYWxlIiwiZ2VuZXJhdGVUeXBlSW5mbyIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uL3NyYy9ycGNyZXF1ZXN0LXBheWxvYWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFdyaXRhYmxlVHJhY2tpbmdCdWZmZXIgZnJvbSAnLi90cmFja2luZy1idWZmZXIvd3JpdGFibGUtdHJhY2tpbmctYnVmZmVyJztcbmltcG9ydCB7IHdyaXRlVG9UcmFja2luZ0J1ZmZlciB9IGZyb20gJy4vYWxsLWhlYWRlcnMnO1xuaW1wb3J0IHsgUGFyYW1ldGVyLCBQYXJhbWV0ZXJEYXRhIH0gZnJvbSAnLi9kYXRhLXR5cGUnO1xuaW1wb3J0IHsgSW50ZXJuYWxDb25uZWN0aW9uT3B0aW9ucyB9IGZyb20gJy4vY29ubmVjdGlvbic7XG5pbXBvcnQgeyBDb2xsYXRpb24gfSBmcm9tICcuL2NvbGxhdGlvbic7XG5cbi8vIGNvbnN0IE9QVElPTiA9IHtcbi8vICAgV0lUSF9SRUNPTVBJTEU6IDB4MDEsXG4vLyAgIE5PX01FVEFEQVRBOiAweDAyLFxuLy8gICBSRVVTRV9NRVRBREFUQTogMHgwNFxuLy8gfTtcblxuY29uc3QgU1RBVFVTID0ge1xuICBCWV9SRUZfVkFMVUU6IDB4MDEsXG4gIERFRkFVTFRfVkFMVUU6IDB4MDJcbn07XG5cbi8qXG4gIHMyLjIuNi41XG4gKi9cbmNsYXNzIFJwY1JlcXVlc3RQYXlsb2FkIGltcGxlbWVudHMgSXRlcmFibGU8QnVmZmVyPiB7XG4gIHByb2NlZHVyZTogc3RyaW5nIHwgbnVtYmVyO1xuICBwYXJhbWV0ZXJzOiBQYXJhbWV0ZXJbXTtcblxuICBvcHRpb25zOiBJbnRlcm5hbENvbm5lY3Rpb25PcHRpb25zO1xuICB0eG5EZXNjcmlwdG9yOiBCdWZmZXI7XG4gIGNvbGxhdGlvbjogQ29sbGF0aW9uIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKHByb2NlZHVyZTogc3RyaW5nIHwgbnVtYmVyLCBwYXJhbWV0ZXJzOiBQYXJhbWV0ZXJbXSwgdHhuRGVzY3JpcHRvcjogQnVmZmVyLCBvcHRpb25zOiBJbnRlcm5hbENvbm5lY3Rpb25PcHRpb25zLCBjb2xsYXRpb246IENvbGxhdGlvbiB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMucHJvY2VkdXJlID0gcHJvY2VkdXJlO1xuICAgIHRoaXMucGFyYW1ldGVycyA9IHBhcmFtZXRlcnM7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICB0aGlzLnR4bkRlc2NyaXB0b3IgPSB0eG5EZXNjcmlwdG9yO1xuICAgIHRoaXMuY29sbGF0aW9uID0gY29sbGF0aW9uO1xuICB9XG5cbiAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2VuZXJhdGVEYXRhKCk7XG4gIH1cblxuICAqIGdlbmVyYXRlRGF0YSgpIHtcbiAgICBjb25zdCBidWZmZXIgPSBuZXcgV3JpdGFibGVUcmFja2luZ0J1ZmZlcig1MDApO1xuICAgIGlmICh0aGlzLm9wdGlvbnMudGRzVmVyc2lvbiA+PSAnN18yJykge1xuICAgICAgY29uc3Qgb3V0c3RhbmRpbmdSZXF1ZXN0Q291bnQgPSAxO1xuICAgICAgd3JpdGVUb1RyYWNraW5nQnVmZmVyKGJ1ZmZlciwgdGhpcy50eG5EZXNjcmlwdG9yLCBvdXRzdGFuZGluZ1JlcXVlc3RDb3VudCk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB0aGlzLnByb2NlZHVyZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGJ1ZmZlci53cml0ZVVzVmFyY2hhcih0aGlzLnByb2NlZHVyZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGJ1ZmZlci53cml0ZVVTaG9ydCgweEZGRkYpO1xuICAgICAgYnVmZmVyLndyaXRlVVNob3J0KHRoaXMucHJvY2VkdXJlKTtcbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25GbGFncyA9IDA7XG4gICAgYnVmZmVyLndyaXRlVUludDE2TEUob3B0aW9uRmxhZ3MpO1xuICAgIHlpZWxkIGJ1ZmZlci5kYXRhO1xuXG4gICAgY29uc3QgcGFyYW1ldGVyc0xlbmd0aCA9IHRoaXMucGFyYW1ldGVycy5sZW5ndGg7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzTGVuZ3RoOyBpKyspIHtcbiAgICAgIHlpZWxkICogdGhpcy5nZW5lcmF0ZVBhcmFtZXRlckRhdGEodGhpcy5wYXJhbWV0ZXJzW2ldKTtcbiAgICB9XG4gIH1cblxuICB0b1N0cmluZyhpbmRlbnQgPSAnJykge1xuICAgIHJldHVybiBpbmRlbnQgKyAoJ1JQQyBSZXF1ZXN0IC0gJyArIHRoaXMucHJvY2VkdXJlKTtcbiAgfVxuXG4gICogZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKHBhcmFtZXRlcjogUGFyYW1ldGVyKSB7XG4gICAgY29uc3QgYnVmZmVyID0gbmV3IFdyaXRhYmxlVHJhY2tpbmdCdWZmZXIoMSArIDIgKyBCdWZmZXIuYnl0ZUxlbmd0aChwYXJhbWV0ZXIubmFtZSwgJ3Vjcy0yJykgKyAxKTtcblxuICAgIGlmIChwYXJhbWV0ZXIubmFtZSkge1xuICAgICAgYnVmZmVyLndyaXRlQlZhcmNoYXIoJ0AnICsgcGFyYW1ldGVyLm5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBidWZmZXIud3JpdGVCVmFyY2hhcignJyk7XG4gICAgfVxuXG4gICAgbGV0IHN0YXR1c0ZsYWdzID0gMDtcbiAgICBpZiAocGFyYW1ldGVyLm91dHB1dCkge1xuICAgICAgc3RhdHVzRmxhZ3MgfD0gU1RBVFVTLkJZX1JFRl9WQUxVRTtcbiAgICB9XG4gICAgYnVmZmVyLndyaXRlVUludDgoc3RhdHVzRmxhZ3MpO1xuXG4gICAgeWllbGQgYnVmZmVyLmRhdGE7XG5cbiAgICBjb25zdCBwYXJhbTogUGFyYW1ldGVyRGF0YSA9IHsgdmFsdWU6IHBhcmFtZXRlci52YWx1ZSB9O1xuXG4gICAgY29uc3QgdHlwZSA9IHBhcmFtZXRlci50eXBlO1xuXG4gICAgaWYgKCh0eXBlLmlkICYgMHgzMCkgPT09IDB4MjApIHtcbiAgICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoKSB7XG4gICAgICAgIHBhcmFtLmxlbmd0aCA9IHBhcmFtZXRlci5sZW5ndGg7XG4gICAgICB9IGVsc2UgaWYgKHR5cGUucmVzb2x2ZUxlbmd0aCkge1xuICAgICAgICBwYXJhbS5sZW5ndGggPSB0eXBlLnJlc29sdmVMZW5ndGgocGFyYW1ldGVyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocGFyYW1ldGVyLnByZWNpc2lvbikge1xuICAgICAgcGFyYW0ucHJlY2lzaW9uID0gcGFyYW1ldGVyLnByZWNpc2lvbjtcbiAgICB9IGVsc2UgaWYgKHR5cGUucmVzb2x2ZVByZWNpc2lvbikge1xuICAgICAgcGFyYW0ucHJlY2lzaW9uID0gdHlwZS5yZXNvbHZlUHJlY2lzaW9uKHBhcmFtZXRlcik7XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtZXRlci5zY2FsZSkge1xuICAgICAgcGFyYW0uc2NhbGUgPSBwYXJhbWV0ZXIuc2NhbGU7XG4gICAgfSBlbHNlIGlmICh0eXBlLnJlc29sdmVTY2FsZSkge1xuICAgICAgcGFyYW0uc2NhbGUgPSB0eXBlLnJlc29sdmVTY2FsZShwYXJhbWV0ZXIpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbGxhdGlvbikge1xuICAgICAgcGFyYW0uY29sbGF0aW9uID0gdGhpcy5jb2xsYXRpb247XG4gICAgfVxuXG4gICAgeWllbGQgdHlwZS5nZW5lcmF0ZVR5cGVJbmZvKHBhcmFtLCB0aGlzLm9wdGlvbnMpO1xuICAgIHlpZWxkIHR5cGUuZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW0sIHRoaXMub3B0aW9ucyk7XG4gICAgeWllbGQgKiB0eXBlLmdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbSwgdGhpcy5vcHRpb25zKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBScGNSZXF1ZXN0UGF5bG9hZDtcbm1vZHVsZS5leHBvcnRzID0gUnBjUmVxdWVzdFBheWxvYWQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7Ozs7O0FBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBLE1BQU1BLE1BQU0sR0FBRztFQUNiQyxZQUFZLEVBQUUsSUFERDtFQUViQyxhQUFhLEVBQUU7QUFGRixDQUFmO0FBS0E7QUFDQTtBQUNBOzttQkFpQkdDLE1BQU0sQ0FBQ0MsUTs7QUFoQlYsTUFBTUMsaUJBQU4sQ0FBb0Q7RUFRbERDLFdBQVcsQ0FBQ0MsU0FBRCxFQUE2QkMsVUFBN0IsRUFBc0RDLGFBQXRELEVBQTZFQyxPQUE3RSxFQUFpSEMsU0FBakgsRUFBbUo7SUFBQSxLQVA5SkosU0FPOEo7SUFBQSxLQU45SkMsVUFNOEo7SUFBQSxLQUo5SkUsT0FJOEo7SUFBQSxLQUg5SkQsYUFHOEo7SUFBQSxLQUY5SkUs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
107
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd3JpdGFibGVUcmFja2luZ0J1ZmZlciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2FsbEhlYWRlcnMiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIlNUQVRVUyIsIkJZX1JFRl9WQUxVRSIsIkRFRkFVTFRfVkFMVUUiLCJScGNSZXF1ZXN0UGF5bG9hZCIsInByb2NlZHVyZSIsInBhcmFtZXRlcnMiLCJvcHRpb25zIiwidHhuRGVzY3JpcHRvciIsImNvbGxhdGlvbiIsImNvbnN0cnVjdG9yIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJnZW5lcmF0ZURhdGEiLCJidWZmZXIiLCJXcml0YWJsZVRyYWNraW5nQnVmZmVyIiwidGRzVmVyc2lvbiIsIm91dHN0YW5kaW5nUmVxdWVzdENvdW50Iiwid3JpdGVUb1RyYWNraW5nQnVmZmVyIiwid3JpdGVVc1ZhcmNoYXIiLCJ3cml0ZVVTaG9ydCIsIm9wdGlvbkZsYWdzIiwid3JpdGVVSW50MTZMRSIsImRhdGEiLCJwYXJhbWV0ZXJzTGVuZ3RoIiwibGVuZ3RoIiwiaSIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInRvU3RyaW5nIiwiaW5kZW50IiwicGFyYW1ldGVyIiwiQnVmZmVyIiwiYnl0ZUxlbmd0aCIsIm5hbWUiLCJ3cml0ZUJWYXJjaGFyIiwic3RhdHVzRmxhZ3MiLCJvdXRwdXQiLCJ3cml0ZVVJbnQ4IiwicGFyYW0iLCJ2YWx1ZSIsInR5cGUiLCJpZCIsInJlc29sdmVMZW5ndGgiLCJwcmVjaXNpb24iLCJyZXNvbHZlUHJlY2lzaW9uIiwic2NhbGUiLCJyZXNvbHZlU2NhbGUiLCJnZW5lcmF0ZVR5cGVJbmZvIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJtb2R1bGUiXSwic291cmNlcyI6WyIuLi9zcmMvcnBjcmVxdWVzdC1wYXlsb2FkLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBXcml0YWJsZVRyYWNraW5nQnVmZmVyIGZyb20gJy4vdHJhY2tpbmctYnVmZmVyL3dyaXRhYmxlLXRyYWNraW5nLWJ1ZmZlcic7XG5pbXBvcnQgeyB3cml0ZVRvVHJhY2tpbmdCdWZmZXIgfSBmcm9tICcuL2FsbC1oZWFkZXJzJztcbmltcG9ydCB7IFBhcmFtZXRlciwgUGFyYW1ldGVyRGF0YSB9IGZyb20gJy4vZGF0YS10eXBlJztcbmltcG9ydCB7IEludGVybmFsQ29ubmVjdGlvbk9wdGlvbnMgfSBmcm9tICcuL2Nvbm5lY3Rpb24nO1xuaW1wb3J0IHsgQ29sbGF0aW9uIH0gZnJvbSAnLi9jb2xsYXRpb24nO1xuXG4vLyBjb25zdCBPUFRJT04gPSB7XG4vLyAgIFdJVEhfUkVDT01QSUxFOiAweDAxLFxuLy8gICBOT19NRVRBREFUQTogMHgwMixcbi8vICAgUkVVU0VfTUVUQURBVEE6IDB4MDRcbi8vIH07XG5cbmNvbnN0IFNUQVRVUyA9IHtcbiAgQllfUkVGX1ZBTFVFOiAweDAxLFxuICBERUZBVUxUX1ZBTFVFOiAweDAyXG59O1xuXG4vKlxuICBzMi4yLjYuNVxuICovXG5jbGFzcyBScGNSZXF1ZXN0UGF5bG9hZCBpbXBsZW1lbnRzIEl0ZXJhYmxlPEJ1ZmZlcj4ge1xuICBwcm9jZWR1cmU6IHN0cmluZyB8IG51bWJlcjtcbiAgcGFyYW1ldGVyczogUGFyYW1ldGVyW107XG5cbiAgb3B0aW9uczogSW50ZXJuYWxDb25uZWN0aW9uT3B0aW9ucztcbiAgdHhuRGVzY3JpcHRvcjogQnVmZmVyO1xuICBjb2xsYXRpb246IENvbGxhdGlvbiB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3Rvcihwcm9jZWR1cmU6IHN0cmluZyB8IG51bWJlciwgcGFyYW1ldGVyczogUGFyYW1ldGVyW10sIHR4bkRlc2NyaXB0b3I6IEJ1ZmZlciwgb3B0aW9uczogSW50ZXJuYWxDb25uZWN0aW9uT3B0aW9ucywgY29sbGF0aW9uOiBDb2xsYXRpb24gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLnByb2NlZHVyZSA9IHByb2NlZHVyZTtcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzO1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgdGhpcy50eG5EZXNjcmlwdG9yID0gdHhuRGVzY3JpcHRvcjtcbiAgICB0aGlzLmNvbGxhdGlvbiA9IGNvbGxhdGlvbjtcbiAgfVxuXG4gIFtTeW1ib2wuaXRlcmF0b3JdKCkge1xuICAgIHJldHVybiB0aGlzLmdlbmVyYXRlRGF0YSgpO1xuICB9XG5cbiAgKiBnZW5lcmF0ZURhdGEoKSB7XG4gICAgY29uc3QgYnVmZmVyID0gbmV3IFdyaXRhYmxlVHJhY2tpbmdCdWZmZXIoNTAwKTtcbiAgICBpZiAodGhpcy5vcHRpb25zLnRkc1ZlcnNpb24gPj0gJzdfMicpIHtcbiAgICAgIGNvbnN0IG91dHN0YW5kaW5nUmVxdWVzdENvdW50ID0gMTtcbiAgICAgIHdyaXRlVG9UcmFja2luZ0J1ZmZlcihidWZmZXIsIHRoaXMudHhuRGVzY3JpcHRvciwgb3V0c3RhbmRpbmdSZXF1ZXN0Q291bnQpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdGhpcy5wcm9jZWR1cmUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBidWZmZXIud3JpdGVVc1ZhcmNoYXIodGhpcy5wcm9jZWR1cmUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBidWZmZXIud3JpdGVVU2hvcnQoMHhGRkZGKTtcbiAgICAgIGJ1ZmZlci53cml0ZVVTaG9ydCh0aGlzLnByb2NlZHVyZSk7XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0aW9uRmxhZ3MgPSAwO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKG9wdGlvbkZsYWdzKTtcbiAgICB5aWVsZCBidWZmZXIuZGF0YTtcblxuICAgIGNvbnN0IHBhcmFtZXRlcnNMZW5ndGggPSB0aGlzLnBhcmFtZXRlcnMubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGFyYW1ldGVyc0xlbmd0aDsgaSsrKSB7XG4gICAgICB5aWVsZCAqIHRoaXMuZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKHRoaXMucGFyYW1ldGVyc1tpXSk7XG4gICAgfVxuICB9XG5cbiAgdG9TdHJpbmcoaW5kZW50ID0gJycpIHtcbiAgICByZXR1cm4gaW5kZW50ICsgKCdSUEMgUmVxdWVzdCAtICcgKyB0aGlzLnByb2NlZHVyZSk7XG4gIH1cblxuICAqIGdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXI6IFBhcmFtZXRlcikge1xuICAgIGNvbnN0IGJ1ZmZlciA9IG5ldyBXcml0YWJsZVRyYWNraW5nQnVmZmVyKDEgKyAyICsgQnVmZmVyLmJ5dGVMZW5ndGgocGFyYW1ldGVyLm5hbWUsICd1Y3MtMicpICsgMSk7XG5cbiAgICBpZiAocGFyYW1ldGVyLm5hbWUpIHtcbiAgICAgIGJ1ZmZlci53cml0ZUJWYXJjaGFyKCdAJyArIHBhcmFtZXRlci5uYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYnVmZmVyLndyaXRlQlZhcmNoYXIoJycpO1xuICAgIH1cblxuICAgIGxldCBzdGF0dXNGbGFncyA9IDA7XG4gICAgaWYgKHBhcmFtZXRlci5vdXRwdXQpIHtcbiAgICAgIHN0YXR1c0ZsYWdzIHw9IFNUQVRVUy5CWV9SRUZfVkFMVUU7XG4gICAgfVxuICAgIGJ1ZmZlci53cml0ZVVJbnQ4KHN0YXR1c0ZsYWdzKTtcblxuICAgIHlpZWxkIGJ1ZmZlci5kYXRhO1xuXG4gICAgY29uc3QgcGFyYW06IFBhcmFtZXRlckRhdGEgPSB7IHZhbHVlOiBwYXJhbWV0ZXIudmFsdWUgfTtcblxuICAgIGNvbnN0IHR5cGUgPSBwYXJhbWV0ZXIudHlwZTtcblxuICAgIGlmICgodHlwZS5pZCAmIDB4MzApID09PSAweDIwKSB7XG4gICAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCkge1xuICAgICAgICBwYXJhbS5sZW5ndGggPSBwYXJhbWV0ZXIubGVuZ3RoO1xuICAgICAgfSBlbHNlIGlmICh0eXBlLnJlc29sdmVMZW5ndGgpIHtcbiAgICAgICAgcGFyYW0ubGVuZ3RoID0gdHlwZS5yZXNvbHZlTGVuZ3RoKHBhcmFtZXRlcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtZXRlci5wcmVjaXNpb24pIHtcbiAgICAgIHBhcmFtLnByZWNpc2lvbiA9IHBhcmFtZXRlci5wcmVjaXNpb247XG4gICAgfSBlbHNlIGlmICh0eXBlLnJlc29sdmVQcmVjaXNpb24pIHtcbiAgICAgIHBhcmFtLnByZWNpc2lvbiA9IHR5cGUucmVzb2x2ZVByZWNpc2lvbihwYXJhbWV0ZXIpO1xuICAgIH1cblxuICAgIGlmIChwYXJhbWV0ZXIuc2NhbGUpIHtcbiAgICAgIHBhcmFtLnNjYWxlID0gcGFyYW1ldGVyLnNjYWxlO1xuICAgIH0gZWxzZSBpZiAodHlwZS5yZXNvbHZlU2NhbGUpIHtcbiAgICAgIHBhcmFtLnNjYWxlID0gdHlwZS5yZXNvbHZlU2NhbGUocGFyYW1ldGVyKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jb2xsYXRpb24pIHtcbiAgICAgIHBhcmFtLmNvbGxhdGlvbiA9IHRoaXMuY29sbGF0aW9uO1xuICAgIH1cblxuICAgIHlpZWxkIHR5cGUuZ2VuZXJhdGVUeXBlSW5mbyhwYXJhbSwgdGhpcy5vcHRpb25zKTtcbiAgICB5aWVsZCB0eXBlLmdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKHBhcmFtLCB0aGlzLm9wdGlvbnMpO1xuICAgIHlpZWxkICogdHlwZS5nZW5lcmF0ZVBhcmFtZXRlckRhdGEocGFyYW0sIHRoaXMub3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgUnBjUmVxdWVzdFBheWxvYWQ7XG5tb2R1bGUuZXhwb3J0cyA9IFJwY1JlcXVlc3RQYXlsb2FkO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSx1QkFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRCxPQUFBO0FBQXNELFNBQUFELHVCQUFBRyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBS3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQSxNQUFNRyxNQUFN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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpcrequest-payload.js","names":["_writableTrackingBuffer","_interopRequireDefault","require","_allHeaders","obj","__esModule","default","STATUS","BY_REF_VALUE","DEFAULT_VALUE","RpcRequestPayload","procedure","parameters","options","txnDescriptor","collation","constructor","Symbol","iterator","generateData","buffer","WritableTrackingBuffer","tdsVersion","outstandingRequestCount","writeToTrackingBuffer","writeUsVarchar","writeUShort","optionFlags","writeUInt16LE","data","parametersLength","length","i","generateParameterData","toString","indent","parameter","Buffer","byteLength","name","writeBVarchar","statusFlags","output","writeUInt8","param","value","type","id","resolveLength","precision","resolvePrecision","scale","resolveScale","generateTypeInfo","generateParameterLength","_default","exports","module"],"sources":["../src/rpcrequest-payload.ts"],"sourcesContent":["import WritableTrackingBuffer from './tracking-buffer/writable-tracking-buffer';\nimport { writeToTrackingBuffer } from './all-headers';\nimport { Parameter, ParameterData } from './data-type';\nimport { InternalConnectionOptions } from './connection';\nimport { Collation } from './collation';\n\n// const OPTION = {\n// WITH_RECOMPILE: 0x01,\n// NO_METADATA: 0x02,\n// REUSE_METADATA: 0x04\n// };\n\nconst STATUS = {\n BY_REF_VALUE: 0x01,\n DEFAULT_VALUE: 0x02\n};\n\n/*\n s2.2.6.5\n */\nclass RpcRequestPayload implements Iterable<Buffer> {\n procedure: string | number;\n parameters: Parameter[];\n\n options: InternalConnectionOptions;\n txnDescriptor: Buffer;\n collation: Collation | undefined;\n\n constructor(procedure: string | number, parameters: Parameter[], txnDescriptor: Buffer, options: InternalConnectionOptions, collation: Collation | undefined) {\n this.procedure = procedure;\n this.parameters = parameters;\n this.options = options;\n this.txnDescriptor = txnDescriptor;\n this.collation = collation;\n }\n\n [Symbol.iterator]() {\n return this.generateData();\n }\n\n * generateData() {\n const buffer = new WritableTrackingBuffer(500);\n if (this.options.tdsVersion >= '7_2') {\n const outstandingRequestCount = 1;\n writeToTrackingBuffer(buffer, this.txnDescriptor, outstandingRequestCount);\n }\n\n if (typeof this.procedure === 'string') {\n buffer.writeUsVarchar(this.procedure);\n } else {\n buffer.writeUShort(0xFFFF);\n buffer.writeUShort(this.procedure);\n }\n\n const optionFlags = 0;\n buffer.writeUInt16LE(optionFlags);\n yield buffer.data;\n\n const parametersLength = this.parameters.length;\n for (let i = 0; i < parametersLength; i++) {\n yield * this.generateParameterData(this.parameters[i]);\n }\n }\n\n toString(indent = '') {\n return indent + ('RPC Request - ' + this.procedure);\n }\n\n * generateParameterData(parameter: Parameter) {\n const buffer = new WritableTrackingBuffer(1 + 2 + Buffer.byteLength(parameter.name, 'ucs-2') + 1);\n\n if (parameter.name) {\n buffer.writeBVarchar('@' + parameter.name);\n } else {\n buffer.writeBVarchar('');\n }\n\n let statusFlags = 0;\n if (parameter.output) {\n statusFlags |= STATUS.BY_REF_VALUE;\n }\n buffer.writeUInt8(statusFlags);\n\n yield buffer.data;\n\n const param: ParameterData = { value: parameter.value };\n\n const type = parameter.type;\n\n if ((type.id & 0x30) === 0x20) {\n if (parameter.length) {\n param.length = parameter.length;\n } else if (type.resolveLength) {\n param.length = type.resolveLength(parameter);\n }\n }\n\n if (parameter.precision) {\n param.precision = parameter.precision;\n } else if (type.resolvePrecision) {\n param.precision = type.resolvePrecision(parameter);\n }\n\n if (parameter.scale) {\n param.scale = parameter.scale;\n } else if (type.resolveScale) {\n param.scale = type.resolveScale(parameter);\n }\n\n if (this.collation) {\n param.collation = this.collation;\n }\n\n yield type.generateTypeInfo(param, this.options);\n yield type.generateParameterLength(param, this.options);\n yield * type.generateParameterData(param, this.options);\n }\n}\n\nexport default RpcRequestPayload;\nmodule.exports = RpcRequestPayload;\n"],"mappings":"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"}
package/lib/sender.js CHANGED
@@ -5,51 +5,37 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.sendInParallel = sendInParallel;
7
7
  exports.sendMessage = sendMessage;
8
-
9
8
  var _dgram = _interopRequireDefault(require("dgram"));
10
-
11
9
  var _net = _interopRequireDefault(require("net"));
12
-
13
10
  var punycode = _interopRequireWildcard(require("punycode"));
14
-
15
11
  var _abortError = _interopRequireDefault(require("./errors/abort-error"));
16
-
17
12
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
-
19
13
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
-
21
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
-
23
15
  async function sendInParallel(addresses, port, request, signal) {
24
16
  if (signal.aborted) {
25
17
  throw new _abortError.default();
26
18
  }
27
-
28
19
  return await new Promise((resolve, reject) => {
29
20
  const sockets = [];
30
21
  let errorCount = 0;
31
-
32
22
  const onError = err => {
33
23
  errorCount++;
34
-
35
24
  if (errorCount === addresses.length) {
36
25
  signal.removeEventListener('abort', onAbort);
37
26
  clearSockets();
38
27
  reject(err);
39
28
  }
40
29
  };
41
-
42
30
  const onMessage = message => {
43
31
  signal.removeEventListener('abort', onAbort);
44
32
  clearSockets();
45
33
  resolve(message);
46
34
  };
47
-
48
35
  const onAbort = () => {
49
36
  clearSockets();
50
37
  reject(new _abortError.default());
51
38
  };
52
-
53
39
  const clearSockets = () => {
54
40
  for (const socket of sockets) {
55
41
  socket.removeListener('error', onError);
@@ -57,16 +43,12 @@ async function sendInParallel(addresses, port, request, signal) {
57
43
  socket.close();
58
44
  }
59
45
  };
60
-
61
46
  signal.addEventListener('abort', onAbort, {
62
47
  once: true
63
48
  });
64
-
65
49
  for (let j = 0; j < addresses.length; j++) {
66
50
  const udpType = addresses[j].family === 6 ? 'udp6' : 'udp4';
67
-
68
51
  const socket = _dgram.default.createSocket(udpType);
69
-
70
52
  sockets.push(socket);
71
53
  socket.on('error', onError);
72
54
  socket.on('message', onMessage);
@@ -74,14 +56,11 @@ async function sendInParallel(addresses, port, request, signal) {
74
56
  }
75
57
  });
76
58
  }
77
-
78
59
  async function sendMessage(host, port, lookup, signal, request) {
79
60
  if (signal.aborted) {
80
61
  throw new _abortError.default();
81
62
  }
82
-
83
63
  let addresses;
84
-
85
64
  if (_net.default.isIP(host)) {
86
65
  addresses = [{
87
66
  address: host,
@@ -92,7 +71,6 @@ async function sendMessage(host, port, lookup, signal, request) {
92
71
  const onAbort = () => {
93
72
  reject(new _abortError.default());
94
73
  };
95
-
96
74
  signal.addEventListener('abort', onAbort);
97
75
  lookup(punycode.toASCII(host), {
98
76
  all: true
@@ -102,7 +80,6 @@ async function sendMessage(host, port, lookup, signal, request) {
102
80
  });
103
81
  });
104
82
  }
105
-
106
83
  return await sendInParallel(addresses, port, request, signal);
107
84
  }
108
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzZW5kSW5QYXJhbGxlbCIsImFkZHJlc3NlcyIsInBvcnQiLCJyZXF1ZXN0Iiwic2lnbmFsIiwiYWJvcnRlZCIsIkFib3J0RXJyb3IiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInNvY2tldHMiLCJlcnJvckNvdW50Iiwib25FcnJvciIsImVyciIsImxlbmd0aCIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJvbkFib3J0IiwiY2xlYXJTb2NrZXRzIiwib25NZXNzYWdlIiwibWVzc2FnZSIsInNvY2tldCIsInJlbW92ZUxpc3RlbmVyIiwiY2xvc2UiLCJhZGRFdmVudExpc3RlbmVyIiwib25jZSIsImoiLCJ1ZHBUeXBlIiwiZmFtaWx5IiwiZGdyYW0iLCJjcmVhdGVTb2NrZXQiLCJwdXNoIiwib24iLCJzZW5kIiwiYWRkcmVzcyIsInNlbmRNZXNzYWdlIiwiaG9zdCIsImxvb2t1cCIsIm5ldCIsImlzSVAiLCJpc0lQdjYiLCJwdW55Y29kZSIsInRvQVNDSUkiLCJhbGwiXSwic291cmNlcyI6WyIuLi9zcmMvc2VuZGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkZ3JhbSBmcm9tICdkZ3JhbSc7XG5pbXBvcnQgZG5zIGZyb20gJ2Rucyc7XG5pbXBvcnQgbmV0IGZyb20gJ25ldCc7XG5pbXBvcnQgKiBhcyBwdW55Y29kZSBmcm9tICdwdW55Y29kZSc7XG5pbXBvcnQgeyBBYm9ydFNpZ25hbCB9IGZyb20gJ25vZGUtYWJvcnQtY29udHJvbGxlcic7XG5cbmltcG9ydCBBYm9ydEVycm9yIGZyb20gJy4vZXJyb3JzL2Fib3J0LWVycm9yJztcblxudHlwZSBMb29rdXBGdW5jdGlvbiA9IChob3N0bmFtZTogc3RyaW5nLCBvcHRpb25zOiBkbnMuTG9va3VwQWxsT3B0aW9ucywgY2FsbGJhY2s6IChlcnI6IE5vZGVKUy5FcnJub0V4Y2VwdGlvbiB8IG51bGwsIGFkZHJlc3NlczogZG5zLkxvb2t1cEFkZHJlc3NbXSkgPT4gdm9pZCkgPT4gdm9pZDtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbmRJblBhcmFsbGVsKGFkZHJlc3NlczogZG5zLkxvb2t1cEFkZHJlc3NbXSwgcG9ydDogbnVtYmVyLCByZXF1ZXN0OiBCdWZmZXIsIHNpZ25hbDogQWJvcnRTaWduYWwpIHtcbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgdGhyb3cgbmV3IEFib3J0RXJyb3IoKTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCBuZXcgUHJvbWlzZTxCdWZmZXI+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBjb25zdCBzb2NrZXRzOiBkZ3JhbS5Tb2NrZXRbXSA9IFtdO1xuXG4gICAgbGV0IGVycm9yQ291bnQgPSAwO1xuXG4gICAgY29uc3Qgb25FcnJvciA9IChlcnI6IEVycm9yKSA9PiB7XG4gICAgICBlcnJvckNvdW50Kys7XG5cbiAgICAgIGlmIChlcnJvckNvdW50ID09PSBhZGRyZXNzZXMubGVuZ3RoKSB7XG4gICAgICAgIHNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIG9uQWJvcnQpO1xuICAgICAgICBjbGVhclNvY2tldHMoKTtcblxuICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3Qgb25NZXNzYWdlID0gKG1lc3NhZ2U6IEJ1ZmZlcikgPT4ge1xuICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG4gICAgICBjbGVhclNvY2tldHMoKTtcblxuICAgICAgcmVzb2x2ZShtZXNzYWdlKTtcbiAgICB9O1xuXG4gICAgY29uc3Qgb25BYm9ydCA9ICgpID0+IHtcbiAgICAgIGNsZWFyU29ja2V0cygpO1xuXG4gICAgICByZWplY3QobmV3IEFib3J0RXJyb3IoKSk7XG4gICAgfTtcblxuICAgIGNvbnN0IGNsZWFyU29ja2V0cyA9ICgpID0+IHtcbiAgICAgIGZvciAoY29uc3Qgc29ja2V0IG9mIHNvY2tldHMpIHtcbiAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ21lc3NhZ2UnLCBvbk1lc3NhZ2UpO1xuICAgICAgICBzb2NrZXQuY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCwgeyBvbmNlOiB0cnVlIH0pO1xuXG4gICAgZm9yIChsZXQgaiA9IDA7IGogPCBhZGRyZXNzZXMubGVuZ3RoOyBqKyspIHtcbiAgICAgIGNvbnN0IHVkcFR5cGUgPSBhZGRyZXNzZXNbal0uZmFtaWx5ID09PSA2ID8gJ3VkcDYnIDogJ3VkcDQnO1xuXG4gICAgICBjb25zdCBzb2NrZXQgPSBkZ3JhbS5jcmVhdGVTb2NrZXQodWRwVHlwZSk7XG4gICAgICBzb2NrZXRzLnB1c2goc29ja2V0KTtcbiAgICAgIHNvY2tldC5vbignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgIHNvY2tldC5vbignbWVzc2FnZScsIG9uTWVzc2FnZSk7XG4gICAgICBzb2NrZXQuc2VuZChyZXF1ZXN0LCAwLCByZXF1ZXN0Lmxlbmd0aCwgcG9ydCwgYWRkcmVzc2VzW2pdLmFkZHJlc3MpO1xuICAgIH1cbiAgfSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzZW5kTWVzc2FnZShob3N0OiBzdHJpbmcsIHBvcnQ6IG51bWJlciwgbG9va3VwOiBMb29rdXBGdW5jdGlvbiwgc2lnbmFsOiBBYm9ydFNpZ25hbCwgcmVxdWVzdDogQnVmZmVyKSB7XG4gIGlmIChzaWduYWwuYWJvcnRlZCkge1xuICAgIHRocm93IG5ldyBBYm9ydEVycm9yKCk7XG4gIH1cblxuICBsZXQgYWRkcmVzc2VzOiBkbnMuTG9va3VwQWRkcmVzc1tdO1xuXG4gIGlmIChuZXQuaXNJUChob3N0KSkge1xuICAgIGFkZHJlc3NlcyA9IFtcbiAgICAgIHsgYWRkcmVzczogaG9zdCwgZmFtaWx5OiBuZXQuaXNJUHY2KGhvc3QpID8gNiA6IDQgfVxuICAgIF07XG4gIH0gZWxzZSB7XG4gICAgYWRkcmVzc2VzID0gYXdhaXQgbmV3IFByb21pc2U8ZG5zLkxvb2t1cEFkZHJlc3NbXT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3Qgb25BYm9ydCA9ICgpID0+IHtcbiAgICAgICAgcmVqZWN0KG5ldyBBYm9ydEVycm9yKCkpO1xuICAgICAgfTtcblxuICAgICAgc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgIGxvb2t1cChwdW55Y29kZS50b0FTQ0lJKGhvc3QpLCB7IGFsbDogdHJ1ZSB9LCAoZXJyLCBhZGRyZXNzZXMpID0+IHtcbiAgICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgICAgZXJyID8gcmVqZWN0KGVycikgOiByZXNvbHZlKGFkZHJlc3Nlcyk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCBzZW5kSW5QYXJhbGxlbChhZGRyZXNzZXMsIHBvcnQsIHJlcXVlc3QsIHNpZ25hbCk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7O0FBRUE7O0FBQ0E7O0FBR0E7Ozs7Ozs7O0FBSU8sZUFBZUEsY0FBZixDQUE4QkMsU0FBOUIsRUFBOERDLElBQTlELEVBQTRFQyxPQUE1RSxFQUE2RkMsTUFBN0YsRUFBa0g7RUFDdkgsSUFBSUEsTUFBTSxDQUFDQyxPQUFYLEVBQW9CO0lBQ2xCLE1BQU0sSUFBSUMsbUJBQUosRUFBTjtFQUNEOztFQUVELE9BQU8sTUFBTSxJQUFJQyxPQUFKLENBQW9CLENBQUNDLE9BQUQsRUFBVUMsTUFBVixLQUFxQjtJQUNwRCxNQUFNQyxPQUF1QixHQUFHLEVBQWhDO0lBRUEsSUFBSUMsVUFBVSxHQUFHLENBQWpCOztJQUVBLE1BQU1DLE9BQU8sR0FBSUMsR0FBRCxJQUFnQjtNQUM5QkYsVUFBVTs7TUFFVixJQUFJQSxVQUFVLEtBQUtWLFNBQVMsQ0FBQ2EsTUFBN0IsRUFB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
85
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGdyYW0iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9uZXQiLCJwdW55Y29kZSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2Fib3J0RXJyb3IiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0Iiwic2VuZEluUGFyYWxsZWwiLCJhZGRyZXNzZXMiLCJwb3J0IiwicmVxdWVzdCIsInNpZ25hbCIsImFib3J0ZWQiLCJBYm9ydEVycm9yIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJzb2NrZXRzIiwiZXJyb3JDb3VudCIsIm9uRXJyb3IiLCJlcnIiLCJsZW5ndGgiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwib25BYm9ydCIsImNsZWFyU29ja2V0cyIsIm9uTWVzc2FnZSIsIm1lc3NhZ2UiLCJzb2NrZXQiLCJyZW1vdmVMaXN0ZW5lciIsImNsb3NlIiwiYWRkRXZlbnRMaXN0ZW5lciIsIm9uY2UiLCJqIiwidWRwVHlwZSIsImZhbWlseSIsImRncmFtIiwiY3JlYXRlU29ja2V0IiwicHVzaCIsIm9uIiwic2VuZCIsImFkZHJlc3MiLCJzZW5kTWVzc2FnZSIsImhvc3QiLCJsb29rdXAiLCJuZXQiLCJpc0lQIiwiaXNJUHY2IiwidG9BU0NJSSIsImFsbCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9zZW5kZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRncmFtIGZyb20gJ2RncmFtJztcbmltcG9ydCBkbnMgZnJvbSAnZG5zJztcbmltcG9ydCBuZXQgZnJvbSAnbmV0JztcbmltcG9ydCAqIGFzIHB1bnljb2RlIGZyb20gJ3B1bnljb2RlJztcbmltcG9ydCB7IEFib3J0U2lnbmFsIH0gZnJvbSAnbm9kZS1hYm9ydC1jb250cm9sbGVyJztcblxuaW1wb3J0IEFib3J0RXJyb3IgZnJvbSAnLi9lcnJvcnMvYWJvcnQtZXJyb3InO1xuXG50eXBlIExvb2t1cEZ1bmN0aW9uID0gKGhvc3RuYW1lOiBzdHJpbmcsIG9wdGlvbnM6IGRucy5Mb29rdXBBbGxPcHRpb25zLCBjYWxsYmFjazogKGVycjogTm9kZUpTLkVycm5vRXhjZXB0aW9uIHwgbnVsbCwgYWRkcmVzc2VzOiBkbnMuTG9va3VwQWRkcmVzc1tdKSA9PiB2b2lkKSA9PiB2b2lkO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2VuZEluUGFyYWxsZWwoYWRkcmVzc2VzOiBkbnMuTG9va3VwQWRkcmVzc1tdLCBwb3J0OiBudW1iZXIsIHJlcXVlc3Q6IEJ1ZmZlciwgc2lnbmFsOiBBYm9ydFNpZ25hbCkge1xuICBpZiAoc2lnbmFsLmFib3J0ZWQpIHtcbiAgICB0aHJvdyBuZXcgQWJvcnRFcnJvcigpO1xuICB9XG5cbiAgcmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlPEJ1ZmZlcj4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IHNvY2tldHM6IGRncmFtLlNvY2tldFtdID0gW107XG5cbiAgICBsZXQgZXJyb3JDb3VudCA9IDA7XG5cbiAgICBjb25zdCBvbkVycm9yID0gKGVycjogRXJyb3IpID0+IHtcbiAgICAgIGVycm9yQ291bnQrKztcblxuICAgICAgaWYgKGVycm9yQ291bnQgPT09IGFkZHJlc3Nlcy5sZW5ndGgpIHtcbiAgICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG4gICAgICAgIGNsZWFyU29ja2V0cygpO1xuXG4gICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCBvbk1lc3NhZ2UgPSAobWVzc2FnZTogQnVmZmVyKSA9PiB7XG4gICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcbiAgICAgIGNsZWFyU29ja2V0cygpO1xuXG4gICAgICByZXNvbHZlKG1lc3NhZ2UpO1xuICAgIH07XG5cbiAgICBjb25zdCBvbkFib3J0ID0gKCkgPT4ge1xuICAgICAgY2xlYXJTb2NrZXRzKCk7XG5cbiAgICAgIHJlamVjdChuZXcgQWJvcnRFcnJvcigpKTtcbiAgICB9O1xuXG4gICAgY29uc3QgY2xlYXJTb2NrZXRzID0gKCkgPT4ge1xuICAgICAgZm9yIChjb25zdCBzb2NrZXQgb2Ygc29ja2V0cykge1xuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignbWVzc2FnZScsIG9uTWVzc2FnZSk7XG4gICAgICAgIHNvY2tldC5jbG9zZSgpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0LCB7IG9uY2U6IHRydWUgfSk7XG5cbiAgICBmb3IgKGxldCBqID0gMDsgaiA8IGFkZHJlc3Nlcy5sZW5ndGg7IGorKykge1xuICAgICAgY29uc3QgdWRwVHlwZSA9IGFkZHJlc3Nlc1tqXS5mYW1pbHkgPT09IDYgPyAndWRwNicgOiAndWRwNCc7XG5cbiAgICAgIGNvbnN0IHNvY2tldCA9IGRncmFtLmNyZWF0ZVNvY2tldCh1ZHBUeXBlKTtcbiAgICAgIHNvY2tldHMucHVzaChzb2NrZXQpO1xuICAgICAgc29ja2V0Lm9uKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgc29ja2V0Lm9uKCdtZXNzYWdlJywgb25NZXNzYWdlKTtcbiAgICAgIHNvY2tldC5zZW5kKHJlcXVlc3QsIDAsIHJlcXVlc3QubGVuZ3RoLCBwb3J0LCBhZGRyZXNzZXNbal0uYWRkcmVzcyk7XG4gICAgfVxuICB9KTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbmRNZXNzYWdlKGhvc3Q6IHN0cmluZywgcG9ydDogbnVtYmVyLCBsb29rdXA6IExvb2t1cEZ1bmN0aW9uLCBzaWduYWw6IEFib3J0U2lnbmFsLCByZXF1ZXN0OiBCdWZmZXIpIHtcbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgdGhyb3cgbmV3IEFib3J0RXJyb3IoKTtcbiAgfVxuXG4gIGxldCBhZGRyZXNzZXM6IGRucy5Mb29rdXBBZGRyZXNzW107XG5cbiAgaWYgKG5ldC5pc0lQKGhvc3QpKSB7XG4gICAgYWRkcmVzc2VzID0gW1xuICAgICAgeyBhZGRyZXNzOiBob3N0LCBmYW1pbHk6IG5ldC5pc0lQdjYoaG9zdCkgPyA2IDogNCB9XG4gICAgXTtcbiAgfSBlbHNlIHtcbiAgICBhZGRyZXNzZXMgPSBhd2FpdCBuZXcgUHJvbWlzZTxkbnMuTG9va3VwQWRkcmVzc1tdPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBjb25zdCBvbkFib3J0ID0gKCkgPT4ge1xuICAgICAgICByZWplY3QobmV3IEFib3J0RXJyb3IoKSk7XG4gICAgICB9O1xuXG4gICAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgbG9va3VwKHB1bnljb2RlLnRvQVNDSUkoaG9zdCksIHsgYWxsOiB0cnVlIH0sIChlcnIsIGFkZHJlc3NlcykgPT4ge1xuICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICBlcnIgPyByZWplY3QoZXJyKSA6IHJlc29sdmUoYWRkcmVzc2VzKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGF3YWl0IHNlbmRJblBhcmFsbGVsKGFkZHJlc3NlcywgcG9ydCwgcmVxdWVzdCwgc2lnbmFsKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLElBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLFFBQUEsR0FBQUMsdUJBQUEsQ0FBQUgsT0FBQTtBQUdBLElBQUFJLFdBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUE4QyxTQUFBSyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEsQ0FBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBSCx3QkFBQU8sR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLG9CQUFBQSxHQUFBLHdCQUFBQSxHQUFBLDRCQUFBRSxPQUFBLEVBQUFGLEdBQUEsVUFBQUcsS0FBQSxHQUFBUix3QkFBQSxDQUFBQyxXQUFBLE9BQUFPLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFKLEdBQUEsWUFBQUcsS0FBQSxDQUFBRSxHQUFBLENBQUFMLEdBQUEsU0FBQU0sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFYLEdBQUEsUUFBQVcsR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZCxHQUFBLEVBQUFXLEdBQUEsU0FBQUksSUFBQSxHQUFBUixxQkFBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFWLEdBQUEsRUFBQVcsR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBWCxHQUFBLENBQUFXLEdBQUEsU0FBQUwsTUFBQSxDQUFBSixPQUFBLEdBQUFGLEdBQUEsTUFBQUcsS0FBQSxJQUFBQSxLQUFBLENBQUFhLEdBQUEsQ0FBQWhCLEdBQUEsRUFBQU0sTUFBQSxZQUFBQSxNQUFBO0FBQUEsU0FBQWpCLHVCQUFBVyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBSXZDLGVBQWVpQixjQUFjQSxDQUFDQyxTQUE4QixFQUFFQyxJQUFZLEVBQUVDLE9BQWUsRUFBRUMsTUFBbUIsRUFBRTtFQUN2SCxJQUFJQSxNQUFNLENBQUNDLE9BQU8sRUFBRTtJQUNsQixNQUFNLElBQUlDLG1CQUFVLENBQUMsQ0FBQztFQUN4QjtFQUVBLE9BQU8sTUFBTSxJQUFJQyxPQUFPLENBQVMsQ0FBQ0MsT0FBTyxFQUFFQyxNQUFNLEtBQUs7SUFDcEQsTUFBTUMsT0FBdUIsR0FBRyxFQUFFO0lBRWxDLElBQUlDLFVBQVUsR0FBRyxDQUFDO0lBRWxCLE1BQU1DLE9BQU8sR0FBSUMsR0FBVSxJQUFLO01BQzlCRixVQUFVLEVBQUU7TUFFWixJQUFJQSxVQUFVLEtBQUtWLFNBQVMsQ0FBQ2EsTUFBTSxFQUFFO1FBQ25DVixNQUFNLENBQUNXLG1CQUFtQixDQUFDLE9BQU8sRUFBRUMsT0FBTyxDQUFDO1FBQzVDQyxZQUFZLENBQUMsQ0FBQztRQUVkUixNQUFNLENBQUNJLEdBQUcsQ0FBQztNQUNiO0lBQ0YsQ0FBQztJQUVELE1BQU1LLFNBQVMsR0FBSUMsT0FBZSxJQUFLO01BQ3JDZixNQUFNLENBQUNXLG1CQUFtQixDQUFDLE9BQU8sRUFBRUMsT0FBTyxDQUFDO01BQzVDQyxZQUFZLENBQUMsQ0FBQztNQUVkVCxPQUFPLENBQUNXLE9BQU8sQ0FBQztJQUNsQixDQUFDO0lBRUQsTUFBTUgsT0FBTyxHQUFHQSxDQUFBLEtBQU07TUFDcEJDLFlBQVksQ0FBQyxDQUFDO01BRWRSLE1BQU0sQ0FBQyxJQUFJSCxtQkFBVSxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsTUFBTVcsWUFBWSxHQUFHQSxDQUFBLEtBQU07TUFDekIsS0FBSyxNQUFNRyxNQUFNLElBQUlWLE9BQU8sRUFBRTtRQUM1QlUsTUFBTSxDQUFDQyxjQUFjLENBQUMsT0FBTyxFQUFFVCxPQUFPLENBQUM7UUFDdkNRLE1BQU0sQ0FBQ0MsY0FBYyxDQUFDLFNBQVMsRUFBRUgsU0FBUyxDQUFDO1FBQzNDRSxNQUFNLENBQUNFLEtBQUssQ0FBQyxDQUFDO01BQ2hCO0lBQ0YsQ0FBQztJQUVEbEIsTUFBTSxDQUFDbUIsZ0JBQWdCLENBQUMsT0FBTyxFQUFFUCxPQUFPLEVBQUU7TUFBRVEsSUFBSSxFQUFFO0lBQUssQ0FBQyxDQUFDO0lBRXpELEtBQUssSUFBSUMsQ0FBQyxHQUFHLENBQUMsRUFBRUEsQ0FBQyxHQUFHeEIsU0FBUyxDQUFDYSxNQUFNLEVBQUVXLENBQUMsRUFBRSxFQUFFO01BQ3pDLE1BQU1DLE9BQU8sR0FBR3pCLFNBQVMsQ0FBQ3dCLENBQUMsQ0FBQyxDQUFDRSxNQUFNLEtBQUssQ0FBQyxHQUFHLE1BQU0sR0FBRyxNQUFNO01BRTNELE1BQU1QLE1BQU0sR0FBR1EsY0FBSyxDQUFDQyxZQUFZLENBQUNILE9BQU8sQ0FBQztNQUMxQ2hCLE9BQU8sQ0FBQ29CLElBQUksQ0FBQ1YsTUFBTSxDQUFDO01BQ3BCQSxNQUFNLENBQUNXLEVBQUUsQ0FBQyxPQUFPLEVBQUVuQixPQUFPLENBQUM7TUFDM0JRLE1BQU0sQ0FBQ1csRUFBRSxDQUFDLFNBQVMsRUFBRWIsU0FBUyxDQUFDO01BQy9CRSxNQUFNLENBQUNZLElBQUksQ0FBQzdCLE9BQU8sRUFBRSxDQUFDLEVBQUVBLE9BQU8sQ0FBQ1csTUFBTSxFQUFFWixJQUFJLEVBQUVELFNBQVMsQ0FBQ3dCLENBQUMsQ0FBQyxDQUFDUSxPQUFPLENBQUM7SUFDckU7RUFDRixDQUFDLENBQUM7QUFDSjtBQUVPLGVBQWVDLFdBQVdBLENBQUNDLElBQVksRUFBRWpDLElBQVksRUFBRWtDLE1BQXNCLEVBQUVoQyxNQUFtQixFQUFFRCxPQUFlLEVBQUU7RUFDMUgsSUFBSUMsTUFBTSxDQUFDQyxPQUFPLEVBQUU7SUFDbEIsTUFBTSxJQUFJQyxtQkFBVSxDQUFDLENBQUM7RUFDeEI7RUFFQSxJQUFJTCxTQUE4QjtFQUVsQyxJQUFJb0MsWUFBRyxDQUFDQyxJQUFJLENBQUNILElBQUksQ0FBQyxFQUFFO0lBQ2xCbEMsU0FBUyxHQUFHLENBQ1Y7TUFBRWdDLE9BQU8sRUFBRUUsSUFBSTtNQUFFUixNQUFNLEVBQUVVLFlBQUcsQ0FBQ0UsTUFBTSxDQUFDSixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUc7SUFBRSxDQUFDLENBQ3BEO0VBQ0gsQ0FBQyxNQUFNO0lBQ0xsQyxTQUFTLEdBQUcsTUFBTSxJQUFJTSxPQUFPLENBQXNCLENBQUNDLE9BQU8sRUFBRUMsTUFBTSxLQUFLO01BQ3RFLE1BQU1PLE9BQU8sR0FBR0EsQ0FBQSxLQUFNO1FBQ3BCUCxNQUFNLENBQUMsSUFBSUgsbUJBQVUsQ0FBQyxDQUFDLENBQUM7TUFDMUIsQ0FBQztNQUVERixNQUFNLENBQUNtQixnQkFBZ0IsQ0FBQyxPQUFPLEVBQUVQLE9BQU8sQ0FBQztNQUV6Q29CLE1BQU0sQ0FBQzdELFFBQVEsQ0FBQ2lFLE9BQU8sQ0FBQ0wsSUFBSSxDQUFDLEVBQUU7UUFBRU0sR0FBRyxFQUFFO01BQUssQ0FBQyxFQUFFLENBQUM1QixHQUFHLEVBQUVaLFNBQVMsS0FBSztRQUNoRUcsTUFBTSxDQUFDVyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUVDLE9BQU8sQ0FBQztRQUU1Q0gsR0FBRyxHQUFHSixNQUFNLENBQUNJLEdBQUcsQ0FBQyxHQUFHTCxPQUFPLENBQUNQLFNBQVMsQ0FBQztNQUN4QyxDQUFDLENBQUM7SUFDSixDQUFDLENBQUM7RUFDSjtFQUVBLE9BQU8sTUFBTUQsY0FBYyxDQUFDQyxTQUFTLEVBQUVDLElBQUksRUFBRUMsT0FBTyxFQUFFQyxNQUFNLENBQUM7QUFDL0QifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sender.js","names":["_dgram","_interopRequireDefault","require","_net","punycode","_interopRequireWildcard","_abortError","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","sendInParallel","addresses","port","request","signal","aborted","AbortError","Promise","resolve","reject","sockets","errorCount","onError","err","length","removeEventListener","onAbort","clearSockets","onMessage","message","socket","removeListener","close","addEventListener","once","j","udpType","family","dgram","createSocket","push","on","send","address","sendMessage","host","lookup","net","isIP","isIPv6","toASCII","all"],"sources":["../src/sender.ts"],"sourcesContent":["import dgram from 'dgram';\nimport dns from 'dns';\nimport net from 'net';\nimport * as punycode from 'punycode';\nimport { AbortSignal } from 'node-abort-controller';\n\nimport AbortError from './errors/abort-error';\n\ntype LookupFunction = (hostname: string, options: dns.LookupAllOptions, callback: (err: NodeJS.ErrnoException | null, addresses: dns.LookupAddress[]) => void) => void;\n\nexport async function sendInParallel(addresses: dns.LookupAddress[], port: number, request: Buffer, signal: AbortSignal) {\n if (signal.aborted) {\n throw new AbortError();\n }\n\n return await new Promise<Buffer>((resolve, reject) => {\n const sockets: dgram.Socket[] = [];\n\n let errorCount = 0;\n\n const onError = (err: Error) => {\n errorCount++;\n\n if (errorCount === addresses.length) {\n signal.removeEventListener('abort', onAbort);\n clearSockets();\n\n reject(err);\n }\n };\n\n const onMessage = (message: Buffer) => {\n signal.removeEventListener('abort', onAbort);\n clearSockets();\n\n resolve(message);\n };\n\n const onAbort = () => {\n clearSockets();\n\n reject(new AbortError());\n };\n\n const clearSockets = () => {\n for (const socket of sockets) {\n socket.removeListener('error', onError);\n socket.removeListener('message', onMessage);\n socket.close();\n }\n };\n\n signal.addEventListener('abort', onAbort, { once: true });\n\n for (let j = 0; j < addresses.length; j++) {\n const udpType = addresses[j].family === 6 ? 'udp6' : 'udp4';\n\n const socket = dgram.createSocket(udpType);\n sockets.push(socket);\n socket.on('error', onError);\n socket.on('message', onMessage);\n socket.send(request, 0, request.length, port, addresses[j].address);\n }\n });\n}\n\nexport async function sendMessage(host: string, port: number, lookup: LookupFunction, signal: AbortSignal, request: Buffer) {\n if (signal.aborted) {\n throw new AbortError();\n }\n\n let addresses: dns.LookupAddress[];\n\n if (net.isIP(host)) {\n addresses = [\n { address: host, family: net.isIPv6(host) ? 6 : 4 }\n ];\n } else {\n addresses = await new Promise<dns.LookupAddress[]>((resolve, reject) => {\n const onAbort = () => {\n reject(new AbortError());\n };\n\n signal.addEventListener('abort', onAbort);\n\n lookup(punycode.toASCII(host), { all: true }, (err, addresses) => {\n signal.removeEventListener('abort', onAbort);\n\n err ? reject(err) : resolve(addresses);\n });\n });\n }\n\n return await sendInParallel(addresses, port, request, signal);\n}\n"],"mappings":"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"}
@@ -24,4 +24,4 @@ const procedures = {
24
24
  var _default = procedures;
25
25
  exports.default = _default;
26
26
  module.exports = procedures;
27
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwcm9jZWR1cmVzIiwiU3BfQ3Vyc29yIiwiU3BfQ3Vyc29yT3BlbiIsIlNwX0N1cnNvclByZXBhcmUiLCJTcF9DdXJzb3JFeGVjdXRlIiwiU3BfQ3Vyc29yUHJlcEV4ZWMiLCJTcF9DdXJzb3JVbnByZXBhcmUiLCJTcF9DdXJzb3JGZXRjaCIsIlNwX0N1cnNvck9wdGlvbiIsIlNwX0N1cnNvckNsb3NlIiwiU3BfRXhlY3V0ZVNxbCIsIlNwX1ByZXBhcmUiLCJTcF9FeGVjdXRlIiwiU3BfUHJlcEV4ZWMiLCJTcF9QcmVwRXhlY1JwYyIsIlNwX1VucHJlcGFyZSIsIm1vZHVsZSIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi9zcmMvc3BlY2lhbC1zdG9yZWQtcHJvY2VkdXJlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHByb2NlZHVyZXMgPSB7XG4gIFNwX0N1cnNvcjogMSxcbiAgU3BfQ3Vyc29yT3BlbjogMixcbiAgU3BfQ3Vyc29yUHJlcGFyZTogMyxcbiAgU3BfQ3Vyc29yRXhlY3V0ZTogNCxcbiAgU3BfQ3Vyc29yUHJlcEV4ZWM6IDUsXG4gIFNwX0N1cnNvclVucHJlcGFyZTogNixcbiAgU3BfQ3Vyc29yRmV0Y2g6IDcsXG4gIFNwX0N1cnNvck9wdGlvbjogOCxcbiAgU3BfQ3Vyc29yQ2xvc2U6IDksXG4gIFNwX0V4ZWN1dGVTcWw6IDEwLFxuICBTcF9QcmVwYXJlOiAxMSxcbiAgU3BfRXhlY3V0ZTogMTIsXG4gIFNwX1ByZXBFeGVjOiAxMyxcbiAgU3BfUHJlcEV4ZWNScGM6IDE0LFxuICBTcF9VbnByZXBhcmU6IDE1XG59O1xuXG5leHBvcnQgZGVmYXVsdCBwcm9jZWR1cmVzO1xubW9kdWxlLmV4cG9ydHMgPSBwcm9jZWR1cmVzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxNQUFNQSxVQUFVLEdBQUc7RUFDakJDLFNBQVMsRUFBRSxDQURNO0VBRWpCQyxhQUFhLEVBQUUsQ0FGRTtFQUdqQkMsZ0JBQWdCLEVBQUUsQ0FIRDtFQUlqQkMsZ0JBQWdCLEVBQUUsQ0FKRDtFQUtqQkMsaUJBQWlCLEVBQUUsQ0FMRjtFQU1qQkMsa0JBQWtCLEVBQUUsQ0FOSDtFQU9qQkMsY0FBYyxFQUFFLENBUEM7RUFRakJDLGVBQWUsRUFBRSxDQVJBO0VBU2pCQyxjQUFjLEVBQUUsQ0FUQztFQVVqQkMsYUFBYSxFQUFFLEVBVkU7RUFXakJDLFVBQVUsRUFBRSxFQVhLO0VBWWpCQyxVQUFVLEVBQUUsRUFaSztFQWFqQkMsV0FBVyxFQUFFLEVBYkk7RUFjakJDLGNBQWMsRUFBRSxFQWRDO0VBZWpCQyxZQUFZLEVBQUU7QUFmRyxDQUFuQjtlQWtCZWYsVTs7QUFDZmdCLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQmpCLFVBQWpCIn0=
27
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwcm9jZWR1cmVzIiwiU3BfQ3Vyc29yIiwiU3BfQ3Vyc29yT3BlbiIsIlNwX0N1cnNvclByZXBhcmUiLCJTcF9DdXJzb3JFeGVjdXRlIiwiU3BfQ3Vyc29yUHJlcEV4ZWMiLCJTcF9DdXJzb3JVbnByZXBhcmUiLCJTcF9DdXJzb3JGZXRjaCIsIlNwX0N1cnNvck9wdGlvbiIsIlNwX0N1cnNvckNsb3NlIiwiU3BfRXhlY3V0ZVNxbCIsIlNwX1ByZXBhcmUiLCJTcF9FeGVjdXRlIiwiU3BfUHJlcEV4ZWMiLCJTcF9QcmVwRXhlY1JwYyIsIlNwX1VucHJlcGFyZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiLCJtb2R1bGUiXSwic291cmNlcyI6WyIuLi9zcmMvc3BlY2lhbC1zdG9yZWQtcHJvY2VkdXJlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHByb2NlZHVyZXMgPSB7XG4gIFNwX0N1cnNvcjogMSxcbiAgU3BfQ3Vyc29yT3BlbjogMixcbiAgU3BfQ3Vyc29yUHJlcGFyZTogMyxcbiAgU3BfQ3Vyc29yRXhlY3V0ZTogNCxcbiAgU3BfQ3Vyc29yUHJlcEV4ZWM6IDUsXG4gIFNwX0N1cnNvclVucHJlcGFyZTogNixcbiAgU3BfQ3Vyc29yRmV0Y2g6IDcsXG4gIFNwX0N1cnNvck9wdGlvbjogOCxcbiAgU3BfQ3Vyc29yQ2xvc2U6IDksXG4gIFNwX0V4ZWN1dGVTcWw6IDEwLFxuICBTcF9QcmVwYXJlOiAxMSxcbiAgU3BfRXhlY3V0ZTogMTIsXG4gIFNwX1ByZXBFeGVjOiAxMyxcbiAgU3BfUHJlcEV4ZWNScGM6IDE0LFxuICBTcF9VbnByZXBhcmU6IDE1XG59O1xuXG5leHBvcnQgZGVmYXVsdCBwcm9jZWR1cmVzO1xubW9kdWxlLmV4cG9ydHMgPSBwcm9jZWR1cmVzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxNQUFNQSxVQUFVLEdBQUc7RUFDakJDLFNBQVMsRUFBRSxDQUFDO0VBQ1pDLGFBQWEsRUFBRSxDQUFDO0VBQ2hCQyxnQkFBZ0IsRUFBRSxDQUFDO0VBQ25CQyxnQkFBZ0IsRUFBRSxDQUFDO0VBQ25CQyxpQkFBaUIsRUFBRSxDQUFDO0VBQ3BCQyxrQkFBa0IsRUFBRSxDQUFDO0VBQ3JCQyxjQUFjLEVBQUUsQ0FBQztFQUNqQkMsZUFBZSxFQUFFLENBQUM7RUFDbEJDLGNBQWMsRUFBRSxDQUFDO0VBQ2pCQyxhQUFhLEVBQUUsRUFBRTtFQUNqQkMsVUFBVSxFQUFFLEVBQUU7RUFDZEMsVUFBVSxFQUFFLEVBQUU7RUFDZEMsV0FBVyxFQUFFLEVBQUU7RUFDZkMsY0FBYyxFQUFFLEVBQUU7RUFDbEJDLFlBQVksRUFBRTtBQUNoQixDQUFDO0FBQUMsSUFBQUMsUUFBQSxHQUVhaEIsVUFBVTtBQUFBaUIsT0FBQSxDQUFBQyxPQUFBLEdBQUFGLFFBQUE7QUFDekJHLE1BQU0sQ0FBQ0YsT0FBTyxHQUFHakIsVUFBVSJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"special-stored-procedure.js","names":["procedures","Sp_Cursor","Sp_CursorOpen","Sp_CursorPrepare","Sp_CursorExecute","Sp_CursorPrepExec","Sp_CursorUnprepare","Sp_CursorFetch","Sp_CursorOption","Sp_CursorClose","Sp_ExecuteSql","Sp_Prepare","Sp_Execute","Sp_PrepExec","Sp_PrepExecRpc","Sp_Unprepare","_default","exports","default","module"],"sources":["../src/special-stored-procedure.ts"],"sourcesContent":["const procedures = {\n Sp_Cursor: 1,\n Sp_CursorOpen: 2,\n Sp_CursorPrepare: 3,\n Sp_CursorExecute: 4,\n Sp_CursorPrepExec: 5,\n Sp_CursorUnprepare: 6,\n Sp_CursorFetch: 7,\n Sp_CursorOption: 8,\n Sp_CursorClose: 9,\n Sp_ExecuteSql: 10,\n Sp_Prepare: 11,\n Sp_Execute: 12,\n Sp_PrepExec: 13,\n Sp_PrepExecRpc: 14,\n Sp_Unprepare: 15\n};\n\nexport default procedures;\nmodule.exports = procedures;\n"],"mappings":";;;;;;AAAA,MAAMA,UAAU,GAAG;EACjBC,SAAS,EAAE,CAAC;EACZC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,gBAAgB,EAAE,CAAC;EACnBC,iBAAiB,EAAE,CAAC;EACpBC,kBAAkB,EAAE,CAAC;EACrBC,cAAc,EAAE,CAAC;EACjBC,eAAe,EAAE,CAAC;EAClBC,cAAc,EAAE,CAAC;EACjBC,aAAa,EAAE,EAAE;EACjBC,UAAU,EAAE,EAAE;EACdC,UAAU,EAAE,EAAE;EACdC,WAAW,EAAE,EAAE;EACfC,cAAc,EAAE,EAAE;EAClBC,YAAY,EAAE;AAChB,CAAC;AAAC,IAAAC,QAAA,GAEahB,UAAU;AAAAiB,OAAA,CAAAC,OAAA,GAAAF,QAAA;AACzBG,MAAM,CAACF,OAAO,GAAGjB,UAAU"}
@@ -4,48 +4,35 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _writableTrackingBuffer = _interopRequireDefault(require("./tracking-buffer/writable-tracking-buffer"));
9
-
10
8
  var _allHeaders = require("./all-headers");
11
-
12
- let _Symbol$iterator;
13
-
14
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- _Symbol$iterator = Symbol.iterator;
17
-
18
10
  /*
19
11
  s2.2.6.6
20
12
  */
21
13
  class SqlBatchPayload {
14
+ sqlText;
15
+ txnDescriptor;
16
+ options;
22
17
  constructor(sqlText, txnDescriptor, options) {
23
- this.sqlText = void 0;
24
- this.txnDescriptor = void 0;
25
- this.options = void 0;
26
18
  this.sqlText = sqlText;
27
19
  this.txnDescriptor = txnDescriptor;
28
20
  this.options = options;
29
21
  }
30
-
31
- *[_Symbol$iterator]() {
22
+ *[Symbol.iterator]() {
32
23
  if (this.options.tdsVersion >= '7_2') {
33
24
  const buffer = new _writableTrackingBuffer.default(18, 'ucs2');
34
25
  const outstandingRequestCount = 1;
35
26
  (0, _allHeaders.writeToTrackingBuffer)(buffer, this.txnDescriptor, outstandingRequestCount);
36
27
  yield buffer.data;
37
28
  }
38
-
39
29
  yield Buffer.from(this.sqlText, 'ucs2');
40
30
  }
41
-
42
31
  toString(indent = '') {
43
32
  return indent + ('SQL Batch - ' + this.sqlText);
44
33
  }
45
-
46
34
  }
47
-
48
35
  var _default = SqlBatchPayload;
49
36
  exports.default = _default;
50
37
  module.exports = SqlBatchPayload;
51
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTeW1ib2wiLCJpdGVyYXRvciIsIlNxbEJhdGNoUGF5bG9hZCIsImNvbnN0cnVjdG9yIiwic3FsVGV4dCIsInR4bkRlc2NyaXB0b3IiLCJvcHRpb25zIiwidGRzVmVyc2lvbiIsImJ1ZmZlciIsIldyaXRhYmxlVHJhY2tpbmdCdWZmZXIiLCJvdXRzdGFuZGluZ1JlcXVlc3RDb3VudCIsImRhdGEiLCJCdWZmZXIiLCJmcm9tIiwidG9TdHJpbmciLCJpbmRlbnQiLCJtb2R1bGUiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vc3JjL3NxbGJhdGNoLXBheWxvYWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFdyaXRhYmxlVHJhY2tpbmdCdWZmZXIgZnJvbSAnLi90cmFja2luZy1idWZmZXIvd3JpdGFibGUtdHJhY2tpbmctYnVmZmVyJztcbmltcG9ydCB7IHdyaXRlVG9UcmFja2luZ0J1ZmZlciB9IGZyb20gJy4vYWxsLWhlYWRlcnMnO1xuXG4vKlxuICBzMi4yLjYuNlxuICovXG5jbGFzcyBTcWxCYXRjaFBheWxvYWQgaW1wbGVtZW50cyBJdGVyYWJsZTxCdWZmZXI+IHtcbiAgc3FsVGV4dDogc3RyaW5nO1xuICB0eG5EZXNjcmlwdG9yOiBCdWZmZXI7XG4gIG9wdGlvbnM6IHsgdGRzVmVyc2lvbjogc3RyaW5nIH07XG5cbiAgY29uc3RydWN0b3Ioc3FsVGV4dDogc3RyaW5nLCB0eG5EZXNjcmlwdG9yOiBCdWZmZXIsIG9wdGlvbnM6IHsgdGRzVmVyc2lvbjogc3RyaW5nIH0pIHtcbiAgICB0aGlzLnNxbFRleHQgPSBzcWxUZXh0O1xuICAgIHRoaXMudHhuRGVzY3JpcHRvciA9IHR4bkRlc2NyaXB0b3I7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgfVxuXG4gICpbU3ltYm9sLml0ZXJhdG9yXSgpIHtcbiAgICBpZiAodGhpcy5vcHRpb25zLnRkc1ZlcnNpb24gPj0gJzdfMicpIHtcbiAgICAgIGNvbnN0IGJ1ZmZlciA9IG5ldyBXcml0YWJsZVRyYWNraW5nQnVmZmVyKDE4LCAndWNzMicpO1xuICAgICAgY29uc3Qgb3V0c3RhbmRpbmdSZXF1ZXN0Q291bnQgPSAxO1xuXG4gICAgICB3cml0ZVRvVHJhY2tpbmdCdWZmZXIoYnVmZmVyLCB0aGlzLnR4bkRlc2NyaXB0b3IsIG91dHN0YW5kaW5nUmVxdWVzdENvdW50KTtcblxuICAgICAgeWllbGQgYnVmZmVyLmRhdGE7XG4gICAgfVxuXG4gICAgeWllbGQgQnVmZmVyLmZyb20odGhpcy5zcWxUZXh0LCAndWNzMicpO1xuICB9XG5cbiAgdG9TdHJpbmcoaW5kZW50ID0gJycpIHtcbiAgICByZXR1cm4gaW5kZW50ICsgKCdTUUwgQmF0Y2ggLSAnICsgdGhpcy5zcWxUZXh0KTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBTcWxCYXRjaFBheWxvYWQ7XG5tb2R1bGUuZXhwb3J0cyA9IFNxbEJhdGNoUGF5bG9hZDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOzs7Ozs7bUJBZ0JJQSxNQUFNLENBQUNDLFE7O0FBZFg7QUFDQTtBQUNBO0FBQ0EsTUFBTUMsZUFBTixDQUFrRDtFQUtoREMsV0FBVyxDQUFDQyxPQUFELEVBQWtCQyxhQUFsQixFQUF5Q0MsT0FBekMsRUFBMEU7SUFBQSxLQUpyRkYsT0FJcUY7SUFBQSxLQUhyRkMsYUFHcUY7SUFBQSxLQUZyRkMsT0FFcUY7SUFDbkYsS0FBS0YsT0FBTCxHQUFlQSxPQUFmO0lBQ0EsS0FBS0MsYUFBTCxHQUFxQkEsYUFBckI7SUFDQSxLQUFLQyxPQUFMLEdBQWVBLE9BQWY7RUFDRDs7RUFFRCxzQkFBcUI7SUFDbkIsSUFBSSxLQUFLQSxPQUFMLENBQWFDLFVBQWIsSUFBMkIsS0FBL0IsRUFBc0M7TUFDcEMsTUFBTUMsTUFBTSxHQUFHLElBQUlDLCtCQUFKLENBQTJCLEVBQTNCLEVBQStCLE1BQS9CLENBQWY7TUFDQSxNQUFNQyx1QkFBdUIsR0FBRyxDQUFoQztNQUVBLHVDQUFzQkYsTUFBdEIsRUFBOEIsS0FBS0gsYUFBbkMsRUFBa0RLLHVCQUFsRDtNQUVBLE1BQU1GLE1BQU0sQ0FBQ0csSUFBYjtJQUNEOztJQUVELE1BQU1DLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLEtBQUtULE9BQWpCLEVBQTBCLE1BQTFCLENBQU47RUFDRDs7RUFFRFUsUUFBUSxDQUFDQyxNQUFNLEdBQUcsRUFBVixFQUFjO0lBQ3BCLE9BQU9BLE1BQU0sSUFBSSxpQkFBaUIsS0FBS1gsT0FBMUIsQ0FBYjtFQUNEOztBQTFCK0M7O2VBNkJuQ0YsZTs7QUFDZmMsTUFBTSxDQUFDQyxPQUFQLEdBQWlCZixlQUFqQiJ9
38
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd3JpdGFibGVUcmFja2luZ0J1ZmZlciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2FsbEhlYWRlcnMiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIlNxbEJhdGNoUGF5bG9hZCIsInNxbFRleHQiLCJ0eG5EZXNjcmlwdG9yIiwib3B0aW9ucyIsImNvbnN0cnVjdG9yIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJ0ZHNWZXJzaW9uIiwiYnVmZmVyIiwiV3JpdGFibGVUcmFja2luZ0J1ZmZlciIsIm91dHN0YW5kaW5nUmVxdWVzdENvdW50Iiwid3JpdGVUb1RyYWNraW5nQnVmZmVyIiwiZGF0YSIsIkJ1ZmZlciIsImZyb20iLCJ0b1N0cmluZyIsImluZGVudCIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9zcWxiYXRjaC1wYXlsb2FkLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBXcml0YWJsZVRyYWNraW5nQnVmZmVyIGZyb20gJy4vdHJhY2tpbmctYnVmZmVyL3dyaXRhYmxlLXRyYWNraW5nLWJ1ZmZlcic7XG5pbXBvcnQgeyB3cml0ZVRvVHJhY2tpbmdCdWZmZXIgfSBmcm9tICcuL2FsbC1oZWFkZXJzJztcblxuLypcbiAgczIuMi42LjZcbiAqL1xuY2xhc3MgU3FsQmF0Y2hQYXlsb2FkIGltcGxlbWVudHMgSXRlcmFibGU8QnVmZmVyPiB7XG4gIHNxbFRleHQ6IHN0cmluZztcbiAgdHhuRGVzY3JpcHRvcjogQnVmZmVyO1xuICBvcHRpb25zOiB7IHRkc1ZlcnNpb246IHN0cmluZyB9O1xuXG4gIGNvbnN0cnVjdG9yKHNxbFRleHQ6IHN0cmluZywgdHhuRGVzY3JpcHRvcjogQnVmZmVyLCBvcHRpb25zOiB7IHRkc1ZlcnNpb246IHN0cmluZyB9KSB7XG4gICAgdGhpcy5zcWxUZXh0ID0gc3FsVGV4dDtcbiAgICB0aGlzLnR4bkRlc2NyaXB0b3IgPSB0eG5EZXNjcmlwdG9yO1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gIH1cblxuICAqW1N5bWJvbC5pdGVyYXRvcl0oKSB7XG4gICAgaWYgKHRoaXMub3B0aW9ucy50ZHNWZXJzaW9uID49ICc3XzInKSB7XG4gICAgICBjb25zdCBidWZmZXIgPSBuZXcgV3JpdGFibGVUcmFja2luZ0J1ZmZlcigxOCwgJ3VjczInKTtcbiAgICAgIGNvbnN0IG91dHN0YW5kaW5nUmVxdWVzdENvdW50ID0gMTtcblxuICAgICAgd3JpdGVUb1RyYWNraW5nQnVmZmVyKGJ1ZmZlciwgdGhpcy50eG5EZXNjcmlwdG9yLCBvdXRzdGFuZGluZ1JlcXVlc3RDb3VudCk7XG5cbiAgICAgIHlpZWxkIGJ1ZmZlci5kYXRhO1xuICAgIH1cblxuICAgIHlpZWxkIEJ1ZmZlci5mcm9tKHRoaXMuc3FsVGV4dCwgJ3VjczInKTtcbiAgfVxuXG4gIHRvU3RyaW5nKGluZGVudCA9ICcnKSB7XG4gICAgcmV0dXJuIGluZGVudCArICgnU1FMIEJhdGNoIC0gJyArIHRoaXMuc3FsVGV4dCk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgU3FsQmF0Y2hQYXlsb2FkO1xubW9kdWxlLmV4cG9ydHMgPSBTcWxCYXRjaFBheWxvYWQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLHVCQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFELE9BQUE7QUFBc0QsU0FBQUQsdUJBQUFHLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFdEQ7QUFDQTtBQUNBO0FBQ0EsTUFBTUcsZUFBZSxDQUE2QjtFQUNoREMsT0FBTztFQUNQQyxhQUFhO0VBQ2JDLE9BQU87RUFFUEMsV0FBV0EsQ0FBQ0gsT0FBZSxFQUFFQyxhQUFxQixFQUFFQyxPQUErQixFQUFFO0lBQ25GLElBQUksQ0FBQ0YsT0FBTyxHQUFHQSxPQUFPO0lBQ3RCLElBQUksQ0FBQ0MsYUFBYSxHQUFHQSxhQUFhO0lBQ2xDLElBQUksQ0FBQ0MsT0FBTyxHQUFHQSxPQUFPO0VBQ3hCO0VBRUEsRUFBRUUsTUFBTSxDQUFDQyxRQUFRLElBQUk7SUFDbkIsSUFBSSxJQUFJLENBQUNILE9BQU8sQ0FBQ0ksVUFBVSxJQUFJLEtBQUssRUFBRTtNQUNwQyxNQUFNQyxNQUFNLEdBQUcsSUFBSUMsK0JBQXNCLENBQUMsRUFBRSxFQUFFLE1BQU0sQ0FBQztNQUNyRCxNQUFNQyx1QkFBdUIsR0FBRyxDQUFDO01BRWpDLElBQUFDLGlDQUFxQixFQUFDSCxNQUFNLEVBQUUsSUFBSSxDQUFDTixhQUFhLEVBQUVRLHVCQUF1QixDQUFDO01BRTFFLE1BQU1GLE1BQU0sQ0FBQ0ksSUFBSTtJQUNuQjtJQUVBLE1BQU1DLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLElBQUksQ0FBQ2IsT0FBTyxFQUFFLE1BQU0sQ0FBQztFQUN6QztFQUVBYyxRQUFRQSxDQUFDQyxNQUFNLEdBQUcsRUFBRSxFQUFFO0lBQ3BCLE9BQU9BLE1BQU0sSUFBSSxjQUFjLEdBQUcsSUFBSSxDQUFDZixPQUFPLENBQUM7RUFDakQ7QUFDRjtBQUFDLElBQUFnQixRQUFBLEdBRWNqQixlQUFlO0FBQUFrQixPQUFBLENBQUFuQixPQUFBLEdBQUFrQixRQUFBO0FBQzlCRSxNQUFNLENBQUNELE9BQU8sR0FBR2xCLGVBQWUifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlbatch-payload.js","names":["_writableTrackingBuffer","_interopRequireDefault","require","_allHeaders","obj","__esModule","default","SqlBatchPayload","sqlText","txnDescriptor","options","constructor","Symbol","iterator","tdsVersion","buffer","WritableTrackingBuffer","outstandingRequestCount","writeToTrackingBuffer","data","Buffer","from","toString","indent","_default","exports","module"],"sources":["../src/sqlbatch-payload.ts"],"sourcesContent":["import WritableTrackingBuffer from './tracking-buffer/writable-tracking-buffer';\nimport { writeToTrackingBuffer } from './all-headers';\n\n/*\n s2.2.6.6\n */\nclass SqlBatchPayload implements Iterable<Buffer> {\n sqlText: string;\n txnDescriptor: Buffer;\n options: { tdsVersion: string };\n\n constructor(sqlText: string, txnDescriptor: Buffer, options: { tdsVersion: string }) {\n this.sqlText = sqlText;\n this.txnDescriptor = txnDescriptor;\n this.options = options;\n }\n\n *[Symbol.iterator]() {\n if (this.options.tdsVersion >= '7_2') {\n const buffer = new WritableTrackingBuffer(18, 'ucs2');\n const outstandingRequestCount = 1;\n\n writeToTrackingBuffer(buffer, this.txnDescriptor, outstandingRequestCount);\n\n yield buffer.data;\n }\n\n yield Buffer.from(this.sqlText, 'ucs2');\n }\n\n toString(indent = '') {\n return indent + ('SQL Batch - ' + this.sqlText);\n }\n}\n\nexport default SqlBatchPayload;\nmodule.exports = SqlBatchPayload;\n"],"mappings":";;;;;;AAAA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAAsD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEtD;AACA;AACA;AACA,MAAMG,eAAe,CAA6B;EAChDC,OAAO;EACPC,aAAa;EACbC,OAAO;EAEPC,WAAWA,CAACH,OAAe,EAAEC,aAAqB,EAAEC,OAA+B,EAAE;IACnF,IAAI,CAACF,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,aAAa,GAAGA,aAAa;IAClC,IAAI,CAACC,OAAO,GAAGA,OAAO;EACxB;EAEA,EAAEE,MAAM,CAACC,QAAQ,IAAI;IACnB,IAAI,IAAI,CAACH,OAAO,CAACI,UAAU,IAAI,KAAK,EAAE;MACpC,MAAMC,MAAM,GAAG,IAAIC,+BAAsB,CAAC,EAAE,EAAE,MAAM,CAAC;MACrD,MAAMC,uBAAuB,GAAG,CAAC;MAEjC,IAAAC,iCAAqB,EAACH,MAAM,EAAE,IAAI,CAACN,aAAa,EAAEQ,uBAAuB,CAAC;MAE1E,MAAMF,MAAM,CAACI,IAAI;IACnB;IAEA,MAAMC,MAAM,CAACC,IAAI,CAAC,IAAI,CAACb,OAAO,EAAE,MAAM,CAAC;EACzC;EAEAc,QAAQA,CAACC,MAAM,GAAG,EAAE,EAAE;IACpB,OAAOA,MAAM,IAAI,cAAc,GAAG,IAAI,CAACf,OAAO,CAAC;EACjD;AACF;AAAC,IAAAgB,QAAA,GAEcjB,eAAe;AAAAkB,OAAA,CAAAnB,OAAA,GAAAkB,QAAA;AAC9BE,MAAM,CAACD,OAAO,GAAGlB,eAAe"}
@@ -9,13 +9,13 @@ const versions = {
9
9
  '7_2': 0x72090002,
10
10
  '7_3_A': 0x730A0003,
11
11
  '7_3_B': 0x730B0003,
12
- '7_4': 0x74000004
12
+ '7_4': 0x74000004,
13
+ '8_0': 0x08000000
13
14
  };
14
15
  exports.versions = versions;
15
16
  const versionsByValue = {};
16
17
  exports.versionsByValue = versionsByValue;
17
-
18
18
  for (const name in versions) {
19
19
  versionsByValue[versions[name]] = name;
20
20
  }
21
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ2ZXJzaW9ucyIsInZlcnNpb25zQnlWYWx1ZSIsIm5hbWUiXSwic291cmNlcyI6WyIuLi9zcmMvdGRzLXZlcnNpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCB2ZXJzaW9uczogeyBba2V5OiBzdHJpbmddOiBudW1iZXIgfSA9IHtcbiAgJzdfMSc6IDB4NzEwMDAwMDEsXG4gICc3XzInOiAweDcyMDkwMDAyLFxuICAnN18zX0EnOiAweDczMEEwMDAzLFxuICAnN18zX0InOiAweDczMEIwMDAzLFxuICAnN180JzogMHg3NDAwMDAwNFxufTtcblxuZXhwb3J0IGNvbnN0IHZlcnNpb25zQnlWYWx1ZTogeyBba2V5OiBudW1iZXJdOiBzdHJpbmcgfSA9IHt9O1xuXG5mb3IgKGNvbnN0IG5hbWUgaW4gdmVyc2lvbnMpIHtcbiAgdmVyc2lvbnNCeVZhbHVlW3ZlcnNpb25zW25hbWVdXSA9IG5hbWU7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFPLE1BQU1BLFFBQW1DLEdBQUc7RUFDakQsT0FBTyxVQUQwQztFQUVqRCxPQUFPLFVBRjBDO0VBR2pELFNBQVMsVUFId0M7RUFJakQsU0FBUyxVQUp3QztFQUtqRCxPQUFPO0FBTDBDLENBQTVDOztBQVFBLE1BQU1DLGVBQTBDLEdBQUcsRUFBbkQ7OztBQUVQLEtBQUssTUFBTUMsSUFBWCxJQUFtQkYsUUFBbkIsRUFBNkI7RUFDM0JDLGVBQWUsQ0FBQ0QsUUFBUSxDQUFDRSxJQUFELENBQVQsQ0FBZixHQUFrQ0EsSUFBbEM7QUFDRCJ9
21
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ2ZXJzaW9ucyIsImV4cG9ydHMiLCJ2ZXJzaW9uc0J5VmFsdWUiLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vc3JjL3Rkcy12ZXJzaW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgdmVyc2lvbnM6IHsgW2tleTogc3RyaW5nXTogbnVtYmVyIH0gPSB7XG4gICc3XzEnOiAweDcxMDAwMDAxLFxuICAnN18yJzogMHg3MjA5MDAwMixcbiAgJzdfM19BJzogMHg3MzBBMDAwMyxcbiAgJzdfM19CJzogMHg3MzBCMDAwMyxcbiAgJzdfNCc6IDB4NzQwMDAwMDQsXG4gICc4XzAnOiAweDA4MDAwMDAwXG59O1xuXG5leHBvcnQgY29uc3QgdmVyc2lvbnNCeVZhbHVlOiB7IFtrZXk6IG51bWJlcl06IHN0cmluZyB9ID0ge307XG5cbmZvciAoY29uc3QgbmFtZSBpbiB2ZXJzaW9ucykge1xuICB2ZXJzaW9uc0J5VmFsdWVbdmVyc2lvbnNbbmFtZV1dID0gbmFtZTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQU8sTUFBTUEsUUFBbUMsR0FBRztFQUNqRCxLQUFLLEVBQUUsVUFBVTtFQUNqQixLQUFLLEVBQUUsVUFBVTtFQUNqQixPQUFPLEVBQUUsVUFBVTtFQUNuQixPQUFPLEVBQUUsVUFBVTtFQUNuQixLQUFLLEVBQUUsVUFBVTtFQUNqQixLQUFLLEVBQUU7QUFDVCxDQUFDO0FBQUNDLE9BQUEsQ0FBQUQsUUFBQSxHQUFBQSxRQUFBO0FBRUssTUFBTUUsZUFBMEMsR0FBRyxDQUFDLENBQUM7QUFBQ0QsT0FBQSxDQUFBQyxlQUFBLEdBQUFBLGVBQUE7QUFFN0QsS0FBSyxNQUFNQyxJQUFJLElBQUlILFFBQVEsRUFBRTtFQUMzQkUsZUFBZSxDQUFDRixRQUFRLENBQUNHLElBQUksQ0FBQyxDQUFDLEdBQUdBLElBQUk7QUFDeEMifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tds-versions.js","names":["versions","exports","versionsByValue","name"],"sources":["../src/tds-versions.ts"],"sourcesContent":["export const versions: { [key: string]: number } = {\n '7_1': 0x71000001,\n '7_2': 0x72090002,\n '7_3_A': 0x730A0003,\n '7_3_B': 0x730B0003,\n '7_4': 0x74000004,\n '8_0': 0x08000000\n};\n\nexport const versionsByValue: { [key: number]: string } = {};\n\nfor (const name in versions) {\n versionsByValue[versions[name]] = name;\n}\n"],"mappings":";;;;;;AAAO,MAAMA,QAAmC,GAAG;EACjD,KAAK,EAAE,UAAU;EACjB,KAAK,EAAE,UAAU;EACjB,OAAO,EAAE,UAAU;EACnB,OAAO,EAAE,UAAU;EACnB,KAAK,EAAE,UAAU;EACjB,KAAK,EAAE;AACT,CAAC;AAACC,OAAA,CAAAD,QAAA,GAAAA,QAAA;AAEK,MAAME,eAA0C,GAAG,CAAC,CAAC;AAACD,OAAA,CAAAC,eAAA,GAAAA,eAAA;AAE7D,KAAK,MAAMC,IAAI,IAAIH,QAAQ,EAAE;EAC3BE,eAAe,CAACF,QAAQ,CAACG,IAAI,CAAC,CAAC,GAAGA,IAAI;AACxC"}
package/lib/tedious.js CHANGED
@@ -53,33 +53,22 @@ Object.defineProperty(exports, "TYPES", {
53
53
  });
54
54
  exports.connect = connect;
55
55
  exports.library = void 0;
56
-
57
56
  var _bulkLoad = _interopRequireDefault(require("./bulk-load"));
58
-
59
57
  var _connection = _interopRequireDefault(require("./connection"));
60
-
61
58
  var _request = _interopRequireDefault(require("./request"));
62
-
63
59
  var _library = require("./library");
64
-
65
60
  var _errors = require("./errors");
66
-
67
61
  var _dataType = require("./data-type");
68
-
69
62
  var _transaction = require("./transaction");
70
-
71
63
  var _tdsVersions = require("./tds-versions");
72
-
73
64
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
74
-
75
65
  const library = {
76
66
  name: _library.name
77
67
  };
78
68
  exports.library = library;
79
-
80
69
  function connect(config, connectListener) {
81
70
  const connection = new _connection.default(config);
82
71
  connection.connect(connectListener);
83
72
  return connection;
84
73
  }
85
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJsaWJyYXJ5IiwibmFtZSIsImNvbm5lY3QiLCJjb25maWciLCJjb25uZWN0TGlzdGVuZXIiLCJjb25uZWN0aW9uIiwiQ29ubmVjdGlvbiJdLCJzb3VyY2VzIjpbIi4uL3NyYy90ZWRpb3VzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCdWxrTG9hZCBmcm9tICcuL2J1bGstbG9hZCc7XG5pbXBvcnQgQ29ubmVjdGlvbiwgeyBDb25uZWN0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vY29ubmVjdGlvbic7XG5pbXBvcnQgUmVxdWVzdCBmcm9tICcuL3JlcXVlc3QnO1xuaW1wb3J0IHsgbmFtZSB9IGZyb20gJy4vbGlicmFyeSc7XG5cbmltcG9ydCB7IENvbm5lY3Rpb25FcnJvciwgUmVxdWVzdEVycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG5pbXBvcnQgeyBUWVBFUyB9IGZyb20gJy4vZGF0YS10eXBlJztcbmltcG9ydCB7IElTT0xBVElPTl9MRVZFTCB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgdmVyc2lvbnMgYXMgVERTX1ZFUlNJT04gfSBmcm9tICcuL3Rkcy12ZXJzaW9ucyc7XG5cbmNvbnN0IGxpYnJhcnkgPSB7IG5hbWU6IG5hbWUgfTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbm5lY3QoY29uZmlnOiBDb25uZWN0aW9uQ29uZmlndXJhdGlvbiwgY29ubmVjdExpc3RlbmVyPzogKGVycj86IEVycm9yKSA9PiB2b2lkKSB7XG4gIGNvbnN0IGNvbm5lY3Rpb24gPSBuZXcgQ29ubmVjdGlvbihjb25maWcpO1xuICBjb25uZWN0aW9uLmNvbm5lY3QoY29ubmVjdExpc3RlbmVyKTtcbiAgcmV0dXJuIGNvbm5lY3Rpb247XG59XG5cbmV4cG9ydCB7XG4gIEJ1bGtMb2FkLFxuICBDb25uZWN0aW9uLFxuICBSZXF1ZXN0LFxuICBsaWJyYXJ5LFxuICBDb25uZWN0aW9uRXJyb3IsXG4gIFJlcXVlc3RFcnJvcixcbiAgVFlQRVMsXG4gIElTT0xBVElPTl9MRVZFTCxcbiAgVERTX1ZFUlNJT05cbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBRUE7O0FBQ0E7O0FBQ0E7Ozs7QUFFQSxNQUFNQSxPQUFPLEdBQUc7RUFBRUMsSUFBSSxFQUFFQTtBQUFSLENBQWhCOzs7QUFFTyxTQUFTQyxPQUFULENBQWlCQyxNQUFqQixFQUFrREMsZUFBbEQsRUFBMkY7RUFDaEcsTUFBTUMsVUFBVSxHQUFHLElBQUlDLG1CQUFKLENBQWVILE1BQWYsQ0FBbkI7RUFDQUUsVUFBVSxDQUFDSCxPQUFYLENBQW1CRSxlQUFuQjtFQUNBLE9BQU9DLFVBQVA7QUFDRCJ9
74
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYnVsa0xvYWQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9jb25uZWN0aW9uIiwiX3JlcXVlc3QiLCJfbGlicmFyeSIsIl9lcnJvcnMiLCJfZGF0YVR5cGUiLCJfdHJhbnNhY3Rpb24iLCJfdGRzVmVyc2lvbnMiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImxpYnJhcnkiLCJuYW1lIiwiZXhwb3J0cyIsImNvbm5lY3QiLCJjb25maWciLCJjb25uZWN0TGlzdGVuZXIiLCJjb25uZWN0aW9uIiwiQ29ubmVjdGlvbiJdLCJzb3VyY2VzIjpbIi4uL3NyYy90ZWRpb3VzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCdWxrTG9hZCBmcm9tICcuL2J1bGstbG9hZCc7XG5pbXBvcnQgQ29ubmVjdGlvbiwgeyBDb25uZWN0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vY29ubmVjdGlvbic7XG5pbXBvcnQgUmVxdWVzdCBmcm9tICcuL3JlcXVlc3QnO1xuaW1wb3J0IHsgbmFtZSB9IGZyb20gJy4vbGlicmFyeSc7XG5cbmltcG9ydCB7IENvbm5lY3Rpb25FcnJvciwgUmVxdWVzdEVycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG5pbXBvcnQgeyBUWVBFUyB9IGZyb20gJy4vZGF0YS10eXBlJztcbmltcG9ydCB7IElTT0xBVElPTl9MRVZFTCB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgdmVyc2lvbnMgYXMgVERTX1ZFUlNJT04gfSBmcm9tICcuL3Rkcy12ZXJzaW9ucyc7XG5cbmNvbnN0IGxpYnJhcnkgPSB7IG5hbWU6IG5hbWUgfTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbm5lY3QoY29uZmlnOiBDb25uZWN0aW9uQ29uZmlndXJhdGlvbiwgY29ubmVjdExpc3RlbmVyPzogKGVycj86IEVycm9yKSA9PiB2b2lkKSB7XG4gIGNvbnN0IGNvbm5lY3Rpb24gPSBuZXcgQ29ubmVjdGlvbihjb25maWcpO1xuICBjb25uZWN0aW9uLmNvbm5lY3QoY29ubmVjdExpc3RlbmVyKTtcbiAgcmV0dXJuIGNvbm5lY3Rpb247XG59XG5cbmV4cG9ydCB7XG4gIEJ1bGtMb2FkLFxuICBDb25uZWN0aW9uLFxuICBSZXF1ZXN0LFxuICBsaWJyYXJ5LFxuICBDb25uZWN0aW9uRXJyb3IsXG4gIFJlcXVlc3RFcnJvcixcbiAgVFlQRVMsXG4gIElTT0xBVElPTl9MRVZFTCxcbiAgVERTX1ZFUlNJT05cbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxTQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxRQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxRQUFBLEdBQUFILE9BQUE7QUFFQSxJQUFBSSxPQUFBLEdBQUFKLE9BQUE7QUFFQSxJQUFBSyxTQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxZQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxZQUFBLEdBQUFQLE9BQUE7QUFBeUQsU0FBQUQsdUJBQUFTLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFekQsTUFBTUcsT0FBTyxHQUFHO0VBQUVDLElBQUksRUFBRUE7QUFBSyxDQUFDO0FBQUNDLE9BQUEsQ0FBQUYsT0FBQSxHQUFBQSxPQUFBO0FBRXhCLFNBQVNHLE9BQU9BLENBQUNDLE1BQStCLEVBQUVDLGVBQXVDLEVBQUU7RUFDaEcsTUFBTUMsVUFBVSxHQUFHLElBQUlDLG1CQUFVLENBQUNILE1BQU0sQ0FBQztFQUN6Q0UsVUFBVSxDQUFDSCxPQUFPLENBQUNFLGVBQWUsQ0FBQztFQUNuQyxPQUFPQyxVQUFVO0FBQ25CIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tedious.js","names":["_bulkLoad","_interopRequireDefault","require","_connection","_request","_library","_errors","_dataType","_transaction","_tdsVersions","obj","__esModule","default","library","name","exports","connect","config","connectListener","connection","Connection"],"sources":["../src/tedious.ts"],"sourcesContent":["import BulkLoad from './bulk-load';\nimport Connection, { ConnectionConfiguration } from './connection';\nimport Request from './request';\nimport { name } from './library';\n\nimport { ConnectionError, RequestError } from './errors';\n\nimport { TYPES } from './data-type';\nimport { ISOLATION_LEVEL } from './transaction';\nimport { versions as TDS_VERSION } from './tds-versions';\n\nconst library = { name: name };\n\nexport function connect(config: ConnectionConfiguration, connectListener?: (err?: Error) => void) {\n const connection = new Connection(config);\n connection.connect(connectListener);\n return connection;\n}\n\nexport {\n BulkLoad,\n Connection,\n Request,\n library,\n ConnectionError,\n RequestError,\n TYPES,\n ISOLATION_LEVEL,\n TDS_VERSION\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,QAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAEA,IAAAI,OAAA,GAAAJ,OAAA;AAEA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AAAyD,SAAAD,uBAAAS,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEzD,MAAMG,OAAO,GAAG;EAAEC,IAAI,EAAEA;AAAK,CAAC;AAACC,OAAA,CAAAF,OAAA,GAAAA,OAAA;AAExB,SAASG,OAAOA,CAACC,MAA+B,EAAEC,eAAuC,EAAE;EAChG,MAAMC,UAAU,GAAG,IAAIC,mBAAU,CAACH,MAAM,CAAC;EACzCE,UAAU,CAACH,OAAO,CAACE,eAAe,CAAC;EACnC,OAAOC,UAAU;AACnB"}