ccxt-ir 4.10.0 → 4.11.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 (1047) hide show
  1. package/README.md +4 -4
  2. package/dist/ccxt.browser.min.js +2 -2
  3. package/dist/cjs/ccxt.js +4 -1
  4. package/dist/cjs/src/abstract/bidarz.js +11 -0
  5. package/dist/cjs/src/bidarz.js +337 -0
  6. package/dist/cjs/src/bit24.js +4 -3
  7. package/js/ccxt.d.ts +5 -2
  8. package/js/ccxt.js +4 -2
  9. package/js/src/abstract/bidarz.d.ts +9 -0
  10. package/js/src/abstract/bidarz.js +11 -0
  11. package/js/src/bidarz.d.ts +22 -0
  12. package/js/src/bidarz.js +336 -0
  13. package/js/src/bit24.js +4 -3
  14. package/js/src/src/abantether.d.ts +21 -0
  15. package/js/src/src/abantether.js +353 -0
  16. package/js/src/src/abstract/abantether.d.ts +8 -0
  17. package/js/src/src/abstract/abantether.js +11 -0
  18. package/js/src/src/abstract/afratether.d.ts +9 -0
  19. package/js/src/src/abstract/afratether.js +11 -0
  20. package/js/src/src/abstract/alpaca.d.ts +77 -0
  21. package/js/src/src/abstract/alpaca.js +11 -0
  22. package/js/src/src/abstract/apex.d.ts +34 -0
  23. package/js/src/src/abstract/apex.js +11 -0
  24. package/js/src/src/abstract/arzinja.d.ts +8 -0
  25. package/js/src/src/abstract/arzinja.js +11 -0
  26. package/js/src/src/abstract/arzplus.d.ts +11 -0
  27. package/js/src/src/abstract/arzplus.js +11 -0
  28. package/js/src/src/abstract/ascendex.d.ts +80 -0
  29. package/js/src/src/abstract/ascendex.js +11 -0
  30. package/js/src/src/abstract/asretether.d.ts +8 -0
  31. package/js/src/src/abstract/asretether.js +11 -0
  32. package/js/src/src/abstract/bidarz.d.ts +9 -0
  33. package/js/src/src/abstract/bidarz.js +11 -0
  34. package/js/src/src/abstract/bigone.d.ts +48 -0
  35. package/js/src/src/abstract/bigone.js +11 -0
  36. package/js/src/src/abstract/binance.d.ts +773 -0
  37. package/js/src/src/abstract/binance.js +11 -0
  38. package/js/src/src/abstract/bingx.d.ts +165 -0
  39. package/js/src/src/abstract/bingx.js +11 -0
  40. package/js/src/src/abstract/bit24.d.ts +9 -0
  41. package/js/src/src/abstract/bit24.js +11 -0
  42. package/js/src/src/abstract/bit2c.d.ts +30 -0
  43. package/js/src/src/abstract/bit2c.js +11 -0
  44. package/js/src/src/abstract/bitbank.d.ts +35 -0
  45. package/js/src/src/abstract/bitbank.js +11 -0
  46. package/js/src/src/abstract/bitbarg.d.ts +8 -0
  47. package/js/src/src/abstract/bitbarg.js +11 -0
  48. package/js/src/src/abstract/bitbns.d.ts +43 -0
  49. package/js/src/src/abstract/bitbns.js +11 -0
  50. package/js/src/src/abstract/bitfinex.d.ts +143 -0
  51. package/js/src/src/abstract/bitfinex.js +11 -0
  52. package/js/src/src/abstract/bitflyer.d.ts +42 -0
  53. package/js/src/src/abstract/bitflyer.js +11 -0
  54. package/js/src/src/abstract/bitget.d.ts +578 -0
  55. package/js/src/src/abstract/bitget.js +11 -0
  56. package/js/src/src/abstract/bithumb.d.ts +35 -0
  57. package/js/src/src/abstract/bithumb.js +11 -0
  58. package/js/src/src/abstract/bitimen.d.ts +10 -0
  59. package/js/src/src/abstract/bitimen.js +11 -0
  60. package/js/src/src/abstract/bitir.d.ts +10 -0
  61. package/js/src/src/abstract/bitir.js +11 -0
  62. package/js/src/src/abstract/bitmart.d.ts +120 -0
  63. package/js/src/src/abstract/bitmart.js +11 -0
  64. package/js/src/src/abstract/bitmex.d.ts +100 -0
  65. package/js/src/src/abstract/bitmex.js +11 -0
  66. package/js/src/src/abstract/bitopro.d.ts +33 -0
  67. package/js/src/src/abstract/bitopro.js +11 -0
  68. package/js/src/src/abstract/bitpin.d.ts +11 -0
  69. package/js/src/src/abstract/bitpin.js +11 -0
  70. package/js/src/src/abstract/bitrue.d.ts +75 -0
  71. package/js/src/src/abstract/bitrue.js +11 -0
  72. package/js/src/src/abstract/bitso.d.ts +46 -0
  73. package/js/src/src/abstract/bitso.js +11 -0
  74. package/js/src/src/abstract/bitstamp.d.ts +262 -0
  75. package/js/src/src/abstract/bitstamp.js +11 -0
  76. package/js/src/src/abstract/bitteam.d.ts +32 -0
  77. package/js/src/src/abstract/bitteam.js +11 -0
  78. package/js/src/src/abstract/bittrade.d.ts +117 -0
  79. package/js/src/src/abstract/bittrade.js +11 -0
  80. package/js/src/src/abstract/bitunix.d.ts +9 -0
  81. package/js/src/src/abstract/bitunix.js +11 -0
  82. package/js/src/src/abstract/bitvavo.d.ts +30 -0
  83. package/js/src/src/abstract/bitvavo.js +11 -0
  84. package/js/src/src/abstract/blockchaincom.d.ts +31 -0
  85. package/js/src/src/abstract/blockchaincom.js +11 -0
  86. package/js/src/src/abstract/blofin.d.ts +70 -0
  87. package/js/src/src/abstract/blofin.js +11 -0
  88. package/js/src/src/abstract/btcalpha.d.ts +21 -0
  89. package/js/src/src/abstract/btcalpha.js +11 -0
  90. package/js/src/src/abstract/btcbox.d.ts +18 -0
  91. package/js/src/src/abstract/btcbox.js +11 -0
  92. package/js/src/src/abstract/btcmarkets.d.ts +42 -0
  93. package/js/src/src/abstract/btcmarkets.js +11 -0
  94. package/js/src/src/abstract/btcturk.d.ts +23 -0
  95. package/js/src/src/abstract/btcturk.js +11 -0
  96. package/js/src/src/abstract/bybit.d.ts +316 -0
  97. package/js/src/src/abstract/bybit.js +11 -0
  98. package/js/src/src/abstract/bydfi.d.ts +11 -0
  99. package/js/src/src/abstract/bydfi.js +11 -0
  100. package/js/src/src/abstract/cafearz.d.ts +8 -0
  101. package/js/src/src/abstract/cafearz.js +11 -0
  102. package/js/src/src/abstract/cex.d.ts +35 -0
  103. package/js/src/src/abstract/cex.js +11 -0
  104. package/js/src/src/abstract/coinbase.d.ts +97 -0
  105. package/js/src/src/abstract/coinbase.js +11 -0
  106. package/js/src/src/abstract/coinbaseexchange.d.ts +71 -0
  107. package/js/src/src/abstract/coinbaseexchange.js +11 -0
  108. package/js/src/src/abstract/coinbaseinternational.d.ts +42 -0
  109. package/js/src/src/abstract/coinbaseinternational.js +11 -0
  110. package/js/src/src/abstract/coincatch.d.ts +97 -0
  111. package/js/src/src/abstract/coincatch.js +11 -0
  112. package/js/src/src/abstract/coincheck.d.ts +36 -0
  113. package/js/src/src/abstract/coincheck.js +11 -0
  114. package/js/src/src/abstract/coinex.d.ts +240 -0
  115. package/js/src/src/abstract/coinex.js +11 -0
  116. package/js/src/src/abstract/coinmate.d.ts +65 -0
  117. package/js/src/src/abstract/coinmate.js +11 -0
  118. package/js/src/src/abstract/coinmetro.d.ts +37 -0
  119. package/js/src/src/abstract/coinmetro.js +11 -0
  120. package/js/src/src/abstract/coinone.d.ts +70 -0
  121. package/js/src/src/abstract/coinone.js +11 -0
  122. package/js/src/src/abstract/coinsph.d.ts +57 -0
  123. package/js/src/src/abstract/coinsph.js +11 -0
  124. package/js/src/src/abstract/coinspot.d.ts +31 -0
  125. package/js/src/src/abstract/coinspot.js +11 -0
  126. package/js/src/src/abstract/cryptocom.d.ts +126 -0
  127. package/js/src/src/abstract/cryptocom.js +11 -0
  128. package/js/src/src/abstract/cryptomus.d.ts +23 -0
  129. package/js/src/src/abstract/cryptomus.js +11 -0
  130. package/js/src/src/abstract/defx.d.ts +72 -0
  131. package/js/src/src/abstract/defx.js +11 -0
  132. package/js/src/src/abstract/delta.d.ts +53 -0
  133. package/js/src/src/abstract/delta.js +11 -0
  134. package/js/src/src/abstract/deribit.d.ts +129 -0
  135. package/js/src/src/abstract/deribit.js +11 -0
  136. package/js/src/src/abstract/derive.d.ts +120 -0
  137. package/js/src/src/abstract/derive.js +11 -0
  138. package/js/src/src/abstract/digifinex.d.ts +95 -0
  139. package/js/src/src/abstract/digifinex.js +11 -0
  140. package/js/src/src/abstract/ellipx.d.ts +28 -0
  141. package/js/src/src/abstract/ellipx.js +11 -0
  142. package/js/src/src/abstract/eterex.d.ts +8 -0
  143. package/js/src/src/abstract/eterex.js +11 -0
  144. package/js/src/src/abstract/excoino.d.ts +10 -0
  145. package/js/src/src/abstract/excoino.js +11 -0
  146. package/js/src/src/abstract/exir.d.ts +11 -0
  147. package/js/src/src/abstract/exir.js +11 -0
  148. package/js/src/src/abstract/exmo.d.ts +58 -0
  149. package/js/src/src/abstract/exmo.js +11 -0
  150. package/js/src/src/abstract/exnovin.d.ts +9 -0
  151. package/js/src/src/abstract/exnovin.js +11 -0
  152. package/js/src/src/abstract/farhadexchange.d.ts +8 -0
  153. package/js/src/src/abstract/farhadexchange.js +11 -0
  154. package/js/src/src/abstract/foxbit.d.ts +29 -0
  155. package/js/src/src/abstract/foxbit.js +11 -0
  156. package/js/src/src/abstract/gate.d.ts +287 -0
  157. package/js/src/src/abstract/gate.js +11 -0
  158. package/js/src/src/abstract/gemini.d.ts +62 -0
  159. package/js/src/src/abstract/gemini.js +11 -0
  160. package/js/src/src/abstract/hamtapay.d.ts +9 -0
  161. package/js/src/src/abstract/hamtapay.js +11 -0
  162. package/js/src/src/abstract/hashkey.d.ts +70 -0
  163. package/js/src/src/abstract/hashkey.js +11 -0
  164. package/js/src/src/abstract/hibachi.d.ts +29 -0
  165. package/js/src/src/abstract/hibachi.js +11 -0
  166. package/js/src/src/abstract/hitbtc.d.ts +118 -0
  167. package/js/src/src/abstract/hitbtc.js +11 -0
  168. package/js/src/src/abstract/hitobit.d.ts +11 -0
  169. package/js/src/src/abstract/hitobit.js +11 -0
  170. package/js/src/src/abstract/hollaex.d.ts +36 -0
  171. package/js/src/src/abstract/hollaex.js +11 -0
  172. package/js/src/src/abstract/htx.d.ts +551 -0
  173. package/js/src/src/abstract/htx.js +11 -0
  174. package/js/src/src/abstract/hyperliquid.d.ts +9 -0
  175. package/js/src/src/abstract/hyperliquid.js +11 -0
  176. package/js/src/src/abstract/independentreserve.d.ts +46 -0
  177. package/js/src/src/abstract/independentreserve.js +11 -0
  178. package/js/src/src/abstract/indodax.d.ts +29 -0
  179. package/js/src/src/abstract/indodax.js +11 -0
  180. package/js/src/src/abstract/iranexchange.d.ts +9 -0
  181. package/js/src/src/abstract/iranexchange.js +11 -0
  182. package/js/src/src/abstract/jibitex.d.ts +10 -0
  183. package/js/src/src/abstract/jibitex.js +11 -0
  184. package/js/src/src/abstract/kcex.d.ts +10 -0
  185. package/js/src/src/abstract/kcex.js +11 -0
  186. package/js/src/src/abstract/kifpoolme.d.ts +9 -0
  187. package/js/src/src/abstract/kifpoolme.js +11 -0
  188. package/js/src/src/abstract/kraken.d.ts +61 -0
  189. package/js/src/src/abstract/kraken.js +11 -0
  190. package/js/src/src/abstract/krakenfutures.d.ts +45 -0
  191. package/js/src/src/abstract/krakenfutures.js +11 -0
  192. package/js/src/src/abstract/kucoin.d.ts +227 -0
  193. package/js/src/src/abstract/kucoin.js +11 -0
  194. package/js/src/src/abstract/kucoinfutures.d.ts +254 -0
  195. package/js/src/src/abstract/kucoinfutures.js +11 -0
  196. package/js/src/src/abstract/latoken.d.ts +59 -0
  197. package/js/src/src/abstract/latoken.js +11 -0
  198. package/js/src/src/abstract/lbank.d.ts +65 -0
  199. package/js/src/src/abstract/lbank.js +11 -0
  200. package/js/src/src/abstract/luno.d.ts +41 -0
  201. package/js/src/src/abstract/luno.js +11 -0
  202. package/js/src/src/abstract/mazdax.d.ts +11 -0
  203. package/js/src/src/abstract/mazdax.js +11 -0
  204. package/js/src/src/abstract/mercado.d.ts +28 -0
  205. package/js/src/src/abstract/mercado.js +11 -0
  206. package/js/src/src/abstract/mexc.d.ts +183 -0
  207. package/js/src/src/abstract/mexc.js +11 -0
  208. package/js/src/src/abstract/modetrade.d.ts +122 -0
  209. package/js/src/src/abstract/modetrade.js +11 -0
  210. package/js/src/src/abstract/ndax.d.ts +100 -0
  211. package/js/src/src/abstract/ndax.js +11 -0
  212. package/js/src/src/abstract/nobitex.d.ts +10 -0
  213. package/js/src/src/abstract/nobitex.js +11 -0
  214. package/js/src/src/abstract/novadax.d.ts +32 -0
  215. package/js/src/src/abstract/novadax.js +11 -0
  216. package/js/src/src/abstract/oceanex.d.ts +30 -0
  217. package/js/src/src/abstract/oceanex.js +11 -0
  218. package/js/src/src/abstract/okcoin.d.ts +77 -0
  219. package/js/src/src/abstract/okcoin.js +11 -0
  220. package/js/src/src/abstract/okexchange.d.ts +11 -0
  221. package/js/src/src/abstract/okexchange.js +11 -0
  222. package/js/src/src/abstract/okx.d.ts +352 -0
  223. package/js/src/src/abstract/okx.js +11 -0
  224. package/js/src/src/abstract/ompfinex.d.ts +10 -0
  225. package/js/src/src/abstract/ompfinex.js +11 -0
  226. package/js/src/src/abstract/onetrading.d.ts +26 -0
  227. package/js/src/src/abstract/onetrading.js +11 -0
  228. package/js/src/src/abstract/oxfun.d.ts +37 -0
  229. package/js/src/src/abstract/oxfun.js +11 -0
  230. package/js/src/src/abstract/p2b.d.ts +25 -0
  231. package/js/src/src/abstract/p2b.js +11 -0
  232. package/js/src/src/abstract/paradex.d.ts +66 -0
  233. package/js/src/src/abstract/paradex.js +11 -0
  234. package/js/src/src/abstract/paymium.d.ts +31 -0
  235. package/js/src/src/abstract/paymium.js +11 -0
  236. package/js/src/src/abstract/phemex.d.ts +120 -0
  237. package/js/src/src/abstract/phemex.js +11 -0
  238. package/js/src/src/abstract/pingi.d.ts +9 -0
  239. package/js/src/src/abstract/pingi.js +11 -0
  240. package/js/src/src/abstract/poloniex.d.ts +108 -0
  241. package/js/src/src/abstract/poloniex.js +11 -0
  242. package/js/src/src/abstract/pooleno.d.ts +8 -0
  243. package/js/src/src/abstract/pooleno.js +11 -0
  244. package/js/src/src/abstract/probit.d.ts +26 -0
  245. package/js/src/src/abstract/probit.js +11 -0
  246. package/js/src/src/abstract/raastin.d.ts +11 -0
  247. package/js/src/src/abstract/raastin.js +11 -0
  248. package/js/src/src/abstract/ramzinex.d.ts +10 -0
  249. package/js/src/src/abstract/ramzinex.js +11 -0
  250. package/js/src/src/abstract/sarmayex.d.ts +8 -0
  251. package/js/src/src/abstract/sarmayex.js +11 -0
  252. package/js/src/src/abstract/sarrafex.d.ts +10 -0
  253. package/js/src/src/abstract/sarrafex.js +11 -0
  254. package/js/src/src/abstract/tabdeal.d.ts +10 -0
  255. package/js/src/src/abstract/tabdeal.js +11 -0
  256. package/js/src/src/abstract/tehran_exchange.d.ts +9 -0
  257. package/js/src/src/abstract/tehran_exchange.js +11 -0
  258. package/js/src/src/abstract/tetherland.d.ts +8 -0
  259. package/js/src/src/abstract/tetherland.js +11 -0
  260. package/js/src/src/abstract/timex.d.ts +65 -0
  261. package/js/src/src/abstract/timex.js +11 -0
  262. package/js/src/src/abstract/tokocrypto.d.ts +40 -0
  263. package/js/src/src/abstract/tokocrypto.js +11 -0
  264. package/js/src/src/abstract/toobit.d.ts +10 -0
  265. package/js/src/src/abstract/toobit.js +11 -0
  266. package/js/src/src/abstract/tradeogre.d.ts +21 -0
  267. package/js/src/src/abstract/tradeogre.js +11 -0
  268. package/js/src/src/abstract/twox.d.ts +8 -0
  269. package/js/src/src/abstract/twox.js +11 -0
  270. package/js/src/src/abstract/ubitex.d.ts +10 -0
  271. package/js/src/src/abstract/ubitex.js +11 -0
  272. package/js/src/src/abstract/upbit.d.ts +58 -0
  273. package/js/src/src/abstract/upbit.js +11 -0
  274. package/js/src/src/abstract/vertex.d.ts +22 -0
  275. package/js/src/src/abstract/vertex.js +11 -0
  276. package/js/src/src/abstract/wallex.d.ts +11 -0
  277. package/js/src/src/abstract/wallex.js +11 -0
  278. package/js/src/src/abstract/wavesexchange.d.ts +157 -0
  279. package/js/src/src/abstract/wavesexchange.js +11 -0
  280. package/js/src/src/abstract/whitebit.d.ts +117 -0
  281. package/js/src/src/abstract/whitebit.js +11 -0
  282. package/js/src/src/abstract/woo.d.ts +144 -0
  283. package/js/src/src/abstract/woo.js +11 -0
  284. package/js/src/src/abstract/woofipro.d.ts +122 -0
  285. package/js/src/src/abstract/woofipro.js +11 -0
  286. package/js/src/src/abstract/xt.d.ts +160 -0
  287. package/js/src/src/abstract/xt.js +11 -0
  288. package/js/src/src/abstract/yobit.d.ts +19 -0
  289. package/js/src/src/abstract/yobit.js +11 -0
  290. package/js/src/src/abstract/zaif.d.ts +41 -0
  291. package/js/src/src/abstract/zaif.js +11 -0
  292. package/js/src/src/abstract/zonda.d.ts +56 -0
  293. package/js/src/src/abstract/zonda.js +11 -0
  294. package/js/src/src/afratether.d.ts +21 -0
  295. package/js/src/src/afratether.js +356 -0
  296. package/js/src/src/alpaca.d.ts +332 -0
  297. package/js/src/src/alpaca.js +1908 -0
  298. package/js/src/src/apex.d.ts +333 -0
  299. package/js/src/src/apex.js +1942 -0
  300. package/js/src/src/arzinja.d.ts +21 -0
  301. package/js/src/src/arzinja.js +298 -0
  302. package/js/src/src/arzplus.d.ts +26 -0
  303. package/js/src/src/arzplus.js +581 -0
  304. package/js/src/src/ascendex.d.ts +424 -0
  305. package/js/src/src/ascendex.js +3699 -0
  306. package/js/src/src/asretether.d.ts +21 -0
  307. package/js/src/src/asretether.js +324 -0
  308. package/js/src/src/base/Exchange.d.ts +926 -0
  309. package/js/src/src/base/Exchange.js +7399 -0
  310. package/js/src/src/base/Precise.d.ts +42 -0
  311. package/js/src/src/base/Precise.js +275 -0
  312. package/js/src/src/base/errors.d.ts +168 -0
  313. package/js/src/src/base/errors.js +255 -0
  314. package/js/src/src/base/functions/crypto.d.ts +16 -0
  315. package/js/src/src/base/functions/crypto.js +131 -0
  316. package/js/src/src/base/functions/encode.d.ts +4 -0
  317. package/js/src/src/base/functions/encode.js +32 -0
  318. package/js/src/src/base/functions/generic.d.ts +29 -0
  319. package/js/src/src/base/functions/generic.js +203 -0
  320. package/js/src/src/base/functions/misc.d.ts +9 -0
  321. package/js/src/src/base/functions/misc.js +101 -0
  322. package/js/src/src/base/functions/number.d.ts +27 -0
  323. package/js/src/src/base/functions/number.js +313 -0
  324. package/js/src/src/base/functions/platform.d.ts +7 -0
  325. package/js/src/src/base/functions/platform.js +27 -0
  326. package/js/src/src/base/functions/rsa.d.ts +5 -0
  327. package/js/src/src/base/functions/rsa.js +49 -0
  328. package/js/src/src/base/functions/string.d.ts +7 -0
  329. package/js/src/src/base/functions/string.js +44 -0
  330. package/js/src/src/base/functions/throttle.d.ts +6 -0
  331. package/js/src/src/base/functions/throttle.js +67 -0
  332. package/js/src/src/base/functions/time.d.ts +21 -0
  333. package/js/src/src/base/functions/time.js +171 -0
  334. package/js/src/src/base/functions/totp.d.ts +3 -0
  335. package/js/src/src/base/functions/totp.js +25 -0
  336. package/js/src/src/base/functions/type.d.ts +37 -0
  337. package/js/src/src/base/functions/type.js +179 -0
  338. package/js/src/src/base/functions.d.ts +10 -0
  339. package/js/src/src/base/functions.js +18 -0
  340. package/js/src/src/base/types.d.ts +586 -0
  341. package/js/src/src/base/types.js +7 -0
  342. package/js/src/src/base/ws/Cache.d.ts +27 -0
  343. package/js/src/src/base/ws/Cache.js +260 -0
  344. package/js/src/src/base/ws/Client.d.ts +53 -0
  345. package/js/src/src/base/ws/Client.js +307 -0
  346. package/js/src/src/base/ws/Future.d.ts +8 -0
  347. package/js/src/src/base/ws/Future.js +35 -0
  348. package/js/src/src/base/ws/OrderBook.d.ts +25 -0
  349. package/js/src/src/base/ws/OrderBook.js +130 -0
  350. package/js/src/src/base/ws/OrderBookSide.d.ts +40 -0
  351. package/js/src/src/base/ws/OrderBookSide.js +286 -0
  352. package/js/src/src/base/ws/WsClient.d.ts +11 -0
  353. package/js/src/src/base/ws/WsClient.js +69 -0
  354. package/js/src/src/bequant.d.ts +4 -0
  355. package/js/src/src/bequant.js +35 -0
  356. package/js/src/src/bidarz.d.ts +16 -0
  357. package/js/src/src/bidarz.js +327 -0
  358. package/js/src/src/bigone.d.ts +296 -0
  359. package/js/src/src/bigone.js +2340 -0
  360. package/js/src/src/binance.d.ts +1667 -0
  361. package/js/src/src/binance.js +14400 -0
  362. package/js/src/src/binancecoinm.d.ts +6 -0
  363. package/js/src/src/binancecoinm.js +51 -0
  364. package/js/src/src/binanceus.d.ts +4 -0
  365. package/js/src/src/binanceus.js +225 -0
  366. package/js/src/src/binanceusdm.d.ts +6 -0
  367. package/js/src/src/binanceusdm.js +63 -0
  368. package/js/src/src/bingx.d.ts +778 -0
  369. package/js/src/src/bingx.js +6705 -0
  370. package/js/src/src/bit24.d.ts +24 -0
  371. package/js/src/src/bit24.js +520 -0
  372. package/js/src/src/bit2c.d.ts +146 -0
  373. package/js/src/src/bit2c.js +1029 -0
  374. package/js/src/src/bitbank.d.ts +181 -0
  375. package/js/src/src/bitbank.js +1146 -0
  376. package/js/src/src/bitbarg.d.ts +21 -0
  377. package/js/src/src/bitbarg.js +312 -0
  378. package/js/src/src/bitbns.d.ts +184 -0
  379. package/js/src/src/bitbns.js +1288 -0
  380. package/js/src/src/bitfinex.d.ts +516 -0
  381. package/js/src/src/bitfinex.js +3951 -0
  382. package/js/src/src/bitflyer.d.ts +229 -0
  383. package/js/src/src/bitflyer.js +1209 -0
  384. package/js/src/src/bitget.d.ts +1109 -0
  385. package/js/src/src/bitget.js +11033 -0
  386. package/js/src/src/bithumb.d.ts +165 -0
  387. package/js/src/src/bithumb.js +1257 -0
  388. package/js/src/src/bitimen.d.ts +23 -0
  389. package/js/src/src/bitimen.js +424 -0
  390. package/js/src/src/bitir.d.ts +23 -0
  391. package/js/src/src/bitir.js +521 -0
  392. package/js/src/src/bitmart.d.ts +736 -0
  393. package/js/src/src/bitmart.js +5639 -0
  394. package/js/src/src/bitmex.d.ts +395 -0
  395. package/js/src/src/bitmex.js +3088 -0
  396. package/js/src/src/bitopro.d.ts +295 -0
  397. package/js/src/src/bitopro.js +1892 -0
  398. package/js/src/src/bitpin.d.ts +23 -0
  399. package/js/src/src/bitpin.js +487 -0
  400. package/js/src/src/bitrue.d.ts +384 -0
  401. package/js/src/src/bitrue.js +3382 -0
  402. package/js/src/src/bitso.d.ts +270 -0
  403. package/js/src/src/bitso.js +1881 -0
  404. package/js/src/src/bitstamp.d.ts +355 -0
  405. package/js/src/src/bitstamp.js +2445 -0
  406. package/js/src/src/bitteam.d.ts +229 -0
  407. package/js/src/src/bitteam.js +2420 -0
  408. package/js/src/src/bittrade.d.ts +298 -0
  409. package/js/src/src/bittrade.js +2050 -0
  410. package/js/src/src/bitunix.d.ts +21 -0
  411. package/js/src/src/bitunix.js +326 -0
  412. package/js/src/src/bitvavo.d.ts +311 -0
  413. package/js/src/src/bitvavo.js +2204 -0
  414. package/js/src/src/blockchaincom.d.ts +256 -0
  415. package/js/src/src/blockchaincom.js +1259 -0
  416. package/js/src/src/blofin.d.ts +439 -0
  417. package/js/src/src/blofin.js +2576 -0
  418. package/js/src/src/btcalpha.d.ts +209 -0
  419. package/js/src/src/btcalpha.js +1056 -0
  420. package/js/src/src/btcbox.d.ts +144 -0
  421. package/js/src/src/btcbox.js +834 -0
  422. package/js/src/src/btcmarkets.d.ts +253 -0
  423. package/js/src/src/btcmarkets.js +1418 -0
  424. package/js/src/src/btcturk.d.ts +161 -0
  425. package/js/src/src/btcturk.js +1058 -0
  426. package/js/src/src/bybit.d.ts +1097 -0
  427. package/js/src/src/bybit.js +9382 -0
  428. package/js/src/src/bydfi.d.ts +23 -0
  429. package/js/src/src/bydfi.js +434 -0
  430. package/js/src/src/cafearz.d.ts +21 -0
  431. package/js/src/src/cafearz.js +346 -0
  432. package/js/src/src/cex.d.ts +286 -0
  433. package/js/src/src/cex.js +1799 -0
  434. package/js/src/src/coinbase.d.ts +623 -0
  435. package/js/src/src/coinbase.js +5220 -0
  436. package/js/src/src/coinbaseadvanced.d.ts +4 -0
  437. package/js/src/src/coinbaseadvanced.js +18 -0
  438. package/js/src/src/coinbaseexchange.d.ts +334 -0
  439. package/js/src/src/coinbaseexchange.js +2127 -0
  440. package/js/src/src/coinbaseinternational.d.ts +443 -0
  441. package/js/src/src/coinbaseinternational.js +2336 -0
  442. package/js/src/src/coincatch.d.ts +786 -0
  443. package/js/src/src/coincatch.js +5492 -0
  444. package/js/src/src/coincheck.d.ts +147 -0
  445. package/js/src/src/coincheck.js +962 -0
  446. package/js/src/src/coinex.d.ts +719 -0
  447. package/js/src/src/coinex.js +6166 -0
  448. package/js/src/src/coinmate.d.ts +202 -0
  449. package/js/src/src/coinmate.js +1215 -0
  450. package/js/src/src/coinmetro.d.ts +244 -0
  451. package/js/src/src/coinmetro.js +2024 -0
  452. package/js/src/src/coinone.d.ts +158 -0
  453. package/js/src/src/coinone.js +1278 -0
  454. package/js/src/src/coinsph.d.ts +310 -0
  455. package/js/src/src/coinsph.js +2203 -0
  456. package/js/src/src/coinspot.d.ts +108 -0
  457. package/js/src/src/coinspot.js +653 -0
  458. package/js/src/src/cryptocom.d.ts +463 -0
  459. package/js/src/src/cryptocom.js +3549 -0
  460. package/js/src/src/cryptomus.d.ts +158 -0
  461. package/js/src/src/cryptomus.js +1169 -0
  462. package/js/src/src/defx.d.ts +348 -0
  463. package/js/src/src/defx.js +2139 -0
  464. package/js/src/src/delta.d.ts +407 -0
  465. package/js/src/src/delta.js +3654 -0
  466. package/js/src/src/deribit.d.ts +516 -0
  467. package/js/src/src/deribit.js +3790 -0
  468. package/js/src/src/derive.d.ts +324 -0
  469. package/js/src/src/derive.js +2655 -0
  470. package/js/src/src/digifinex.d.ts +544 -0
  471. package/js/src/src/digifinex.js +4453 -0
  472. package/js/src/src/ellipx.d.ts +237 -0
  473. package/js/src/src/ellipx.js +2071 -0
  474. package/js/src/src/eterex.d.ts +21 -0
  475. package/js/src/src/eterex.js +299 -0
  476. package/js/src/src/excoino.d.ts +23 -0
  477. package/js/src/src/excoino.js +426 -0
  478. package/js/src/src/exir.d.ts +23 -0
  479. package/js/src/src/exir.js +403 -0
  480. package/js/src/src/exmo.d.ts +426 -0
  481. package/js/src/src/exmo.js +2825 -0
  482. package/js/src/src/exnovin.d.ts +22 -0
  483. package/js/src/src/exnovin.js +378 -0
  484. package/js/src/src/farhadexchange.d.ts +21 -0
  485. package/js/src/src/farhadexchange.js +280 -0
  486. package/js/src/src/fmfwio.d.ts +4 -0
  487. package/js/src/src/fmfwio.js +35 -0
  488. package/js/src/src/foxbit.d.ts +352 -0
  489. package/js/src/src/foxbit.js +2016 -0
  490. package/js/src/src/gate.d.ts +1071 -0
  491. package/js/src/src/gate.js +8282 -0
  492. package/js/src/src/gateio.d.ts +4 -0
  493. package/js/src/src/gateio.js +17 -0
  494. package/js/src/src/gemini.d.ts +257 -0
  495. package/js/src/src/gemini.js +2006 -0
  496. package/js/src/src/hamtapay.d.ts +21 -0
  497. package/js/src/src/hamtapay.js +303 -0
  498. package/js/src/src/hashkey.d.ts +628 -0
  499. package/js/src/src/hashkey.js +4363 -0
  500. package/js/src/src/hibachi.d.ts +346 -0
  501. package/js/src/src/hibachi.js +2137 -0
  502. package/js/src/src/hitbtc.d.ts +558 -0
  503. package/js/src/src/hitbtc.js +3847 -0
  504. package/js/src/src/hitobit.d.ts +23 -0
  505. package/js/src/src/hitobit.js +412 -0
  506. package/js/src/src/hollaex.d.ts +305 -0
  507. package/js/src/src/hollaex.js +2046 -0
  508. package/js/src/src/htx.d.ts +961 -0
  509. package/js/src/src/htx.js +9668 -0
  510. package/js/src/src/huobi.d.ts +4 -0
  511. package/js/src/src/huobi.js +17 -0
  512. package/js/src/src/hyperliquid.d.ts +651 -0
  513. package/js/src/src/hyperliquid.js +3937 -0
  514. package/js/src/src/independentreserve.d.ts +169 -0
  515. package/js/src/src/independentreserve.js +1115 -0
  516. package/js/src/src/indodax.d.ts +217 -0
  517. package/js/src/src/indodax.js +1454 -0
  518. package/js/src/src/iranexchange.d.ts +21 -0
  519. package/js/src/src/iranexchange.js +399 -0
  520. package/js/src/src/jibitex.d.ts +23 -0
  521. package/js/src/src/jibitex.js +416 -0
  522. package/js/src/src/kcex.d.ts +21 -0
  523. package/js/src/src/kcex.js +335 -0
  524. package/js/src/src/kifpoolme.d.ts +23 -0
  525. package/js/src/src/kifpoolme.js +410 -0
  526. package/js/src/src/kraken.d.ts +484 -0
  527. package/js/src/src/kraken.js +3518 -0
  528. package/js/src/src/krakenfutures.d.ts +362 -0
  529. package/js/src/src/krakenfutures.js +2885 -0
  530. package/js/src/src/kucoin.d.ts +759 -0
  531. package/js/src/src/kucoin.js +5153 -0
  532. package/js/src/src/kucoinfutures.d.ts +521 -0
  533. package/js/src/src/kucoinfutures.js +3381 -0
  534. package/js/src/src/latoken.d.ts +274 -0
  535. package/js/src/src/latoken.js +1824 -0
  536. package/js/src/src/lbank.d.ts +350 -0
  537. package/js/src/src/lbank.js +3146 -0
  538. package/js/src/src/luno.d.ts +252 -0
  539. package/js/src/src/luno.js +1479 -0
  540. package/js/src/src/mazdax.d.ts +23 -0
  541. package/js/src/src/mazdax.js +534 -0
  542. package/js/src/src/mercado.d.ts +160 -0
  543. package/js/src/src/mercado.js +1011 -0
  544. package/js/src/src/mexc.d.ts +768 -0
  545. package/js/src/src/mexc.js +6102 -0
  546. package/js/src/src/modetrade.d.ts +496 -0
  547. package/js/src/src/modetrade.js +2936 -0
  548. package/js/src/src/myokx.d.ts +4 -0
  549. package/js/src/src/myokx.js +54 -0
  550. package/js/src/src/ndax.d.ts +285 -0
  551. package/js/src/src/ndax.js +2598 -0
  552. package/js/src/src/nobitex.d.ts +23 -0
  553. package/js/src/src/nobitex.js +454 -0
  554. package/js/src/src/novadax.d.ts +279 -0
  555. package/js/src/src/novadax.js +1676 -0
  556. package/js/src/src/oceanex.d.ts +231 -0
  557. package/js/src/src/oceanex.js +1123 -0
  558. package/js/src/src/okcoin.d.ts +346 -0
  559. package/js/src/src/okcoin.js +3211 -0
  560. package/js/src/src/okexchange.d.ts +23 -0
  561. package/js/src/src/okexchange.js +373 -0
  562. package/js/src/src/okx.d.ts +1125 -0
  563. package/js/src/src/okx.js +9009 -0
  564. package/js/src/src/okxus.d.ts +4 -0
  565. package/js/src/src/okxus.js +54 -0
  566. package/js/src/src/ompfinex.d.ts +23 -0
  567. package/js/src/src/ompfinex.js +510 -0
  568. package/js/src/src/onetrading.d.ts +228 -0
  569. package/js/src/src/onetrading.js +1769 -0
  570. package/js/src/src/oxfun.d.ts +442 -0
  571. package/js/src/src/oxfun.js +2920 -0
  572. package/js/src/src/p2b.d.ts +189 -0
  573. package/js/src/src/p2b.js +1344 -0
  574. package/js/src/src/paradex.d.ts +389 -0
  575. package/js/src/src/paradex.js +2607 -0
  576. package/js/src/src/paymium.d.ts +133 -0
  577. package/js/src/src/paymium.js +644 -0
  578. package/js/src/src/phemex.d.ts +497 -0
  579. package/js/src/src/phemex.js +5333 -0
  580. package/js/src/src/pingi.d.ts +22 -0
  581. package/js/src/src/pingi.js +446 -0
  582. package/js/src/src/poloniex.d.ts +441 -0
  583. package/js/src/src/poloniex.js +3681 -0
  584. package/js/src/src/pooleno.d.ts +21 -0
  585. package/js/src/src/pooleno.js +347 -0
  586. package/js/src/src/pro/alpaca.d.ts +95 -0
  587. package/js/src/src/pro/alpaca.js +724 -0
  588. package/js/src/src/pro/apex.d.ts +160 -0
  589. package/js/src/src/pro/apex.js +1044 -0
  590. package/js/src/src/pro/ascendex.d.ts +99 -0
  591. package/js/src/src/pro/ascendex.js +1012 -0
  592. package/js/src/src/pro/bequant.d.ts +4 -0
  593. package/js/src/src/pro/bequant.js +42 -0
  594. package/js/src/src/pro/binance.d.ts +796 -0
  595. package/js/src/src/pro/binance.js +4373 -0
  596. package/js/src/src/pro/binancecoinm.d.ts +4 -0
  597. package/js/src/src/pro/binancecoinm.js +32 -0
  598. package/js/src/src/pro/binanceus.d.ts +4 -0
  599. package/js/src/src/pro/binanceus.js +52 -0
  600. package/js/src/src/pro/binanceusdm.d.ts +4 -0
  601. package/js/src/src/pro/binanceusdm.js +37 -0
  602. package/js/src/src/pro/bingx.d.ts +151 -0
  603. package/js/src/src/pro/bingx.js +1568 -0
  604. package/js/src/src/pro/bitfinex.d.ts +99 -0
  605. package/js/src/src/pro/bitfinex.js +1165 -0
  606. package/js/src/src/pro/bitget.d.ts +257 -0
  607. package/js/src/src/pro/bitget.js +2327 -0
  608. package/js/src/src/pro/bithumb.d.ts +59 -0
  609. package/js/src/src/pro/bithumb.js +395 -0
  610. package/js/src/src/pro/bitmart.d.ts +168 -0
  611. package/js/src/src/pro/bitmart.js +1686 -0
  612. package/js/src/src/pro/bitmex.d.ts +170 -0
  613. package/js/src/src/pro/bitmex.js +1760 -0
  614. package/js/src/src/pro/bitopro.d.ts +69 -0
  615. package/js/src/src/pro/bitopro.js +477 -0
  616. package/js/src/src/pro/bitrue.d.ts +40 -0
  617. package/js/src/src/pro/bitrue.js +461 -0
  618. package/js/src/src/pro/bitstamp.d.ts +53 -0
  619. package/js/src/src/pro/bitstamp.js +587 -0
  620. package/js/src/src/pro/bittrade.d.ts +66 -0
  621. package/js/src/src/pro/bittrade.js +606 -0
  622. package/js/src/src/pro/bitvavo.d.ts +321 -0
  623. package/js/src/src/pro/bitvavo.js +1451 -0
  624. package/js/src/src/pro/blockchaincom.d.ts +89 -0
  625. package/js/src/src/pro/blockchaincom.js +777 -0
  626. package/js/src/src/pro/blofin.d.ts +174 -0
  627. package/js/src/src/pro/blofin.js +743 -0
  628. package/js/src/src/pro/bybit.d.ts +397 -0
  629. package/js/src/src/pro/bybit.js +2519 -0
  630. package/js/src/src/pro/cex.d.ts +220 -0
  631. package/js/src/src/pro/cex.js +1535 -0
  632. package/js/src/src/pro/coinbase.d.ts +119 -0
  633. package/js/src/src/pro/coinbase.js +736 -0
  634. package/js/src/src/pro/coinbaseadvanced.d.ts +4 -0
  635. package/js/src/src/pro/coinbaseadvanced.js +18 -0
  636. package/js/src/src/pro/coinbaseexchange.d.ts +133 -0
  637. package/js/src/src/pro/coinbaseexchange.js +969 -0
  638. package/js/src/src/pro/coinbaseinternational.d.ts +143 -0
  639. package/js/src/src/pro/coinbaseinternational.js +804 -0
  640. package/js/src/src/pro/coincatch.d.ts +207 -0
  641. package/js/src/src/pro/coincatch.js +1562 -0
  642. package/js/src/src/pro/coincheck.d.ts +33 -0
  643. package/js/src/src/pro/coincheck.js +210 -0
  644. package/js/src/src/pro/coinex.d.ts +147 -0
  645. package/js/src/src/pro/coinex.js +1426 -0
  646. package/js/src/src/pro/coinone.d.ts +51 -0
  647. package/js/src/src/pro/coinone.js +413 -0
  648. package/js/src/src/pro/cryptocom.d.ts +300 -0
  649. package/js/src/src/pro/cryptocom.js +1414 -0
  650. package/js/src/src/pro/defx.d.ts +236 -0
  651. package/js/src/src/pro/defx.js +865 -0
  652. package/js/src/src/pro/deribit.d.ts +163 -0
  653. package/js/src/src/pro/deribit.js +1066 -0
  654. package/js/src/src/pro/derive.d.ts +100 -0
  655. package/js/src/src/pro/derive.js +753 -0
  656. package/js/src/src/pro/exmo.d.ts +97 -0
  657. package/js/src/src/pro/exmo.js +903 -0
  658. package/js/src/src/pro/gate.d.ts +360 -0
  659. package/js/src/src/pro/gate.js +2119 -0
  660. package/js/src/src/pro/gateio.d.ts +4 -0
  661. package/js/src/src/pro/gateio.js +17 -0
  662. package/js/src/src/pro/gemini.d.ts +106 -0
  663. package/js/src/src/pro/gemini.js +932 -0
  664. package/js/src/src/pro/hashkey.d.ts +121 -0
  665. package/js/src/src/pro/hashkey.js +843 -0
  666. package/js/src/src/pro/hitbtc.d.ts +235 -0
  667. package/js/src/src/pro/hitbtc.js +1400 -0
  668. package/js/src/src/pro/hollaex.d.ts +77 -0
  669. package/js/src/src/pro/hollaex.js +604 -0
  670. package/js/src/src/pro/htx.d.ts +141 -0
  671. package/js/src/src/pro/htx.js +2415 -0
  672. package/js/src/src/pro/huobi.d.ts +4 -0
  673. package/js/src/src/pro/huobi.js +17 -0
  674. package/js/src/src/pro/hyperliquid.d.ts +218 -0
  675. package/js/src/src/pro/hyperliquid.js +1126 -0
  676. package/js/src/src/pro/independentreserve.d.ts +36 -0
  677. package/js/src/src/pro/independentreserve.js +287 -0
  678. package/js/src/src/pro/kraken.d.ts +233 -0
  679. package/js/src/src/pro/kraken.js +1785 -0
  680. package/js/src/src/pro/krakenfutures.d.ts +178 -0
  681. package/js/src/src/pro/krakenfutures.js +1592 -0
  682. package/js/src/src/pro/kucoin.d.ts +221 -0
  683. package/js/src/src/pro/kucoin.js +1430 -0
  684. package/js/src/src/pro/kucoinfutures.d.ts +205 -0
  685. package/js/src/src/pro/kucoinfutures.js +1295 -0
  686. package/js/src/src/pro/lbank.d.ts +134 -0
  687. package/js/src/src/pro/lbank.js +950 -0
  688. package/js/src/src/pro/luno.d.ts +44 -0
  689. package/js/src/src/pro/luno.js +322 -0
  690. package/js/src/src/pro/mexc.d.ts +210 -0
  691. package/js/src/src/pro/mexc.js +2009 -0
  692. package/js/src/src/pro/modetrade.d.ts +155 -0
  693. package/js/src/src/pro/modetrade.js +1335 -0
  694. package/js/src/src/pro/myokx.d.ts +4 -0
  695. package/js/src/src/pro/myokx.js +39 -0
  696. package/js/src/src/pro/ndax.d.ts +60 -0
  697. package/js/src/src/pro/ndax.js +545 -0
  698. package/js/src/src/pro/okcoin.d.ts +91 -0
  699. package/js/src/src/pro/okcoin.js +763 -0
  700. package/js/src/src/pro/okx.d.ts +408 -0
  701. package/js/src/src/pro/okx.js +2479 -0
  702. package/js/src/src/pro/okxus.d.ts +4 -0
  703. package/js/src/src/pro/okxus.js +39 -0
  704. package/js/src/src/pro/onetrading.d.ts +107 -0
  705. package/js/src/src/pro/onetrading.js +1343 -0
  706. package/js/src/src/pro/oxfun.d.ts +234 -0
  707. package/js/src/src/pro/oxfun.js +1112 -0
  708. package/js/src/src/pro/p2b.d.ts +104 -0
  709. package/js/src/src/pro/p2b.js +506 -0
  710. package/js/src/src/pro/paradex.d.ts +54 -0
  711. package/js/src/src/pro/paradex.js +370 -0
  712. package/js/src/src/pro/phemex.d.ts +129 -0
  713. package/js/src/src/pro/phemex.js +1569 -0
  714. package/js/src/src/pro/poloniex.d.ts +214 -0
  715. package/js/src/src/pro/poloniex.js +1318 -0
  716. package/js/src/src/pro/probit.d.ts +91 -0
  717. package/js/src/src/pro/probit.js +593 -0
  718. package/js/src/src/pro/tradeogre.d.ts +49 -0
  719. package/js/src/src/pro/tradeogre.js +284 -0
  720. package/js/src/src/pro/upbit.d.ts +124 -0
  721. package/js/src/src/pro/upbit.js +689 -0
  722. package/js/src/src/pro/vertex.d.ts +104 -0
  723. package/js/src/src/pro/vertex.js +999 -0
  724. package/js/src/src/pro/whitebit.d.ts +123 -0
  725. package/js/src/src/pro/whitebit.js +971 -0
  726. package/js/src/src/pro/woo.d.ts +161 -0
  727. package/js/src/src/pro/woo.js +1351 -0
  728. package/js/src/src/pro/woofipro.d.ts +155 -0
  729. package/js/src/src/pro/woofipro.js +1335 -0
  730. package/js/src/src/pro/xt.d.ts +165 -0
  731. package/js/src/src/pro/xt.js +1230 -0
  732. package/js/src/src/probit.d.ts +283 -0
  733. package/js/src/src/probit.js +1935 -0
  734. package/js/src/src/protobuf/mexc/compiled.cjs +7186 -0
  735. package/js/src/src/protobuf/mexc/compiled.d.cts +8 -0
  736. package/js/src/src/raastin.d.ts +24 -0
  737. package/js/src/src/raastin.js +494 -0
  738. package/js/src/src/ramzinex.d.ts +23 -0
  739. package/js/src/src/ramzinex.js +510 -0
  740. package/js/src/src/sarmayex.d.ts +21 -0
  741. package/js/src/src/sarmayex.js +376 -0
  742. package/js/src/src/sarrafex.d.ts +23 -0
  743. package/js/src/src/sarrafex.js +501 -0
  744. package/js/src/src/static_dependencies/ethers/abi-coder.d.ts +50 -0
  745. package/js/src/src/static_dependencies/ethers/abi-coder.js +148 -0
  746. package/js/src/src/static_dependencies/ethers/address/address.d.ts +55 -0
  747. package/js/src/src/static_dependencies/ethers/address/address.js +162 -0
  748. package/js/src/src/static_dependencies/ethers/address/checks.d.ts +80 -0
  749. package/js/src/src/static_dependencies/ethers/address/checks.js +119 -0
  750. package/js/src/src/static_dependencies/ethers/address/contract-address.d.ts +47 -0
  751. package/js/src/src/static_dependencies/ethers/address/contract-address.js +73 -0
  752. package/js/src/src/static_dependencies/ethers/address/index.d.ts +48 -0
  753. package/js/src/src/static_dependencies/ethers/address/index.js +24 -0
  754. package/js/src/src/static_dependencies/ethers/bytes32.d.ts +14 -0
  755. package/js/src/src/static_dependencies/ethers/bytes32.js +45 -0
  756. package/js/src/src/static_dependencies/ethers/coders/abstract-coder.d.ts +120 -0
  757. package/js/src/src/static_dependencies/ethers/coders/abstract-coder.js +424 -0
  758. package/js/src/src/static_dependencies/ethers/coders/address.d.ts +12 -0
  759. package/js/src/src/static_dependencies/ethers/coders/address.js +34 -0
  760. package/js/src/src/static_dependencies/ethers/coders/anonymous.d.ts +14 -0
  761. package/js/src/src/static_dependencies/ethers/coders/anonymous.js +27 -0
  762. package/js/src/src/static_dependencies/ethers/coders/array.d.ts +24 -0
  763. package/js/src/src/static_dependencies/ethers/coders/array.js +162 -0
  764. package/js/src/src/static_dependencies/ethers/coders/boolean.d.ts +12 -0
  765. package/js/src/src/static_dependencies/ethers/coders/boolean.js +26 -0
  766. package/js/src/src/static_dependencies/ethers/coders/bytes.d.ts +18 -0
  767. package/js/src/src/static_dependencies/ethers/coders/bytes.js +39 -0
  768. package/js/src/src/static_dependencies/ethers/coders/fixed-bytes.d.ts +14 -0
  769. package/js/src/src/static_dependencies/ethers/coders/fixed-bytes.js +32 -0
  770. package/js/src/src/static_dependencies/ethers/coders/null.d.ts +11 -0
  771. package/js/src/src/static_dependencies/ethers/coders/null.js +29 -0
  772. package/js/src/src/static_dependencies/ethers/coders/number.d.ts +15 -0
  773. package/js/src/src/static_dependencies/ethers/coders/number.js +48 -0
  774. package/js/src/src/static_dependencies/ethers/coders/string.d.ts +12 -0
  775. package/js/src/src/static_dependencies/ethers/coders/string.js +26 -0
  776. package/js/src/src/static_dependencies/ethers/coders/tuple.d.ts +15 -0
  777. package/js/src/src/static_dependencies/ethers/coders/tuple.js +67 -0
  778. package/js/src/src/static_dependencies/ethers/fragments.d.ts +458 -0
  779. package/js/src/src/static_dependencies/ethers/fragments.js +1252 -0
  780. package/js/src/src/static_dependencies/ethers/hash/index.d.ts +10 -0
  781. package/js/src/src/static_dependencies/ethers/hash/index.js +15 -0
  782. package/js/src/src/static_dependencies/ethers/hash/solidity.d.ts +30 -0
  783. package/js/src/src/static_dependencies/ethers/hash/solidity.js +107 -0
  784. package/js/src/src/static_dependencies/ethers/hash/typed-data.d.ts +144 -0
  785. package/js/src/src/static_dependencies/ethers/hash/typed-data.js +490 -0
  786. package/js/src/src/static_dependencies/ethers/index.d.ts +19 -0
  787. package/js/src/src/static_dependencies/ethers/index.js +22 -0
  788. package/js/src/src/static_dependencies/ethers/interface.d.ts +380 -0
  789. package/js/src/src/static_dependencies/ethers/interface.js +990 -0
  790. package/js/src/src/static_dependencies/ethers/typed.d.ts +569 -0
  791. package/js/src/src/static_dependencies/ethers/typed.js +608 -0
  792. package/js/src/src/static_dependencies/ethers/utils/base58.d.ts +22 -0
  793. package/js/src/src/static_dependencies/ethers/utils/base58.js +68 -0
  794. package/js/src/src/static_dependencies/ethers/utils/base64.d.ts +39 -0
  795. package/js/src/src/static_dependencies/ethers/utils/base64.js +58 -0
  796. package/js/src/src/static_dependencies/ethers/utils/data.d.ts +92 -0
  797. package/js/src/src/static_dependencies/ethers/utils/data.js +175 -0
  798. package/js/src/src/static_dependencies/ethers/utils/errors.d.ts +509 -0
  799. package/js/src/src/static_dependencies/ethers/utils/errors.js +227 -0
  800. package/js/src/src/static_dependencies/ethers/utils/events.d.ts +76 -0
  801. package/js/src/src/static_dependencies/ethers/utils/events.js +52 -0
  802. package/js/src/src/static_dependencies/ethers/utils/fixednumber.d.ts +251 -0
  803. package/js/src/src/static_dependencies/ethers/utils/fixednumber.js +529 -0
  804. package/js/src/src/static_dependencies/ethers/utils/index.d.ts +30 -0
  805. package/js/src/src/static_dependencies/ethers/utils/index.js +38 -0
  806. package/js/src/src/static_dependencies/ethers/utils/maths.d.ts +65 -0
  807. package/js/src/src/static_dependencies/ethers/utils/maths.js +220 -0
  808. package/js/src/src/static_dependencies/ethers/utils/properties.d.ts +22 -0
  809. package/js/src/src/static_dependencies/ethers/utils/properties.js +59 -0
  810. package/js/src/src/static_dependencies/ethers/utils/rlp-decode.d.ts +5 -0
  811. package/js/src/src/static_dependencies/ethers/utils/rlp-decode.js +84 -0
  812. package/js/src/src/static_dependencies/ethers/utils/rlp-encode.d.ts +5 -0
  813. package/js/src/src/static_dependencies/ethers/utils/rlp-encode.js +54 -0
  814. package/js/src/src/static_dependencies/ethers/utils/rlp.d.ts +16 -0
  815. package/js/src/src/static_dependencies/ethers/utils/rlp.js +14 -0
  816. package/js/src/src/static_dependencies/ethers/utils/units.d.ts +23 -0
  817. package/js/src/src/static_dependencies/ethers/utils/units.js +88 -0
  818. package/js/src/src/static_dependencies/ethers/utils/utf8.d.ts +95 -0
  819. package/js/src/src/static_dependencies/ethers/utils/utf8.js +225 -0
  820. package/js/src/src/static_dependencies/ethers/utils/uuid.d.ts +7 -0
  821. package/js/src/src/static_dependencies/ethers/utils/uuid.js +35 -0
  822. package/js/src/src/static_dependencies/fflake/browser.d.ts +222 -0
  823. package/js/src/src/static_dependencies/fflake/browser.js +2578 -0
  824. package/js/src/src/static_dependencies/jsencrypt/JSEncrypt.d.ts +116 -0
  825. package/js/src/src/static_dependencies/jsencrypt/JSEncrypt.js +194 -0
  826. package/js/src/src/static_dependencies/jsencrypt/JSEncryptRSAKey.d.ts +142 -0
  827. package/js/src/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +307 -0
  828. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/asn1.d.ts +51 -0
  829. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +565 -0
  830. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/base64.d.ts +5 -0
  831. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +94 -0
  832. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/hex.d.ts +3 -0
  833. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +70 -0
  834. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/int10.d.ts +9 -0
  835. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +91 -0
  836. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/base64.d.ts +3 -0
  837. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +25 -0
  838. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +101 -0
  839. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1757 -0
  840. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/prng4.d.ts +10 -0
  841. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +50 -0
  842. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/rng.d.ts +3 -0
  843. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +80 -0
  844. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/rsa.d.ts +23 -0
  845. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +377 -0
  846. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/util.d.ts +7 -0
  847. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/util.js +64 -0
  848. package/js/src/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.d.ts +24 -0
  849. package/js/src/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1627 -0
  850. package/js/src/src/static_dependencies/noble-curves/_shortw_utils.d.ts +60 -0
  851. package/js/src/src/static_dependencies/noble-curves/_shortw_utils.js +22 -0
  852. package/js/src/src/static_dependencies/noble-curves/abstract/curve.d.ts +67 -0
  853. package/js/src/src/static_dependencies/noble-curves/abstract/curve.js +157 -0
  854. package/js/src/src/static_dependencies/noble-curves/abstract/edwards.d.ts +79 -0
  855. package/js/src/src/static_dependencies/noble-curves/abstract/edwards.js +432 -0
  856. package/js/src/src/static_dependencies/noble-curves/abstract/hash-to-curve.d.ts +56 -0
  857. package/js/src/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +171 -0
  858. package/js/src/src/static_dependencies/noble-curves/abstract/modular.d.ts +68 -0
  859. package/js/src/src/static_dependencies/noble-curves/abstract/modular.js +351 -0
  860. package/js/src/src/static_dependencies/noble-curves/abstract/montgomery.d.ts +25 -0
  861. package/js/src/src/static_dependencies/noble-curves/abstract/montgomery.js +162 -0
  862. package/js/src/src/static_dependencies/noble-curves/abstract/poseidon.d.ts +29 -0
  863. package/js/src/src/static_dependencies/noble-curves/abstract/poseidon.js +115 -0
  864. package/js/src/src/static_dependencies/noble-curves/abstract/utils.d.ts +53 -0
  865. package/js/src/src/static_dependencies/noble-curves/abstract/utils.js +227 -0
  866. package/js/src/src/static_dependencies/noble-curves/abstract/weierstrass.d.ts +204 -0
  867. package/js/src/src/static_dependencies/noble-curves/abstract/weierstrass.js +1016 -0
  868. package/js/src/src/static_dependencies/noble-curves/ed25519.d.ts +53 -0
  869. package/js/src/src/static_dependencies/noble-curves/ed25519.js +402 -0
  870. package/js/src/src/static_dependencies/noble-curves/p256.d.ts +103 -0
  871. package/js/src/src/static_dependencies/noble-curves/p256.js +47 -0
  872. package/js/src/src/static_dependencies/noble-curves/secp256k1.d.ts +91 -0
  873. package/js/src/src/static_dependencies/noble-curves/secp256k1.js +257 -0
  874. package/js/src/src/static_dependencies/noble-hashes/_assert.d.ts +21 -0
  875. package/js/src/src/static_dependencies/noble-hashes/_assert.js +48 -0
  876. package/js/src/src/static_dependencies/noble-hashes/_sha2.d.ts +23 -0
  877. package/js/src/src/static_dependencies/noble-hashes/_sha2.js +119 -0
  878. package/js/src/src/static_dependencies/noble-hashes/_u64.d.ts +35 -0
  879. package/js/src/src/static_dependencies/noble-hashes/_u64.js +66 -0
  880. package/js/src/src/static_dependencies/noble-hashes/crypto.d.ts +1 -0
  881. package/js/src/src/static_dependencies/noble-hashes/crypto.js +7 -0
  882. package/js/src/src/static_dependencies/noble-hashes/hmac.d.ts +26 -0
  883. package/js/src/src/static_dependencies/noble-hashes/hmac.js +82 -0
  884. package/js/src/src/static_dependencies/noble-hashes/md5.d.ts +18 -0
  885. package/js/src/src/static_dependencies/noble-hashes/md5.js +242 -0
  886. package/js/src/src/static_dependencies/noble-hashes/sha1.d.ts +21 -0
  887. package/js/src/src/static_dependencies/noble-hashes/sha1.js +90 -0
  888. package/js/src/src/static_dependencies/noble-hashes/sha256.d.ts +34 -0
  889. package/js/src/src/static_dependencies/noble-hashes/sha256.js +129 -0
  890. package/js/src/src/static_dependencies/noble-hashes/sha3.d.ts +97 -0
  891. package/js/src/src/static_dependencies/noble-hashes/sha3.js +211 -0
  892. package/js/src/src/static_dependencies/noble-hashes/sha512.d.ts +66 -0
  893. package/js/src/src/static_dependencies/noble-hashes/sha512.js +236 -0
  894. package/js/src/src/static_dependencies/noble-hashes/utils.d.ts +77 -0
  895. package/js/src/src/static_dependencies/noble-hashes/utils.js +147 -0
  896. package/js/src/src/static_dependencies/proxies/agent-base/helpers.d.ts +14 -0
  897. package/js/src/src/static_dependencies/proxies/agent-base/helpers.js +42 -0
  898. package/js/src/src/static_dependencies/proxies/agent-base/index.d.ts +33 -0
  899. package/js/src/src/static_dependencies/proxies/agent-base/index.js +82 -0
  900. package/js/src/src/static_dependencies/proxies/http-proxy-agent/index.d.ts +40 -0
  901. package/js/src/src/static_dependencies/proxies/http-proxy-agent/index.js +119 -0
  902. package/js/src/src/static_dependencies/proxies/https-proxy-agent/index.d.ts +45 -0
  903. package/js/src/src/static_dependencies/proxies/https-proxy-agent/index.js +150 -0
  904. package/js/src/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.d.ts +15 -0
  905. package/js/src/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +95 -0
  906. package/js/src/src/static_dependencies/qs/formats.cjs +22 -0
  907. package/js/src/src/static_dependencies/qs/formats.d.cts +14 -0
  908. package/js/src/src/static_dependencies/qs/index.cjs +15 -0
  909. package/js/src/src/static_dependencies/qs/index.d.cts +10 -0
  910. package/js/src/src/static_dependencies/qs/parse.cjs +208 -0
  911. package/js/src/src/static_dependencies/qs/parse.d.cts +8 -0
  912. package/js/src/src/static_dependencies/qs/stringify.cjs +192 -0
  913. package/js/src/src/static_dependencies/qs/stringify.d.cts +8 -0
  914. package/js/src/src/static_dependencies/qs/utils.cjs +202 -0
  915. package/js/src/src/static_dependencies/qs/utils.d.cts +15 -0
  916. package/js/src/src/static_dependencies/scure-base/index.d.ts +92 -0
  917. package/js/src/src/static_dependencies/scure-base/index.js +420 -0
  918. package/js/src/src/static_dependencies/scure-starknet/index.d.ts +79 -0
  919. package/js/src/src/static_dependencies/scure-starknet/index.js +323 -0
  920. package/js/src/src/static_dependencies/starknet/constants.d.ts +61 -0
  921. package/js/src/src/static_dependencies/starknet/constants.js +67 -0
  922. package/js/src/src/static_dependencies/starknet/index.d.ts +3 -0
  923. package/js/src/src/static_dependencies/starknet/index.js +9 -0
  924. package/js/src/src/static_dependencies/starknet/types/cairoEnum.d.ts +2 -0
  925. package/js/src/src/static_dependencies/starknet/types/cairoEnum.js +7 -0
  926. package/js/src/src/static_dependencies/starknet/types/calldata.d.ts +19 -0
  927. package/js/src/src/static_dependencies/starknet/types/calldata.js +28 -0
  928. package/js/src/src/static_dependencies/starknet/types/index.d.ts +13 -0
  929. package/js/src/src/static_dependencies/starknet/types/index.js +16 -0
  930. package/js/src/src/static_dependencies/starknet/types/lib/contract/abi.d.ts +71 -0
  931. package/js/src/src/static_dependencies/starknet/types/lib/contract/abi.js +13 -0
  932. package/js/src/src/static_dependencies/starknet/types/lib/contract/index.d.ts +24 -0
  933. package/js/src/src/static_dependencies/starknet/types/lib/contract/index.js +16 -0
  934. package/js/src/src/static_dependencies/starknet/types/lib/contract/legacy.d.ts +33 -0
  935. package/js/src/src/static_dependencies/starknet/types/lib/contract/legacy.js +7 -0
  936. package/js/src/src/static_dependencies/starknet/types/lib/contract/sierra.d.ts +52 -0
  937. package/js/src/src/static_dependencies/starknet/types/lib/contract/sierra.js +7 -0
  938. package/js/src/src/static_dependencies/starknet/types/lib/index.d.ts +248 -0
  939. package/js/src/src/static_dependencies/starknet/types/lib/index.js +52 -0
  940. package/js/src/src/static_dependencies/starknet/types/typedData.d.ts +44 -0
  941. package/js/src/src/static_dependencies/starknet/types/typedData.js +19 -0
  942. package/js/src/src/static_dependencies/starknet/utils/assert.d.ts +7 -0
  943. package/js/src/src/static_dependencies/starknet/utils/assert.js +17 -0
  944. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/felt.d.ts +6 -0
  945. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +43 -0
  946. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.d.ts +72 -0
  947. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +117 -0
  948. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.d.ts +76 -0
  949. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +136 -0
  950. package/js/src/src/static_dependencies/starknet/utils/calldata/byteArray.d.ts +32 -0
  951. package/js/src/src/static_dependencies/starknet/utils/calldata/byteArray.js +59 -0
  952. package/js/src/src/static_dependencies/starknet/utils/calldata/cairo.d.ts +183 -0
  953. package/js/src/src/static_dependencies/starknet/utils/calldata/cairo.js +229 -0
  954. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.d.ts +38 -0
  955. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +57 -0
  956. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.d.ts +35 -0
  957. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +64 -0
  958. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.d.ts +34 -0
  959. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +63 -0
  960. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/index.d.ts +3 -0
  961. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/index.js +9 -0
  962. package/js/src/src/static_dependencies/starknet/utils/calldata/formatter.d.ts +9 -0
  963. package/js/src/src/static_dependencies/starknet/utils/calldata/formatter.js +67 -0
  964. package/js/src/src/static_dependencies/starknet/utils/calldata/index.d.ts +89 -0
  965. package/js/src/src/static_dependencies/starknet/utils/calldata/index.js +280 -0
  966. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/index.d.ts +5 -0
  967. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/index.js +30 -0
  968. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/interface.d.ts +20 -0
  969. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/interface.js +8 -0
  970. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.d.ts +24 -0
  971. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +36 -0
  972. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.d.ts +23 -0
  973. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +40 -0
  974. package/js/src/src/static_dependencies/starknet/utils/calldata/propertyOrder.d.ts +2 -0
  975. package/js/src/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +155 -0
  976. package/js/src/src/static_dependencies/starknet/utils/calldata/requestParser.d.ts +11 -0
  977. package/js/src/src/static_dependencies/starknet/utils/calldata/requestParser.js +248 -0
  978. package/js/src/src/static_dependencies/starknet/utils/calldata/responseParser.d.ts +11 -0
  979. package/js/src/src/static_dependencies/starknet/utils/calldata/responseParser.js +214 -0
  980. package/js/src/src/static_dependencies/starknet/utils/calldata/tuple.d.ts +6 -0
  981. package/js/src/src/static_dependencies/starknet/utils/calldata/tuple.js +113 -0
  982. package/js/src/src/static_dependencies/starknet/utils/calldata/validate.d.ts +6 -0
  983. package/js/src/src/static_dependencies/starknet/utils/calldata/validate.js +208 -0
  984. package/js/src/src/static_dependencies/starknet/utils/encode.d.ts +207 -0
  985. package/js/src/src/static_dependencies/starknet/utils/encode.js +282 -0
  986. package/js/src/src/static_dependencies/starknet/utils/hash/classHash.d.ts +57 -0
  987. package/js/src/src/static_dependencies/starknet/utils/hash/classHash.js +223 -0
  988. package/js/src/src/static_dependencies/starknet/utils/hash/index.d.ts +6 -0
  989. package/js/src/src/static_dependencies/starknet/utils/hash/index.js +13 -0
  990. package/js/src/src/static_dependencies/starknet/utils/merkle.d.ts +35 -0
  991. package/js/src/src/static_dependencies/starknet/utils/merkle.js +84 -0
  992. package/js/src/src/static_dependencies/starknet/utils/num.d.ts +182 -0
  993. package/js/src/src/static_dependencies/starknet/utils/num.js +244 -0
  994. package/js/src/src/static_dependencies/starknet/utils/selector.d.ts +48 -0
  995. package/js/src/src/static_dependencies/starknet/utils/selector.js +85 -0
  996. package/js/src/src/static_dependencies/starknet/utils/shortString.d.ts +57 -0
  997. package/js/src/src/static_dependencies/starknet/utils/shortString.js +96 -0
  998. package/js/src/src/static_dependencies/starknet/utils/typedData.d.ts +54 -0
  999. package/js/src/src/static_dependencies/starknet/utils/typedData.js +321 -0
  1000. package/js/src/src/static_dependencies/watchable/src/types.d.ts +28 -0
  1001. package/js/src/src/static_dependencies/watchable/src/types.js +8 -0
  1002. package/js/src/src/static_dependencies/watchable/src/unpromise.d.ts +120 -0
  1003. package/js/src/src/static_dependencies/watchable/src/unpromise.js +297 -0
  1004. package/js/src/src/static_dependencies/zklink/zklink-sdk-web.d.ts +1279 -0
  1005. package/js/src/src/static_dependencies/zklink/zklink-sdk-web.js +4282 -0
  1006. package/js/src/src/tabdeal.d.ts +23 -0
  1007. package/js/src/src/tabdeal.js +387 -0
  1008. package/js/src/src/tehran_exchange.d.ts +21 -0
  1009. package/js/src/src/tehran_exchange.js +333 -0
  1010. package/js/src/src/tetherland.d.ts +21 -0
  1011. package/js/src/src/tetherland.js +367 -0
  1012. package/js/src/src/timex.d.ts +247 -0
  1013. package/js/src/src/timex.js +1792 -0
  1014. package/js/src/src/tokocrypto.d.ts +261 -0
  1015. package/js/src/src/tokocrypto.js +2641 -0
  1016. package/js/src/src/toobit.d.ts +22 -0
  1017. package/js/src/src/toobit.js +445 -0
  1018. package/js/src/src/tradeogre.d.ts +149 -0
  1019. package/js/src/src/tradeogre.js +878 -0
  1020. package/js/src/src/twox.d.ts +21 -0
  1021. package/js/src/src/twox.js +371 -0
  1022. package/js/src/src/ubitex.d.ts +23 -0
  1023. package/js/src/src/ubitex.js +433 -0
  1024. package/js/src/src/upbit.d.ts +377 -0
  1025. package/js/src/src/upbit.js +2340 -0
  1026. package/js/src/src/vertex.d.ts +346 -0
  1027. package/js/src/src/vertex.js +3146 -0
  1028. package/js/src/src/wallex.d.ts +23 -0
  1029. package/js/src/src/wallex.js +467 -0
  1030. package/js/src/src/wavesexchange.d.ts +244 -0
  1031. package/js/src/src/wavesexchange.js +2747 -0
  1032. package/js/src/src/whitebit.d.ts +571 -0
  1033. package/js/src/src/whitebit.js +3437 -0
  1034. package/js/src/src/woo.d.ts +727 -0
  1035. package/js/src/src/woo.js +4183 -0
  1036. package/js/src/src/woofipro.d.ts +497 -0
  1037. package/js/src/src/woofipro.js +2941 -0
  1038. package/js/src/src/xt.d.ts +568 -0
  1039. package/js/src/src/xt.js +5184 -0
  1040. package/js/src/src/yobit.d.ts +197 -0
  1041. package/js/src/src/yobit.js +1453 -0
  1042. package/js/src/src/zaif.d.ts +136 -0
  1043. package/js/src/src/zaif.js +821 -0
  1044. package/js/src/src/zonda.d.ts +214 -0
  1045. package/js/src/src/zonda.js +1984 -0
  1046. package/js/test.js +3 -3
  1047. package/package.json +1 -1
@@ -0,0 +1,1627 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
7
+ // @ts-nocheck
8
+ /* asn1-1.0.13.js (c) 2013-2017 Kenji Urushima | kjur.github.com/jsrsasign/license
9
+ */
10
+ /*
11
+ * asn1.js - ASN.1 DER encoder classes
12
+ *
13
+ * Copyright (c) 2013-2017 Kenji Urushima (kenji.urushima@gmail.com)
14
+ *
15
+ * This software is licensed under the terms of the MIT License.
16
+ * https://kjur.github.io/jsrsasign/license
17
+ *
18
+ * The above copyright and license notice shall be
19
+ * included in all copies or substantial portions of the Software.
20
+ */
21
+ import { BigInteger } from "../jsbn/jsbn.js";
22
+ import { YAHOO } from "./yahoo.js";
23
+ /**
24
+ * @fileOverview
25
+ * @name asn1-1.0.js
26
+ * @author Kenji Urushima kenji.urushima@gmail.com
27
+ * @version asn1 1.0.13 (2017-Jun-02)
28
+ * @since jsrsasign 2.1
29
+ * @license <a href="https://kjur.github.io/jsrsasign/license/">MIT License</a>
30
+ */
31
+ /**
32
+ * kjur's class library name space
33
+ * <p>
34
+ * This name space provides following name spaces:
35
+ * <ul>
36
+ * <li>{@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder</li>
37
+ * <li>{@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL</li>
38
+ * <li>{@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature
39
+ * class and utilities</li>
40
+ * </ul>
41
+ * </p>
42
+ * NOTE: Please ignore method summary and document of this namespace. This caused by a bug of jsdoc2.
43
+ * @name KJUR
44
+ * @namespace kjur's class library name space
45
+ */
46
+ // interface kjur_interface {
47
+ // asn1: {
48
+ // ASN1Object: any;
49
+ // ASN1Util: any;
50
+ // DERAbstractString: any;
51
+ // DERAbstractStructured: any;
52
+ // DERAbstractTime: any;
53
+ // DERBitString: any;
54
+ // DERBoolean: any;
55
+ // DEREnumerated: any;
56
+ // DERGeneralizedTime: any;
57
+ // DERIA5String: any;
58
+ // DERInteger: any;
59
+ // DERNull: any;
60
+ // DERNumericString: any;
61
+ // DERObjectIdentifier: any;
62
+ // DEROctetString: any;
63
+ // DERPrintableString: any;
64
+ // DERSequence: any;
65
+ // DERSet: any;
66
+ // DERTaggedObject: any;
67
+ // DERTeletexString: any;
68
+ // DERUTCTime: any;
69
+ // DERUTF8String: any;
70
+ // }
71
+ // };
72
+ export var KJUR = {};
73
+ /**
74
+ * kjur's ASN.1 class library name space
75
+ * <p>
76
+ * This is ITU-T X.690 ASN.1 DER encoder class library and
77
+ * class structure and methods is very similar to
78
+ * org.bouncycastle.asn1 package of
79
+ * well known BouncyCaslte Cryptography Library.
80
+ * <h4>PROVIDING ASN.1 PRIMITIVES</h4>
81
+ * Here are ASN.1 DER primitive classes.
82
+ * <ul>
83
+ * <li>0x01 {@link KJUR.asn1.DERBoolean}</li>
84
+ * <li>0x02 {@link KJUR.asn1.DERInteger}</li>
85
+ * <li>0x03 {@link KJUR.asn1.DERBitString}</li>
86
+ * <li>0x04 {@link KJUR.asn1.DEROctetString}</li>
87
+ * <li>0x05 {@link KJUR.asn1.DERNull}</li>
88
+ * <li>0x06 {@link KJUR.asn1.DERObjectIdentifier}</li>
89
+ * <li>0x0a {@link KJUR.asn1.DEREnumerated}</li>
90
+ * <li>0x0c {@link KJUR.asn1.DERUTF8String}</li>
91
+ * <li>0x12 {@link KJUR.asn1.DERNumericString}</li>
92
+ * <li>0x13 {@link KJUR.asn1.DERPrintableString}</li>
93
+ * <li>0x14 {@link KJUR.asn1.DERTeletexString}</li>
94
+ * <li>0x16 {@link KJUR.asn1.DERIA5String}</li>
95
+ * <li>0x17 {@link KJUR.asn1.DERUTCTime}</li>
96
+ * <li>0x18 {@link KJUR.asn1.DERGeneralizedTime}</li>
97
+ * <li>0x30 {@link KJUR.asn1.DERSequence}</li>
98
+ * <li>0x31 {@link KJUR.asn1.DERSet}</li>
99
+ * </ul>
100
+ * <h4>OTHER ASN.1 CLASSES</h4>
101
+ * <ul>
102
+ * <li>{@link KJUR.asn1.ASN1Object}</li>
103
+ * <li>{@link KJUR.asn1.DERAbstractString}</li>
104
+ * <li>{@link KJUR.asn1.DERAbstractTime}</li>
105
+ * <li>{@link KJUR.asn1.DERAbstractStructured}</li>
106
+ * <li>{@link KJUR.asn1.DERTaggedObject}</li>
107
+ * </ul>
108
+ * <h4>SUB NAME SPACES</h4>
109
+ * <ul>
110
+ * <li>{@link KJUR.asn1.cades} - CAdES long term signature format</li>
111
+ * <li>{@link KJUR.asn1.cms} - Cryptographic Message Syntax</li>
112
+ * <li>{@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)</li>
113
+ * <li>{@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format</li>
114
+ * <li>{@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL</li>
115
+ * </ul>
116
+ * </p>
117
+ * NOTE: Please ignore method summary and document of this namespace.
118
+ * This caused by a bug of jsdoc2.
119
+ * @name KJUR.asn1
120
+ * @namespace
121
+ */
122
+ if (typeof KJUR.asn1 == "undefined" || !KJUR.asn1)
123
+ KJUR.asn1 = {};
124
+ /**
125
+ * ASN1 utilities class
126
+ * @type Class
127
+ * @name KJUR.asn1.ASN1Util
128
+ * @class ASN1 utilities class
129
+ * @since asn1 1.0.2
130
+ */
131
+ KJUR.asn1.ASN1Util = new function () {
132
+ this.integerToByteHex = function (i) {
133
+ var h = i.toString(16);
134
+ if ((h.length % 2) == 1)
135
+ h = '0' + h;
136
+ return h;
137
+ };
138
+ this.bigIntToMinTwosComplementsHex = function (bigIntegerValue) {
139
+ var h = bigIntegerValue.toString(16);
140
+ if (h.substr(0, 1) != '-') {
141
+ if (h.length % 2 == 1) {
142
+ h = '0' + h;
143
+ }
144
+ else {
145
+ if (!h.match(/^[0-7]/)) {
146
+ h = '00' + h;
147
+ }
148
+ }
149
+ }
150
+ else {
151
+ var hPos = h.substr(1);
152
+ var xorLen = hPos.length;
153
+ if (xorLen % 2 == 1) {
154
+ xorLen += 1;
155
+ }
156
+ else {
157
+ if (!h.match(/^[0-7]/)) {
158
+ xorLen += 2;
159
+ }
160
+ }
161
+ var hMask = '';
162
+ for (var i = 0; i < xorLen; i++) {
163
+ hMask += 'f';
164
+ }
165
+ var biMask = new BigInteger(hMask, 16);
166
+ var biNeg = biMask.xor(bigIntegerValue).add(BigInteger.ONE);
167
+ h = biNeg.toString(16).replace(/^-/, '');
168
+ }
169
+ return h;
170
+ };
171
+ /**
172
+ * get PEM string from hexadecimal data and header string
173
+ * @name getPEMStringFromHex
174
+ * @memberOf KJUR.asn1.ASN1Util
175
+ * @function
176
+ * @param {String} dataHex hexadecimal string of PEM body
177
+ * @param {String} pemHeader PEM header string (ex. 'RSA PRIVATE KEY')
178
+ * @return {String} PEM formatted string of input data
179
+ * @description
180
+ * This method converts a hexadecimal string to a PEM string with
181
+ * a specified header. Its line break will be CRLF("\r\n").
182
+ * @example
183
+ * var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex('616161', 'RSA PRIVATE KEY');
184
+ * // value of pem will be:
185
+ * -----BEGIN PRIVATE KEY-----
186
+ * YWFh
187
+ * -----END PRIVATE KEY-----
188
+ */
189
+ this.getPEMStringFromHex = function (dataHex, pemHeader) {
190
+ return hextopem(dataHex, pemHeader);
191
+ };
192
+ /**
193
+ * generate ASN1Object specifed by JSON parameters
194
+ * @name newObject
195
+ * @memberOf KJUR.asn1.ASN1Util
196
+ * @function
197
+ * @param {Array} param JSON parameter to generate ASN1Object
198
+ * @return {KJUR.asn1.ASN1Object} generated object
199
+ * @since asn1 1.0.3
200
+ * @description
201
+ * generate any ASN1Object specified by JSON param
202
+ * including ASN.1 primitive or structured.
203
+ * Generally 'param' can be described as follows:
204
+ * <blockquote>
205
+ * {TYPE-OF-ASNOBJ: ASN1OBJ-PARAMETER}
206
+ * </blockquote>
207
+ * 'TYPE-OF-ASN1OBJ' can be one of following symbols:
208
+ * <ul>
209
+ * <li>'bool' - DERBoolean</li>
210
+ * <li>'int' - DERInteger</li>
211
+ * <li>'bitstr' - DERBitString</li>
212
+ * <li>'octstr' - DEROctetString</li>
213
+ * <li>'null' - DERNull</li>
214
+ * <li>'oid' - DERObjectIdentifier</li>
215
+ * <li>'enum' - DEREnumerated</li>
216
+ * <li>'utf8str' - DERUTF8String</li>
217
+ * <li>'numstr' - DERNumericString</li>
218
+ * <li>'prnstr' - DERPrintableString</li>
219
+ * <li>'telstr' - DERTeletexString</li>
220
+ * <li>'ia5str' - DERIA5String</li>
221
+ * <li>'utctime' - DERUTCTime</li>
222
+ * <li>'gentime' - DERGeneralizedTime</li>
223
+ * <li>'seq' - DERSequence</li>
224
+ * <li>'set' - DERSet</li>
225
+ * <li>'tag' - DERTaggedObject</li>
226
+ * </ul>
227
+ * @example
228
+ * newObject({'prnstr': 'aaa'});
229
+ * newObject({'seq': [{'int': 3}, {'prnstr': 'aaa'}]})
230
+ * // ASN.1 Tagged Object
231
+ * newObject({'tag': {'tag': 'a1',
232
+ * 'explicit': true,
233
+ * 'obj': {'seq': [{'int': 3}, {'prnstr': 'aaa'}]}}});
234
+ * // more simple representation of ASN.1 Tagged Object
235
+ * newObject({'tag': ['a1',
236
+ * true,
237
+ * {'seq': [
238
+ * {'int': 3},
239
+ * {'prnstr': 'aaa'}]}
240
+ * ]});
241
+ */
242
+ this.newObject = function (param) {
243
+ var _KJUR = KJUR, _KJUR_asn1 = _KJUR.asn1, _DERBoolean = _KJUR_asn1.DERBoolean, _DERInteger = _KJUR_asn1.DERInteger, _DERBitString = _KJUR_asn1.DERBitString, _DEROctetString = _KJUR_asn1.DEROctetString, _DERNull = _KJUR_asn1.DERNull, _DERObjectIdentifier = _KJUR_asn1.DERObjectIdentifier, _DEREnumerated = _KJUR_asn1.DEREnumerated, _DERUTF8String = _KJUR_asn1.DERUTF8String, _DERNumericString = _KJUR_asn1.DERNumericString, _DERPrintableString = _KJUR_asn1.DERPrintableString, _DERTeletexString = _KJUR_asn1.DERTeletexString, _DERIA5String = _KJUR_asn1.DERIA5String, _DERUTCTime = _KJUR_asn1.DERUTCTime, _DERGeneralizedTime = _KJUR_asn1.DERGeneralizedTime, _DERSequence = _KJUR_asn1.DERSequence, _DERSet = _KJUR_asn1.DERSet, _DERTaggedObject = _KJUR_asn1.DERTaggedObject, _newObject = _KJUR_asn1.ASN1Util.newObject;
244
+ var keys = Object.keys(param);
245
+ if (keys.length != 1)
246
+ throw "key of param shall be only one.";
247
+ var key = keys[0];
248
+ if (":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:".indexOf(":" + key + ":") == -1)
249
+ throw "undefined key: " + key;
250
+ if (key == "bool")
251
+ return new _DERBoolean(param[key]);
252
+ if (key == "int")
253
+ return new _DERInteger(param[key]);
254
+ if (key == "bitstr")
255
+ return new _DERBitString(param[key]);
256
+ if (key == "octstr")
257
+ return new _DEROctetString(param[key]);
258
+ if (key == "null")
259
+ return new _DERNull(param[key]);
260
+ if (key == "oid")
261
+ return new _DERObjectIdentifier(param[key]);
262
+ if (key == "enum")
263
+ return new _DEREnumerated(param[key]);
264
+ if (key == "utf8str")
265
+ return new _DERUTF8String(param[key]);
266
+ if (key == "numstr")
267
+ return new _DERNumericString(param[key]);
268
+ if (key == "prnstr")
269
+ return new _DERPrintableString(param[key]);
270
+ if (key == "telstr")
271
+ return new _DERTeletexString(param[key]);
272
+ if (key == "ia5str")
273
+ return new _DERIA5String(param[key]);
274
+ if (key == "utctime")
275
+ return new _DERUTCTime(param[key]);
276
+ if (key == "gentime")
277
+ return new _DERGeneralizedTime(param[key]);
278
+ if (key == "seq") {
279
+ var paramList = param[key];
280
+ var a = [];
281
+ for (var i = 0; i < paramList.length; i++) {
282
+ var asn1Obj = _newObject(paramList[i]);
283
+ a.push(asn1Obj);
284
+ }
285
+ return new _DERSequence({ 'array': a });
286
+ }
287
+ if (key == "set") {
288
+ var paramList = param[key];
289
+ var a = [];
290
+ for (var i = 0; i < paramList.length; i++) {
291
+ var asn1Obj = _newObject(paramList[i]);
292
+ a.push(asn1Obj);
293
+ }
294
+ return new _DERSet({ 'array': a });
295
+ }
296
+ if (key == "tag") {
297
+ var tagParam = param[key];
298
+ if (Object.prototype.toString.call(tagParam) === '[object Array]' &&
299
+ tagParam.length == 3) {
300
+ var obj = _newObject(tagParam[2]);
301
+ return new _DERTaggedObject({ tag: tagParam[0],
302
+ explicit: tagParam[1],
303
+ obj: obj });
304
+ }
305
+ else {
306
+ var newParam = {};
307
+ if (tagParam.explicit !== undefined)
308
+ newParam.explicit = tagParam.explicit;
309
+ if (tagParam.tag !== undefined)
310
+ newParam.tag = tagParam.tag;
311
+ if (tagParam.obj === undefined)
312
+ throw "obj shall be specified for 'tag'.";
313
+ newParam.obj = _newObject(tagParam.obj);
314
+ return new _DERTaggedObject(newParam);
315
+ }
316
+ }
317
+ };
318
+ /**
319
+ * get encoded hexadecimal string of ASN1Object specifed by JSON parameters
320
+ * @name jsonToASN1HEX
321
+ * @memberOf KJUR.asn1.ASN1Util
322
+ * @function
323
+ * @param {Array} param JSON parameter to generate ASN1Object
324
+ * @return hexadecimal string of ASN1Object
325
+ * @since asn1 1.0.4
326
+ * @description
327
+ * As for ASN.1 object representation of JSON object,
328
+ * please see {@link newObject}.
329
+ * @example
330
+ * jsonToASN1HEX({'prnstr': 'aaa'});
331
+ */
332
+ this.jsonToASN1HEX = function (param) {
333
+ var asn1Obj = this.newObject(param);
334
+ return asn1Obj.getEncodedHex();
335
+ };
336
+ };
337
+ /**
338
+ * get dot noted oid number string from hexadecimal value of OID
339
+ * @name oidHexToInt
340
+ * @memberOf KJUR.asn1.ASN1Util
341
+ * @function
342
+ * @param {String} hex hexadecimal value of object identifier
343
+ * @return {String} dot noted string of object identifier
344
+ * @since jsrsasign 4.8.3 asn1 1.0.7
345
+ * @description
346
+ * This static method converts from hexadecimal string representation of
347
+ * ASN.1 value of object identifier to oid number string.
348
+ * @example
349
+ * KJUR.asn1.ASN1Util.oidHexToInt('550406') &rarr; "2.5.4.6"
350
+ */
351
+ KJUR.asn1.ASN1Util.oidHexToInt = function (hex) {
352
+ var s = "";
353
+ var i01 = parseInt(hex.substr(0, 2), 16);
354
+ var i0 = Math.floor(i01 / 40);
355
+ var i1 = i01 % 40;
356
+ var s = i0 + "." + i1;
357
+ var binbuf = "";
358
+ for (var i = 2; i < hex.length; i += 2) {
359
+ var value = parseInt(hex.substr(i, 2), 16);
360
+ var bin = ("00000000" + value.toString(2)).slice(-8);
361
+ binbuf = binbuf + bin.substr(1, 7);
362
+ if (bin.substr(0, 1) == "0") {
363
+ var bi = new BigInteger(binbuf, 2);
364
+ s = s + "." + bi.toString(10);
365
+ binbuf = "";
366
+ }
367
+ }
368
+ ;
369
+ return s;
370
+ };
371
+ /**
372
+ * get hexadecimal value of object identifier from dot noted oid value
373
+ * @name oidIntToHex
374
+ * @memberOf KJUR.asn1.ASN1Util
375
+ * @function
376
+ * @param {String} oidString dot noted string of object identifier
377
+ * @return {String} hexadecimal value of object identifier
378
+ * @since jsrsasign 4.8.3 asn1 1.0.7
379
+ * @description
380
+ * This static method converts from object identifier value string.
381
+ * to hexadecimal string representation of it.
382
+ * @example
383
+ * KJUR.asn1.ASN1Util.oidIntToHex("2.5.4.6") &rarr; "550406"
384
+ */
385
+ KJUR.asn1.ASN1Util.oidIntToHex = function (oidString) {
386
+ var itox = function (i) {
387
+ var h = i.toString(16);
388
+ if (h.length == 1)
389
+ h = '0' + h;
390
+ return h;
391
+ };
392
+ var roidtox = function (roid) {
393
+ var h = '';
394
+ var bi = new BigInteger(roid, 10);
395
+ var b = bi.toString(2);
396
+ var padLen = 7 - b.length % 7;
397
+ if (padLen == 7)
398
+ padLen = 0;
399
+ var bPad = '';
400
+ for (var i = 0; i < padLen; i++)
401
+ bPad += '0';
402
+ b = bPad + b;
403
+ for (var i = 0; i < b.length - 1; i += 7) {
404
+ var b8 = b.substr(i, 7);
405
+ if (i != b.length - 7)
406
+ b8 = '1' + b8;
407
+ h += itox(parseInt(b8, 2));
408
+ }
409
+ return h;
410
+ };
411
+ if (!oidString.match(/^[0-9.]+$/)) {
412
+ throw "malformed oid string: " + oidString;
413
+ }
414
+ var h = '';
415
+ var a = oidString.split('.');
416
+ var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);
417
+ h += itox(i0);
418
+ a.splice(0, 2);
419
+ for (var i = 0; i < a.length; i++) {
420
+ h += roidtox(a[i]);
421
+ }
422
+ return h;
423
+ };
424
+ // ********************************************************************
425
+ // Abstract ASN.1 Classes
426
+ // ********************************************************************
427
+ // ********************************************************************
428
+ /**
429
+ * base class for ASN.1 DER encoder object
430
+ * @name KJUR.asn1.ASN1Object
431
+ * @class base class for ASN.1 DER encoder object
432
+ * @property {Boolean} isModified flag whether internal data was changed
433
+ * @property {String} hTLV hexadecimal string of ASN.1 TLV
434
+ * @property {String} hT hexadecimal string of ASN.1 TLV tag(T)
435
+ * @property {String} hL hexadecimal string of ASN.1 TLV length(L)
436
+ * @property {String} hV hexadecimal string of ASN.1 TLV value(V)
437
+ * @description
438
+ */
439
+ KJUR.asn1.ASN1Object = function () {
440
+ var isModified = true;
441
+ var hTLV = null;
442
+ var hT = '00';
443
+ var hL = '00';
444
+ var hV = '';
445
+ /**
446
+ * get hexadecimal ASN.1 TLV length(L) bytes from TLV value(V)
447
+ * @name getLengthHexFromValue
448
+ * @memberOf KJUR.asn1.ASN1Object#
449
+ * @function
450
+ * @return {String} hexadecimal string of ASN.1 TLV length(L)
451
+ */
452
+ this.getLengthHexFromValue = function () {
453
+ if (typeof this.hV == "undefined" || this.hV == null) {
454
+ throw "this.hV is null or undefined.";
455
+ }
456
+ if (this.hV.length % 2 == 1) {
457
+ throw "value hex must be even length: n=" + hV.length + ",v=" + this.hV;
458
+ }
459
+ var n = this.hV.length / 2;
460
+ var hN = n.toString(16);
461
+ if (hN.length % 2 == 1) {
462
+ hN = "0" + hN;
463
+ }
464
+ if (n < 128) {
465
+ return hN;
466
+ }
467
+ else {
468
+ var hNlen = hN.length / 2;
469
+ if (hNlen > 15) {
470
+ throw "ASN.1 length too long to represent by 8x: n = " + n.toString(16);
471
+ }
472
+ var head = 128 + hNlen;
473
+ return head.toString(16) + hN;
474
+ }
475
+ };
476
+ /**
477
+ * get hexadecimal string of ASN.1 TLV bytes
478
+ * @name getEncodedHex
479
+ * @memberOf KJUR.asn1.ASN1Object#
480
+ * @function
481
+ * @return {String} hexadecimal string of ASN.1 TLV
482
+ */
483
+ this.getEncodedHex = function () {
484
+ if (this.hTLV == null || this.isModified) {
485
+ this.hV = this.getFreshValueHex();
486
+ this.hL = this.getLengthHexFromValue();
487
+ this.hTLV = this.hT + this.hL + this.hV;
488
+ this.isModified = false;
489
+ //alert("first time: " + this.hTLV);
490
+ }
491
+ return this.hTLV;
492
+ };
493
+ /**
494
+ * get hexadecimal string of ASN.1 TLV value(V) bytes
495
+ * @name getValueHex
496
+ * @memberOf KJUR.asn1.ASN1Object#
497
+ * @function
498
+ * @return {String} hexadecimal string of ASN.1 TLV value(V) bytes
499
+ */
500
+ this.getValueHex = function () {
501
+ this.getEncodedHex();
502
+ return this.hV;
503
+ };
504
+ this.getFreshValueHex = function () {
505
+ return '';
506
+ };
507
+ };
508
+ // == BEGIN DERAbstractString ================================================
509
+ /**
510
+ * base class for ASN.1 DER string classes
511
+ * @name KJUR.asn1.DERAbstractString
512
+ * @class base class for ASN.1 DER string classes
513
+ * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})
514
+ * @property {String} s internal string of value
515
+ * @extends KJUR.asn1.ASN1Object
516
+ * @description
517
+ * <br/>
518
+ * As for argument 'params' for constructor, you can specify one of
519
+ * following properties:
520
+ * <ul>
521
+ * <li>str - specify initial ASN.1 value(V) by a string</li>
522
+ * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>
523
+ * </ul>
524
+ * NOTE: 'params' can be omitted.
525
+ */
526
+ KJUR.asn1.DERAbstractString = function (params) {
527
+ KJUR.asn1.DERAbstractString.superclass.constructor.call(this);
528
+ var s = null;
529
+ var hV = null;
530
+ /**
531
+ * get string value of this string object
532
+ * @name getString
533
+ * @memberOf KJUR.asn1.DERAbstractString#
534
+ * @function
535
+ * @return {String} string value of this string object
536
+ */
537
+ this.getString = function () {
538
+ return this.s;
539
+ };
540
+ /**
541
+ * set value by a string
542
+ * @name setString
543
+ * @memberOf KJUR.asn1.DERAbstractString#
544
+ * @function
545
+ * @param {String} newS value by a string to set
546
+ */
547
+ this.setString = function (newS) {
548
+ this.hTLV = null;
549
+ this.isModified = true;
550
+ this.s = newS;
551
+ this.hV = stohex(this.s);
552
+ };
553
+ /**
554
+ * set value by a hexadecimal string
555
+ * @name setStringHex
556
+ * @memberOf KJUR.asn1.DERAbstractString#
557
+ * @function
558
+ * @param {String} newHexString value by a hexadecimal string to set
559
+ */
560
+ this.setStringHex = function (newHexString) {
561
+ this.hTLV = null;
562
+ this.isModified = true;
563
+ this.s = null;
564
+ this.hV = newHexString;
565
+ };
566
+ this.getFreshValueHex = function () {
567
+ return this.hV;
568
+ };
569
+ if (typeof params != "undefined") {
570
+ if (typeof params == "string") {
571
+ this.setString(params);
572
+ }
573
+ else if (typeof params['str'] != "undefined") {
574
+ this.setString(params['str']);
575
+ }
576
+ else if (typeof params['hex'] != "undefined") {
577
+ this.setStringHex(params['hex']);
578
+ }
579
+ }
580
+ };
581
+ YAHOO.lang.extend(KJUR.asn1.DERAbstractString, KJUR.asn1.ASN1Object);
582
+ // == END DERAbstractString ================================================
583
+ // == BEGIN DERAbstractTime ==================================================
584
+ /**
585
+ * base class for ASN.1 DER Generalized/UTCTime class
586
+ * @name KJUR.asn1.DERAbstractTime
587
+ * @class base class for ASN.1 DER Generalized/UTCTime class
588
+ * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})
589
+ * @extends KJUR.asn1.ASN1Object
590
+ * @description
591
+ * @see KJUR.asn1.ASN1Object - superclass
592
+ */
593
+ KJUR.asn1.DERAbstractTime = function (params) {
594
+ KJUR.asn1.DERAbstractTime.superclass.constructor.call(this);
595
+ var s = null;
596
+ var date = null;
597
+ // --- PRIVATE METHODS --------------------
598
+ this.localDateToUTC = function (d) {
599
+ utc = d.getTime() + (d.getTimezoneOffset() * 60000);
600
+ var utcDate = new Date(utc);
601
+ return utcDate;
602
+ };
603
+ /*
604
+ * format date string by Data object
605
+ * @name formatDate
606
+ * @memberOf KJUR.asn1.AbstractTime;
607
+ * @param {Date} dateObject
608
+ * @param {string} type 'utc' or 'gen'
609
+ * @param {boolean} withMillis flag for with millisections or not
610
+ * @description
611
+ * 'withMillis' flag is supported from asn1 1.0.6.
612
+ */
613
+ this.formatDate = function (dateObject, type, withMillis) {
614
+ var pad = this.zeroPadding;
615
+ var d = this.localDateToUTC(dateObject);
616
+ var year = String(d.getFullYear());
617
+ if (type == 'utc')
618
+ year = year.substr(2, 2);
619
+ var month = pad(String(d.getMonth() + 1), 2);
620
+ var day = pad(String(d.getDate()), 2);
621
+ var hour = pad(String(d.getHours()), 2);
622
+ var min = pad(String(d.getMinutes()), 2);
623
+ var sec = pad(String(d.getSeconds()), 2);
624
+ var s = year + month + day + hour + min + sec;
625
+ if (withMillis === true) {
626
+ var millis = d.getMilliseconds();
627
+ if (millis != 0) {
628
+ var sMillis = pad(String(millis), 3);
629
+ sMillis = sMillis.replace(/[0]+$/, "");
630
+ s = s + "." + sMillis;
631
+ }
632
+ }
633
+ return s + "Z";
634
+ };
635
+ this.zeroPadding = function (s, len) {
636
+ if (s.length >= len)
637
+ return s;
638
+ return new Array(len - s.length + 1).join('0') + s;
639
+ };
640
+ // --- PUBLIC METHODS --------------------
641
+ /**
642
+ * get string value of this string object
643
+ * @name getString
644
+ * @memberOf KJUR.asn1.DERAbstractTime#
645
+ * @function
646
+ * @return {String} string value of this time object
647
+ */
648
+ this.getString = function () {
649
+ return this.s;
650
+ };
651
+ /**
652
+ * set value by a string
653
+ * @name setString
654
+ * @memberOf KJUR.asn1.DERAbstractTime#
655
+ * @function
656
+ * @param {String} newS value by a string to set such like "130430235959Z"
657
+ */
658
+ this.setString = function (newS) {
659
+ this.hTLV = null;
660
+ this.isModified = true;
661
+ this.s = newS;
662
+ this.hV = stohex(newS);
663
+ };
664
+ /**
665
+ * set value by a Date object
666
+ * @name setByDateValue
667
+ * @memberOf KJUR.asn1.DERAbstractTime#
668
+ * @function
669
+ * @param {Integer} year year of date (ex. 2013)
670
+ * @param {Integer} month month of date between 1 and 12 (ex. 12)
671
+ * @param {Integer} day day of month
672
+ * @param {Integer} hour hours of date
673
+ * @param {Integer} min minutes of date
674
+ * @param {Integer} sec seconds of date
675
+ */
676
+ this.setByDateValue = function (year, month, day, hour, min, sec) {
677
+ var dateObject = new Date(Date.UTC(year, month - 1, day, hour, min, sec, 0));
678
+ this.setByDate(dateObject);
679
+ };
680
+ this.getFreshValueHex = function () {
681
+ return this.hV;
682
+ };
683
+ };
684
+ YAHOO.lang.extend(KJUR.asn1.DERAbstractTime, KJUR.asn1.ASN1Object);
685
+ // == END DERAbstractTime ==================================================
686
+ // == BEGIN DERAbstractStructured ============================================
687
+ /**
688
+ * base class for ASN.1 DER structured class
689
+ * @name KJUR.asn1.DERAbstractStructured
690
+ * @class base class for ASN.1 DER structured class
691
+ * @property {Array} asn1Array internal array of ASN1Object
692
+ * @extends KJUR.asn1.ASN1Object
693
+ * @description
694
+ * @see KJUR.asn1.ASN1Object - superclass
695
+ */
696
+ KJUR.asn1.DERAbstractStructured = function (params) {
697
+ KJUR.asn1.DERAbstractString.superclass.constructor.call(this);
698
+ var asn1Array = null;
699
+ /**
700
+ * set value by array of ASN1Object
701
+ * @name setByASN1ObjectArray
702
+ * @memberOf KJUR.asn1.DERAbstractStructured#
703
+ * @function
704
+ * @param {array} asn1ObjectArray array of ASN1Object to set
705
+ */
706
+ this.setByASN1ObjectArray = function (asn1ObjectArray) {
707
+ this.hTLV = null;
708
+ this.isModified = true;
709
+ this.asn1Array = asn1ObjectArray;
710
+ };
711
+ /**
712
+ * append an ASN1Object to internal array
713
+ * @name appendASN1Object
714
+ * @memberOf KJUR.asn1.DERAbstractStructured#
715
+ * @function
716
+ * @param {ASN1Object} asn1Object to add
717
+ */
718
+ this.appendASN1Object = function (asn1Object) {
719
+ this.hTLV = null;
720
+ this.isModified = true;
721
+ this.asn1Array.push(asn1Object);
722
+ };
723
+ this.asn1Array = new Array();
724
+ if (typeof params != "undefined") {
725
+ if (typeof params['array'] != "undefined") {
726
+ this.asn1Array = params['array'];
727
+ }
728
+ }
729
+ };
730
+ YAHOO.lang.extend(KJUR.asn1.DERAbstractStructured, KJUR.asn1.ASN1Object);
731
+ // ********************************************************************
732
+ // ASN.1 Object Classes
733
+ // ********************************************************************
734
+ // ********************************************************************
735
+ /**
736
+ * class for ASN.1 DER Boolean
737
+ * @name KJUR.asn1.DERBoolean
738
+ * @class class for ASN.1 DER Boolean
739
+ * @extends KJUR.asn1.ASN1Object
740
+ * @description
741
+ * @see KJUR.asn1.ASN1Object - superclass
742
+ */
743
+ KJUR.asn1.DERBoolean = function () {
744
+ KJUR.asn1.DERBoolean.superclass.constructor.call(this);
745
+ this.hT = "01";
746
+ this.hTLV = "0101ff";
747
+ };
748
+ YAHOO.lang.extend(KJUR.asn1.DERBoolean, KJUR.asn1.ASN1Object);
749
+ // ********************************************************************
750
+ /**
751
+ * class for ASN.1 DER Integer
752
+ * @name KJUR.asn1.DERInteger
753
+ * @class class for ASN.1 DER Integer
754
+ * @extends KJUR.asn1.ASN1Object
755
+ * @description
756
+ * <br/>
757
+ * As for argument 'params' for constructor, you can specify one of
758
+ * following properties:
759
+ * <ul>
760
+ * <li>int - specify initial ASN.1 value(V) by integer value</li>
761
+ * <li>bigint - specify initial ASN.1 value(V) by BigInteger object</li>
762
+ * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>
763
+ * </ul>
764
+ * NOTE: 'params' can be omitted.
765
+ */
766
+ KJUR.asn1.DERInteger = function (params) {
767
+ KJUR.asn1.DERInteger.superclass.constructor.call(this);
768
+ this.hT = "02";
769
+ /**
770
+ * set value by Tom Wu's BigInteger object
771
+ * @name setByBigInteger
772
+ * @memberOf KJUR.asn1.DERInteger#
773
+ * @function
774
+ * @param {BigInteger} bigIntegerValue to set
775
+ */
776
+ this.setByBigInteger = function (bigIntegerValue) {
777
+ this.hTLV = null;
778
+ this.isModified = true;
779
+ this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);
780
+ };
781
+ /**
782
+ * set value by integer value
783
+ * @name setByInteger
784
+ * @memberOf KJUR.asn1.DERInteger
785
+ * @function
786
+ * @param {Integer} integer value to set
787
+ */
788
+ this.setByInteger = function (intValue) {
789
+ var bi = new BigInteger(String(intValue), 10);
790
+ this.setByBigInteger(bi);
791
+ };
792
+ /**
793
+ * set value by integer value
794
+ * @name setValueHex
795
+ * @memberOf KJUR.asn1.DERInteger#
796
+ * @function
797
+ * @param {String} hexadecimal string of integer value
798
+ * @description
799
+ * <br/>
800
+ * NOTE: Value shall be represented by minimum octet length of
801
+ * two's complement representation.
802
+ * @example
803
+ * new KJUR.asn1.DERInteger(123);
804
+ * new KJUR.asn1.DERInteger({'int': 123});
805
+ * new KJUR.asn1.DERInteger({'hex': '1fad'});
806
+ */
807
+ this.setValueHex = function (newHexString) {
808
+ this.hV = newHexString;
809
+ };
810
+ this.getFreshValueHex = function () {
811
+ return this.hV;
812
+ };
813
+ if (typeof params != "undefined") {
814
+ if (typeof params['bigint'] != "undefined") {
815
+ this.setByBigInteger(params['bigint']);
816
+ }
817
+ else if (typeof params['int'] != "undefined") {
818
+ this.setByInteger(params['int']);
819
+ }
820
+ else if (typeof params == "number") {
821
+ this.setByInteger(params);
822
+ }
823
+ else if (typeof params['hex'] != "undefined") {
824
+ this.setValueHex(params['hex']);
825
+ }
826
+ }
827
+ };
828
+ YAHOO.lang.extend(KJUR.asn1.DERInteger, KJUR.asn1.ASN1Object);
829
+ // ********************************************************************
830
+ /**
831
+ * class for ASN.1 DER encoded BitString primitive
832
+ * @name KJUR.asn1.DERBitString
833
+ * @class class for ASN.1 DER encoded BitString primitive
834
+ * @extends KJUR.asn1.ASN1Object
835
+ * @description
836
+ * <br/>
837
+ * As for argument 'params' for constructor, you can specify one of
838
+ * following properties:
839
+ * <ul>
840
+ * <li>bin - specify binary string (ex. '10111')</li>
841
+ * <li>array - specify array of boolean (ex. [true,false,true,true])</li>
842
+ * <li>hex - specify hexadecimal string of ASN.1 value(V) including unused bits</li>
843
+ * <li>obj - specify {@link KJUR.asn1.ASN1Util.newObject}
844
+ * argument for "BitString encapsulates" structure.</li>
845
+ * </ul>
846
+ * NOTE1: 'params' can be omitted.<br/>
847
+ * NOTE2: 'obj' parameter have been supported since
848
+ * asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).<br/>
849
+ * @example
850
+ * // default constructor
851
+ * o = new KJUR.asn1.DERBitString();
852
+ * // initialize with binary string
853
+ * o = new KJUR.asn1.DERBitString({bin: "1011"});
854
+ * // initialize with boolean array
855
+ * o = new KJUR.asn1.DERBitString({array: [true,false,true,true]});
856
+ * // initialize with hexadecimal string (04 is unused bits)
857
+ * o = new KJUR.asn1.DEROctetString({hex: "04bac0"});
858
+ * // initialize with ASN1Util.newObject argument for encapsulated
859
+ * o = new KJUR.asn1.DERBitString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});
860
+ * // above generates a ASN.1 data like this:
861
+ * // BIT STRING, encapsulates {
862
+ * // SEQUENCE {
863
+ * // INTEGER 3
864
+ * // PrintableString 'aaa'
865
+ * // }
866
+ * // }
867
+ */
868
+ KJUR.asn1.DERBitString = function (params) {
869
+ if (params !== undefined && typeof params.obj !== "undefined") {
870
+ var o = KJUR.asn1.ASN1Util.newObject(params.obj);
871
+ params.hex = "00" + o.getEncodedHex();
872
+ }
873
+ KJUR.asn1.DERBitString.superclass.constructor.call(this);
874
+ this.hT = "03";
875
+ /**
876
+ * set ASN.1 value(V) by a hexadecimal string including unused bits
877
+ * @name setHexValueIncludingUnusedBits
878
+ * @memberOf KJUR.asn1.DERBitString#
879
+ * @function
880
+ * @param {String} newHexStringIncludingUnusedBits
881
+ */
882
+ this.setHexValueIncludingUnusedBits = function (newHexStringIncludingUnusedBits) {
883
+ this.hTLV = null;
884
+ this.isModified = true;
885
+ this.hV = newHexStringIncludingUnusedBits;
886
+ };
887
+ /**
888
+ * set ASN.1 value(V) by unused bit and hexadecimal string of value
889
+ * @name setUnusedBitsAndHexValue
890
+ * @memberOf KJUR.asn1.DERBitString#
891
+ * @function
892
+ * @param {Integer} unusedBits
893
+ * @param {String} hValue
894
+ */
895
+ this.setUnusedBitsAndHexValue = function (unusedBits, hValue) {
896
+ if (unusedBits < 0 || 7 < unusedBits) {
897
+ throw "unused bits shall be from 0 to 7: u = " + unusedBits;
898
+ }
899
+ var hUnusedBits = "0" + unusedBits;
900
+ this.hTLV = null;
901
+ this.isModified = true;
902
+ this.hV = hUnusedBits + hValue;
903
+ };
904
+ /**
905
+ * set ASN.1 DER BitString by binary string<br/>
906
+ * @name setByBinaryString
907
+ * @memberOf KJUR.asn1.DERBitString#
908
+ * @function
909
+ * @param {String} binaryString binary value string (i.e. '10111')
910
+ * @description
911
+ * Its unused bits will be calculated automatically by length of
912
+ * 'binaryValue'. <br/>
913
+ * NOTE: Trailing zeros '0' will be ignored.
914
+ * @example
915
+ * o = new KJUR.asn1.DERBitString();
916
+ * o.setByBooleanArray("01011");
917
+ */
918
+ this.setByBinaryString = function (binaryString) {
919
+ binaryString = binaryString.replace(/0+$/, '');
920
+ var unusedBits = 8 - binaryString.length % 8;
921
+ if (unusedBits == 8)
922
+ unusedBits = 0;
923
+ for (var i = 0; i <= unusedBits; i++) {
924
+ binaryString += '0';
925
+ }
926
+ var h = '';
927
+ for (var i = 0; i < binaryString.length - 1; i += 8) {
928
+ var b = binaryString.substr(i, 8);
929
+ var x = parseInt(b, 2).toString(16);
930
+ if (x.length == 1)
931
+ x = '0' + x;
932
+ h += x;
933
+ }
934
+ this.hTLV = null;
935
+ this.isModified = true;
936
+ this.hV = '0' + unusedBits + h;
937
+ };
938
+ /**
939
+ * set ASN.1 TLV value(V) by an array of boolean<br/>
940
+ * @name setByBooleanArray
941
+ * @memberOf KJUR.asn1.DERBitString#
942
+ * @function
943
+ * @param {array} booleanArray array of boolean (ex. [true, false, true])
944
+ * @description
945
+ * NOTE: Trailing falses will be ignored in the ASN.1 DER Object.
946
+ * @example
947
+ * o = new KJUR.asn1.DERBitString();
948
+ * o.setByBooleanArray([false, true, false, true, true]);
949
+ */
950
+ this.setByBooleanArray = function (booleanArray) {
951
+ var s = '';
952
+ for (var i = 0; i < booleanArray.length; i++) {
953
+ if (booleanArray[i] == true) {
954
+ s += '1';
955
+ }
956
+ else {
957
+ s += '0';
958
+ }
959
+ }
960
+ this.setByBinaryString(s);
961
+ };
962
+ /**
963
+ * generate an array of falses with specified length<br/>
964
+ * @name newFalseArray
965
+ * @memberOf KJUR.asn1.DERBitString
966
+ * @function
967
+ * @param {Integer} nLength length of array to generate
968
+ * @return {array} array of boolean falses
969
+ * @description
970
+ * This static method may be useful to initialize boolean array.
971
+ * @example
972
+ * o = new KJUR.asn1.DERBitString();
973
+ * o.newFalseArray(3) &rarr; [false, false, false]
974
+ */
975
+ this.newFalseArray = function (nLength) {
976
+ var a = new Array(nLength);
977
+ for (var i = 0; i < nLength; i++) {
978
+ a[i] = false;
979
+ }
980
+ return a;
981
+ };
982
+ this.getFreshValueHex = function () {
983
+ return this.hV;
984
+ };
985
+ if (typeof params != "undefined") {
986
+ if (typeof params == "string" && params.toLowerCase().match(/^[0-9a-f]+$/)) {
987
+ this.setHexValueIncludingUnusedBits(params);
988
+ }
989
+ else if (typeof params['hex'] != "undefined") {
990
+ this.setHexValueIncludingUnusedBits(params['hex']);
991
+ }
992
+ else if (typeof params['bin'] != "undefined") {
993
+ this.setByBinaryString(params['bin']);
994
+ }
995
+ else if (typeof params['array'] != "undefined") {
996
+ this.setByBooleanArray(params['array']);
997
+ }
998
+ }
999
+ };
1000
+ YAHOO.lang.extend(KJUR.asn1.DERBitString, KJUR.asn1.ASN1Object);
1001
+ // ********************************************************************
1002
+ /**
1003
+ * class for ASN.1 DER OctetString<br/>
1004
+ * @name KJUR.asn1.DEROctetString
1005
+ * @class class for ASN.1 DER OctetString
1006
+ * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})
1007
+ * @extends KJUR.asn1.DERAbstractString
1008
+ * @description
1009
+ * This class provides ASN.1 OctetString simple type.<br/>
1010
+ * Supported "params" attributes are:
1011
+ * <ul>
1012
+ * <li>str - to set a string as a value</li>
1013
+ * <li>hex - to set a hexadecimal string as a value</li>
1014
+ * <li>obj - to set a encapsulated ASN.1 value by JSON object
1015
+ * which is defined in {@link KJUR.asn1.ASN1Util.newObject}</li>
1016
+ * </ul>
1017
+ * NOTE: A parameter 'obj' have been supported
1018
+ * for "OCTET STRING, encapsulates" structure.
1019
+ * since asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).
1020
+ * @see KJUR.asn1.DERAbstractString - superclass
1021
+ * @example
1022
+ * // default constructor
1023
+ * o = new KJUR.asn1.DEROctetString();
1024
+ * // initialize with string
1025
+ * o = new KJUR.asn1.DEROctetString({str: "aaa"});
1026
+ * // initialize with hexadecimal string
1027
+ * o = new KJUR.asn1.DEROctetString({hex: "616161"});
1028
+ * // initialize with ASN1Util.newObject argument
1029
+ * o = new KJUR.asn1.DEROctetString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});
1030
+ * // above generates a ASN.1 data like this:
1031
+ * // OCTET STRING, encapsulates {
1032
+ * // SEQUENCE {
1033
+ * // INTEGER 3
1034
+ * // PrintableString 'aaa'
1035
+ * // }
1036
+ * // }
1037
+ */
1038
+ KJUR.asn1.DEROctetString = function (params) {
1039
+ if (params !== undefined && typeof params.obj !== "undefined") {
1040
+ var o = KJUR.asn1.ASN1Util.newObject(params.obj);
1041
+ params.hex = o.getEncodedHex();
1042
+ }
1043
+ KJUR.asn1.DEROctetString.superclass.constructor.call(this, params);
1044
+ this.hT = "04";
1045
+ };
1046
+ YAHOO.lang.extend(KJUR.asn1.DEROctetString, KJUR.asn1.DERAbstractString);
1047
+ // ********************************************************************
1048
+ /**
1049
+ * class for ASN.1 DER Null
1050
+ * @name KJUR.asn1.DERNull
1051
+ * @class class for ASN.1 DER Null
1052
+ * @extends KJUR.asn1.ASN1Object
1053
+ * @description
1054
+ * @see KJUR.asn1.ASN1Object - superclass
1055
+ */
1056
+ KJUR.asn1.DERNull = function () {
1057
+ KJUR.asn1.DERNull.superclass.constructor.call(this);
1058
+ this.hT = "05";
1059
+ this.hTLV = "0500";
1060
+ };
1061
+ YAHOO.lang.extend(KJUR.asn1.DERNull, KJUR.asn1.ASN1Object);
1062
+ // ********************************************************************
1063
+ /**
1064
+ * class for ASN.1 DER ObjectIdentifier
1065
+ * @name KJUR.asn1.DERObjectIdentifier
1066
+ * @class class for ASN.1 DER ObjectIdentifier
1067
+ * @param {Array} params associative array of parameters (ex. {'oid': '2.5.4.5'})
1068
+ * @extends KJUR.asn1.ASN1Object
1069
+ * @description
1070
+ * <br/>
1071
+ * As for argument 'params' for constructor, you can specify one of
1072
+ * following properties:
1073
+ * <ul>
1074
+ * <li>oid - specify initial ASN.1 value(V) by a oid string (ex. 2.5.4.13)</li>
1075
+ * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>
1076
+ * </ul>
1077
+ * NOTE: 'params' can be omitted.
1078
+ */
1079
+ KJUR.asn1.DERObjectIdentifier = function (params) {
1080
+ var itox = function (i) {
1081
+ var h = i.toString(16);
1082
+ if (h.length == 1)
1083
+ h = '0' + h;
1084
+ return h;
1085
+ };
1086
+ var roidtox = function (roid) {
1087
+ var h = '';
1088
+ var bi = new BigInteger(roid, 10);
1089
+ var b = bi.toString(2);
1090
+ var padLen = 7 - b.length % 7;
1091
+ if (padLen == 7)
1092
+ padLen = 0;
1093
+ var bPad = '';
1094
+ for (var i = 0; i < padLen; i++)
1095
+ bPad += '0';
1096
+ b = bPad + b;
1097
+ for (var i = 0; i < b.length - 1; i += 7) {
1098
+ var b8 = b.substr(i, 7);
1099
+ if (i != b.length - 7)
1100
+ b8 = '1' + b8;
1101
+ h += itox(parseInt(b8, 2));
1102
+ }
1103
+ return h;
1104
+ };
1105
+ KJUR.asn1.DERObjectIdentifier.superclass.constructor.call(this);
1106
+ this.hT = "06";
1107
+ /**
1108
+ * set value by a hexadecimal string
1109
+ * @name setValueHex
1110
+ * @memberOf KJUR.asn1.DERObjectIdentifier#
1111
+ * @function
1112
+ * @param {String} newHexString hexadecimal value of OID bytes
1113
+ */
1114
+ this.setValueHex = function (newHexString) {
1115
+ this.hTLV = null;
1116
+ this.isModified = true;
1117
+ this.s = null;
1118
+ this.hV = newHexString;
1119
+ };
1120
+ /**
1121
+ * set value by a OID string<br/>
1122
+ * @name setValueOidString
1123
+ * @memberOf KJUR.asn1.DERObjectIdentifier#
1124
+ * @function
1125
+ * @param {String} oidString OID string (ex. 2.5.4.13)
1126
+ * @example
1127
+ * o = new KJUR.asn1.DERObjectIdentifier();
1128
+ * o.setValueOidString("2.5.4.13");
1129
+ */
1130
+ this.setValueOidString = function (oidString) {
1131
+ if (!oidString.match(/^[0-9.]+$/)) {
1132
+ throw "malformed oid string: " + oidString;
1133
+ }
1134
+ var h = '';
1135
+ var a = oidString.split('.');
1136
+ var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);
1137
+ h += itox(i0);
1138
+ a.splice(0, 2);
1139
+ for (var i = 0; i < a.length; i++) {
1140
+ h += roidtox(a[i]);
1141
+ }
1142
+ this.hTLV = null;
1143
+ this.isModified = true;
1144
+ this.s = null;
1145
+ this.hV = h;
1146
+ };
1147
+ /**
1148
+ * set value by a OID name
1149
+ * @name setValueName
1150
+ * @memberOf KJUR.asn1.DERObjectIdentifier#
1151
+ * @function
1152
+ * @param {String} oidName OID name (ex. 'serverAuth')
1153
+ * @since 1.0.1
1154
+ * @description
1155
+ * OID name shall be defined in 'KJUR.asn1.x509.OID.name2oidList'.
1156
+ * Otherwise raise error.
1157
+ * @example
1158
+ * o = new KJUR.asn1.DERObjectIdentifier();
1159
+ * o.setValueName("serverAuth");
1160
+ */
1161
+ this.setValueName = function (oidName) {
1162
+ var oid = KJUR.asn1.x509.OID.name2oid(oidName);
1163
+ if (oid !== '') {
1164
+ this.setValueOidString(oid);
1165
+ }
1166
+ else {
1167
+ throw "DERObjectIdentifier oidName undefined: " + oidName;
1168
+ }
1169
+ };
1170
+ this.getFreshValueHex = function () {
1171
+ return this.hV;
1172
+ };
1173
+ if (params !== undefined) {
1174
+ if (typeof params === "string") {
1175
+ if (params.match(/^[0-2].[0-9.]+$/)) {
1176
+ this.setValueOidString(params);
1177
+ }
1178
+ else {
1179
+ this.setValueName(params);
1180
+ }
1181
+ }
1182
+ else if (params.oid !== undefined) {
1183
+ this.setValueOidString(params.oid);
1184
+ }
1185
+ else if (params.hex !== undefined) {
1186
+ this.setValueHex(params.hex);
1187
+ }
1188
+ else if (params.name !== undefined) {
1189
+ this.setValueName(params.name);
1190
+ }
1191
+ }
1192
+ };
1193
+ YAHOO.lang.extend(KJUR.asn1.DERObjectIdentifier, KJUR.asn1.ASN1Object);
1194
+ // ********************************************************************
1195
+ /**
1196
+ * class for ASN.1 DER Enumerated
1197
+ * @name KJUR.asn1.DEREnumerated
1198
+ * @class class for ASN.1 DER Enumerated
1199
+ * @extends KJUR.asn1.ASN1Object
1200
+ * @description
1201
+ * <br/>
1202
+ * As for argument 'params' for constructor, you can specify one of
1203
+ * following properties:
1204
+ * <ul>
1205
+ * <li>int - specify initial ASN.1 value(V) by integer value</li>
1206
+ * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>
1207
+ * </ul>
1208
+ * NOTE: 'params' can be omitted.
1209
+ * @example
1210
+ * new KJUR.asn1.DEREnumerated(123);
1211
+ * new KJUR.asn1.DEREnumerated({int: 123});
1212
+ * new KJUR.asn1.DEREnumerated({hex: '1fad'});
1213
+ */
1214
+ KJUR.asn1.DEREnumerated = function (params) {
1215
+ KJUR.asn1.DEREnumerated.superclass.constructor.call(this);
1216
+ this.hT = "0a";
1217
+ /**
1218
+ * set value by Tom Wu's BigInteger object
1219
+ * @name setByBigInteger
1220
+ * @memberOf KJUR.asn1.DEREnumerated#
1221
+ * @function
1222
+ * @param {BigInteger} bigIntegerValue to set
1223
+ */
1224
+ this.setByBigInteger = function (bigIntegerValue) {
1225
+ this.hTLV = null;
1226
+ this.isModified = true;
1227
+ this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);
1228
+ };
1229
+ /**
1230
+ * set value by integer value
1231
+ * @name setByInteger
1232
+ * @memberOf KJUR.asn1.DEREnumerated#
1233
+ * @function
1234
+ * @param {Integer} integer value to set
1235
+ */
1236
+ this.setByInteger = function (intValue) {
1237
+ var bi = new BigInteger(String(intValue), 10);
1238
+ this.setByBigInteger(bi);
1239
+ };
1240
+ /**
1241
+ * set value by integer value
1242
+ * @name setValueHex
1243
+ * @memberOf KJUR.asn1.DEREnumerated#
1244
+ * @function
1245
+ * @param {String} hexadecimal string of integer value
1246
+ * @description
1247
+ * <br/>
1248
+ * NOTE: Value shall be represented by minimum octet length of
1249
+ * two's complement representation.
1250
+ */
1251
+ this.setValueHex = function (newHexString) {
1252
+ this.hV = newHexString;
1253
+ };
1254
+ this.getFreshValueHex = function () {
1255
+ return this.hV;
1256
+ };
1257
+ if (typeof params != "undefined") {
1258
+ if (typeof params['int'] != "undefined") {
1259
+ this.setByInteger(params['int']);
1260
+ }
1261
+ else if (typeof params == "number") {
1262
+ this.setByInteger(params);
1263
+ }
1264
+ else if (typeof params['hex'] != "undefined") {
1265
+ this.setValueHex(params['hex']);
1266
+ }
1267
+ }
1268
+ };
1269
+ YAHOO.lang.extend(KJUR.asn1.DEREnumerated, KJUR.asn1.ASN1Object);
1270
+ // ********************************************************************
1271
+ /**
1272
+ * class for ASN.1 DER UTF8String
1273
+ * @name KJUR.asn1.DERUTF8String
1274
+ * @class class for ASN.1 DER UTF8String
1275
+ * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})
1276
+ * @extends KJUR.asn1.DERAbstractString
1277
+ * @description
1278
+ * @see KJUR.asn1.DERAbstractString - superclass
1279
+ */
1280
+ KJUR.asn1.DERUTF8String = function (params) {
1281
+ KJUR.asn1.DERUTF8String.superclass.constructor.call(this, params);
1282
+ this.hT = "0c";
1283
+ };
1284
+ YAHOO.lang.extend(KJUR.asn1.DERUTF8String, KJUR.asn1.DERAbstractString);
1285
+ // ********************************************************************
1286
+ /**
1287
+ * class for ASN.1 DER NumericString
1288
+ * @name KJUR.asn1.DERNumericString
1289
+ * @class class for ASN.1 DER NumericString
1290
+ * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})
1291
+ * @extends KJUR.asn1.DERAbstractString
1292
+ * @description
1293
+ * @see KJUR.asn1.DERAbstractString - superclass
1294
+ */
1295
+ KJUR.asn1.DERNumericString = function (params) {
1296
+ KJUR.asn1.DERNumericString.superclass.constructor.call(this, params);
1297
+ this.hT = "12";
1298
+ };
1299
+ YAHOO.lang.extend(KJUR.asn1.DERNumericString, KJUR.asn1.DERAbstractString);
1300
+ // ********************************************************************
1301
+ /**
1302
+ * class for ASN.1 DER PrintableString
1303
+ * @name KJUR.asn1.DERPrintableString
1304
+ * @class class for ASN.1 DER PrintableString
1305
+ * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})
1306
+ * @extends KJUR.asn1.DERAbstractString
1307
+ * @description
1308
+ * @see KJUR.asn1.DERAbstractString - superclass
1309
+ */
1310
+ KJUR.asn1.DERPrintableString = function (params) {
1311
+ KJUR.asn1.DERPrintableString.superclass.constructor.call(this, params);
1312
+ this.hT = "13";
1313
+ };
1314
+ YAHOO.lang.extend(KJUR.asn1.DERPrintableString, KJUR.asn1.DERAbstractString);
1315
+ // ********************************************************************
1316
+ /**
1317
+ * class for ASN.1 DER TeletexString
1318
+ * @name KJUR.asn1.DERTeletexString
1319
+ * @class class for ASN.1 DER TeletexString
1320
+ * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})
1321
+ * @extends KJUR.asn1.DERAbstractString
1322
+ * @description
1323
+ * @see KJUR.asn1.DERAbstractString - superclass
1324
+ */
1325
+ KJUR.asn1.DERTeletexString = function (params) {
1326
+ KJUR.asn1.DERTeletexString.superclass.constructor.call(this, params);
1327
+ this.hT = "14";
1328
+ };
1329
+ YAHOO.lang.extend(KJUR.asn1.DERTeletexString, KJUR.asn1.DERAbstractString);
1330
+ // ********************************************************************
1331
+ /**
1332
+ * class for ASN.1 DER IA5String
1333
+ * @name KJUR.asn1.DERIA5String
1334
+ * @class class for ASN.1 DER IA5String
1335
+ * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})
1336
+ * @extends KJUR.asn1.DERAbstractString
1337
+ * @description
1338
+ * @see KJUR.asn1.DERAbstractString - superclass
1339
+ */
1340
+ KJUR.asn1.DERIA5String = function (params) {
1341
+ KJUR.asn1.DERIA5String.superclass.constructor.call(this, params);
1342
+ this.hT = "16";
1343
+ };
1344
+ YAHOO.lang.extend(KJUR.asn1.DERIA5String, KJUR.asn1.DERAbstractString);
1345
+ // ********************************************************************
1346
+ /**
1347
+ * class for ASN.1 DER UTCTime
1348
+ * @name KJUR.asn1.DERUTCTime
1349
+ * @class class for ASN.1 DER UTCTime
1350
+ * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})
1351
+ * @extends KJUR.asn1.DERAbstractTime
1352
+ * @description
1353
+ * <br/>
1354
+ * As for argument 'params' for constructor, you can specify one of
1355
+ * following properties:
1356
+ * <ul>
1357
+ * <li>str - specify initial ASN.1 value(V) by a string (ex.'130430235959Z')</li>
1358
+ * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>
1359
+ * <li>date - specify Date object.</li>
1360
+ * </ul>
1361
+ * NOTE: 'params' can be omitted.
1362
+ * <h4>EXAMPLES</h4>
1363
+ * @example
1364
+ * d1 = new KJUR.asn1.DERUTCTime();
1365
+ * d1.setString('130430125959Z');
1366
+ *
1367
+ * d2 = new KJUR.asn1.DERUTCTime({'str': '130430125959Z'});
1368
+ * d3 = new KJUR.asn1.DERUTCTime({'date': new Date(Date.UTC(2015, 0, 31, 0, 0, 0, 0))});
1369
+ * d4 = new KJUR.asn1.DERUTCTime('130430125959Z');
1370
+ */
1371
+ KJUR.asn1.DERUTCTime = function (params) {
1372
+ KJUR.asn1.DERUTCTime.superclass.constructor.call(this, params);
1373
+ this.hT = "17";
1374
+ /**
1375
+ * set value by a Date object<br/>
1376
+ * @name setByDate
1377
+ * @memberOf KJUR.asn1.DERUTCTime#
1378
+ * @function
1379
+ * @param {Date} dateObject Date object to set ASN.1 value(V)
1380
+ * @example
1381
+ * o = new KJUR.asn1.DERUTCTime();
1382
+ * o.setByDate(new Date("2016/12/31"));
1383
+ */
1384
+ this.setByDate = function (dateObject) {
1385
+ this.hTLV = null;
1386
+ this.isModified = true;
1387
+ this.date = dateObject;
1388
+ this.s = this.formatDate(this.date, 'utc');
1389
+ this.hV = stohex(this.s);
1390
+ };
1391
+ this.getFreshValueHex = function () {
1392
+ if (typeof this.date == "undefined" && typeof this.s == "undefined") {
1393
+ this.date = new Date();
1394
+ this.s = this.formatDate(this.date, 'utc');
1395
+ this.hV = stohex(this.s);
1396
+ }
1397
+ return this.hV;
1398
+ };
1399
+ if (params !== undefined) {
1400
+ if (params.str !== undefined) {
1401
+ this.setString(params.str);
1402
+ }
1403
+ else if (typeof params == "string" && params.match(/^[0-9]{12}Z$/)) {
1404
+ this.setString(params);
1405
+ }
1406
+ else if (params.hex !== undefined) {
1407
+ this.setStringHex(params.hex);
1408
+ }
1409
+ else if (params.date !== undefined) {
1410
+ this.setByDate(params.date);
1411
+ }
1412
+ }
1413
+ };
1414
+ YAHOO.lang.extend(KJUR.asn1.DERUTCTime, KJUR.asn1.DERAbstractTime);
1415
+ // ********************************************************************
1416
+ /**
1417
+ * class for ASN.1 DER GeneralizedTime
1418
+ * @name KJUR.asn1.DERGeneralizedTime
1419
+ * @class class for ASN.1 DER GeneralizedTime
1420
+ * @param {Array} params associative array of parameters (ex. {'str': '20130430235959Z'})
1421
+ * @property {Boolean} withMillis flag to show milliseconds or not
1422
+ * @extends KJUR.asn1.DERAbstractTime
1423
+ * @description
1424
+ * <br/>
1425
+ * As for argument 'params' for constructor, you can specify one of
1426
+ * following properties:
1427
+ * <ul>
1428
+ * <li>str - specify initial ASN.1 value(V) by a string (ex.'20130430235959Z')</li>
1429
+ * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>
1430
+ * <li>date - specify Date object.</li>
1431
+ * <li>millis - specify flag to show milliseconds (from 1.0.6)</li>
1432
+ * </ul>
1433
+ * NOTE1: 'params' can be omitted.
1434
+ * NOTE2: 'withMillis' property is supported from asn1 1.0.6.
1435
+ */
1436
+ KJUR.asn1.DERGeneralizedTime = function (params) {
1437
+ KJUR.asn1.DERGeneralizedTime.superclass.constructor.call(this, params);
1438
+ this.hT = "18";
1439
+ this.withMillis = false;
1440
+ /**
1441
+ * set value by a Date object
1442
+ * @name setByDate
1443
+ * @memberOf KJUR.asn1.DERGeneralizedTime#
1444
+ * @function
1445
+ * @param {Date} dateObject Date object to set ASN.1 value(V)
1446
+ * @example
1447
+ * When you specify UTC time, use 'Date.UTC' method like this:<br/>
1448
+ * o1 = new DERUTCTime();
1449
+ * o1.setByDate(date);
1450
+ *
1451
+ * date = new Date(Date.UTC(2015, 0, 31, 23, 59, 59, 0)); #2015JAN31 23:59:59
1452
+ */
1453
+ this.setByDate = function (dateObject) {
1454
+ this.hTLV = null;
1455
+ this.isModified = true;
1456
+ this.date = dateObject;
1457
+ this.s = this.formatDate(this.date, 'gen', this.withMillis);
1458
+ this.hV = stohex(this.s);
1459
+ };
1460
+ this.getFreshValueHex = function () {
1461
+ if (this.date === undefined && this.s === undefined) {
1462
+ this.date = new Date();
1463
+ this.s = this.formatDate(this.date, 'gen', this.withMillis);
1464
+ this.hV = stohex(this.s);
1465
+ }
1466
+ return this.hV;
1467
+ };
1468
+ if (params !== undefined) {
1469
+ if (params.str !== undefined) {
1470
+ this.setString(params.str);
1471
+ }
1472
+ else if (typeof params == "string" && params.match(/^[0-9]{14}Z$/)) {
1473
+ this.setString(params);
1474
+ }
1475
+ else if (params.hex !== undefined) {
1476
+ this.setStringHex(params.hex);
1477
+ }
1478
+ else if (params.date !== undefined) {
1479
+ this.setByDate(params.date);
1480
+ }
1481
+ if (params.millis === true) {
1482
+ this.withMillis = true;
1483
+ }
1484
+ }
1485
+ };
1486
+ YAHOO.lang.extend(KJUR.asn1.DERGeneralizedTime, KJUR.asn1.DERAbstractTime);
1487
+ // ********************************************************************
1488
+ /**
1489
+ * class for ASN.1 DER Sequence
1490
+ * @name KJUR.asn1.DERSequence
1491
+ * @class class for ASN.1 DER Sequence
1492
+ * @extends KJUR.asn1.DERAbstractStructured
1493
+ * @description
1494
+ * <br/>
1495
+ * As for argument 'params' for constructor, you can specify one of
1496
+ * following properties:
1497
+ * <ul>
1498
+ * <li>array - specify array of ASN1Object to set elements of content</li>
1499
+ * </ul>
1500
+ * NOTE: 'params' can be omitted.
1501
+ */
1502
+ KJUR.asn1.DERSequence = function (params) {
1503
+ KJUR.asn1.DERSequence.superclass.constructor.call(this, params);
1504
+ this.hT = "30";
1505
+ this.getFreshValueHex = function () {
1506
+ var h = '';
1507
+ for (var i = 0; i < this.asn1Array.length; i++) {
1508
+ var asn1Obj = this.asn1Array[i];
1509
+ h += asn1Obj.getEncodedHex();
1510
+ }
1511
+ this.hV = h;
1512
+ return this.hV;
1513
+ };
1514
+ };
1515
+ YAHOO.lang.extend(KJUR.asn1.DERSequence, KJUR.asn1.DERAbstractStructured);
1516
+ // ********************************************************************
1517
+ /**
1518
+ * class for ASN.1 DER Set
1519
+ * @name KJUR.asn1.DERSet
1520
+ * @class class for ASN.1 DER Set
1521
+ * @extends KJUR.asn1.DERAbstractStructured
1522
+ * @description
1523
+ * <br/>
1524
+ * As for argument 'params' for constructor, you can specify one of
1525
+ * following properties:
1526
+ * <ul>
1527
+ * <li>array - specify array of ASN1Object to set elements of content</li>
1528
+ * <li>sortflag - flag for sort (default: true). ASN.1 BER is not sorted in 'SET OF'.</li>
1529
+ * </ul>
1530
+ * NOTE1: 'params' can be omitted.<br/>
1531
+ * NOTE2: sortflag is supported since 1.0.5.
1532
+ */
1533
+ KJUR.asn1.DERSet = function (params) {
1534
+ KJUR.asn1.DERSet.superclass.constructor.call(this, params);
1535
+ this.hT = "31";
1536
+ this.sortFlag = true; // item shall be sorted only in ASN.1 DER
1537
+ this.getFreshValueHex = function () {
1538
+ var a = new Array();
1539
+ for (var i = 0; i < this.asn1Array.length; i++) {
1540
+ var asn1Obj = this.asn1Array[i];
1541
+ a.push(asn1Obj.getEncodedHex());
1542
+ }
1543
+ if (this.sortFlag == true)
1544
+ a.sort();
1545
+ this.hV = a.join('');
1546
+ return this.hV;
1547
+ };
1548
+ if (typeof params != "undefined") {
1549
+ if (typeof params.sortflag != "undefined" &&
1550
+ params.sortflag == false)
1551
+ this.sortFlag = false;
1552
+ }
1553
+ };
1554
+ YAHOO.lang.extend(KJUR.asn1.DERSet, KJUR.asn1.DERAbstractStructured);
1555
+ // ********************************************************************
1556
+ /**
1557
+ * class for ASN.1 DER TaggedObject
1558
+ * @name KJUR.asn1.DERTaggedObject
1559
+ * @class class for ASN.1 DER TaggedObject
1560
+ * @extends KJUR.asn1.ASN1Object
1561
+ * @description
1562
+ * <br/>
1563
+ * Parameter 'tagNoNex' is ASN.1 tag(T) value for this object.
1564
+ * For example, if you find '[1]' tag in a ASN.1 dump,
1565
+ * 'tagNoHex' will be 'a1'.
1566
+ * <br/>
1567
+ * As for optional argument 'params' for constructor, you can specify *ANY* of
1568
+ * following properties:
1569
+ * <ul>
1570
+ * <li>explicit - specify true if this is explicit tag otherwise false
1571
+ * (default is 'true').</li>
1572
+ * <li>tag - specify tag (default is 'a0' which means [0])</li>
1573
+ * <li>obj - specify ASN1Object which is tagged</li>
1574
+ * </ul>
1575
+ * @example
1576
+ * d1 = new KJUR.asn1.DERUTF8String({'str':'a'});
1577
+ * d2 = new KJUR.asn1.DERTaggedObject({'obj': d1});
1578
+ * hex = d2.getEncodedHex();
1579
+ */
1580
+ KJUR.asn1.DERTaggedObject = function (params) {
1581
+ KJUR.asn1.DERTaggedObject.superclass.constructor.call(this);
1582
+ this.hT = "a0";
1583
+ this.hV = '';
1584
+ this.isExplicit = true;
1585
+ this.asn1Object = null;
1586
+ /**
1587
+ * set value by an ASN1Object
1588
+ * @name setString
1589
+ * @memberOf KJUR.asn1.DERTaggedObject#
1590
+ * @function
1591
+ * @param {Boolean} isExplicitFlag flag for explicit/implicit tag
1592
+ * @param {Integer} tagNoHex hexadecimal string of ASN.1 tag
1593
+ * @param {ASN1Object} asn1Object ASN.1 to encapsulate
1594
+ */
1595
+ this.setASN1Object = function (isExplicitFlag, tagNoHex, asn1Object) {
1596
+ this.hT = tagNoHex;
1597
+ this.isExplicit = isExplicitFlag;
1598
+ this.asn1Object = asn1Object;
1599
+ if (this.isExplicit) {
1600
+ this.hV = this.asn1Object.getEncodedHex();
1601
+ this.hTLV = null;
1602
+ this.isModified = true;
1603
+ }
1604
+ else {
1605
+ this.hV = null;
1606
+ this.hTLV = asn1Object.getEncodedHex();
1607
+ this.hTLV = this.hTLV.replace(/^../, tagNoHex);
1608
+ this.isModified = false;
1609
+ }
1610
+ };
1611
+ this.getFreshValueHex = function () {
1612
+ return this.hV;
1613
+ };
1614
+ if (typeof params != "undefined") {
1615
+ if (typeof params['tag'] != "undefined") {
1616
+ this.hT = params['tag'];
1617
+ }
1618
+ if (typeof params['explicit'] != "undefined") {
1619
+ this.isExplicit = params['explicit'];
1620
+ }
1621
+ if (typeof params['obj'] != "undefined") {
1622
+ this.asn1Object = params['obj'];
1623
+ this.setASN1Object(this.isExplicit, this.hT, this.asn1Object);
1624
+ }
1625
+ }
1626
+ };
1627
+ YAHOO.lang.extend(KJUR.asn1.DERTaggedObject, KJUR.asn1.ASN1Object);