@upbit-official/upbit-sdk 1.0.0 → 1.1.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 (190) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/README.md +21 -0
  3. package/client.d.mts +10 -4
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +10 -4
  6. package/client.d.ts.map +1 -1
  7. package/client.js +23 -5
  8. package/client.js.map +1 -1
  9. package/client.mjs +23 -5
  10. package/client.mjs.map +1 -1
  11. package/index.d.mts +3 -1
  12. package/index.d.mts.map +1 -1
  13. package/index.d.ts +3 -1
  14. package/index.d.ts.map +1 -1
  15. package/index.js +2 -1
  16. package/index.js.map +1 -1
  17. package/index.mjs +1 -1
  18. package/index.mjs.map +1 -1
  19. package/internal/ws-parser.d.mts +40 -0
  20. package/internal/ws-parser.d.mts.map +1 -0
  21. package/internal/ws-parser.d.ts +40 -0
  22. package/internal/ws-parser.d.ts.map +1 -0
  23. package/internal/ws-parser.js +125 -0
  24. package/internal/ws-parser.js.map +1 -0
  25. package/internal/ws-parser.mjs +118 -0
  26. package/internal/ws-parser.mjs.map +1 -0
  27. package/internal/ws-simple-types.d.mts +8 -0
  28. package/internal/ws-simple-types.d.mts.map +1 -0
  29. package/internal/ws-simple-types.d.ts +8 -0
  30. package/internal/ws-simple-types.d.ts.map +1 -0
  31. package/internal/ws-simple-types.js +3 -0
  32. package/internal/ws-simple-types.js.map +1 -0
  33. package/internal/ws-simple-types.mjs +2 -0
  34. package/internal/ws-simple-types.mjs.map +1 -0
  35. package/internal/ws.d.mts +1 -0
  36. package/internal/ws.d.mts.map +1 -1
  37. package/internal/ws.d.ts +1 -0
  38. package/internal/ws.d.ts.map +1 -1
  39. package/internal/ws.js.map +1 -1
  40. package/internal/ws.mjs.map +1 -1
  41. package/lib/index.d.mts +4 -2
  42. package/lib/index.d.mts.map +1 -1
  43. package/lib/index.d.ts +4 -2
  44. package/lib/index.d.ts.map +1 -1
  45. package/lib/index.js +2 -1
  46. package/lib/index.js.map +1 -1
  47. package/lib/index.mjs +1 -1
  48. package/lib/index.mjs.map +1 -1
  49. package/lib/jsonParseFloat.d.mts +5 -5
  50. package/lib/jsonParseFloat.d.mts.map +1 -1
  51. package/lib/jsonParseFloat.d.ts +5 -5
  52. package/lib/jsonParseFloat.d.ts.map +1 -1
  53. package/lib/jsonParseFloat.js +30 -12
  54. package/lib/jsonParseFloat.js.map +1 -1
  55. package/lib/jsonParseFloat.mjs +30 -12
  56. package/lib/jsonParseFloat.mjs.map +1 -1
  57. package/lib/ws.d.mts +102 -15
  58. package/lib/ws.d.mts.map +1 -1
  59. package/lib/ws.d.ts +102 -15
  60. package/lib/ws.d.ts.map +1 -1
  61. package/lib/ws.js +208 -34
  62. package/lib/ws.js.map +1 -1
  63. package/lib/ws.mjs +204 -33
  64. package/lib/ws.mjs.map +1 -1
  65. package/package.json +1 -1
  66. package/resources/index.d.mts +3 -2
  67. package/resources/index.d.mts.map +1 -1
  68. package/resources/index.d.ts +3 -2
  69. package/resources/index.d.ts.map +1 -1
  70. package/resources/index.js +3 -1
  71. package/resources/index.js.map +1 -1
  72. package/resources/index.mjs +3 -2
  73. package/resources/index.mjs.map +1 -1
  74. package/resources/ws-info/index.d.mts +6 -0
  75. package/resources/ws-info/index.d.mts.map +1 -0
  76. package/resources/ws-info/index.d.ts +6 -0
  77. package/resources/ws-info/index.d.ts.map +1 -0
  78. package/resources/ws-info/index.js +6 -0
  79. package/resources/ws-info/index.js.map +1 -0
  80. package/resources/ws-info/index.mjs +2 -0
  81. package/resources/ws-info/index.mjs.map +1 -0
  82. package/resources/ws-info/internal-base.d.mts +63 -0
  83. package/resources/ws-info/internal-base.d.mts.map +1 -0
  84. package/resources/ws-info/internal-base.d.ts +63 -0
  85. package/resources/ws-info/internal-base.d.ts.map +1 -0
  86. package/resources/ws-info/internal-base.js +47 -0
  87. package/resources/ws-info/internal-base.js.map +1 -0
  88. package/resources/ws-info/internal-base.mjs +41 -0
  89. package/resources/ws-info/internal-base.mjs.map +1 -0
  90. package/resources/ws-info/ws-info.d.mts +1180 -0
  91. package/resources/ws-info/ws-info.d.mts.map +1 -0
  92. package/resources/ws-info/ws-info.d.ts +1180 -0
  93. package/resources/ws-info/ws-info.d.ts.map +1 -0
  94. package/resources/ws-info/ws-info.js +8 -0
  95. package/resources/ws-info/ws-info.js.map +1 -0
  96. package/resources/ws-info/ws-info.mjs +4 -0
  97. package/resources/ws-info/ws-info.mjs.map +1 -0
  98. package/resources/ws-info/ws.d.mts +91 -0
  99. package/resources/ws-info/ws.d.mts.map +1 -0
  100. package/resources/ws-info/ws.d.ts +91 -0
  101. package/resources/ws-info/ws.d.ts.map +1 -0
  102. package/resources/ws-info/ws.js +463 -0
  103. package/resources/ws-info/ws.js.map +1 -0
  104. package/resources/ws-info/ws.mjs +458 -0
  105. package/resources/ws-info/ws.mjs.map +1 -0
  106. package/resources/ws-info.d.mts +2 -0
  107. package/resources/ws-info.d.mts.map +1 -0
  108. package/resources/ws-info.d.ts +2 -0
  109. package/resources/ws-info.d.ts.map +1 -0
  110. package/resources/ws-info.js +5 -0
  111. package/resources/ws-info.js.map +1 -0
  112. package/resources/ws-info.mjs +2 -0
  113. package/resources/ws-info.mjs.map +1 -0
  114. package/resources/ws-private/index.d.mts +3 -1
  115. package/resources/ws-private/index.d.mts.map +1 -1
  116. package/resources/ws-private/index.d.ts +3 -1
  117. package/resources/ws-private/index.d.ts.map +1 -1
  118. package/resources/ws-private/index.js.map +1 -1
  119. package/resources/ws-private/index.mjs +1 -1
  120. package/resources/ws-private/index.mjs.map +1 -1
  121. package/resources/ws-private/internal-base.d.mts.map +1 -1
  122. package/resources/ws-private/internal-base.d.ts.map +1 -1
  123. package/resources/ws-private/internal-base.js.map +1 -1
  124. package/resources/ws-private/internal-base.mjs.map +1 -1
  125. package/resources/ws-private/ws-private.d.mts +301 -9
  126. package/resources/ws-private/ws-private.d.mts.map +1 -1
  127. package/resources/ws-private/ws-private.d.ts +301 -9
  128. package/resources/ws-private/ws-private.d.ts.map +1 -1
  129. package/resources/ws-private/ws-private.js.map +1 -1
  130. package/resources/ws-private/ws-private.mjs.map +1 -1
  131. package/resources/ws-private/ws.d.mts +2 -2
  132. package/resources/ws-private/ws.d.mts.map +1 -1
  133. package/resources/ws-private/ws.d.ts +2 -2
  134. package/resources/ws-private/ws.d.ts.map +1 -1
  135. package/resources/ws-private/ws.js +15 -20
  136. package/resources/ws-private/ws.js.map +1 -1
  137. package/resources/ws-private/ws.mjs +15 -20
  138. package/resources/ws-private/ws.mjs.map +1 -1
  139. package/resources/ws-public/index.d.mts +3 -1
  140. package/resources/ws-public/index.d.mts.map +1 -1
  141. package/resources/ws-public/index.d.ts +3 -1
  142. package/resources/ws-public/index.d.ts.map +1 -1
  143. package/resources/ws-public/index.js.map +1 -1
  144. package/resources/ws-public/index.mjs +1 -1
  145. package/resources/ws-public/index.mjs.map +1 -1
  146. package/resources/ws-public/internal-base.d.mts.map +1 -1
  147. package/resources/ws-public/internal-base.d.ts.map +1 -1
  148. package/resources/ws-public/internal-base.js.map +1 -1
  149. package/resources/ws-public/internal-base.mjs.map +1 -1
  150. package/resources/ws-public/ws-public.d.mts +355 -5
  151. package/resources/ws-public/ws-public.d.mts.map +1 -1
  152. package/resources/ws-public/ws-public.d.ts +355 -5
  153. package/resources/ws-public/ws-public.d.ts.map +1 -1
  154. package/resources/ws-public/ws.d.mts +2 -2
  155. package/resources/ws-public/ws.d.mts.map +1 -1
  156. package/resources/ws-public/ws.d.ts +2 -2
  157. package/resources/ws-public/ws.d.ts.map +1 -1
  158. package/resources/ws-public/ws.js +15 -20
  159. package/resources/ws-public/ws.js.map +1 -1
  160. package/resources/ws-public/ws.mjs +15 -20
  161. package/resources/ws-public/ws.mjs.map +1 -1
  162. package/src/client.ts +92 -5
  163. package/src/index.ts +24 -1
  164. package/src/internal/ws-parser.ts +164 -0
  165. package/src/internal/ws-simple-types.ts +34 -0
  166. package/src/internal/ws.ts +1 -0
  167. package/src/lib/index.ts +17 -2
  168. package/src/lib/jsonParseFloat.ts +37 -12
  169. package/src/lib/ws.ts +367 -55
  170. package/src/resources/index.ts +42 -2
  171. package/src/resources/ws-info/index.ts +44 -0
  172. package/src/resources/ws-info/internal-base.ts +96 -0
  173. package/src/resources/ws-info/ws-info.ts +1855 -0
  174. package/src/resources/ws-info/ws.ts +574 -0
  175. package/src/resources/ws-info.ts +1 -0
  176. package/src/resources/ws-private/index.ts +12 -1
  177. package/src/resources/ws-private/internal-base.ts +0 -1
  178. package/src/resources/ws-private/ws-private.ts +420 -18
  179. package/src/resources/ws-private/ws.ts +16 -23
  180. package/src/resources/ws-public/index.ts +16 -1
  181. package/src/resources/ws-public/internal-base.ts +0 -1
  182. package/src/resources/ws-public/ws-public.ts +459 -4
  183. package/src/resources/ws-public/ws.ts +16 -23
  184. package/src/version.ts +1 -1
  185. package/version.d.mts +1 -1
  186. package/version.d.ts +1 -1
  187. package/version.js +1 -1
  188. package/version.js.map +1 -1
  189. package/version.mjs +1 -1
  190. package/version.mjs.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ws.mjs","sourceRoot":"","sources":["../../src/resources/ws-public/ws.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ws.mjs","sourceRoot":"","sources":["../../src/resources/ws-public/ws.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,MAAM,IAAI;OACjB,EAAE,eAAe,EAAyC,QAAQ,EAAE;OACpE,EAAE,oBAAoB,EAAE;OACxB,EAAE,KAAK,EAAE;OACT,EAAE,kBAAkB,EAAsD;OAG1E,EAAE,QAAQ,EAAE,mBAAmB,EAAE;AAoCxC,MAAM,OAAO,UAAW,SAAQ,eAAe;IAoB7C,YACE,MAAa,EACb,UAAgD,EAChD,OAAoD;QAEpD,KAAK,EAAE,CAAC;QAjBF,eAAU,GAAa,EAAE,CAAC;QAC1B,oBAAe,GAAY,KAAK,CAAC;QACjC,yBAAoB,GAAG,KAAK,CAAC;QAErC,kFAAkF;QAC1E,oBAAe,GAAG,IAAI,oBAAoB,EAK9C,CAAC;QAQH,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;QAClD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,iBAAiB,GAAG,SAAS,IAAI,IAAI,CAAC;QAC3C,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IAED,IAAI,CAAC,KAA2C;QAC9C,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YAC/E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YACjD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,mCAAmC,EAAE,SAAS,CAAC,CAAC;YACpE,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAwC;QAC5C,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,gCAAgC,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;IACtC,CAAC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC;QACpB,+DAA+D;QAC/D,6DAA6D;QAC7D,qDAAqD;QACrD,MAAM,KAAK,GAA4B,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAmB,EAAE,CAAC;QACrC,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,IAAI,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhC,MAAM,IAAI,GAAG,CAAC,GAA0B,EAAE,EAAE;YAC1C,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChB,SAAS,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC;QACxB,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,CAAC,KAA2C,EAAE,EAAE;YAC9D,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC;QAEF,0EAA0E;QAC1E,MAAM,cAAc,GAAG,CAAC,GAAmB,EAAE,EAAE;YAC7C,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,GAAG,EAAE;YAClB,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACzB,CAAC,CAAC;QAEF,MAAM,cAAc,GAAG,CAAC,GAA+C,EAAE,EAAE;YACzE,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC;QAEF,MAAM,cAAc,GAAG,GAAG,EAAE;YAC1B,KAAK,IAAI,QAAQ,GAAG,SAAS,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;gBAC9E,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,mEAAmE;YACnE,IAAI,IAAI,CAAC,eAAe;gBAAE,OAAO;YACjC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YACxB,IAAI,GAAG,IAAI,CAAC;YACZ,cAAc,EAAE,CAAC;YACjB,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,CAAC,SAAuB,EAAE,SAAuB,EAAE,EAAE;YACxE,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC9B,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAChC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC7B,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/B,aAAa,GAAG,SAAS,CAAC;QAC5B,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAClC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACpC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YACrD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YACzD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;YACvD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1B,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QACxD,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAE1C,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,qEAAqE;YACrE,qEAAqE;YACrE,6DAA6D;YAC7D,IAAI,CAAC;gBACH,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE;aACzF,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC/B,KAAK,EAAE,CAAC,SAAS,CAAC,UAAU;oBAC1B,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;oBAC7B,MAAM;gBACR,KAAK,EAAE,CAAC,SAAS,CAAC,IAAI;oBACpB,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;oBACvB,MAAM;gBACR,KAAK,EAAE,CAAC,SAAS,CAAC,OAAO;oBACvB,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;oBAC1B,MAAM;gBACR,KAAK,EAAE,CAAC,SAAS,CAAC,MAAM;oBACtB,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;oBACxB,IAAI,GAAG,IAAI,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,MAAM;YACV,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,GAA2D,EAAE,EAAE;YAC9E,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9C,CAAC;iBAAM,IAAI,IAAI,EAAE,CAAC;gBAChB,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,GAAmD,EAAE,CAChE,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAClB,IAAI,OAAO,CAAC,GAAG,CAAC;gBAAE,OAAO;YACzB,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;gBAClB,OAAO,CAAC,GAAG,CAAC,CAAC;YACf,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEL,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,GAA6C,EAAE;gBACrD,IAAI,GAAG,IAAI,CAAC;gBACZ,OAAO,EAAE,CAAC;gBACV,cAAc,EAAE,CAAC;gBACjB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3D,CAAC;YACD,CAAC,MAAM,CAAC,aAAa,CAAC;gBACpB,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;IAEO,QAAQ;QACd,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEpD,MAAM,MAAM,GAAG,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;YACxC,GAAG,IAAI,CAAC,UAAU;YAClB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,+BAA+B,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;SACrG,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YAC/B,IAAI,KAAc,CAAC;YACnB,IAAI,CAAC;gBACH,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,mCAAmC,EAAE,IAAI,WAAW,CAAC,wBAAwB,CAAC,CAAC,CAAC;gBACpG,OAAO;YACT,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAA6C,CAAC,CAAC;YACnE,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACzD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAQ,EAAE,KAAY,CAAC,CAAC;YACjD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACzB,iEAAiE;YACjE,oEAAoE;YACpE,IAAI,IAAI,CAAC,eAAe;gBAAE,OAAO;YACjC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACrB,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE;YAClC,iEAAiE;YACjE,wDAAwD;YACxD,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM;gBAAE,OAAO;YAEnC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;oBAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACtB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,6DAA6D;IAC7D,oDAAoD;IAC5C,aAAa,CAAC,IAAY;QAChC,IAAI,IAAI,CAAC,oBAAoB;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO,KAAK,CAAC;QAC1C,IAAI,IAAI,CAAC,iBAAiB,CAAC,UAAU,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,cAAc;YAAE,OAAO,KAAK,CAAC;QACzD,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,SAAiB;QACxC,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO;QAC5D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAE5B,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,IAAI,CAAC,CAAC;QAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,IAAI,GAAG,CAAC;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,IAAI,IAAI,CAAC;QAEzD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC/B,IAAI,CAAC,QAAQ,CACX,IAAI,EACJ,2DAA2D,SAAS,EAAE,EACtE,SAAS,CACV,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpC,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC9E,mFAAmF;YACnF,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;YAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC;YAEnD,IAAI,iBAAiB,GAA+C;gBAClE,OAAO;gBACP,WAAW,EAAE,UAAU;gBACvB,KAAK,EAAE,WAAW;gBAClB,SAAS;gBACT,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS;aACnE,CAAC;YAEF,IAAI,SAAgE,CAAC;YACrE,IAAI,CAAC;gBACH,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;YACvE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;gBAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,+BAA+B,EAAE,GAAG,CAAC,CAAC;gBAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpC,OAAO;YACT,CAAC;YAED,IAAI,SAAS,IAAI,OAAO,IAAI,SAAS,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;gBACzD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;gBAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpC,OAAO;YACT,CAAC;YAED,IAAI,SAAS,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;gBAC3C,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC;gBACxC,iBAAiB,GAAG,EAAE,GAAG,iBAAiB,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7E,CAAC;YAED,IAAI,CAAC;gBACH,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;YAChD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,+BAA+B,EAAE,GAAG,CAAC,CAAC;YAC5D,CAAC;YACD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;YAE9D,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC/B,IAAI,CAAC,QAAQ,CACX,IAAI,EACJ,2DAA2D,SAAS,EAAE,EACtE,SAAS,CACV,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpC,OAAO;YACT,CAAC;YAED,MAAM,KAAK,CAAC,WAAW,CAAC,CAAC;YAEzB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC/B,IAAI,CAAC,QAAQ,CACX,IAAI,EACJ,2DAA2D,SAAS,EAAE,EACtE,SAAS,CACV,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpC,OAAO;YACT,CAAC;YAED,IAAI,gBAA6C,CAAC;YAClD,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;gBAC9B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC9B,2DAA2D;gBAC3D,2DAA2D;gBAC3D,qDAAqD;gBACrD,gBAAgB,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;oBACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;gBAEH,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAEnC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACjE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;gBAC7B,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBAC1B,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBAC1C,OAAO;YACT,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,gBAAgB,EAAE,CAAC;oBACrB,wDAAwD;oBACxD,wCAAwC;oBACxC,SAAS,GAAG,MAAM,gBAAgB,CAAC;gBACrC,CAAC;YACH,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,gDAAgD;QAChD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,QAAQ,CACX,IAAI,EACJ,oCAAoC,UAAU,0BAA0B,SAAS,GAAG,EACpF,SAAS,CACV,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACpB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,MAAoB;QACrC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,GAAG,EAAE;gBACnB,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAC3B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC7B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC9B,CAAC,CAAC;YACF,MAAM,MAAM,GAAG,GAAG,EAAE;gBAClB,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YACF,MAAM,OAAO,GAAG,CAAC,GAAU,EAAE,EAAE;gBAC7B,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC;YACF,MAAM,MAAM,GAAG,GAAG,EAAE;gBAClB,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;YACjD,CAAC,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,eAAe;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;oBACjD,oEAAoE;oBACpE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC7C,OAAO;gBACT,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,6CAA6C;gBAC7C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,4BAA4B,EAAE,GAAG,CAAC,CAAC;gBACvD,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAEO,YAAY;QAClB,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
package/src/client.ts CHANGED
@@ -145,6 +145,34 @@ import {
145
145
  WithdrawsUuidCursorIDPage,
146
146
  } from './resources/withdraws';
147
147
  import {
148
+ BollingerBandsIndicator,
149
+ BollingerBandsIndicatorSignal,
150
+ ConnectInfoClientEvent,
151
+ ConnectInfoServerEvent,
152
+ Indicator,
153
+ IndicatorSignal,
154
+ IndicatorTimeframe,
155
+ IndicatorType,
156
+ MaCrossoverIndicator,
157
+ MaCrossoverIndicatorSignal,
158
+ MacdIndicator,
159
+ MacdIndicatorSignal,
160
+ MovingAverageIndicator,
161
+ MovingAverageIndicatorSignal,
162
+ RsiIndicator,
163
+ RsiIndicatorSignal,
164
+ RsiOverboughtIndicatorSignal,
165
+ RsiOverboughtIndicatorSignalRequest,
166
+ RsiOversoldIndicatorSignal,
167
+ RsiOversoldIndicatorSignalRequest,
168
+ VolumeIndicator,
169
+ VolumeIndicatorSignal,
170
+ WsInfo,
171
+ } from './resources/ws-info/ws-info';
172
+ import {
173
+ Announcement,
174
+ AnnouncementCategory,
175
+ AnnouncementEventType,
148
176
  ConnectPrivateClientEvent,
149
177
  ConnectPrivateServerEvent,
150
178
  WsPrivate,
@@ -152,6 +180,9 @@ import {
152
180
  import {
153
181
  ConnectPublicClientEvent,
154
182
  ConnectPublicServerEvent,
183
+ ListSubscriptionsResponse,
184
+ ListSubscriptionsServerResponse,
185
+ SimpleListSubscriptionsResponse,
155
186
  WsPublic,
156
187
  } from './resources/ws-public/ws-public';
157
188
  import { type Fetch } from './internal/builtin-types';
@@ -402,6 +433,32 @@ export class Upbit {
402
433
  return buildHeaders([{ Authorization: `Bearer ${token}` }]);
403
434
  }
404
435
 
436
+ /** @internal Builds the final headers for a WebSocket handshake. */
437
+ _buildWebSocketHandshakeHeaders(
438
+ authHeaders?: HeadersLike,
439
+ connectionHeaders?: HeadersLike,
440
+ ): Record<string, string> {
441
+ return Object.fromEntries(
442
+ buildHeaders([
443
+ { 'User-Agent': this.getUserAgent() },
444
+ this.upbitClientHeaders(),
445
+ authHeaders,
446
+ this._options.defaultHeaders,
447
+ connectionHeaders,
448
+ ]).values.entries(),
449
+ );
450
+ }
451
+
452
+ private upbitClientHeaders(): HeadersLike {
453
+ return {
454
+ 'X-Upbit-Client-Type': 'sdk',
455
+ 'X-Upbit-Client-Name': 'upbit-typescript',
456
+ 'X-Upbit-Client-Version': VERSION,
457
+ 'X-Upbit-Runtime': getRuntimeName(),
458
+ 'X-Upbit-Runtime-Version': getRuntimeVersion(),
459
+ };
460
+ }
461
+
405
462
  protected stringifyQuery(query: object | Record<string, unknown>): string {
406
463
  return stringifyQuery(query);
407
464
  }
@@ -845,12 +902,8 @@ export class Upbit {
845
902
  {
846
903
  Accept: 'application/json',
847
904
  'User-Agent': this.getUserAgent(),
848
- 'X-Upbit-Client-Type': 'sdk',
849
- 'X-Upbit-Client-Name': 'upbit-typescript',
850
- 'X-Upbit-Client-Version': VERSION,
851
- 'X-Upbit-Runtime': getRuntimeName(),
852
- 'X-Upbit-Runtime-Version': getRuntimeVersion(),
853
905
  },
906
+ this.upbitClientHeaders(),
854
907
  await this.authHeaders(options, options.__security ?? { bearerAuth: true }),
855
908
  this._options.defaultHeaders,
856
909
  bodyHeaders,
@@ -955,6 +1008,7 @@ export class Upbit {
955
1008
  candles: API.Candles = new API.Candles(this);
956
1009
  wsPublic: API.WsPublic = new API.WsPublic(this);
957
1010
  wsPrivate: API.WsPrivate = new API.WsPrivate(this);
1011
+ wsInfo: API.WsInfo = new API.WsInfo(this);
958
1012
  }
959
1013
 
960
1014
  Upbit.Accounts = Accounts;
@@ -972,6 +1026,7 @@ Upbit.Trades = Trades;
972
1026
  Upbit.Candles = Candles;
973
1027
  Upbit.WsPublic = WsPublic;
974
1028
  Upbit.WsPrivate = WsPrivate;
1029
+ Upbit.WsInfo = WsInfo;
975
1030
 
976
1031
  export declare namespace Upbit {
977
1032
  export type RequestOptions = Opts.RequestOptions;
@@ -1135,13 +1190,45 @@ export declare namespace Upbit {
1135
1190
  WsPublic as WsPublic,
1136
1191
  type ConnectPublicClientEvent as ConnectPublicClientEvent,
1137
1192
  type ConnectPublicServerEvent as ConnectPublicServerEvent,
1193
+ type ListSubscriptionsResponse as ListSubscriptionsResponse,
1194
+ type ListSubscriptionsServerResponse as ListSubscriptionsServerResponse,
1195
+ type SimpleListSubscriptionsResponse as SimpleListSubscriptionsResponse,
1138
1196
  };
1139
1197
 
1140
1198
  export {
1141
1199
  WsPrivate as WsPrivate,
1200
+ type Announcement as Announcement,
1201
+ type AnnouncementCategory as AnnouncementCategory,
1202
+ type AnnouncementEventType as AnnouncementEventType,
1142
1203
  type ConnectPrivateClientEvent as ConnectPrivateClientEvent,
1143
1204
  type ConnectPrivateServerEvent as ConnectPrivateServerEvent,
1144
1205
  };
1206
+
1207
+ export {
1208
+ WsInfo as WsInfo,
1209
+ type BollingerBandsIndicator as BollingerBandsIndicator,
1210
+ type BollingerBandsIndicatorSignal as BollingerBandsIndicatorSignal,
1211
+ type Indicator as Indicator,
1212
+ type IndicatorSignal as IndicatorSignal,
1213
+ type IndicatorTimeframe as IndicatorTimeframe,
1214
+ type IndicatorType as IndicatorType,
1215
+ type MaCrossoverIndicator as MaCrossoverIndicator,
1216
+ type MaCrossoverIndicatorSignal as MaCrossoverIndicatorSignal,
1217
+ type MacdIndicator as MacdIndicator,
1218
+ type MacdIndicatorSignal as MacdIndicatorSignal,
1219
+ type MovingAverageIndicator as MovingAverageIndicator,
1220
+ type MovingAverageIndicatorSignal as MovingAverageIndicatorSignal,
1221
+ type RsiIndicator as RsiIndicator,
1222
+ type RsiIndicatorSignal as RsiIndicatorSignal,
1223
+ type RsiOverboughtIndicatorSignal as RsiOverboughtIndicatorSignal,
1224
+ type RsiOverboughtIndicatorSignalRequest as RsiOverboughtIndicatorSignalRequest,
1225
+ type RsiOversoldIndicatorSignal as RsiOversoldIndicatorSignal,
1226
+ type RsiOversoldIndicatorSignalRequest as RsiOversoldIndicatorSignalRequest,
1227
+ type VolumeIndicator as VolumeIndicator,
1228
+ type VolumeIndicatorSignal as VolumeIndicatorSignal,
1229
+ type ConnectInfoClientEvent as ConnectInfoClientEvent,
1230
+ type ConnectInfoServerEvent as ConnectInfoServerEvent,
1231
+ };
1145
1232
  }
1146
1233
 
1147
1234
  function getRuntimeName(): string {
package/src/index.ts CHANGED
@@ -1,5 +1,21 @@
1
1
  export { Upbit as default } from './client';
2
- export { createJwtToken, WsStream, WsStreamManager, type WsStreamOptions } from './lib';
2
+ export {
3
+ createJwtToken,
4
+ WsEndpoint,
5
+ WsStream,
6
+ WsStreamManager,
7
+ type WsAnnouncementOptions,
8
+ type WsDefaultListSubscriptionsResponse,
9
+ type WsListSubscriptionsResponse,
10
+ type WsSimpleEvent,
11
+ type WsSimpleListSubscriptionsResponse,
12
+ type WsStreamFormat,
13
+ type WsStreamOptions,
14
+ type WsIndicatorOptions,
15
+ type WsIndicatorSubscription,
16
+ type WsIndicatorSignalOptions,
17
+ type WsIndicatorSignalSubscription,
18
+ } from './lib';
3
19
 
4
20
  export { type Uploadable, toFile } from './core/uploads';
5
21
  export { APIPromise } from './core/api-promise';
@@ -21,3 +37,10 @@ export {
21
37
  PermissionDeniedError,
22
38
  UnprocessableEntityError,
23
39
  } from './core/error';
40
+
41
+ export type * from './internal/ws-simple-types';
42
+ export type {
43
+ WebSocketAPIErrorMessage,
44
+ WebSocketUntypedMessage,
45
+ InfoWebSocketUnknownMessage,
46
+ } from './internal/ws-parser';
@@ -0,0 +1,164 @@
1
+ import type { RawWebSocketData } from './ws';
2
+ import { jsonParseFloat } from '../lib/jsonParseFloat';
3
+ import type { WsListSubscriptionsResponse } from '../lib/ws';
4
+
5
+ /** Backwards-compatible fallback for extensions to the SIMPLE protocol. */
6
+ export interface SimpleWebSocketEvent {
7
+ ty: string;
8
+ [key: string]: unknown;
9
+ }
10
+
11
+ export interface WebSocketAPIErrorMessage {
12
+ error: { name: string; message: string; [key: string]: unknown };
13
+ }
14
+
15
+ /** A valid object without a stream discriminator, such as a status notification. */
16
+ export interface WebSocketUntypedMessage {
17
+ type?: undefined;
18
+ ty?: undefined;
19
+ [key: string]: unknown;
20
+ }
21
+
22
+ /** Info streams also forward objects with future or unknown discriminators. */
23
+ export interface InfoWebSocketUnknownMessage {
24
+ type?: string;
25
+ ty?: string;
26
+ [key: string]: unknown;
27
+ }
28
+
29
+ export type WebSocketMessage<Event> = Event | WebSocketAPIErrorMessage | WebSocketUntypedMessage;
30
+
31
+ export interface ParsedWebSocketMessage<Event> {
32
+ events: WebSocketMessage<Event>[];
33
+ controls: WsListSubscriptionsResponse[];
34
+ /** Data and controls in their original frame order. */
35
+ messages: Array<WebSocketMessage<Event> | WsListSubscriptionsResponse>;
36
+ }
37
+
38
+ const INFO_INTEGER_PARAMS = new Set([
39
+ 'period',
40
+ 'short_period',
41
+ 'long_period',
42
+ 'fast',
43
+ 'slow',
44
+ 'signal_period',
45
+ 'p',
46
+ 'shp',
47
+ 'lop',
48
+ 'f',
49
+ 's',
50
+ 'sgp',
51
+ ]);
52
+
53
+ /** Preserve decimal tokens while keeping indicator integer parameters numeric. */
54
+ export function parseWebSocketValue(data: RawWebSocketData): unknown {
55
+ return jsonParseFloat(toText(data), (key, path, root) => {
56
+ const type = root['type'] ?? root['ty'];
57
+ if (
58
+ path.length === 0 &&
59
+ ['ticker', 'trade', 'myOrder', 'myAsset', 'orderbook'].includes(String(type)) &&
60
+ [
61
+ 'trade_timestamp',
62
+ 'order_timestamp',
63
+ 'asset_timestamp',
64
+ 'ttms',
65
+ 'otms',
66
+ 'asttms',
67
+ 'sid',
68
+ 'tc',
69
+ ].includes(key)
70
+ )
71
+ return true;
72
+ if (
73
+ type === 'ticker' &&
74
+ path.length === 1 &&
75
+ (path[0] === 'delisting_date' || path[0] === 'dd') &&
76
+ ['year', 'month', 'day'].includes(key)
77
+ )
78
+ return true;
79
+ if (root['method'] === 'LIST_SUBSCRIPTIONS' || root['mthd'] === 'LIST_SUBSCRIPTIONS') {
80
+ return (
81
+ path.includes('indicators') &&
82
+ (path[path.length - 1] === 'params' || path[path.length - 1] === 'event_params') &&
83
+ (INFO_INTEGER_PARAMS.has(key) || key === 'threshold' || key === 'multiplier')
84
+ );
85
+ }
86
+ if (type !== 'indicator' && type !== 'indicator_signal') return false;
87
+ if (path.length !== 1) return false;
88
+ const indicator = root['indicator'] ?? root['ind'];
89
+ if (
90
+ indicator === 'bollinger_bands' &&
91
+ (path[0] === 'params' || path[0] === 'p') &&
92
+ (key === 'multiplier' || key === 'm')
93
+ )
94
+ return true;
95
+ if (
96
+ type === 'indicator_signal' &&
97
+ indicator === 'volume' &&
98
+ (path[0] === 'event_params' || path[0] === 'ep') &&
99
+ (key === 'multiplier' || key === 'mul')
100
+ )
101
+ return true;
102
+ return (
103
+ ((path[0] === 'params' || path[0] === 'p') && INFO_INTEGER_PARAMS.has(key)) ||
104
+ ((path[0] === 'event_params' || path[0] === 'ep') && (key === 'threshold' || key === 'th'))
105
+ );
106
+ });
107
+ }
108
+
109
+ export function isRecord(value: unknown): value is Record<string, unknown> {
110
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
111
+ }
112
+
113
+ export function isListSubscriptionsResponse(value: unknown): value is WsListSubscriptionsResponse {
114
+ if (!isRecord(value)) return false;
115
+ if (value['method'] === 'LIST_SUBSCRIPTIONS') {
116
+ return (
117
+ typeof value['ticket'] === 'string' &&
118
+ Array.isArray(value['result']) &&
119
+ value['result'].every((item) => isRecord(item) && typeof item['type'] === 'string')
120
+ );
121
+ }
122
+ if (value['mthd'] === 'LIST_SUBSCRIPTIONS') {
123
+ return (
124
+ typeof value['tckt'] === 'string' &&
125
+ Array.isArray(value['rslt']) &&
126
+ value['rslt'].every((item) => isRecord(item) && typeof item['ty'] === 'string')
127
+ );
128
+ }
129
+ return false;
130
+ }
131
+
132
+ export function webSocketEventType(event: unknown): string | undefined {
133
+ if (!isRecord(event)) return undefined;
134
+ if (typeof event['type'] === 'string') return event['type'];
135
+ return typeof event['ty'] === 'string' ? event['ty'] : undefined;
136
+ }
137
+
138
+ export function parseWebSocketMessage<Event>(data: RawWebSocketData): ParsedWebSocketMessage<Event> | null {
139
+ let value: unknown;
140
+ try {
141
+ value = parseWebSocketValue(data);
142
+ } catch {
143
+ return null;
144
+ }
145
+ const values = Array.isArray(value) ? value : [value];
146
+ const events: WebSocketMessage<Event>[] = [];
147
+ const controls: WsListSubscriptionsResponse[] = [];
148
+ const messages: Array<WebSocketMessage<Event> | WsListSubscriptionsResponse> = [];
149
+ for (const item of values) {
150
+ if (!isRecord(item)) continue;
151
+ messages.push(item as WebSocketMessage<Event> | WsListSubscriptionsResponse);
152
+ if (isListSubscriptionsResponse(item)) controls.push(item);
153
+ else events.push(item as WebSocketMessage<Event>);
154
+ }
155
+ return { events, controls, messages };
156
+ }
157
+
158
+ function toText(data: RawWebSocketData): string {
159
+ if (typeof data === 'string') return data;
160
+ if (Array.isArray(data)) return data.map(toText).join('');
161
+ if (ArrayBuffer.isView(data))
162
+ return new TextDecoder().decode(new Uint8Array(data.buffer, data.byteOffset, data.byteLength));
163
+ return new TextDecoder().decode(data);
164
+ }
@@ -0,0 +1,34 @@
1
+ /** Compatibility exports for source-derived generated SIMPLE response types. */
2
+ export type {
3
+ SimpleCandle,
4
+ SimpleOrderbook,
5
+ SimplePublicServerEvent,
6
+ SimpleTicker,
7
+ SimpleTrade,
8
+ } from '../resources/ws-public/ws-public';
9
+ export type {
10
+ SimpleAnnouncement,
11
+ SimpleMyAsset,
12
+ SimpleMyOrder,
13
+ SimplePrivateServerEvent,
14
+ } from '../resources/ws-private/ws-private';
15
+ export type {
16
+ SimpleBollingerBandsIndicator,
17
+ SimpleBollingerBandsIndicatorSignal,
18
+ SimpleInfoServerEvent,
19
+ SimpleMaCrossoverIndicator,
20
+ SimpleMaCrossoverIndicatorSignal,
21
+ SimpleMacdIndicator,
22
+ SimpleMacdIndicatorSignal,
23
+ SimpleMovingAverageIndicator,
24
+ SimpleMovingAverageIndicatorSignal,
25
+ SimpleRsiIndicator,
26
+ SimpleRsiOverboughtIndicatorSignal,
27
+ SimpleRsiOversoldIndicatorSignal,
28
+ SimpleVolumeIndicator,
29
+ SimpleVolumeIndicatorSignal,
30
+ } from '../resources/ws-info/ws-info';
31
+ import type { SimplePublicServerEvent } from '../resources/ws-public/ws-public';
32
+ import type { SimplePrivateServerEvent } from '../resources/ws-private/ws-private';
33
+ import type { SimpleInfoServerEvent } from '../resources/ws-info/ws-info';
34
+ export type SimpleWebSocketEvent = SimplePublicServerEvent | SimplePrivateServerEvent | SimpleInfoServerEvent;
@@ -31,6 +31,7 @@ export type ReconnectingOverrides<Parameters = Record<string, unknown>> =
31
31
  abort: true;
32
32
  };
33
33
 
34
+ export type RawWebSocketData = string | ArrayBufferLike | ArrayBufferView | ArrayBufferView[];
34
35
  // RFC 6455 §7.4.1
35
36
  export function isRecoverableClose(code: number): boolean {
36
37
  switch (code) {
package/src/lib/index.ts CHANGED
@@ -1,4 +1,19 @@
1
1
  export { createJwtToken } from './jwtAuth';
2
- export { WsStream, WsStreamManager } from './ws';
3
- export type { WsStreamOptions } from './ws';
2
+ export { WsEndpoint, WsStream, WsStreamManager } from './ws';
3
+ export type {
4
+ WsAnnouncementOptions,
5
+ WsDefaultListSubscriptionsResponse,
6
+ WsListSubscriptionsResponse,
7
+ WsSimpleEvent,
8
+ WsSimpleListSubscriptionsResponse,
9
+ WsStreamFormat,
10
+ WsStreamOptions,
11
+ WsIndicatorOptions,
12
+ WsIndicatorSubscription,
13
+ WsIndicatorSignalOptions,
14
+ WsIndicatorSignalSubscription,
15
+ } from './ws';
4
16
  export { jsonParseFloat } from './jsonParseFloat';
17
+
18
+ export type * from '../internal/ws-simple-types';
19
+ export type { WebSocketAPIErrorMessage, WebSocketUntypedMessage } from '../internal/ws-parser';
@@ -5,6 +5,7 @@
5
5
  */
6
6
  const NUMBER_FIELDS: Set<string> = new Set([
7
7
  'timestamp',
8
+ 'tms',
8
9
  'trade_timestamp',
9
10
  'sequential_id',
10
11
  'trades_count',
@@ -20,51 +21,75 @@ const NUMBER_FIELDS: Set<string> = new Set([
20
21
  /**
21
22
  * Parses a JSON string with type-aware coercion.
22
23
  *
23
- * 1st pass (JSON.parse reviver): float tokens (containing `.`, `e`, `E`) are
24
- * preserved as their original string representation to avoid precision loss.
25
- * Uses the reviver's third argument `context.source` (TypeScript 5.2+ / modern runtimes).
24
+ * 1st pass (JSON.parse reviver): numeric tokens retain their original source
25
+ * alongside the parsed number. Uses the runtime's reviver `context.source`.
26
26
  * Falls back to standard number parsing when `context.source` is unavailable.
27
27
  *
28
28
  * 2nd pass (constructType): coerces values to match SDK declared types.
29
29
  * - `string`-declared fields: `number` → `string` (e.g. balance `0` → `"0"`)
30
30
  * - `number`-declared fields: `string` → `number` (e.g. timestamp `"123.45"` → `123.45`)
31
31
  *
32
- * Mirrors the behavior of Python SDK's `json.loads(parse_float=str)` + `construct_type()`.
32
+ * Integer scalars and integer array elements keep their existing number contract;
33
+ * decimal/exponent scalars and array elements keep their existing source strings.
33
34
  */
34
- export function jsonParseFloat(text: string): unknown {
35
+ export function jsonParseFloat(
36
+ text: string,
37
+ numberField?: (key: string, path: string[], root: Record<string, unknown>) => boolean,
38
+ ): unknown {
35
39
  const parsed = JSON.parse(text, (key: string, value: unknown, context?: { source?: string }) => {
36
40
  if (typeof value !== 'number') return value;
37
41
  const src = context?.source;
38
42
  if (!src) return value;
39
- return /[.eE]/.test(src) ? src : value;
43
+ return new NumericToken(src, value);
40
44
  });
41
- return constructType(parsed);
45
+ return constructType(parsed, numberField);
42
46
  }
43
47
 
44
- function constructType(data: unknown): unknown {
48
+ /** Internal only: distinguish numeric wire tokens from JSON string values. */
49
+ class NumericToken {
50
+ constructor(
51
+ readonly source: string,
52
+ readonly value: number,
53
+ ) {}
54
+ }
55
+
56
+ function constructType(
57
+ data: unknown,
58
+ numberField?: (key: string, path: string[], root: Record<string, unknown>) => boolean,
59
+ path: string[] = [],
60
+ root?: Record<string, unknown>,
61
+ ): unknown {
62
+ if (data instanceof NumericToken) {
63
+ return /[.eE]/.test(data.source) ? data.source : data.value;
64
+ }
45
65
  if (Array.isArray(data)) {
46
- return data.map(constructType);
66
+ return data.map((item) => constructType(item, numberField, path, root));
47
67
  }
48
68
 
49
69
  if (data !== null && typeof data === 'object') {
50
70
  const obj = data as Record<string, unknown>;
71
+ root ??= obj;
51
72
  const result: Record<string, unknown> = {};
52
73
  for (const key of Object.keys(obj)) {
53
74
  const value = obj[key];
54
75
 
55
- if (NUMBER_FIELDS.has(key)) {
76
+ if (NUMBER_FIELDS.has(key) || numberField?.(key, path, root)) {
56
77
  // number-declared field: coerce string → number
57
- if (typeof value === 'string') {
78
+ if (value instanceof NumericToken) {
79
+ result[key] = value.value;
80
+ } else if (typeof value === 'string') {
58
81
  result[key] = Number(value);
59
82
  } else {
60
83
  result[key] = value;
61
84
  }
85
+ } else if (value instanceof NumericToken) {
86
+ result[key] = value.source;
62
87
  } else if (typeof value === 'number') {
63
88
  // string-declared field: coerce number → string
64
89
  result[key] = String(value);
65
90
  } else {
66
91
  // recurse into nested objects and arrays
67
- result[key] = constructType(value);
92
+ result[key] = constructType(value, numberField, [...path, key], root);
68
93
  }
69
94
  }
70
95
  return result;