plugin-data-source-mssql 2.0.0 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/README.md +31 -10
  2. package/dist/externalVersion.js +6 -6
  3. package/dist/node_modules/tedious/245.index.js +741 -0
  4. package/dist/node_modules/tedious/LICENSE +21 -0
  5. package/dist/node_modules/tedious/appveyor.yml +67 -0
  6. package/dist/node_modules/tedious/benchmarks/bulk-load/iterable.js +61 -0
  7. package/dist/node_modules/tedious/benchmarks/common.js +287 -0
  8. package/dist/node_modules/tedious/benchmarks/connection/open.js +26 -0
  9. package/dist/node_modules/tedious/benchmarks/package-lock.json +21173 -0
  10. package/dist/node_modules/tedious/benchmarks/package.json +11 -0
  11. package/dist/node_modules/tedious/benchmarks/query/call-tvp.js +105 -0
  12. package/dist/node_modules/tedious/benchmarks/query/insert-varbinary.js +46 -0
  13. package/dist/node_modules/tedious/benchmarks/query/select-many-rows.js +63 -0
  14. package/dist/node_modules/tedious/benchmarks/query/select-nvarchar.js +50 -0
  15. package/dist/node_modules/tedious/benchmarks/query/select-varbinary.js +50 -0
  16. package/dist/node_modules/tedious/benchmarks/request/rpcrequest-payload-tvp.js +45 -0
  17. package/dist/node_modules/tedious/benchmarks/request/rpcrequest-payload-varbinary.js +37 -0
  18. package/dist/node_modules/tedious/benchmarks/token-parser/colmetadata-token.js +27 -0
  19. package/dist/node_modules/tedious/benchmarks/token-parser/done-token.js +28 -0
  20. package/dist/node_modules/tedious/benchmarks/token-parser/simple-tokens.js +363 -0
  21. package/dist/node_modules/tedious/lib/all-headers.d.ts +2 -0
  22. package/dist/node_modules/tedious/lib/all-headers.js +24 -0
  23. package/dist/node_modules/tedious/lib/always-encrypted/aead-aes-256-cbc-hmac-algorithm.js +82 -0
  24. package/dist/node_modules/tedious/lib/always-encrypted/aead-aes-256-cbc-hmac-encryption-key.js +55 -0
  25. package/dist/node_modules/tedious/lib/always-encrypted/cek-entry.d.ts +11 -0
  26. package/dist/node_modules/tedious/lib/always-encrypted/cek-entry.js +42 -0
  27. package/dist/node_modules/tedious/lib/always-encrypted/get-parameter-encryption-metadata.js +90 -0
  28. package/dist/node_modules/tedious/lib/always-encrypted/key-crypto.js +94 -0
  29. package/dist/node_modules/tedious/lib/always-encrypted/keystore-provider-azure-key-vault.d.ts +21 -0
  30. package/dist/node_modules/tedious/lib/always-encrypted/keystore-provider-azure-key-vault.js +247 -0
  31. package/dist/node_modules/tedious/lib/always-encrypted/symmetric-key-cache.js +36 -0
  32. package/dist/node_modules/tedious/lib/always-encrypted/symmetric-key.js +25 -0
  33. package/dist/node_modules/tedious/lib/always-encrypted/types.d.ts +73 -0
  34. package/dist/node_modules/tedious/lib/always-encrypted/types.js +48 -0
  35. package/dist/node_modules/tedious/lib/always-encrypted/utils.js +23 -0
  36. package/dist/node_modules/tedious/lib/bulk-load-payload.d.ts +8 -0
  37. package/dist/node_modules/tedious/lib/bulk-load-payload.js +23 -0
  38. package/dist/node_modules/tedious/lib/bulk-load.d.ts +275 -0
  39. package/dist/node_modules/tedious/lib/bulk-load.js +516 -0
  40. package/dist/node_modules/tedious/lib/collation.d.ts +28 -0
  41. package/dist/node_modules/tedious/lib/collation.js +348 -0
  42. package/dist/node_modules/tedious/lib/connection.d.ts +1310 -0
  43. package/dist/node_modules/tedious/lib/connection.js +2730 -0
  44. package/dist/node_modules/tedious/lib/connector.d.ts +18 -0
  45. package/dist/node_modules/tedious/lib/connector.js +150 -0
  46. package/dist/node_modules/tedious/lib/data-type.d.ts +455 -0
  47. package/dist/node_modules/tedious/lib/data-type.js +428 -0
  48. package/dist/node_modules/tedious/lib/data-types/bigint.d.ts +3 -0
  49. package/dist/node_modules/tedious/lib/data-types/bigint.js +53 -0
  50. package/dist/node_modules/tedious/lib/data-types/binary.d.ts +5 -0
  51. package/dist/node_modules/tedious/lib/data-types/binary.js +67 -0
  52. package/dist/node_modules/tedious/lib/data-types/bit.d.ts +3 -0
  53. package/dist/node_modules/tedious/lib/data-types/bit.js +46 -0
  54. package/dist/node_modules/tedious/lib/data-types/bitn.d.ts +3 -0
  55. package/dist/node_modules/tedious/lib/data-types/bitn.js +29 -0
  56. package/dist/node_modules/tedious/lib/data-types/char.d.ts +5 -0
  57. package/dist/node_modules/tedious/lib/data-types/char.js +86 -0
  58. package/dist/node_modules/tedious/lib/data-types/date.d.ts +3 -0
  59. package/dist/node_modules/tedious/lib/data-types/date.js +72 -0
  60. package/dist/node_modules/tedious/lib/data-types/datetime.d.ts +3 -0
  61. package/dist/node_modules/tedious/lib/data-types/datetime.js +93 -0
  62. package/dist/node_modules/tedious/lib/data-types/datetime2.d.ts +5 -0
  63. package/dist/node_modules/tedious/lib/data-types/datetime2.js +118 -0
  64. package/dist/node_modules/tedious/lib/data-types/datetimen.d.ts +3 -0
  65. package/dist/node_modules/tedious/lib/data-types/datetimen.js +29 -0
  66. package/dist/node_modules/tedious/lib/data-types/datetimeoffset.d.ts +5 -0
  67. package/dist/node_modules/tedious/lib/data-types/datetimeoffset.js +111 -0
  68. package/dist/node_modules/tedious/lib/data-types/decimal.d.ts +6 -0
  69. package/dist/node_modules/tedious/lib/data-types/decimal.js +107 -0
  70. package/dist/node_modules/tedious/lib/data-types/decimaln.d.ts +3 -0
  71. package/dist/node_modules/tedious/lib/data-types/decimaln.js +29 -0
  72. package/dist/node_modules/tedious/lib/data-types/float.d.ts +3 -0
  73. package/dist/node_modules/tedious/lib/data-types/float.js +47 -0
  74. package/dist/node_modules/tedious/lib/data-types/floatn.d.ts +3 -0
  75. package/dist/node_modules/tedious/lib/data-types/floatn.js +29 -0
  76. package/dist/node_modules/tedious/lib/data-types/image.d.ts +3 -0
  77. package/dist/node_modules/tedious/lib/data-types/image.js +56 -0
  78. package/dist/node_modules/tedious/lib/data-types/int.d.ts +3 -0
  79. package/dist/node_modules/tedious/lib/data-types/int.js +53 -0
  80. package/dist/node_modules/tedious/lib/data-types/intn.d.ts +3 -0
  81. package/dist/node_modules/tedious/lib/data-types/intn.js +29 -0
  82. package/dist/node_modules/tedious/lib/data-types/money.d.ts +3 -0
  83. package/dist/node_modules/tedious/lib/data-types/money.js +59 -0
  84. package/dist/node_modules/tedious/lib/data-types/moneyn.d.ts +3 -0
  85. package/dist/node_modules/tedious/lib/data-types/moneyn.js +29 -0
  86. package/dist/node_modules/tedious/lib/data-types/nchar.d.ts +5 -0
  87. package/dist/node_modules/tedious/lib/data-types/nchar.js +100 -0
  88. package/dist/node_modules/tedious/lib/data-types/ntext.d.ts +3 -0
  89. package/dist/node_modules/tedious/lib/data-types/ntext.js +60 -0
  90. package/dist/node_modules/tedious/lib/data-types/null.d.ts +3 -0
  91. package/dist/node_modules/tedious/lib/data-types/null.js +29 -0
  92. package/dist/node_modules/tedious/lib/data-types/numeric.d.ts +6 -0
  93. package/dist/node_modules/tedious/lib/data-types/numeric.js +106 -0
  94. package/dist/node_modules/tedious/lib/data-types/numericn.d.ts +3 -0
  95. package/dist/node_modules/tedious/lib/data-types/numericn.js +29 -0
  96. package/dist/node_modules/tedious/lib/data-types/nvarchar.d.ts +5 -0
  97. package/dist/node_modules/tedious/lib/data-types/nvarchar.js +133 -0
  98. package/dist/node_modules/tedious/lib/data-types/real.d.ts +3 -0
  99. package/dist/node_modules/tedious/lib/data-types/real.js +48 -0
  100. package/dist/node_modules/tedious/lib/data-types/smalldatetime.d.ts +3 -0
  101. package/dist/node_modules/tedious/lib/data-types/smalldatetime.js +83 -0
  102. package/dist/node_modules/tedious/lib/data-types/smallint.d.ts +3 -0
  103. package/dist/node_modules/tedious/lib/data-types/smallint.js +53 -0
  104. package/dist/node_modules/tedious/lib/data-types/smallmoney.d.ts +3 -0
  105. package/dist/node_modules/tedious/lib/data-types/smallmoney.js +51 -0
  106. package/dist/node_modules/tedious/lib/data-types/sql-variant.d.ts +3 -0
  107. package/dist/node_modules/tedious/lib/data-types/sql-variant.js +29 -0
  108. package/dist/node_modules/tedious/lib/data-types/text.d.ts +3 -0
  109. package/dist/node_modules/tedious/lib/data-types/text.js +69 -0
  110. package/dist/node_modules/tedious/lib/data-types/time.d.ts +3 -0
  111. package/dist/node_modules/tedious/lib/data-types/time.js +96 -0
  112. package/dist/node_modules/tedious/lib/data-types/tinyint.d.ts +3 -0
  113. package/dist/node_modules/tedious/lib/data-types/tinyint.js +53 -0
  114. package/dist/node_modules/tedious/lib/data-types/tvp.d.ts +3 -0
  115. package/dist/node_modules/tedious/lib/data-types/tvp.js +117 -0
  116. package/dist/node_modules/tedious/lib/data-types/udt.d.ts +3 -0
  117. package/dist/node_modules/tedious/lib/data-types/udt.js +29 -0
  118. package/dist/node_modules/tedious/lib/data-types/uniqueidentifier.d.ts +3 -0
  119. package/dist/node_modules/tedious/lib/data-types/uniqueidentifier.js +50 -0
  120. package/dist/node_modules/tedious/lib/data-types/varbinary.d.ts +5 -0
  121. package/dist/node_modules/tedious/lib/data-types/varbinary.js +119 -0
  122. package/dist/node_modules/tedious/lib/data-types/varchar.d.ts +5 -0
  123. package/dist/node_modules/tedious/lib/data-types/varchar.js +112 -0
  124. package/dist/node_modules/tedious/lib/data-types/xml.d.ts +3 -0
  125. package/dist/node_modules/tedious/lib/data-types/xml.js +29 -0
  126. package/dist/node_modules/tedious/lib/debug.d.ts +25 -0
  127. package/dist/node_modules/tedious/lib/debug.js +67 -0
  128. package/dist/node_modules/tedious/lib/errors/abort-error.d.ts +4 -0
  129. package/dist/node_modules/tedious/lib/errors/abort-error.js +15 -0
  130. package/dist/node_modules/tedious/lib/errors/timeout-error.d.ts +4 -0
  131. package/dist/node_modules/tedious/lib/errors/timeout-error.js +15 -0
  132. package/dist/node_modules/tedious/lib/errors.d.ts +17 -0
  133. package/dist/node_modules/tedious/lib/errors.js +23 -0
  134. package/dist/node_modules/tedious/lib/guid-parser.d.ts +3 -0
  135. package/dist/node_modules/tedious/lib/guid-parser.js +30 -0
  136. package/dist/node_modules/tedious/lib/incoming-message-stream.d.ts +19 -0
  137. package/dist/node_modules/tedious/lib/incoming-message-stream.js +97 -0
  138. package/dist/node_modules/tedious/lib/instance-lookup.d.ts +13 -0
  139. package/dist/node_modules/tedious/lib/instance-lookup.js +96 -0
  140. package/dist/node_modules/tedious/lib/library.d.ts +1 -0
  141. package/dist/node_modules/tedious/lib/library.js +8 -0
  142. package/dist/node_modules/tedious/lib/login7-payload.d.ts +51 -0
  143. package/dist/node_modules/tedious/lib/login7-payload.js +402 -0
  144. package/dist/node_modules/tedious/lib/message-io.d.ts +28 -0
  145. package/dist/node_modules/tedious/lib/message-io.js +153 -0
  146. package/dist/node_modules/tedious/lib/message.d.ts +11 -0
  147. package/dist/node_modules/tedious/lib/message.js +21 -0
  148. package/dist/node_modules/tedious/lib/metadata-parser.d.ts +48 -0
  149. package/dist/node_modules/tedious/lib/metadata-parser.js +380 -0
  150. package/dist/node_modules/tedious/lib/ntlm-payload.d.ts +23 -0
  151. package/dist/node_modules/tedious/lib/ntlm-payload.js +136 -0
  152. package/dist/node_modules/tedious/lib/ntlm.d.ts +4 -0
  153. package/dist/node_modules/tedious/lib/ntlm.js +72 -0
  154. package/dist/node_modules/tedious/lib/outgoing-message-stream.d.ts +15 -0
  155. package/dist/node_modules/tedious/lib/outgoing-message-stream.js +81 -0
  156. package/dist/node_modules/tedious/lib/packet.d.ts +33 -0
  157. package/dist/node_modules/tedious/lib/packet.js +191 -0
  158. package/dist/node_modules/tedious/lib/prelogin-payload.d.ts +61 -0
  159. package/dist/node_modules/tedious/lib/prelogin-payload.js +209 -0
  160. package/dist/node_modules/tedious/lib/request.d.ts +370 -0
  161. package/dist/node_modules/tedious/lib/request.js +387 -0
  162. package/dist/node_modules/tedious/lib/rpcrequest-payload.d.ts +16 -0
  163. package/dist/node_modules/tedious/lib/rpcrequest-payload.js +109 -0
  164. package/dist/node_modules/tedious/lib/sender.d.ts +5 -0
  165. package/dist/node_modules/tedious/lib/sender.js +83 -0
  166. package/dist/node_modules/tedious/lib/special-stored-procedure.d.ts +18 -0
  167. package/dist/node_modules/tedious/lib/special-stored-procedure.js +26 -0
  168. package/dist/node_modules/tedious/lib/sqlbatch-payload.d.ts +13 -0
  169. package/dist/node_modules/tedious/lib/sqlbatch-payload.js +34 -0
  170. package/dist/node_modules/tedious/lib/tds-versions.d.ts +6 -0
  171. package/dist/node_modules/tedious/lib/tds-versions.js +19 -0
  172. package/dist/node_modules/tedious/lib/tedious.d.ts +13 -0
  173. package/dist/node_modules/tedious/lib/tedious.js +249 -0
  174. package/dist/node_modules/tedious/lib/token/colmetadata-token-parser.d.ts +12 -0
  175. package/dist/node_modules/tedious/lib/token/colmetadata-token-parser.js +124 -0
  176. package/dist/node_modules/tedious/lib/token/done-token-parser.d.ts +6 -0
  177. package/dist/node_modules/tedious/lib/token/done-token-parser.js +76 -0
  178. package/dist/node_modules/tedious/lib/token/env-change-token-parser.d.ts +5 -0
  179. package/dist/node_modules/tedious/lib/token/env-change-token-parser.js +190 -0
  180. package/dist/node_modules/tedious/lib/token/feature-ext-ack-parser.d.ts +5 -0
  181. package/dist/node_modules/tedious/lib/token/feature-ext-ack-parser.js +52 -0
  182. package/dist/node_modules/tedious/lib/token/fedauth-info-parser.d.ts +5 -0
  183. package/dist/node_modules/tedious/lib/token/fedauth-info-parser.js +62 -0
  184. package/dist/node_modules/tedious/lib/token/handler.d.ts +135 -0
  185. package/dist/node_modules/tedious/lib/token/handler.js +444 -0
  186. package/dist/node_modules/tedious/lib/token/helpers.d.ts +28 -0
  187. package/dist/node_modules/tedious/lib/token/helpers.js +205 -0
  188. package/dist/node_modules/tedious/lib/token/infoerror-token-parser.d.ts +5 -0
  189. package/dist/node_modules/tedious/lib/token/infoerror-token-parser.js +80 -0
  190. package/dist/node_modules/tedious/lib/token/loginack-token-parser.d.ts +5 -0
  191. package/dist/node_modules/tedious/lib/token/loginack-token-parser.js +75 -0
  192. package/dist/node_modules/tedious/lib/token/nbcrow-token-parser.d.ts +4 -0
  193. package/dist/node_modules/tedious/lib/token/nbcrow-token-parser.js +104 -0
  194. package/dist/node_modules/tedious/lib/token/order-token-parser.d.ts +5 -0
  195. package/dist/node_modules/tedious/lib/token/order-token-parser.js +34 -0
  196. package/dist/node_modules/tedious/lib/token/returnstatus-token-parser.d.ts +5 -0
  197. package/dist/node_modules/tedious/lib/token/returnstatus-token-parser.js +21 -0
  198. package/dist/node_modules/tedious/lib/token/returnvalue-token-parser.d.ts +4 -0
  199. package/dist/node_modules/tedious/lib/token/returnvalue-token-parser.js +94 -0
  200. package/dist/node_modules/tedious/lib/token/row-token-parser.d.ts +4 -0
  201. package/dist/node_modules/tedious/lib/token/row-token-parser.js +77 -0
  202. package/dist/node_modules/tedious/lib/token/sspi-token-parser.d.ts +5 -0
  203. package/dist/node_modules/tedious/lib/token/sspi-token-parser.js +42 -0
  204. package/dist/node_modules/tedious/lib/token/stream-parser.d.ts +34 -0
  205. package/dist/node_modules/tedious/lib/token/stream-parser.js +341 -0
  206. package/dist/node_modules/tedious/lib/token/token-stream-parser.d.ts +15 -0
  207. package/dist/node_modules/tedious/lib/token/token-stream-parser.js +36 -0
  208. package/dist/node_modules/tedious/lib/token/token.d.ts +312 -0
  209. package/dist/node_modules/tedious/lib/token/token.js +328 -0
  210. package/dist/node_modules/tedious/lib/tracking-buffer/writable-tracking-buffer.d.ts +47 -0
  211. package/dist/node_modules/tedious/lib/tracking-buffer/writable-tracking-buffer.js +249 -0
  212. package/dist/node_modules/tedious/lib/transaction.d.ts +39 -0
  213. package/dist/node_modules/tedious/lib/transaction.js +137 -0
  214. package/dist/node_modules/tedious/lib/transient-error-lookup.d.ts +3 -0
  215. package/dist/node_modules/tedious/lib/transient-error-lookup.js +19 -0
  216. package/dist/node_modules/tedious/lib/utils/with-timeout.d.ts +7 -0
  217. package/dist/node_modules/tedious/lib/utils/with-timeout.js +36 -0
  218. package/dist/node_modules/tedious/lib/value-parser.d.ts +7 -0
  219. package/dist/node_modules/tedious/lib/value-parser.js +813 -0
  220. package/dist/node_modules/tedious/node_modules/@types/node/assert/strict.d.ts +105 -0
  221. package/dist/node_modules/tedious/node_modules/@types/node/assert.d.ts +955 -0
  222. package/dist/node_modules/tedious/node_modules/@types/node/async_hooks.d.ts +623 -0
  223. package/dist/node_modules/tedious/node_modules/@types/node/buffer.buffer.d.ts +466 -0
  224. package/dist/node_modules/tedious/node_modules/@types/node/buffer.d.ts +1810 -0
  225. package/dist/node_modules/tedious/node_modules/@types/node/child_process.d.ts +1428 -0
  226. package/dist/node_modules/tedious/node_modules/@types/node/cluster.d.ts +486 -0
  227. package/dist/node_modules/tedious/node_modules/@types/node/compatibility/iterators.d.ts +21 -0
  228. package/dist/node_modules/tedious/node_modules/@types/node/console.d.ts +151 -0
  229. package/dist/node_modules/tedious/node_modules/@types/node/constants.d.ts +20 -0
  230. package/dist/node_modules/tedious/node_modules/@types/node/crypto.d.ts +4065 -0
  231. package/dist/node_modules/tedious/node_modules/@types/node/dgram.d.ts +564 -0
  232. package/dist/node_modules/tedious/node_modules/@types/node/diagnostics_channel.d.ts +576 -0
  233. package/dist/node_modules/tedious/node_modules/@types/node/dns/promises.d.ts +503 -0
  234. package/dist/node_modules/tedious/node_modules/@types/node/dns.d.ts +922 -0
  235. package/dist/node_modules/tedious/node_modules/@types/node/domain.d.ts +166 -0
  236. package/dist/node_modules/tedious/node_modules/@types/node/events.d.ts +1054 -0
  237. package/dist/node_modules/tedious/node_modules/@types/node/fs/promises.d.ts +1329 -0
  238. package/dist/node_modules/tedious/node_modules/@types/node/fs.d.ts +4676 -0
  239. package/dist/node_modules/tedious/node_modules/@types/node/globals.d.ts +150 -0
  240. package/dist/node_modules/tedious/node_modules/@types/node/globals.typedarray.d.ts +101 -0
  241. package/dist/node_modules/tedious/node_modules/@types/node/http.d.ts +2167 -0
  242. package/dist/node_modules/tedious/node_modules/@types/node/http2.d.ts +2480 -0
  243. package/dist/node_modules/tedious/node_modules/@types/node/https.d.ts +405 -0
  244. package/dist/node_modules/tedious/node_modules/@types/node/index.d.ts +115 -0
  245. package/dist/node_modules/tedious/node_modules/@types/node/inspector/promises.d.ts +41 -0
  246. package/dist/node_modules/tedious/node_modules/@types/node/inspector.d.ts +224 -0
  247. package/dist/node_modules/tedious/node_modules/@types/node/inspector.generated.d.ts +4226 -0
  248. package/dist/node_modules/tedious/node_modules/@types/node/module.d.ts +819 -0
  249. package/dist/node_modules/tedious/node_modules/@types/node/net.d.ts +933 -0
  250. package/dist/node_modules/tedious/node_modules/@types/node/os.d.ts +507 -0
  251. package/dist/node_modules/tedious/node_modules/@types/node/package.json +155 -0
  252. package/dist/node_modules/tedious/node_modules/@types/node/path/posix.d.ts +8 -0
  253. package/dist/node_modules/tedious/node_modules/@types/node/path/win32.d.ts +8 -0
  254. package/dist/node_modules/tedious/node_modules/@types/node/path.d.ts +187 -0
  255. package/dist/node_modules/tedious/node_modules/@types/node/perf_hooks.d.ts +643 -0
  256. package/dist/node_modules/tedious/node_modules/@types/node/process.d.ts +2161 -0
  257. package/dist/node_modules/tedious/node_modules/@types/node/punycode.d.ts +117 -0
  258. package/dist/node_modules/tedious/node_modules/@types/node/querystring.d.ts +152 -0
  259. package/dist/node_modules/tedious/node_modules/@types/node/quic.d.ts +910 -0
  260. package/dist/node_modules/tedious/node_modules/@types/node/readline/promises.d.ts +161 -0
  261. package/dist/node_modules/tedious/node_modules/@types/node/readline.d.ts +541 -0
  262. package/dist/node_modules/tedious/node_modules/@types/node/repl.d.ts +415 -0
  263. package/dist/node_modules/tedious/node_modules/@types/node/sea.d.ts +162 -0
  264. package/dist/node_modules/tedious/node_modules/@types/node/sqlite.d.ts +955 -0
  265. package/dist/node_modules/tedious/node_modules/@types/node/stream/consumers.d.ts +38 -0
  266. package/dist/node_modules/tedious/node_modules/@types/node/stream/promises.d.ts +211 -0
  267. package/dist/node_modules/tedious/node_modules/@types/node/stream/web.d.ts +296 -0
  268. package/dist/node_modules/tedious/node_modules/@types/node/stream.d.ts +1760 -0
  269. package/dist/node_modules/tedious/node_modules/@types/node/string_decoder.d.ts +67 -0
  270. package/dist/node_modules/tedious/node_modules/@types/node/test/reporters.d.ts +96 -0
  271. package/dist/node_modules/tedious/node_modules/@types/node/test.d.ts +2240 -0
  272. package/dist/node_modules/tedious/node_modules/@types/node/timers/promises.d.ts +108 -0
  273. package/dist/node_modules/tedious/node_modules/@types/node/timers.d.ts +159 -0
  274. package/dist/node_modules/tedious/node_modules/@types/node/tls.d.ts +1198 -0
  275. package/dist/node_modules/tedious/node_modules/@types/node/trace_events.d.ts +197 -0
  276. package/dist/node_modules/tedious/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +462 -0
  277. package/dist/node_modules/tedious/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  278. package/dist/node_modules/tedious/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +36 -0
  279. package/dist/node_modules/tedious/node_modules/@types/node/ts5.6/index.d.ts +117 -0
  280. package/dist/node_modules/tedious/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  281. package/dist/node_modules/tedious/node_modules/@types/node/ts5.7/index.d.ts +117 -0
  282. package/dist/node_modules/tedious/node_modules/@types/node/tty.d.ts +250 -0
  283. package/dist/node_modules/tedious/node_modules/@types/node/url.d.ts +519 -0
  284. package/dist/node_modules/tedious/node_modules/@types/node/util/types.d.ts +558 -0
  285. package/dist/node_modules/tedious/node_modules/@types/node/util.d.ts +1662 -0
  286. package/dist/node_modules/tedious/node_modules/@types/node/v8.d.ts +983 -0
  287. package/dist/node_modules/tedious/node_modules/@types/node/vm.d.ts +1208 -0
  288. package/dist/node_modules/tedious/node_modules/@types/node/wasi.d.ts +202 -0
  289. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/abortcontroller.d.ts +59 -0
  290. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  291. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/console.d.ts +9 -0
  292. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/crypto.d.ts +39 -0
  293. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
  294. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  295. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/events.d.ts +106 -0
  296. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/fetch.d.ts +69 -0
  297. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  298. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  299. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/navigator.d.ts +25 -0
  300. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  301. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  302. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/streams.d.ts +115 -0
  303. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  304. package/dist/node_modules/tedious/node_modules/@types/node/web-globals/url.d.ts +24 -0
  305. package/dist/node_modules/tedious/node_modules/@types/node/worker_threads.d.ts +717 -0
  306. package/dist/node_modules/tedious/node_modules/@types/node/zlib.d.ts +618 -0
  307. package/dist/node_modules/tedious/node_modules/bl/.github/dependabot.yml +16 -0
  308. package/dist/node_modules/tedious/node_modules/bl/.github/workflows/test-and-release.yml +61 -0
  309. package/dist/node_modules/tedious/node_modules/bl/BufferList.d.ts +431 -0
  310. package/dist/node_modules/tedious/node_modules/bl/BufferList.js +421 -0
  311. package/dist/node_modules/tedious/node_modules/bl/bl.js +84 -0
  312. package/dist/node_modules/tedious/node_modules/bl/index.d.ts +88 -0
  313. package/dist/node_modules/tedious/node_modules/bl/package.json +123 -0
  314. package/dist/node_modules/tedious/node_modules/bl/test/convert.js +21 -0
  315. package/dist/node_modules/tedious/node_modules/bl/test/indexOf.js +492 -0
  316. package/dist/node_modules/tedious/node_modules/bl/test/isBufferList.js +32 -0
  317. package/dist/node_modules/tedious/node_modules/bl/test/test.js +1032 -0
  318. package/dist/node_modules/tedious/node_modules/buffer/index.d.ts +194 -0
  319. package/dist/node_modules/tedious/node_modules/buffer/index.js +2106 -0
  320. package/dist/node_modules/tedious/node_modules/buffer/package.json +93 -0
  321. package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_duplex.js +4 -0
  322. package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_passthrough.js +4 -0
  323. package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_readable.js +4 -0
  324. package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_transform.js +4 -0
  325. package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_writable.js +4 -0
  326. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +52 -0
  327. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/buffer_list.js +157 -0
  328. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/compose.js +194 -0
  329. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/destroy.js +290 -0
  330. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/duplex.js +143 -0
  331. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/duplexify.js +378 -0
  332. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +286 -0
  333. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/from.js +98 -0
  334. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +51 -0
  335. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/legacy.js +89 -0
  336. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/operators.js +457 -0
  337. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/passthrough.js +39 -0
  338. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/pipeline.js +471 -0
  339. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/readable.js +1290 -0
  340. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/state.js +39 -0
  341. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/transform.js +180 -0
  342. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/utils.js +327 -0
  343. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/writable.js +819 -0
  344. package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/validators.js +530 -0
  345. package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/browser.js +35 -0
  346. package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/errors.js +343 -0
  347. package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/index.js +65 -0
  348. package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/primordials.js +124 -0
  349. package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/util/inspect.js +55 -0
  350. package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/util.js +148 -0
  351. package/dist/node_modules/tedious/node_modules/readable-stream/lib/stream/promises.js +43 -0
  352. package/dist/node_modules/tedious/node_modules/readable-stream/lib/stream.js +143 -0
  353. package/dist/node_modules/tedious/node_modules/readable-stream/package.json +88 -0
  354. package/dist/node_modules/tedious/node_modules/sprintf-js/dist/.gitattributes +4 -0
  355. package/dist/node_modules/tedious/node_modules/sprintf-js/dist/angular-sprintf.min.js +3 -0
  356. package/dist/node_modules/tedious/node_modules/sprintf-js/dist/sprintf.min.js +3 -0
  357. package/dist/node_modules/tedious/node_modules/sprintf-js/package.json +35 -0
  358. package/dist/node_modules/tedious/node_modules/sprintf-js/src/angular-sprintf.js +24 -0
  359. package/dist/node_modules/tedious/node_modules/sprintf-js/src/sprintf.js +231 -0
  360. package/dist/node_modules/tedious/node_modules/undici-types/agent.d.ts +32 -0
  361. package/dist/node_modules/tedious/node_modules/undici-types/api.d.ts +43 -0
  362. package/dist/node_modules/tedious/node_modules/undici-types/balanced-pool.d.ts +29 -0
  363. package/dist/node_modules/tedious/node_modules/undici-types/cache-interceptor.d.ts +172 -0
  364. package/dist/node_modules/tedious/node_modules/undici-types/cache.d.ts +36 -0
  365. package/dist/node_modules/tedious/node_modules/undici-types/client-stats.d.ts +15 -0
  366. package/dist/node_modules/tedious/node_modules/undici-types/client.d.ts +108 -0
  367. package/dist/node_modules/tedious/node_modules/undici-types/connector.d.ts +34 -0
  368. package/dist/node_modules/tedious/node_modules/undici-types/content-type.d.ts +21 -0
  369. package/dist/node_modules/tedious/node_modules/undici-types/cookies.d.ts +30 -0
  370. package/dist/node_modules/tedious/node_modules/undici-types/diagnostics-channel.d.ts +74 -0
  371. package/dist/node_modules/tedious/node_modules/undici-types/dispatcher.d.ts +276 -0
  372. package/dist/node_modules/tedious/node_modules/undici-types/env-http-proxy-agent.d.ts +22 -0
  373. package/dist/node_modules/tedious/node_modules/undici-types/errors.d.ts +161 -0
  374. package/dist/node_modules/tedious/node_modules/undici-types/eventsource.d.ts +66 -0
  375. package/dist/node_modules/tedious/node_modules/undici-types/fetch.d.ts +211 -0
  376. package/dist/node_modules/tedious/node_modules/undici-types/formdata.d.ts +108 -0
  377. package/dist/node_modules/tedious/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  378. package/dist/node_modules/tedious/node_modules/undici-types/global-origin.d.ts +7 -0
  379. package/dist/node_modules/tedious/node_modules/undici-types/h2c-client.d.ts +73 -0
  380. package/dist/node_modules/tedious/node_modules/undici-types/handlers.d.ts +15 -0
  381. package/dist/node_modules/tedious/node_modules/undici-types/header.d.ts +160 -0
  382. package/dist/node_modules/tedious/node_modules/undici-types/index.d.ts +80 -0
  383. package/dist/node_modules/tedious/node_modules/undici-types/interceptors.d.ts +39 -0
  384. package/dist/node_modules/tedious/node_modules/undici-types/mock-agent.d.ts +68 -0
  385. package/dist/node_modules/tedious/node_modules/undici-types/mock-call-history.d.ts +111 -0
  386. package/dist/node_modules/tedious/node_modules/undici-types/mock-client.d.ts +27 -0
  387. package/dist/node_modules/tedious/node_modules/undici-types/mock-errors.d.ts +12 -0
  388. package/dist/node_modules/tedious/node_modules/undici-types/mock-interceptor.d.ts +94 -0
  389. package/dist/node_modules/tedious/node_modules/undici-types/mock-pool.d.ts +27 -0
  390. package/dist/node_modules/tedious/node_modules/undici-types/package.json +55 -0
  391. package/dist/node_modules/tedious/node_modules/undici-types/patch.d.ts +29 -0
  392. package/dist/node_modules/tedious/node_modules/undici-types/pool-stats.d.ts +19 -0
  393. package/dist/node_modules/tedious/node_modules/undici-types/pool.d.ts +41 -0
  394. package/dist/node_modules/tedious/node_modules/undici-types/proxy-agent.d.ts +29 -0
  395. package/dist/node_modules/tedious/node_modules/undici-types/readable.d.ts +68 -0
  396. package/dist/node_modules/tedious/node_modules/undici-types/retry-agent.d.ts +8 -0
  397. package/dist/node_modules/tedious/node_modules/undici-types/retry-handler.d.ts +125 -0
  398. package/dist/node_modules/tedious/node_modules/undici-types/snapshot-agent.d.ts +109 -0
  399. package/dist/node_modules/tedious/node_modules/undici-types/util.d.ts +18 -0
  400. package/dist/node_modules/tedious/node_modules/undici-types/utility.d.ts +7 -0
  401. package/dist/node_modules/tedious/node_modules/undici-types/webidl.d.ts +341 -0
  402. package/dist/node_modules/tedious/node_modules/undici-types/websocket.d.ts +186 -0
  403. package/dist/node_modules/tedious/package.json +1 -0
  404. package/dist/node_modules/tedious/tsconfig.build-types.json +15 -0
  405. package/dist/node_modules/tedious/tsconfig.json +29 -0
  406. package/dist/node_modules/tedious/types/js-md4.d.ts +7 -0
  407. package/dist/node_modules/tedious/types/native-duplexpair.d.ts +12 -0
  408. package/dist/server/data-source/MssqlExternalDataSource.js +23 -2
  409. package/package.json +1 -1
@@ -0,0 +1,3 @@
1
+ import { type DataType } from '../data-type';
2
+ declare const SmallDateTime: DataType;
3
+ export default SmallDateTime;
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _datetimen = _interopRequireDefault(require("./datetimen"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ const EPOCH_DATE = new Date(1900, 0, 1);
10
+ const UTC_EPOCH_DATE = new Date(Date.UTC(1900, 0, 1));
11
+ const DATA_LENGTH = Buffer.from([0x04]);
12
+ const NULL_LENGTH = Buffer.from([0x00]);
13
+ const SmallDateTime = {
14
+ id: 0x3A,
15
+ type: 'DATETIM4',
16
+ name: 'SmallDateTime',
17
+ declaration: function () {
18
+ return 'smalldatetime';
19
+ },
20
+ generateTypeInfo() {
21
+ return Buffer.from([_datetimen.default.id, 0x04]);
22
+ },
23
+ generateParameterLength(parameter, options) {
24
+ if (parameter.value == null) {
25
+ return NULL_LENGTH;
26
+ }
27
+ return DATA_LENGTH;
28
+ },
29
+ generateParameterData: function* (parameter, options) {
30
+ if (parameter.value == null) {
31
+ return;
32
+ }
33
+ const buffer = Buffer.alloc(4);
34
+ let days, dstDiff, minutes;
35
+ if (options.useUTC) {
36
+ days = Math.floor((parameter.value.getTime() - UTC_EPOCH_DATE.getTime()) / (1000 * 60 * 60 * 24));
37
+ minutes = parameter.value.getUTCHours() * 60 + parameter.value.getUTCMinutes();
38
+ } else {
39
+ dstDiff = -(parameter.value.getTimezoneOffset() - EPOCH_DATE.getTimezoneOffset()) * 60 * 1000;
40
+ days = Math.floor((parameter.value.getTime() - EPOCH_DATE.getTime() + dstDiff) / (1000 * 60 * 60 * 24));
41
+ minutes = parameter.value.getHours() * 60 + parameter.value.getMinutes();
42
+ }
43
+ buffer.writeUInt16LE(days, 0);
44
+ buffer.writeUInt16LE(minutes, 2);
45
+ yield buffer;
46
+ },
47
+ validate: function (value, collation, options) {
48
+ if (value == null) {
49
+ return null;
50
+ }
51
+ if (!(value instanceof Date)) {
52
+ value = new Date(Date.parse(value));
53
+ }
54
+ value = value;
55
+ let year, month, date;
56
+ if (options && options.useUTC) {
57
+ year = value.getUTCFullYear();
58
+ month = value.getUTCMonth();
59
+ date = value.getUTCDate();
60
+ } else {
61
+ year = value.getFullYear();
62
+ month = value.getMonth();
63
+ date = value.getDate();
64
+ }
65
+ if (year < 1900 || year > 2079) {
66
+ throw new TypeError('Out of range.');
67
+ }
68
+ if (year === 2079) {
69
+ // Month is 0-indexed, i.e. Jan = 0, Dec = 11
70
+ // See: https://learn.microsoft.com/en-us/sql/t-sql/data-types/smalldatetime-transact-sql?view=sql-server-ver16
71
+ if (month > 5 || month === 5 && date > 6) {
72
+ throw new TypeError('Out of range.');
73
+ }
74
+ }
75
+ if (isNaN(value)) {
76
+ throw new TypeError('Invalid date.');
77
+ }
78
+ return value;
79
+ }
80
+ };
81
+ var _default = exports.default = SmallDateTime;
82
+ module.exports = SmallDateTime;
83
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGF0ZXRpbWVuIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkVQT0NIX0RBVEUiLCJEYXRlIiwiVVRDX0VQT0NIX0RBVEUiLCJVVEMiLCJEQVRBX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJOVUxMX0xFTkdUSCIsIlNtYWxsRGF0ZVRpbWUiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJnZW5lcmF0ZVR5cGVJbmZvIiwiRGF0ZVRpbWVOIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJwYXJhbWV0ZXIiLCJvcHRpb25zIiwidmFsdWUiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJidWZmZXIiLCJhbGxvYyIsImRheXMiLCJkc3REaWZmIiwibWludXRlcyIsInVzZVVUQyIsIk1hdGgiLCJmbG9vciIsImdldFRpbWUiLCJnZXRVVENIb3VycyIsImdldFVUQ01pbnV0ZXMiLCJnZXRUaW1lem9uZU9mZnNldCIsImdldEhvdXJzIiwiZ2V0TWludXRlcyIsIndyaXRlVUludDE2TEUiLCJ2YWxpZGF0ZSIsImNvbGxhdGlvbiIsInBhcnNlIiwieWVhciIsIm1vbnRoIiwiZGF0ZSIsImdldFVUQ0Z1bGxZZWFyIiwiZ2V0VVRDTW9udGgiLCJnZXRVVENEYXRlIiwiZ2V0RnVsbFllYXIiLCJnZXRNb250aCIsImdldERhdGUiLCJUeXBlRXJyb3IiLCJpc05hTiIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3NtYWxsZGF0ZXRpbWUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgRGF0ZVRpbWVOIGZyb20gJy4vZGF0ZXRpbWVuJztcblxuY29uc3QgRVBPQ0hfREFURSA9IG5ldyBEYXRlKDE5MDAsIDAsIDEpO1xuY29uc3QgVVRDX0VQT0NIX0RBVEUgPSBuZXcgRGF0ZShEYXRlLlVUQygxOTAwLCAwLCAxKSk7XG5cbmNvbnN0IERBVEFfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDRdKTtcbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDBdKTtcblxuY29uc3QgU21hbGxEYXRlVGltZTogRGF0YVR5cGUgPSB7XG4gIGlkOiAweDNBLFxuICB0eXBlOiAnREFURVRJTTQnLFxuICBuYW1lOiAnU21hbGxEYXRlVGltZScsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiAnc21hbGxkYXRldGltZSc7XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbygpIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oW0RhdGVUaW1lTi5pZCwgMHgwNF0pO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIE5VTExfTEVOR1RIO1xuICAgIH1cblxuICAgIHJldHVybiBEQVRBX0xFTkdUSDtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckRhdGE6IGZ1bmN0aW9uKihwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoNCk7XG5cbiAgICBsZXQgZGF5czogbnVtYmVyLCBkc3REaWZmOiBudW1iZXIsIG1pbnV0ZXM6IG51bWJlcjtcbiAgICBpZiAob3B0aW9ucy51c2VVVEMpIHtcbiAgICAgIGRheXMgPSBNYXRoLmZsb29yKChwYXJhbWV0ZXIudmFsdWUuZ2V0VGltZSgpIC0gVVRDX0VQT0NIX0RBVEUuZ2V0VGltZSgpKSAvICgxMDAwICogNjAgKiA2MCAqIDI0KSk7XG4gICAgICBtaW51dGVzID0gKHBhcmFtZXRlci52YWx1ZS5nZXRVVENIb3VycygpICogNjApICsgcGFyYW1ldGVyLnZhbHVlLmdldFVUQ01pbnV0ZXMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZHN0RGlmZiA9IC0ocGFyYW1ldGVyLnZhbHVlLmdldFRpbWV6b25lT2Zmc2V0KCkgLSBFUE9DSF9EQVRFLmdldFRpbWV6b25lT2Zmc2V0KCkpICogNjAgKiAxMDAwO1xuICAgICAgZGF5cyA9IE1hdGguZmxvb3IoKHBhcmFtZXRlci52YWx1ZS5nZXRUaW1lKCkgLSBFUE9DSF9EQVRFLmdldFRpbWUoKSArIGRzdERpZmYpIC8gKDEwMDAgKiA2MCAqIDYwICogMjQpKTtcbiAgICAgIG1pbnV0ZXMgPSAocGFyYW1ldGVyLnZhbHVlLmdldEhvdXJzKCkgKiA2MCkgKyBwYXJhbWV0ZXIudmFsdWUuZ2V0TWludXRlcygpO1xuICAgIH1cblxuICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKGRheXMsIDApO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKG1pbnV0ZXMsIDIpO1xuXG4gICAgeWllbGQgYnVmZmVyO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSwgY29sbGF0aW9uLCBvcHRpb25zKTogbnVsbCB8IERhdGUge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpKSB7XG4gICAgICB2YWx1ZSA9IG5ldyBEYXRlKERhdGUucGFyc2UodmFsdWUpKTtcbiAgICB9XG5cbiAgICB2YWx1ZSA9IHZhbHVlIGFzIERhdGU7XG5cbiAgICBsZXQgeWVhciwgbW9udGgsIGRhdGU7XG4gICAgaWYgKG9wdGlvbnMgJiYgb3B0aW9ucy51c2VVVEMpIHtcbiAgICAgIHllYXIgPSB2YWx1ZS5nZXRVVENGdWxsWWVhcigpO1xuICAgICAgbW9udGggPSB2YWx1ZS5nZXRVVENNb250aCgpO1xuICAgICAgZGF0ZSA9IHZhbHVlLmdldFVUQ0RhdGUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgeWVhciA9IHZhbHVlLmdldEZ1bGxZZWFyKCk7XG4gICAgICBtb250aCA9IHZhbHVlLmdldE1vbnRoKCk7XG4gICAgICBkYXRlID0gdmFsdWUuZ2V0RGF0ZSgpO1xuICAgIH1cblxuICAgIGlmICh5ZWFyIDwgMTkwMCB8fCB5ZWFyID4gMjA3OSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignT3V0IG9mIHJhbmdlLicpO1xuICAgIH1cblxuICAgIGlmICh5ZWFyID09PSAyMDc5KSB7XG4gICAgICAvLyBNb250aCBpcyAwLWluZGV4ZWQsIGkuZS4gSmFuID0gMCwgRGVjID0gMTFcbiAgICAgIC8vIFNlZTogaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL3NxbC90LXNxbC9kYXRhLXR5cGVzL3NtYWxsZGF0ZXRpbWUtdHJhbnNhY3Qtc3FsP3ZpZXc9c3FsLXNlcnZlci12ZXIxNlxuICAgICAgaWYgKG1vbnRoID4gNSB8fCAobW9udGggPT09IDUgJiYgZGF0ZSA+IDYpKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ091dCBvZiByYW5nZS4nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIGRhdGUuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBTbWFsbERhdGVUaW1lO1xubW9kdWxlLmV4cG9ydHMgPSBTbWFsbERhdGVUaW1lO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxVQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFBb0MsU0FBQUQsdUJBQUFFLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFcEMsTUFBTUcsVUFBVSxHQUFHLElBQUlDLElBQUksQ0FB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
@@ -0,0 +1,3 @@
1
+ import { type DataType } from '../data-type';
2
+ declare const SmallInt: DataType;
3
+ export default SmallInt;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _intn = _interopRequireDefault(require("./intn"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ const DATA_LENGTH = Buffer.from([0x02]);
10
+ const NULL_LENGTH = Buffer.from([0x00]);
11
+ const SmallInt = {
12
+ id: 0x34,
13
+ type: 'INT2',
14
+ name: 'SmallInt',
15
+ declaration: function () {
16
+ return 'smallint';
17
+ },
18
+ generateTypeInfo() {
19
+ return Buffer.from([_intn.default.id, 0x02]);
20
+ },
21
+ generateParameterLength(parameter, options) {
22
+ if (parameter.value == null) {
23
+ return NULL_LENGTH;
24
+ }
25
+ return DATA_LENGTH;
26
+ },
27
+ *generateParameterData(parameter, options) {
28
+ if (parameter.value == null) {
29
+ return;
30
+ }
31
+ const buffer = Buffer.alloc(2);
32
+ buffer.writeInt16LE(Number(parameter.value), 0);
33
+ yield buffer;
34
+ },
35
+ validate: function (value) {
36
+ if (value == null) {
37
+ return null;
38
+ }
39
+ if (typeof value !== 'number') {
40
+ value = Number(value);
41
+ }
42
+ if (isNaN(value)) {
43
+ throw new TypeError('Invalid number.');
44
+ }
45
+ if (value < -32768 || value > 32767) {
46
+ throw new TypeError('Value must be between -32768 and 32767, inclusive.');
47
+ }
48
+ return value | 0;
49
+ }
50
+ };
51
+ var _default = exports.default = SmallInt;
52
+ module.exports = SmallInt;
53
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaW50biIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJEQVRBX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJOVUxMX0xFTkdUSCIsIlNtYWxsSW50IiwiaWQiLCJ0eXBlIiwibmFtZSIsImRlY2xhcmF0aW9uIiwiZ2VuZXJhdGVUeXBlSW5mbyIsIkludE4iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsInBhcmFtZXRlciIsIm9wdGlvbnMiLCJ2YWx1ZSIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsImJ1ZmZlciIsImFsbG9jIiwid3JpdGVJbnQxNkxFIiwiTnVtYmVyIiwidmFsaWRhdGUiLCJpc05hTiIsIlR5cGVFcnJvciIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3NtYWxsaW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuaW1wb3J0IEludE4gZnJvbSAnLi9pbnRuJztcblxuY29uc3QgREFUQV9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwMl0pO1xuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwMF0pO1xuXG5jb25zdCBTbWFsbEludDogRGF0YVR5cGUgPSB7XG4gIGlkOiAweDM0LFxuICB0eXBlOiAnSU5UMicsXG4gIG5hbWU6ICdTbWFsbEludCcsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiAnc21hbGxpbnQnO1xuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8oKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFtJbnROLmlkLCAweDAyXSk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgcmV0dXJuIERBVEFfTEVOR1RIO1xuICB9LFxuXG4gICogZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYygyKTtcbiAgICBidWZmZXIud3JpdGVJbnQxNkxFKE51bWJlcihwYXJhbWV0ZXIudmFsdWUpLCAwKTtcbiAgICB5aWVsZCBidWZmZXI7XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogbnVsbCB8IG51bWJlciB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdudW1iZXInKSB7XG4gICAgICB2YWx1ZSA9IE51bWJlcih2YWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGlzTmFOKHZhbHVlKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBudW1iZXIuJyk7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlIDwgLTMyNzY4IHx8IHZhbHVlID4gMzI3NjcpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1ZhbHVlIG11c3QgYmUgYmV0d2VlbiAtMzI3NjggYW5kIDMyNzY3LCBpbmNsdXNpdmUuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlIHwgMDtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgU21hbGxJbnQ7XG5tb2R1bGUuZXhwb3J0cyA9IFNtYWxsSW50O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxLQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFBMEIsU0FBQUQsdUJBQUFFLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFMUIsTUFBTUcsV0FBVyxHQUFHQyxNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3ZDLE1BQU1DLFdBQVcsR0FBR0YsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV2QyxNQUFNRSxRQUFrQixHQUFHO0VBQ3pCQyxFQUFFLEVBQUUsSUFBSTtFQUNSQyxJQUFJLEVBQUUsTUFBTTtFQUNaQyxJQUFJLEVBQUUsVUFBVTtFQUVoQkMsV0FBVyxFQUFFLFNBQUFBLENBQUEsRUFBVztJQUN0QixPQUFPLFVBQVU7RUFDbkIsQ0FBQztFQUVEQyxnQkFBZ0JBLENBQUEsRUFBRztJQUNqQixPQUFPUixNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDUSxhQUFJLENBQUNMLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztFQUNyQyxDQUFDO0VBRURNLHVCQUF1QkEsQ0FBQ0MsU0FBUyxFQUFFQyxPQUFPLEVBQUU7SUFDMUMsSUFBSUQsU0FBUyxDQUFDRSxLQUFLLElBQUksSUFBSSxFQUFFO01BQzNCLE9BQU9YLFdBQVc7SUFDcEI7SUFFQSxPQUFPSCxXQUFXO0VBQ3BCLENBQUM7RUFFRCxDQUFFZSxxQkFBcUJBLENBQUNILFNBQVMsRUFBRUMsT0FBTyxFQUFFO0lBQzFDLElBQUlELFNBQVMsQ0FBQ0UsS0FBSyxJQUFJLElBQUksRUFBRTtNQUMzQjtJQUNGO0lBRUEsTUFBTUUsTUFBTSxHQUFHZixNQUFNLENBQUNnQixLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzlCRCxNQUFNLENBQUNFLFlBQVksQ0FBQ0MsTUFBTSxDQUFDUCxTQUFTLENBQUNFLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvQyxNQUFNRSxNQUFNO0VBQ2QsQ0FBQztFQUVESSxRQUFRLEVBQUUsU0FBQUEsQ0FBU04sS0FBSyxFQUFpQjtJQUN2QyxJQUFJQSxLQUFLLElBQUksSUFBSSxFQUFFO01BQ2pCLE9BQU8sSUFBSTtJQUNiO0lBRUEsSUFBSSxPQUFPQSxLQUFLLEtBQUssUUFBUSxFQUFFO01BQzdCQSxLQUFLLEdBQUdLLE1BQU0sQ0FBQ0wsS0FBSyxDQUFDO0lBQ3ZCO0lBRUEsSUFBSU8sS0FBSyxDQUFDUCxLQUFLLENBQUMsRUFBRTtNQUNoQixNQUFNLElBQUlRLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQztJQUN4QztJQUVBLElBQUlSLEtBQUssR0FBRyxDQUFDLEtBQUssSUFBSUEsS0FBSyxHQUFHLEtBQUssRUFBRTtNQUNuQyxNQUFNLElBQUlRLFNBQVMsQ0FBQyxvREFBb0QsQ0FBQztJQUMzRTtJQUVBLE9BQU9SLEtBQUssR0FBRyxDQUFDO0VBQ2xCO0FBQ0YsQ0FBQztBQUFDLElBQUFTLFFBQUEsR0FBQUMsT0FBQSxDQUFBekIsT0FBQSxHQUVhSyxRQUFRO0FBQ3ZCcUIsTUFBTSxDQUFDRCxPQUFPLEdBQUdwQixRQUFRIn0=
@@ -0,0 +1,3 @@
1
+ import { type DataType } from '../data-type';
2
+ declare const SmallMoney: DataType;
3
+ export default SmallMoney;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _moneyn = _interopRequireDefault(require("./moneyn"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ const DATA_LENGTH = Buffer.from([0x04]);
10
+ const NULL_LENGTH = Buffer.from([0x00]);
11
+ const SmallMoney = {
12
+ id: 0x7A,
13
+ type: 'MONEY4',
14
+ name: 'SmallMoney',
15
+ declaration: function () {
16
+ return 'smallmoney';
17
+ },
18
+ generateTypeInfo: function () {
19
+ return Buffer.from([_moneyn.default.id, 0x04]);
20
+ },
21
+ generateParameterLength(parameter, options) {
22
+ if (parameter.value == null) {
23
+ return NULL_LENGTH;
24
+ }
25
+ return DATA_LENGTH;
26
+ },
27
+ *generateParameterData(parameter, options) {
28
+ if (parameter.value == null) {
29
+ return;
30
+ }
31
+ const buffer = Buffer.alloc(4);
32
+ buffer.writeInt32LE(parameter.value * 10000, 0);
33
+ yield buffer;
34
+ },
35
+ validate: function (value) {
36
+ if (value == null) {
37
+ return null;
38
+ }
39
+ value = parseFloat(value);
40
+ if (isNaN(value)) {
41
+ throw new TypeError('Invalid number.');
42
+ }
43
+ if (value < -214748.3648 || value > 214748.3647) {
44
+ throw new TypeError('Value must be between -214748.3648 and 214748.3647.');
45
+ }
46
+ return value;
47
+ }
48
+ };
49
+ var _default = exports.default = SmallMoney;
50
+ module.exports = SmallMoney;
51
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9uZXluIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkRBVEFfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIk5VTExfTEVOR1RIIiwiU21hbGxNb25leSIsImlkIiwidHlwZSIsIm5hbWUiLCJkZWNsYXJhdGlvbiIsImdlbmVyYXRlVHlwZUluZm8iLCJNb25leU4iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsInBhcmFtZXRlciIsIm9wdGlvbnMiLCJ2YWx1ZSIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsImJ1ZmZlciIsImFsbG9jIiwid3JpdGVJbnQzMkxFIiwidmFsaWRhdGUiLCJwYXJzZUZsb2F0IiwiaXNOYU4iLCJUeXBlRXJyb3IiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJtb2R1bGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YS10eXBlcy9zbWFsbG1vbmV5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuaW1wb3J0IE1vbmV5TiBmcm9tICcuL21vbmV5bic7XG5cbmNvbnN0IERBVEFfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDRdKTtcbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDBdKTtcblxuY29uc3QgU21hbGxNb25leTogRGF0YVR5cGUgPSB7XG4gIGlkOiAweDdBLFxuICB0eXBlOiAnTU9ORVk0JyxcbiAgbmFtZTogJ1NtYWxsTW9uZXknLFxuXG4gIGRlY2xhcmF0aW9uOiBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gJ3NtYWxsbW9uZXknO1xuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm86IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiBCdWZmZXIuZnJvbShbTW9uZXlOLmlkLCAweDA0XSk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgcmV0dXJuIERBVEFfTEVOR1RIO1xuICB9LFxuXG4gICogZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg0KTtcbiAgICBidWZmZXIud3JpdGVJbnQzMkxFKHBhcmFtZXRlci52YWx1ZSAqIDEwMDAwLCAwKTtcbiAgICB5aWVsZCBidWZmZXI7XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogbnVsbCB8IG51bWJlciB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICB2YWx1ZSA9IHBhcnNlRmxvYXQodmFsdWUpO1xuICAgIGlmIChpc05hTih2YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgbnVtYmVyLicpO1xuICAgIH1cbiAgICBpZiAodmFsdWUgPCAtMjE0NzQ4LjM2NDggfHwgdmFsdWUgPiAyMTQ3NDguMzY0Nykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignVmFsdWUgbXVzdCBiZSBiZXR3ZWVuIC0yMTQ3NDguMzY0OCBhbmQgMjE0NzQ4LjM2NDcuJyk7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgU21hbGxNb25leTtcbm1vZHVsZS5leHBvcnRzID0gU21hbGxNb25leTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsSUFBQUEsT0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQThCLFNBQUFELHVCQUFBRSxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBRTlCLE1BQU1HLFdBQVcsR0FBR0MsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN2QyxNQUFNQyxXQUFXLEdBQUdGLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFdkMsTUFBTUUsVUFBb0IsR0FBRztFQUMzQkMsRUFBRSxFQUFFLElBQUk7RUFDUkMsSUFBSSxFQUFFLFFBQVE7RUFDZEMsSUFBSSxFQUFFLFlBQVk7RUFFbEJDLFdBQVcsRUFBRSxTQUFBQSxDQUFBLEVBQVc7SUFDdEIsT0FBTyxZQUFZO0VBQ3JCLENBQUM7RUFFREMsZ0JBQWdCLEVBQUUsU0FBQUEsQ0FBQSxFQUFXO0lBQzNCLE9BQU9SLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUNRLGVBQU0sQ0FBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0VBQ3ZDLENBQUM7RUFFRE0sdUJBQXVCQSxDQUFDQyxTQUFTLEVBQUVDLE9BQU8sRUFBRTtJQUMxQyxJQUFJRCxTQUFTLENBQUNFLEtBQUssSUFBSSxJQUFJLEVBQUU7TUFDM0IsT0FBT1gsV0FBVztJQUNwQjtJQUVBLE9BQU9ILFdBQVc7RUFDcEIsQ0FBQztFQUVELENBQUVlLHFCQUFxQkEsQ0FBQ0gsU0FBUyxFQUFFQyxPQUFPLEVBQUU7SUFDMUMsSUFBSUQsU0FBUyxDQUFDRSxLQUFLLElBQUksSUFBSSxFQUFFO01BQzNCO0lBQ0Y7SUFFQSxNQUFNRSxNQUFNLEdBQUdmLE1BQU0sQ0FBQ2dCLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUJELE1BQU0sQ0FBQ0UsWUFBWSxDQUFDTixTQUFTLENBQUNFLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLE1BQU1FLE1BQU07RUFDZCxDQUFDO0VBRURHLFFBQVEsRUFBRSxTQUFBQSxDQUFTTCxLQUFLLEVBQWlCO0lBQ3ZDLElBQUlBLEtBQUssSUFBSSxJQUFJLEVBQUU7TUFDakIsT0FBTyxJQUFJO0lBQ2I7SUFDQUEsS0FBSyxHQUFHTSxVQUFVLENBQUNOLEtBQUssQ0FBQztJQUN6QixJQUFJTyxLQUFLLENBQUNQLEtBQUssQ0FBQyxFQUFFO01BQ2hCLE1BQU0sSUFBSVEsU0FBUyxDQUFDLGlCQUFpQixDQUFDO0lBQ3hDO0lBQ0EsSUFBSVIsS0FBSyxHQUFHLENBQUMsV0FBVyxJQUFJQSxLQUFLLEdBQUcsV0FBVyxFQUFFO01BQy9DLE1BQU0sSUFBSVEsU0FBUyxDQUFDLHFEQUFxRCxDQUFDO0lBQzVFO0lBQ0EsT0FBT1IsS0FBSztFQUNkO0FBQ0YsQ0FBQztBQUFDLElBQUFTLFFBQUEsR0FBQUMsT0FBQSxDQUFBekIsT0FBQSxHQUVhSyxVQUFVO0FBQ3pCcUIsTUFBTSxDQUFDRCxPQUFPLEdBQUdwQixVQUFVIn0=
@@ -0,0 +1,3 @@
1
+ import { type DataType } from '../data-type';
2
+ declare const Variant: DataType;
3
+ export default Variant;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const Variant = {
8
+ id: 0x62,
9
+ type: 'SSVARIANTTYPE',
10
+ name: 'Variant',
11
+ declaration: function () {
12
+ return 'sql_variant';
13
+ },
14
+ generateTypeInfo() {
15
+ throw new Error('not implemented');
16
+ },
17
+ generateParameterLength() {
18
+ throw new Error('not implemented');
19
+ },
20
+ generateParameterData() {
21
+ throw new Error('not implemented');
22
+ },
23
+ validate() {
24
+ throw new Error('not implemented');
25
+ }
26
+ };
27
+ var _default = exports.default = Variant;
28
+ module.exports = Variant;
29
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50IiwiaWQiLCJ0eXBlIiwibmFtZSIsImRlY2xhcmF0aW9uIiwiZ2VuZXJhdGVUeXBlSW5mbyIsIkVycm9yIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJ2YWxpZGF0ZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiLCJtb2R1bGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YS10eXBlcy9zcWwtdmFyaWFudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcblxuY29uc3QgVmFyaWFudDogRGF0YVR5cGUgPSB7XG4gIGlkOiAweDYyLFxuICB0eXBlOiAnU1NWQVJJQU5UVFlQRScsXG4gIG5hbWU6ICdWYXJpYW50JyxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuICdzcWxfdmFyaWFudCc7XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbygpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBpbXBsZW1lbnRlZCcpO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKCkge1xuICAgIHRocm93IG5ldyBFcnJvcignbm90IGltcGxlbWVudGVkJyk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKCkge1xuICAgIHRocm93IG5ldyBFcnJvcignbm90IGltcGxlbWVudGVkJyk7XG4gIH0sXG5cbiAgdmFsaWRhdGUoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgVmFyaWFudDtcbm1vZHVsZS5leHBvcnRzID0gVmFyaWFudDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsTUFBTUEsT0FBaUIsR0FBRztFQUN4QkMsRUFBRSxFQUFFLElBQUk7RUFDUkMsSUFBSSxFQUFFLGVBQWU7RUFDckJDLElBQUksRUFBRSxTQUFTO0VBRWZDLFdBQVcsRUFBRSxTQUFBQSxDQUFBLEVBQVc7SUFDdEIsT0FBTyxhQUFhO0VBQ3RCLENBQUM7RUFFREMsZ0JBQWdCQSxDQUFBLEVBQUc7SUFDakIsTUFBTSxJQUFJQyxLQUFLLENBQUMsaUJBQWlCLENBQUM7RUFDcEMsQ0FBQztFQUVEQyx1QkFBdUJBLENBQUEsRUFBRztJQUN4QixNQUFNLElBQUlELEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztFQUNwQyxDQUFDO0VBRURFLHFCQUFxQkEsQ0FBQSxFQUFHO0lBQ3RCLE1BQU0sSUFBSUYsS0FBSyxDQUFDLGlCQUFpQixDQUFDO0VBQ3BDLENBQUM7RUFFREcsUUFBUUEsQ0FBQSxFQUFHO0lBQ1QsTUFBTSxJQUFJSCxLQUFLLENBQUMsaUJBQWlCLENBQUM7RUFDcEM7QUFDRixDQUFDO0FBQUMsSUFBQUksUUFBQSxHQUFBQyxPQUFBLENBQUFDLE9BQUEsR0FFYVosT0FBTztBQUN0QmEsTUFBTSxDQUFDRixPQUFPLEdBQUdYLE9BQU8ifQ==
@@ -0,0 +1,3 @@
1
+ import { type DataType } from '../data-type';
2
+ declare const Text: DataType;
3
+ export default Text;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _iconvLite = _interopRequireDefault(require("iconv-lite"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ const NULL_LENGTH = Buffer.from([0xFF, 0xFF, 0xFF, 0xFF]);
10
+ const Text = {
11
+ id: 0x23,
12
+ type: 'TEXT',
13
+ name: 'Text',
14
+ hasTableName: true,
15
+ declaration: function () {
16
+ return 'text';
17
+ },
18
+ resolveLength: function (parameter) {
19
+ const value = parameter.value;
20
+ if (value != null) {
21
+ return value.length;
22
+ } else {
23
+ return -1;
24
+ }
25
+ },
26
+ generateTypeInfo(parameter, _options) {
27
+ const buffer = Buffer.alloc(10);
28
+ buffer.writeUInt8(this.id, 0);
29
+ buffer.writeInt32LE(parameter.length, 1);
30
+ if (parameter.collation) {
31
+ parameter.collation.toBuffer().copy(buffer, 5, 0, 5);
32
+ }
33
+ return buffer;
34
+ },
35
+ generateParameterLength(parameter, options) {
36
+ const value = parameter.value;
37
+ if (value == null) {
38
+ return NULL_LENGTH;
39
+ }
40
+ const buffer = Buffer.alloc(4);
41
+ buffer.writeInt32LE(value.length, 0);
42
+ return buffer;
43
+ },
44
+ generateParameterData: function* (parameter, options) {
45
+ const value = parameter.value;
46
+ if (value == null) {
47
+ return;
48
+ }
49
+ yield value;
50
+ },
51
+ validate: function (value, collation) {
52
+ if (value == null) {
53
+ return null;
54
+ }
55
+ if (typeof value !== 'string') {
56
+ throw new TypeError('Invalid string.');
57
+ }
58
+ if (!collation) {
59
+ throw new Error('No collation was set by the server for the current connection.');
60
+ }
61
+ if (!collation.codepage) {
62
+ throw new Error('The collation set by the server has no associated encoding.');
63
+ }
64
+ return _iconvLite.default.encode(value, collation.codepage);
65
+ }
66
+ };
67
+ var _default = exports.default = Text;
68
+ module.exports = Text;
69
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaWNvbnZMaXRlIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIk5VTExfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIlRleHQiLCJpZCIsInR5cGUiLCJuYW1lIiwiaGFzVGFibGVOYW1lIiwiZGVjbGFyYXRpb24iLCJyZXNvbHZlTGVuZ3RoIiwicGFyYW1ldGVyIiwidmFsdWUiLCJsZW5ndGgiLCJnZW5lcmF0ZVR5cGVJbmZvIiwiX29wdGlvbnMiLCJidWZmZXIiLCJhbGxvYyIsIndyaXRlVUludDgiLCJ3cml0ZUludDMyTEUiLCJjb2xsYXRpb24iLCJ0b0J1ZmZlciIsImNvcHkiLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsIm9wdGlvbnMiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJ2YWxpZGF0ZSIsIlR5cGVFcnJvciIsIkVycm9yIiwiY29kZXBhZ2UiLCJpY29udiIsImVuY29kZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3RleHQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGljb252IGZyb20gJ2ljb252LWxpdGUnO1xuXG5pbXBvcnQgeyB0eXBlIERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcblxuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHhGRiwgMHhGRiwgMHhGRiwgMHhGRl0pO1xuXG5jb25zdCBUZXh0OiBEYXRhVHlwZSA9IHtcbiAgaWQ6IDB4MjMsXG4gIHR5cGU6ICdURVhUJyxcbiAgbmFtZTogJ1RleHQnLFxuXG4gIGhhc1RhYmxlTmFtZTogdHJ1ZSxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuICd0ZXh0JztcbiAgfSxcblxuICByZXNvbHZlTGVuZ3RoOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbyhwYXJhbWV0ZXIsIF9vcHRpb25zKSB7XG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDEwKTtcbiAgICBidWZmZXIud3JpdGVVSW50OCh0aGlzLmlkLCAwKTtcbiAgICBidWZmZXIud3JpdGVJbnQzMkxFKHBhcmFtZXRlci5sZW5ndGghLCAxKTtcblxuICAgIGlmIChwYXJhbWV0ZXIuY29sbGF0aW9uKSB7XG4gICAgICBwYXJhbWV0ZXIuY29sbGF0aW9uLnRvQnVmZmVyKCkuY29weShidWZmZXIsIDUsIDAsIDUpO1xuICAgIH1cblxuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDQpO1xuICAgIGJ1ZmZlci53cml0ZUludDMyTEUodmFsdWUubGVuZ3RoLCAwKTtcbiAgICByZXR1cm4gYnVmZmVyO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyRGF0YTogZnVuY3Rpb24qKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHlpZWxkIHZhbHVlO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSwgY29sbGF0aW9uKTogQnVmZmVyIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHN0cmluZy4nKTtcbiAgICB9XG5cbiAgICBpZiAoIWNvbGxhdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBjb2xsYXRpb24gd2FzIHNldCBieSB0aGUgc2VydmVyIGZvciB0aGUgY3VycmVudCBjb25uZWN0aW9uLicpO1xuICAgIH1cblxuICAgIGlmICghY29sbGF0aW9uLmNvZGVwYWdlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBjb2xsYXRpb24gc2V0IGJ5IHRoZSBzZXJ2ZXIgaGFzIG5vIGFzc29jaWF0ZWQgZW5jb2RpbmcuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGljb252LmVuY29kZSh2YWx1ZSwgY29sbGF0aW9uLmNvZGVwYWdlKTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgVGV4dDtcbm1vZHVsZS5leHBvcnRzID0gVGV4dDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsVUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQStCLFNBQUFELHVCQUFBRSxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBSS9CLE1BQU1HLFdBQVcsR0FBR0MsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztBQUV6RCxNQUFNQyxJQUFjLEdBQUc7RUFDckJDLEVBQUUsRUFBRSxJQUFJO0VBQ1JDLElBQUksRUFBRSxNQUFNO0VBQ1pDLElBQUksRUFBRSxNQUFN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
@@ -0,0 +1,3 @@
1
+ import { type DataType } from '../data-type';
2
+ declare const Time: DataType;
3
+ export default Time;
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _writableTrackingBuffer = _interopRequireDefault(require("../tracking-buffer/writable-tracking-buffer"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ const NULL_LENGTH = Buffer.from([0x00]);
10
+ const Time = {
11
+ id: 0x29,
12
+ type: 'TIMEN',
13
+ name: 'Time',
14
+ declaration: function (parameter) {
15
+ return 'time(' + this.resolveScale(parameter) + ')';
16
+ },
17
+ resolveScale: function (parameter) {
18
+ if (parameter.scale != null) {
19
+ return parameter.scale;
20
+ } else if (parameter.value === null) {
21
+ return 0;
22
+ } else {
23
+ return 7;
24
+ }
25
+ },
26
+ generateTypeInfo(parameter) {
27
+ return Buffer.from([this.id, parameter.scale]);
28
+ },
29
+ generateParameterLength(parameter, options) {
30
+ if (parameter.value == null) {
31
+ return NULL_LENGTH;
32
+ }
33
+ switch (parameter.scale) {
34
+ case 0:
35
+ case 1:
36
+ case 2:
37
+ return Buffer.from([0x03]);
38
+ case 3:
39
+ case 4:
40
+ return Buffer.from([0x04]);
41
+ case 5:
42
+ case 6:
43
+ case 7:
44
+ return Buffer.from([0x05]);
45
+ default:
46
+ throw new Error('invalid scale');
47
+ }
48
+ },
49
+ *generateParameterData(parameter, options) {
50
+ if (parameter.value == null) {
51
+ return;
52
+ }
53
+ const buffer = new _writableTrackingBuffer.default(16);
54
+ const time = parameter.value;
55
+ let timestamp;
56
+ if (options.useUTC) {
57
+ timestamp = ((time.getUTCHours() * 60 + time.getUTCMinutes()) * 60 + time.getUTCSeconds()) * 1000 + time.getUTCMilliseconds();
58
+ } else {
59
+ timestamp = ((time.getHours() * 60 + time.getMinutes()) * 60 + time.getSeconds()) * 1000 + time.getMilliseconds();
60
+ }
61
+ timestamp = timestamp * Math.pow(10, parameter.scale - 3);
62
+ timestamp += (parameter.value.nanosecondDelta != null ? parameter.value.nanosecondDelta : 0) * Math.pow(10, parameter.scale);
63
+ timestamp = Math.round(timestamp);
64
+ switch (parameter.scale) {
65
+ case 0:
66
+ case 1:
67
+ case 2:
68
+ buffer.writeUInt24LE(timestamp);
69
+ break;
70
+ case 3:
71
+ case 4:
72
+ buffer.writeUInt32LE(timestamp);
73
+ break;
74
+ case 5:
75
+ case 6:
76
+ case 7:
77
+ buffer.writeUInt40LE(timestamp);
78
+ }
79
+ yield buffer.data;
80
+ },
81
+ validate: function (value) {
82
+ if (value == null) {
83
+ return null;
84
+ }
85
+ if (!(value instanceof Date)) {
86
+ value = new Date(Date.parse(value));
87
+ }
88
+ if (isNaN(value)) {
89
+ throw new TypeError('Invalid time.');
90
+ }
91
+ return value;
92
+ }
93
+ };
94
+ var _default = exports.default = Time;
95
+ module.exports = Time;
96
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd3JpdGFibGVUcmFja2luZ0J1ZmZlciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJOVUxMX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJUaW1lIiwiaWQiLCJ0eXBlIiwibmFtZSIsImRlY2xhcmF0aW9uIiwicGFyYW1ldGVyIiwicmVzb2x2ZVNjYWxlIiwic2NhbGUiLCJ2YWx1ZSIsImdlbmVyYXRlVHlwZUluZm8iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsIm9wdGlvbnMiLCJFcnJvciIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsImJ1ZmZlciIsIldyaXRhYmxlVHJhY2tpbmdCdWZmZXIiLCJ0aW1lIiwidGltZXN0YW1wIiwidXNlVVRDIiwiZ2V0VVRDSG91cnMiLCJnZXRVVENNaW51dGVzIiwiZ2V0VVRDU2Vjb25kcyIsImdldFVUQ01pbGxpc2Vjb25kcyIsImdldEhvdXJzIiwiZ2V0TWludXRlcyIsImdldFNlY29uZHMiLCJnZXRNaWxsaXNlY29uZHMiLCJNYXRoIiwicG93IiwibmFub3NlY29uZERlbHRhIiwicm91bmQiLCJ3cml0ZVVJbnQyNExFIiwid3JpdGVVSW50MzJMRSIsIndyaXRlVUludDQwTEUiLCJkYXRhIiwidmFsaWRhdGUiLCJEYXRlIiwicGFyc2UiLCJpc05hTiIsIlR5cGVFcnJvciIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3RpbWUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgV3JpdGFibGVUcmFja2luZ0J1ZmZlciBmcm9tICcuLi90cmFja2luZy1idWZmZXIvd3JpdGFibGUtdHJhY2tpbmctYnVmZmVyJztcblxuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwMF0pO1xuXG5jb25zdCBUaW1lOiBEYXRhVHlwZSA9IHtcbiAgaWQ6IDB4MjksXG4gIHR5cGU6ICdUSU1FTicsXG4gIG5hbWU6ICdUaW1lJyxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgcmV0dXJuICd0aW1lKCcgKyAodGhpcy5yZXNvbHZlU2NhbGUhKHBhcmFtZXRlcikpICsgJyknO1xuICB9LFxuXG4gIHJlc29sdmVTY2FsZTogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgaWYgKHBhcmFtZXRlci5zY2FsZSAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gcGFyYW1ldGVyLnNjYWxlO1xuICAgIH0gZWxzZSBpZiAocGFyYW1ldGVyLnZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIDc7XG4gICAgfVxuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8ocGFyYW1ldGVyKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFt0aGlzLmlkLCBwYXJhbWV0ZXIuc2NhbGUhXSk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgc3dpdGNoIChwYXJhbWV0ZXIuc2NhbGUpIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgIGNhc2UgMTpcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFsweDAzXSk7XG4gICAgICBjYXNlIDM6XG4gICAgICBjYXNlIDQ6XG4gICAgICAgIHJldHVybiBCdWZmZXIuZnJvbShbMHgwNF0pO1xuICAgICAgY2FzZSA1OlxuICAgICAgY2FzZSA2OlxuICAgICAgY2FzZSA3OlxuICAgICAgICByZXR1cm4gQnVmZmVyLmZyb20oWzB4MDVdKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBzY2FsZScpO1xuICAgIH1cbiAgfSxcblxuICAqIGdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBidWZmZXIgPSBuZXcgV3JpdGFibGVUcmFja2luZ0J1ZmZlcigxNik7XG4gICAgY29uc3QgdGltZSA9IHBhcmFtZXRlci52YWx1ZTtcblxuICAgIGxldCB0aW1lc3RhbXA7XG4gICAgaWYgKG9wdGlvbnMudXNlVVRDKSB7XG4gICAgICB0aW1lc3RhbXAgPSAoKHRpbWUuZ2V0VVRDSG91cnMoKSAqIDYwICsgdGltZS5nZXRVVENNaW51dGVzKCkpICogNjAgKyB0aW1lLmdldFVUQ1NlY29uZHMoKSkgKiAxMDAwICsgdGltZS5nZXRVVENNaWxsaXNlY29uZHMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGltZXN0YW1wID0gKCh0aW1lLmdldEhvdXJzKCkgKiA2MCArIHRpbWUuZ2V0TWludXRlcygpKSAqIDYwICsgdGltZS5nZXRTZWNvbmRzKCkpICogMTAwMCArIHRpbWUuZ2V0TWlsbGlzZWNvbmRzKCk7XG4gICAgfVxuXG4gICAgdGltZXN0YW1wID0gdGltZXN0YW1wICogTWF0aC5wb3coMTAsIHBhcmFtZXRlci5zY2FsZSEgLSAzKTtcbiAgICB0aW1lc3RhbXAgKz0gKHBhcmFtZXRlci52YWx1ZS5uYW5vc2Vjb25kRGVsdGEgIT0gbnVsbCA/IHBhcmFtZXRlci52YWx1ZS5uYW5vc2Vjb25kRGVsdGEgOiAwKSAqIE1hdGgucG93KDEwLCBwYXJhbWV0ZXIuc2NhbGUhKTtcbiAgICB0aW1lc3RhbXAgPSBNYXRoLnJvdW5kKHRpbWVzdGFtcCk7XG5cbiAgICBzd2l0Y2ggKHBhcmFtZXRlci5zY2FsZSkge1xuICAgICAgY2FzZSAwOlxuICAgICAgY2FzZSAxOlxuICAgICAgY2FzZSAyOlxuICAgICAgICBidWZmZXIud3JpdGVVSW50MjRMRSh0aW1lc3RhbXApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMzpcbiAgICAgIGNhc2UgNDpcbiAgICAgICAgYnVmZmVyLndyaXRlVUludDMyTEUodGltZXN0YW1wKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDU6XG4gICAgICBjYXNlIDY6XG4gICAgICBjYXNlIDc6XG4gICAgICAgIGJ1ZmZlci53cml0ZVVJbnQ0MExFKHRpbWVzdGFtcCk7XG4gICAgfVxuXG4gICAgeWllbGQgYnVmZmVyLmRhdGE7XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogbnVsbCB8IG51bWJlciB8IERhdGUge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpKSB7XG4gICAgICB2YWx1ZSA9IG5ldyBEYXRlKERhdGUucGFyc2UodmFsdWUpKTtcbiAgICB9XG5cbiAgICBpZiAoaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHRpbWUuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5cbmV4cG9ydCBkZWZhdWx0IFRpbWU7XG5tb2R1bGUuZXhwb3J0cyA9IFRpbWU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLHVCQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFBaUYsU0FBQUQsdUJBQUFFLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFakYsTUFBTUcsV0FBVyxHQUFHQyxNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRXZDLE1BQU1DLElBQWMsR0FBRztFQUNyQkMsRUFBRSxFQUFFLElBQUk7RUFDUkMsSUFBSSxFQUFFLE9B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
@@ -0,0 +1,3 @@
1
+ import { type DataType } from '../data-type';
2
+ declare const TinyInt: DataType;
3
+ export default TinyInt;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _intn = _interopRequireDefault(require("./intn"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ const DATA_LENGTH = Buffer.from([0x01]);
10
+ const NULL_LENGTH = Buffer.from([0x00]);
11
+ const TinyInt = {
12
+ id: 0x30,
13
+ type: 'INT1',
14
+ name: 'TinyInt',
15
+ declaration: function () {
16
+ return 'tinyint';
17
+ },
18
+ generateTypeInfo() {
19
+ return Buffer.from([_intn.default.id, 0x01]);
20
+ },
21
+ generateParameterLength(parameter, options) {
22
+ if (parameter.value == null) {
23
+ return NULL_LENGTH;
24
+ }
25
+ return DATA_LENGTH;
26
+ },
27
+ *generateParameterData(parameter, options) {
28
+ if (parameter.value == null) {
29
+ return;
30
+ }
31
+ const buffer = Buffer.alloc(1);
32
+ buffer.writeUInt8(Number(parameter.value), 0);
33
+ yield buffer;
34
+ },
35
+ validate: function (value) {
36
+ if (value == null) {
37
+ return null;
38
+ }
39
+ if (typeof value !== 'number') {
40
+ value = Number(value);
41
+ }
42
+ if (isNaN(value)) {
43
+ throw new TypeError('Invalid number.');
44
+ }
45
+ if (value < 0 || value > 255) {
46
+ throw new TypeError('Value must be between 0 and 255, inclusive.');
47
+ }
48
+ return value | 0;
49
+ }
50
+ };
51
+ var _default = exports.default = TinyInt;
52
+ module.exports = TinyInt;
53
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaW50biIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJEQVRBX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJOVUxMX0xFTkdUSCIsIlRpbnlJbnQiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJnZW5lcmF0ZVR5cGVJbmZvIiwiSW50TiIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwicGFyYW1ldGVyIiwib3B0aW9ucyIsInZhbHVlIiwiZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhIiwiYnVmZmVyIiwiYWxsb2MiLCJ3cml0ZVVJbnQ4IiwiTnVtYmVyIiwidmFsaWRhdGUiLCJpc05hTiIsIlR5cGVFcnJvciIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3RpbnlpbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgSW50TiBmcm9tICcuL2ludG4nO1xuXG5jb25zdCBEQVRBX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweDAxXSk7XG5jb25zdCBOVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweDAwXSk7XG5cbmNvbnN0IFRpbnlJbnQ6IERhdGFUeXBlID0ge1xuICBpZDogMHgzMCxcbiAgdHlwZTogJ0lOVDEnLFxuICBuYW1lOiAnVGlueUludCcsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiAndGlueWludCc7XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbygpIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oW0ludE4uaWQsIDB4MDFdKTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICByZXR1cm4gREFUQV9MRU5HVEg7XG4gIH0sXG5cbiAgKiBnZW5lcmF0ZVBhcmFtZXRlckRhdGEocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDEpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQ4KE51bWJlcihwYXJhbWV0ZXIudmFsdWUpLCAwKTtcbiAgICB5aWVsZCBidWZmZXI7XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdudW1iZXInKSB7XG4gICAgICB2YWx1ZSA9IE51bWJlcih2YWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGlzTmFOKHZhbHVlKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBudW1iZXIuJyk7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlIDwgMCB8fCB2YWx1ZSA+IDI1NSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignVmFsdWUgbXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDI1NSwgaW5jbHVzaXZlLicpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZSB8IDA7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IFRpbnlJbnQ7XG5tb2R1bGUuZXhwb3J0cyA9IFRpbnlJbnQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUEwQixTQUFBRCx1QkFBQUUsR0FBQSxXQUFBQSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxHQUFBRCxHQUFBLEtBQUFFLE9BQUEsRUFBQUYsR0FBQTtBQUUxQixNQUFNRyxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDdkMsTUFBTUMsV0FBVyxHQUFHRixNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRXZDLE1BQU1FLE9BQWlCLEdBQUc7RUFDeEJDLEVBQUUsRUFBRSxJQUFJO0VBQ1JDLElBQUksRUFBRSxNQUFNO0VBQ1pDLElBQUksRUFBRSxTQUFTO0VBRWZDLFdBQVcsRUFBRSxTQUFBQSxDQUFBLEVBQVc7SUFDdEIsT0FBTyxTQUFTO0VBQ2xCLENBQUM7RUFFREMsZ0JBQWdCQSxDQUFBLEVBQUc7SUFDakIsT0FBT1IsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQ1EsYUFBSSxDQUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7RUFDckMsQ0FBQztFQUVETSx1QkFBdUJBLENBQUNDLFNBQVMsRUFBRUMsT0FBTyxFQUFFO0lBQzFDLElBQUlELFNBQVMsQ0FBQ0UsS0FBSyxJQUFJLElBQUksRUFBRTtNQUMzQixPQUFPWCxXQUFXO0lBQ3BCO0lBRUEsT0FBT0gsV0FBVztFQUNwQixDQUFDO0VBRUQsQ0FBRWUscUJBQXFCQSxDQUFDSCxTQUFTLEVBQUVDLE9BQU8sRUFBRTtJQUMxQyxJQUFJRCxTQUFTLENBQUNFLEtBQUssSUFBSSxJQUFJLEVBQUU7TUFDM0I7SUFDRjtJQUVBLE1BQU1FLE1BQU0sR0FBR2YsTUFBTSxDQUFDZ0IsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM5QkQsTUFBTSxDQUFDRSxVQUFVLENBQUNDLE1BQU0sQ0FBQ1AsU0FBUyxDQUFDRSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0MsTUFBTUUsTUFBTTtFQUNkLENBQUM7RUFFREksUUFBUSxFQUFFLFNBQUFBLENBQVNOLEtBQUssRUFBaUI7SUFDdkMsSUFBSUEsS0FBSyxJQUFJLElBQUksRUFBRTtNQUNqQixPQUFPLElBQUk7SUFDYjtJQUVBLElBQUksT0FBT0EsS0FBSyxLQUFLLFFBQVEsRUFBRTtNQUM3QkEsS0FBSyxHQUFHSyxNQUFNLENBQUNMLEtBQUssQ0FBQztJQUN2QjtJQUVBLElBQUlPLEtBQUssQ0FBQ1AsS0FBSyxDQUFDLEVBQUU7TUFDaEIsTUFBTSxJQUFJUSxTQUFTLENBQUMsaUJBQWlCLENBQUM7SUFDeEM7SUFFQSxJQUFJUixLQUFLLEdBQUcsQ0FBQyxJQUFJQSxLQUFLLEdBQUcsR0FBRyxFQUFFO01BQzVCLE1BQU0sSUFBSVEsU0FBUyxDQUFDLDZDQUE2QyxDQUFDO0lBQ3BFO0lBRUEsT0FBT1IsS0FBSyxHQUFHLENBQUM7RUFDbEI7QUFDRixDQUFDO0FBQUMsSUFBQVMsUUFBQSxHQUFBQyxPQUFBLENBQUF6QixPQUFBLEdBRWFLLE9BQU87QUFDdEJxQixNQUFNLENBQUNELE9BQU8sR0FBR3BCLE9BQU8ifQ==
@@ -0,0 +1,3 @@
1
+ import { type DataType } from '../data-type';
2
+ declare const TVP: DataType;
3
+ export default TVP;