solver-sdk 1.8.0 → 1.9.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 (181) hide show
  1. package/README.md +176 -468
  2. package/dist/cjs/api/{chat-api.js → chat-api/index.js} +77 -125
  3. package/dist/cjs/api/chat-api/index.js.map +1 -0
  4. package/dist/cjs/api/chat-api/interfaces.js +3 -0
  5. package/dist/cjs/api/chat-api/interfaces.js.map +1 -0
  6. package/dist/cjs/api/chat-api/models.js +6 -0
  7. package/dist/cjs/api/chat-api/models.js.map +1 -0
  8. package/dist/cjs/api/chat-api/stream-utils.js +192 -0
  9. package/dist/cjs/api/chat-api/stream-utils.js.map +1 -0
  10. package/dist/cjs/api/chat-api/websocket-helpers.js +211 -0
  11. package/dist/cjs/api/chat-api/websocket-helpers.js.map +1 -0
  12. package/dist/cjs/api/projects-api.js +275 -3
  13. package/dist/cjs/api/projects-api.js.map +1 -1
  14. package/dist/cjs/code-solver-sdk.js +21 -23
  15. package/dist/cjs/code-solver-sdk.js.map +1 -1
  16. package/dist/cjs/constants/websocket-events.constants.js +90 -52
  17. package/dist/cjs/constants/websocket-events.constants.js.map +1 -1
  18. package/dist/cjs/constants/websocket-namespaces.constants.js +18 -0
  19. package/dist/cjs/constants/websocket-namespaces.constants.js.map +1 -0
  20. package/dist/cjs/interfaces/websocket/callbacks.interfaces.js +3 -0
  21. package/dist/cjs/interfaces/websocket/callbacks.interfaces.js.map +1 -0
  22. package/dist/cjs/interfaces/websocket/client-options.interfaces.js +3 -0
  23. package/dist/cjs/interfaces/websocket/client-options.interfaces.js.map +1 -0
  24. package/dist/cjs/interfaces/websocket/events.interfaces.js +3 -0
  25. package/dist/cjs/interfaces/websocket/events.interfaces.js.map +1 -0
  26. package/dist/cjs/interfaces/websocket/stats.interfaces.js +3 -0
  27. package/dist/cjs/interfaces/websocket/stats.interfaces.js.map +1 -0
  28. package/dist/cjs/utils/code-solver-websocket-client.js +383 -1473
  29. package/dist/cjs/utils/code-solver-websocket-client.js.map +1 -1
  30. package/dist/cjs/utils/connection-state-manager.js +133 -0
  31. package/dist/cjs/utils/connection-state-manager.js.map +1 -0
  32. package/dist/cjs/utils/http-client.js +7 -0
  33. package/dist/cjs/utils/http-client.js.map +1 -1
  34. package/dist/cjs/utils/logger.js +106 -0
  35. package/dist/cjs/utils/logger.js.map +1 -0
  36. package/dist/cjs/utils/ping-pong-manager.js +306 -0
  37. package/dist/cjs/utils/ping-pong-manager.js.map +1 -0
  38. package/dist/cjs/utils/reasoning-auth-helper.js +58 -0
  39. package/dist/cjs/utils/reasoning-auth-helper.js.map +1 -0
  40. package/dist/cjs/utils/session-manager.js +114 -0
  41. package/dist/cjs/utils/session-manager.js.map +1 -0
  42. package/dist/cjs/utils/websocket-client.js +37 -10
  43. package/dist/cjs/utils/websocket-client.js.map +1 -1
  44. package/dist/cjs/ws/base-ws-client.js +286 -0
  45. package/dist/cjs/ws/base-ws-client.js.map +1 -0
  46. package/dist/cjs/ws/dependencies-ws-client.js +11 -0
  47. package/dist/cjs/ws/dependencies-ws-client.js.map +1 -0
  48. package/dist/cjs/ws/diagnostics-service.js +170 -0
  49. package/dist/cjs/ws/diagnostics-service.js.map +1 -0
  50. package/dist/cjs/ws/indexing-ws-client.js +223 -0
  51. package/dist/cjs/ws/indexing-ws-client.js.map +1 -0
  52. package/dist/cjs/ws/notifications-ws-client.js +12 -0
  53. package/dist/cjs/ws/notifications-ws-client.js.map +1 -0
  54. package/dist/cjs/ws/reasoning-ws-client.js +330 -0
  55. package/dist/cjs/ws/reasoning-ws-client.js.map +1 -0
  56. package/dist/esm/api/{chat-api.js → chat-api/index.js} +74 -125
  57. package/dist/esm/api/chat-api/index.js.map +1 -0
  58. package/dist/esm/api/chat-api/interfaces.js +2 -0
  59. package/dist/esm/api/chat-api/interfaces.js.map +1 -0
  60. package/dist/esm/api/chat-api/models.js +5 -0
  61. package/dist/esm/api/chat-api/models.js.map +1 -0
  62. package/dist/esm/api/chat-api/stream-utils.js +188 -0
  63. package/dist/esm/api/chat-api/stream-utils.js.map +1 -0
  64. package/dist/esm/api/chat-api/websocket-helpers.js +205 -0
  65. package/dist/esm/api/chat-api/websocket-helpers.js.map +1 -0
  66. package/dist/esm/api/projects-api.js +275 -3
  67. package/dist/esm/api/projects-api.js.map +1 -1
  68. package/dist/esm/code-solver-sdk.js +13 -15
  69. package/dist/esm/code-solver-sdk.js.map +1 -1
  70. package/dist/esm/constants/websocket-events.constants.js +89 -51
  71. package/dist/esm/constants/websocket-events.constants.js.map +1 -1
  72. package/dist/esm/constants/websocket-namespaces.constants.js +15 -0
  73. package/dist/esm/constants/websocket-namespaces.constants.js.map +1 -0
  74. package/dist/esm/interfaces/websocket/callbacks.interfaces.js +2 -0
  75. package/dist/esm/interfaces/websocket/callbacks.interfaces.js.map +1 -0
  76. package/dist/esm/interfaces/websocket/client-options.interfaces.js +2 -0
  77. package/dist/esm/interfaces/websocket/client-options.interfaces.js.map +1 -0
  78. package/dist/esm/interfaces/websocket/events.interfaces.js +2 -0
  79. package/dist/esm/interfaces/websocket/events.interfaces.js.map +1 -0
  80. package/dist/esm/interfaces/websocket/stats.interfaces.js +2 -0
  81. package/dist/esm/interfaces/websocket/stats.interfaces.js.map +1 -0
  82. package/dist/esm/utils/code-solver-websocket-client.js +382 -1473
  83. package/dist/esm/utils/code-solver-websocket-client.js.map +1 -1
  84. package/dist/esm/utils/connection-state-manager.js +129 -0
  85. package/dist/esm/utils/connection-state-manager.js.map +1 -0
  86. package/dist/esm/utils/http-client.js +7 -0
  87. package/dist/esm/utils/http-client.js.map +1 -1
  88. package/dist/esm/utils/logger.js +101 -0
  89. package/dist/esm/utils/logger.js.map +1 -0
  90. package/dist/esm/utils/ping-pong-manager.js +302 -0
  91. package/dist/esm/utils/ping-pong-manager.js.map +1 -0
  92. package/dist/esm/utils/reasoning-auth-helper.js +54 -0
  93. package/dist/esm/utils/reasoning-auth-helper.js.map +1 -0
  94. package/dist/esm/utils/session-manager.js +109 -0
  95. package/dist/esm/utils/session-manager.js.map +1 -0
  96. package/dist/esm/utils/websocket-client.js +37 -10
  97. package/dist/esm/utils/websocket-client.js.map +1 -1
  98. package/dist/esm/ws/base-ws-client.js +282 -0
  99. package/dist/esm/ws/base-ws-client.js.map +1 -0
  100. package/dist/esm/ws/dependencies-ws-client.js +7 -0
  101. package/dist/esm/ws/dependencies-ws-client.js.map +1 -0
  102. package/dist/esm/ws/diagnostics-service.js +166 -0
  103. package/dist/esm/ws/diagnostics-service.js.map +1 -0
  104. package/dist/esm/ws/indexing-ws-client.js +219 -0
  105. package/dist/esm/ws/indexing-ws-client.js.map +1 -0
  106. package/dist/esm/ws/notifications-ws-client.js +8 -0
  107. package/dist/esm/ws/notifications-ws-client.js.map +1 -0
  108. package/dist/esm/ws/reasoning-ws-client.js +326 -0
  109. package/dist/esm/ws/reasoning-ws-client.js.map +1 -0
  110. package/dist/types/api/chat-api/index.d.ts +81 -0
  111. package/dist/types/api/chat-api/index.d.ts.map +1 -0
  112. package/dist/types/api/chat-api/interfaces.d.ts +47 -0
  113. package/dist/types/api/chat-api/interfaces.d.ts.map +1 -0
  114. package/dist/types/api/{chat-api.d.ts → chat-api/models.d.ts} +10 -73
  115. package/dist/types/api/chat-api/models.d.ts.map +1 -0
  116. package/dist/types/api/chat-api/stream-utils.d.ts +31 -0
  117. package/dist/types/api/chat-api/stream-utils.d.ts.map +1 -0
  118. package/dist/types/api/chat-api/websocket-helpers.d.ts +40 -0
  119. package/dist/types/api/chat-api/websocket-helpers.d.ts.map +1 -0
  120. package/dist/types/api/projects-api.d.ts +114 -1
  121. package/dist/types/api/projects-api.d.ts.map +1 -1
  122. package/dist/types/code-solver-sdk.d.ts +3 -2
  123. package/dist/types/code-solver-sdk.d.ts.map +1 -1
  124. package/dist/types/constants/websocket-events.constants.d.ts +77 -36
  125. package/dist/types/constants/websocket-events.constants.d.ts.map +1 -1
  126. package/dist/types/constants/websocket-namespaces.constants.d.ts +14 -0
  127. package/dist/types/constants/websocket-namespaces.constants.d.ts.map +1 -0
  128. package/dist/types/interfaces/http-client.d.ts +1 -1
  129. package/dist/types/interfaces/http-client.d.ts.map +1 -1
  130. package/dist/types/interfaces/websocket/callbacks.interfaces.d.ts +30 -0
  131. package/dist/types/interfaces/websocket/callbacks.interfaces.d.ts.map +1 -0
  132. package/dist/types/interfaces/websocket/client-options.interfaces.d.ts +51 -0
  133. package/dist/types/interfaces/websocket/client-options.interfaces.d.ts.map +1 -0
  134. package/dist/types/interfaces/websocket/events.interfaces.d.ts +165 -0
  135. package/dist/types/interfaces/websocket/events.interfaces.d.ts.map +1 -0
  136. package/dist/types/interfaces/websocket/stats.interfaces.d.ts +72 -0
  137. package/dist/types/interfaces/websocket/stats.interfaces.d.ts.map +1 -0
  138. package/dist/types/types/index.d.ts +8 -0
  139. package/dist/types/types/index.d.ts.map +1 -1
  140. package/dist/types/utils/code-solver-websocket-client.d.ts +67 -612
  141. package/dist/types/utils/code-solver-websocket-client.d.ts.map +1 -1
  142. package/dist/types/utils/connection-state-manager.d.ts +94 -0
  143. package/dist/types/utils/connection-state-manager.d.ts.map +1 -0
  144. package/dist/types/utils/http-client.d.ts +5 -0
  145. package/dist/types/utils/http-client.d.ts.map +1 -1
  146. package/dist/types/utils/logger.d.ts +62 -0
  147. package/dist/types/utils/logger.d.ts.map +1 -0
  148. package/dist/types/utils/ping-pong-manager.d.ts +118 -0
  149. package/dist/types/utils/ping-pong-manager.d.ts.map +1 -0
  150. package/dist/types/utils/reasoning-auth-helper.d.ts +24 -0
  151. package/dist/types/utils/reasoning-auth-helper.d.ts.map +1 -0
  152. package/dist/types/utils/session-manager.d.ts +98 -0
  153. package/dist/types/utils/session-manager.d.ts.map +1 -0
  154. package/dist/types/utils/websocket-client.d.ts +6 -0
  155. package/dist/types/utils/websocket-client.d.ts.map +1 -1
  156. package/dist/types/ws/base-ws-client.d.ts +119 -0
  157. package/dist/types/ws/base-ws-client.d.ts.map +1 -0
  158. package/dist/types/ws/dependencies-ws-client.d.ts +6 -0
  159. package/dist/types/ws/dependencies-ws-client.d.ts.map +1 -0
  160. package/dist/types/ws/diagnostics-service.d.ts +93 -0
  161. package/dist/types/ws/diagnostics-service.d.ts.map +1 -0
  162. package/dist/types/ws/indexing-ws-client.d.ts +78 -0
  163. package/dist/types/ws/indexing-ws-client.d.ts.map +1 -0
  164. package/dist/types/ws/notifications-ws-client.d.ts +5 -0
  165. package/dist/types/ws/notifications-ws-client.d.ts.map +1 -0
  166. package/dist/types/ws/reasoning-ws-client.d.ts +87 -0
  167. package/dist/types/ws/reasoning-ws-client.d.ts.map +1 -0
  168. package/docs/API_REFERENCE.md +432 -0
  169. package/docs/AUTHENTICATION.md +83 -0
  170. package/docs/ERROR_HANDLING.md +240 -0
  171. package/docs/INTEGRATION_EXAMPLES.md +342 -0
  172. package/docs/PING_PONG.md +212 -0
  173. package/docs/README.md +102 -0
  174. package/docs/WEBSOCKET.md +139 -0
  175. package/docs/advanced/PING_PONG.md +212 -0
  176. package/docs/features/THINKING.md +158 -0
  177. package/docs/indexing/INDEXING.md +231 -0
  178. package/package.json +4 -3
  179. package/dist/cjs/api/chat-api.js.map +0 -1
  180. package/dist/esm/api/chat-api.js.map +0 -1
  181. package/dist/types/api/chat-api.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"code-solver-websocket-client.d.ts","sourceRoot":"","sources":["../../../src/utils/code-solver-websocket-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAGhF;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,iCAAiC;IACjC,OAAO,MAAM;IAEb,mCAAmC;IACnC,SAAS,eAAe;IAExB,kCAAkC;IAClC,QAAQ,cAAc;IAEtB,oCAAoC;IACpC,YAAY,kBAAkB;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,+BAA+B;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC;IAE7C;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,+BAA+B;IAC/B,aAAa,EAAE;QACb,mBAAmB;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,oBAAoB;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,uBAAuB;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,aAAa;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,oCAAoC;IACpC,oBAAoB,EAAE;QACpB,eAAe;QACf,EAAE,EAAE,MAAM,CAAC;QACX,gBAAgB;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,mBAAmB;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,oCAAoC;IACpC,oBAAoB,EAAE;QACpB,wBAAwB;QACxB,KAAK,EAAE,MAAM,CAAC;QACd,mBAAmB;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,oCAAoC;IACpC,mBAAmB,EAAE;QACnB,eAAe;QACf,EAAE,EAAE,MAAM,CAAC;QACX,gBAAgB;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,mBAAmB;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,oCAAoC;IACpC,mBAAmB,EAAE;QACnB,wBAAwB;QACxB,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QACxB,mBAAmB;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,uCAAuC;IACvC,mBAAmB,EAAE;QACnB,eAAe;QACf,EAAE,EAAE,MAAM,CAAC;QACX,gBAAgB;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,mBAAmB;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,uCAAuC;IACvC,kBAAkB,EAAE;QAClB,eAAe;QACf,EAAE,EAAE,MAAM,CAAC;QACX,gBAAgB;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,mBAAmB;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,kCAAkC;IAClC,YAAY,EAAE;QACZ,mBAAmB;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,oBAAoB;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,uBAAuB;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,aAAa;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,qBAAqB;IACrB,KAAK,EAAE;QACL,iBAAiB;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,0BAA0B;QAC1B,OAAO,EAAE,MAAM,CAAC;QAChB,oBAAoB;QACpB,OAAO,CAAC,EAAE;YACR,kBAAkB;YAClB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,iBAAiB;YACjB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,qBAAqB;YACrB,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,+BAA+B;IAC/B,YAAY,EAAE;QACZ,iBAAiB;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,yBAAyB;QACzB,IAAI,EAAE;YACJ,mBAAmB;YACnB,IAAI,EAAE,MAAM,CAAC;YACb,4BAA4B;YAC5B,QAAQ,EAAE,MAAM,CAAC;YACjB,uBAAuB;YACvB,SAAS,EAAE,MAAM,CAAC;YAClB,oBAAoB;YACpB,UAAU,EAAE,UAAU,GAAG,YAAY,GAAG,YAAY,CAAC;SACtD,CAAC;KACH,CAAC;IAEF,4CAA4C;IAC5C,iBAAiB,EAAE;QACjB,iBAAiB;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,uBAAuB;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,4BAA4B;QAC5B,KAAK,EAAE;YACL,8BAA8B;YAC9B,UAAU,EAAE,MAAM,CAAC;YACnB,2CAA2C;YAC3C,OAAO,EAAE,MAAM,CAAC;YAChB,mCAAmC;YACnC,MAAM,EAAE,MAAM,CAAC;YACf,uCAAuC;YACvC,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,qBAAqB;QACrB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,0BAA0B;IAC1B,OAAO,EAAE;QACP,iBAAiB;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF,yBAAyB;IACzB,UAAU,EAAE;QACV,yBAAyB;QACzB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sCAAsC;IACtC,iBAAiB,EAAE;QACjB,iBAAiB;QACjB,SAAS,EAAE,MAAM,CAAC;QAElB,sBAAsB;QACtB,SAAS,EAAE,MAAM,CAAC;QAElB,uBAAuB;QACvB,aAAa,EAAE,MAAM,EAAE,CAAC;KACzB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG,cAAc,GAAG,YAAY,GAAG,kBAAkB,CAAC;AAEnG;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,8CAA8C;IAC9C,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IAElE,mDAAmD;IACnD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,sBAAsB,CAAC,KAAK,IAAI,CAAC;IAE1E,mDAAmD;IACnD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,sBAAsB,CAAC,KAAK,IAAI,CAAC;IAE1E,sDAAsD;IACtD,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAC;IAExE,mDAAmD;IACnD,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAC;IAExE,mDAAmD;IACnD,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAC;IAExE,sDAAsD;IACtD,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC;IAEtE,iDAAiD;IACjD,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;IAEhE,oCAAoC;IACpC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IAEnD,gDAAgD;IAChD,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,gDAAgD;IAChD,SAAS,EAAE,kBAAkB,CAAC;IAC9B,gBAAgB;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,wBAAwB;IACxB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,wBAAwB;IACxB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,2BAA2B;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB;IACnB,GAAG,EAAE;QACH,uBAAuB;QACvB,OAAO,EAAE,MAAM,CAAC;QAChB,2BAA2B;QAC3B,GAAG,EAAE,MAAM,CAAC;QACZ,4BAA4B;QAC5B,GAAG,EAAE,MAAM,CAAC;QACZ,uBAAuB;QACvB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,2BAA2B;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mCAAmC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,eAAe,EAAE;QACf,4BAA4B;QAC5B,eAAe,EAAE,OAAO,CAAC;QACzB,0BAA0B;QAC1B,WAAW,EAAE,MAAM,CAAC;QACpB,sCAAsC;QACtC,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;CACH;AAED;;GAEG;AACH,qBAAa,yBAAyB;IACpC,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC,oBAAoB;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IAErD,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IAExC,oDAAoD;IACpD,OAAO,CAAC,OAAO,CAAuD;IAEtE,kCAAkC;IAClC,OAAO,CAAC,iBAAiB,CAAuB;IAEhD,iCAAiC;IACjC,OAAO,CAAC,eAAe,CAAuB;IAE9C,mCAAmC;IACnC,OAAO,CAAC,qBAAqB,CAA+C;IAE5E,4BAA4B;IAC5B,OAAO,CAAC,aAAa,CAAsD;IAE3E,2BAA2B;IAC3B,OAAO,CAAC,SAAS,CAAqD;IAEtE,4CAA4C;IAC5C,OAAO,CAAC,YAAY,CAA8C;IAElE,+DAA+D;IAC/D,OAAO,CAAC,mBAAmB,CAAiB;IAE5C,mDAAmD;IACnD,OAAO,CAAC,gBAAgB,CAAa;IAErC,uCAAuC;IACvC,OAAO,CAAC,qBAAqB,CAAsD;IAEnF,gDAAgD;IAChD,OAAO,CAAC,aAAa,CAA8C;IAEnE,wDAAwD;IACxD,OAAO,CAAC,eAAe,CAKR;IAEf,8CAA8C;IAC9C,OAAO,CAAC,gBAAgB,CAA+B;IAEvD;;;;OAIG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,0BAA+B;IAarE;;;;;OAKG;IACH,OAAO,CAAC,MAAM;IAUd;;;;;OAKG;YACW,OAAO;IAkIrB;;;;OAIG;IACU,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiDpE;;;OAGG;IACU,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC;IAUvD;;;;OAIG;IACU,qBAAqB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA8CxE;;;OAGG;IACI,UAAU,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAgBtD;;;OAGG;IACI,aAAa,IAAI,IAAI;IAiB5B;;;;;OAKG;IACI,EAAE,CACP,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,EAC5B,SAAS,CAAC,EAAE,kBAAkB,GAC7B,IAAI;IAkBP;;;;;OAKG;IACI,GAAG,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,EAC7B,SAAS,CAAC,EAAE,kBAAkB,GAC7B,IAAI;IAkBP;;;;;;OAMG;IACI,IAAI,CAAC,SAAS,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO;IAalF;;;;;OAKG;IACI,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO;IAQ9D;;;;;OAKG;IACI,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO;IAQ7D;;;;;OAKG;IACI,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO;IAIlE;;;;OAIG;IACI,WAAW,CAAC,SAAS,EAAE,kBAAkB,GAAG,OAAO;IAK1D;;;OAGG;IACI,sBAAsB,IAAI,OAAO;IAIxC;;;OAGG;IACI,qBAAqB,IAAI,OAAO;IAIvC;;;OAGG;IACI,0BAA0B,IAAI,OAAO;IAI5C;;;;OAIG;IACI,WAAW,CAAC,SAAS,GAAE,kBAAiD,GAAG,MAAM,GAAG,IAAI;IAU/F;;;;;OAKG;IACI,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;IAqBnF;;;;OAIG;IACI,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAazD;;;;;OAKG;IACU,wBAAwB,CACnC,WAAW,GAAE,MAAiB,EAC9B,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GACpC,OAAO,CAAC,MAAM,CAAC;IA6FlB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IA2B9B;;;;;OAKG;IACI,cAAc,CAAC,QAAQ,GAAE,MAAiC,EAAE,gBAAgB,GAAE,MAAU,GAAG,OAAO;IAsJzG;;;OAGG;IACI,eAAe,CAAC,SAAS,CAAC,EAAE,kBAAkB,GAAG,IAAI;IAmB5D;;;;OAIG;IACI,YAAY,CAAC,SAAS,CAAC,EAAE,kBAAkB,GAAG,aAAa,GAAG,aAAa,EAAE,GAAG,IAAI;IAU3F;;;;OAIG;IACI,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;IAW7E;;;;OAIG;IACI,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;IAgB/E;;;OAGG;IACI,cAAc,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IAW5C;;;;OAIG;IACI,kBAAkB,CAAC,SAAS,EAAE,kBAAkB,GAAG,qBAAqB;IA+B/E;;;OAGG;IACI,sBAAsB,IAAI,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC;IAatE;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IAuB/B;;;;;OAKG;IACU,kBAAkB,CAC7B,SAAS,EAAE,kBAAkB,EAC7B,SAAS,GAAE,OAAe,GACzB,OAAO,CAAC,OAAO,CAAC;IAqEnB;;;OAGG;IACI,0BAA0B,CAAC,QAAQ,GAAE,MAAc,GAAG,IAAI;IA+CjE;;;;OAIG;IACI,gBAAgB,CAAC,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAO3E;;;;OAIG;IACI,eAAe,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI;IAOpE;;;OAGG;IACI,iBAAiB,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAK7D;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAWlC;;;;OAIG;IACI,kBAAkB,CAAC,SAAS,EAAE,kBAAkB,GAAG;QACxD,eAAe,EAAE,MAAM,CAAC;QACxB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,SAAS,EAAE,OAAO,CAAC;QACnB,YAAY,EAAE,OAAO,CAAC;KACvB;IASD;;;;OAIG;IACI,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAyBzD;;;;OAIG;IACI,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAWrD;;;;;;OAMG;IACU,yBAAyB,CACpC,WAAW,EAAE,MAAM,EACnB,WAAW,GAAE,OAAe,EAC5B,iBAAiB,GAAE,OAAe,GACjC,OAAO,CAAC,OAAO,CAAC;IAyEnB;;;;OAIG;YACW,kBAAkB;IA2BhC;;;;OAIG;IACU,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoCxE;;;;;OAKG;IACU,kBAAkB,CAC7B,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,GAAE;QACP,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,WAAW,CAAC,EAAE,OAAO,CAAC;KAClB,GACL,OAAO,CAAC,OAAO,CAAC;IAgHnB;;;;OAIG;IACU,kBAAkB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAC7D,MAAM,EAAE,OAAO,CAAC;QAChB,QAAQ,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,GAAG,CAAA;KACf,CAAC;IAqDF;;;;;OAKG;IACU,aAAa,CACxB,WAAW,EAAE,MAAM,EACnB,SAAS,GAAE,OAAc,GACxB,OAAO,CAAC,OAAO,CAAC;IA2CnB;;;;;OAKG;IACU,oBAAoB,CAC/B,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,GAAE;QACP,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,WAAW,CAAC,EAAE,OAAO,CAAC;KAClB,GACL,OAAO,CAAC,OAAO,CAAC;CA+GpB"}
1
+ {"version":3,"file":"code-solver-websocket-client.d.ts","sourceRoot":"","sources":["../../../src/utils/code-solver-websocket-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ import { WebSocketNamespace } from '../constants/websocket-namespaces.constants.js';
2
+ import { Logger } from './logger.js';
3
+ /**
4
+ * Состояние подключения
5
+ */
6
+ export interface ConnectionState {
7
+ /** Время последнего успешного подключения */
8
+ lastConnectTime: number;
9
+ /** Количество попыток переподключения */
10
+ reconnectAttempts: number;
11
+ /** Состояние подключения */
12
+ connected: boolean;
13
+ /** Состояние процесса переподключения */
14
+ reconnecting: boolean;
15
+ }
16
+ /**
17
+ * Опции для менеджера состояния подключения
18
+ */
19
+ export interface ConnectionStateManagerOptions {
20
+ /** Стратегия задержки между попытками переподключения */
21
+ reconnectStrategy?: 'linear' | 'exponential';
22
+ /** Базовая задержка для переподключения в миллисекундах */
23
+ retryDelay?: number;
24
+ /** Максимальная задержка для переподключения в миллисекундах */
25
+ maxRetryDelay?: number;
26
+ /** Логгер для вывода сообщений */
27
+ logger?: Logger;
28
+ }
29
+ /**
30
+ * Класс для управления состоянием подключений
31
+ */
32
+ export declare class ConnectionStateManager {
33
+ /** Стратегия задержки между попытками переподключения */
34
+ private readonly reconnectStrategy;
35
+ /** Базовая задержка для переподключения в миллисекундах */
36
+ private readonly retryDelay;
37
+ /** Максимальная задержка для переподключения в миллисекундах */
38
+ private readonly maxRetryDelay;
39
+ /** Логгер для вывода сообщений */
40
+ private readonly logger;
41
+ /** Хранилище состояний подключений */
42
+ private readonly states;
43
+ /**
44
+ * Создает новый менеджер состояния подключений
45
+ * @param {ConnectionStateManagerOptions} options Опции менеджера состояния подключений
46
+ */
47
+ constructor(options?: ConnectionStateManagerOptions);
48
+ /**
49
+ * Получает состояние подключения для указанного пространства имен
50
+ * @param {WebSocketNamespace} namespace Пространство имен
51
+ * @returns {ConnectionState} Состояние подключения
52
+ */
53
+ getState(namespace: WebSocketNamespace): ConnectionState;
54
+ /**
55
+ * Устанавливает состояние подключения для указанного пространства имен
56
+ * @param {WebSocketNamespace} namespace Пространство имен
57
+ * @param {boolean} connected Состояние подключения
58
+ * @param {boolean} reconnecting Состояние переподключения
59
+ */
60
+ setConnectionState(namespace: WebSocketNamespace, connected: boolean, reconnecting?: boolean): void;
61
+ /**
62
+ * Увеличивает счетчик попыток переподключения для указанного пространства имен
63
+ * @param {WebSocketNamespace} namespace Пространство имен
64
+ * @returns {number} Новое количество попыток
65
+ */
66
+ incrementReconnectAttempts(namespace: WebSocketNamespace): number;
67
+ /**
68
+ * Рассчитывает задержку для переподключения на основе количества попыток и стратегии
69
+ * @param {WebSocketNamespace} namespace Пространство имен
70
+ * @returns {number} Задержка в миллисекундах
71
+ */
72
+ calculateReconnectDelay(namespace: WebSocketNamespace): number;
73
+ /**
74
+ * Сбрасывает счетчик попыток переподключения для указанного пространства имен
75
+ * @param {WebSocketNamespace} namespace Пространство имен
76
+ */
77
+ resetReconnectAttempts(namespace: WebSocketNamespace): void;
78
+ /**
79
+ * Регистрирует успешное подключение
80
+ * @param {WebSocketNamespace} namespace Пространство имен
81
+ */
82
+ registerSuccessfulConnection(namespace: WebSocketNamespace): void;
83
+ /**
84
+ * Регистрирует отключение
85
+ * @param {WebSocketNamespace} namespace Пространство имен
86
+ */
87
+ registerDisconnection(namespace: WebSocketNamespace): void;
88
+ /**
89
+ * Регистрирует начало процесса переподключения
90
+ * @param {WebSocketNamespace} namespace Пространство имен
91
+ */
92
+ registerReconnecting(namespace: WebSocketNamespace): void;
93
+ }
94
+ //# sourceMappingURL=connection-state-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-state-manager.d.ts","sourceRoot":"","sources":["../../../src/utils/connection-state-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,EAAE,MAAM,EAAyB,MAAM,aAAa,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,6CAA6C;IAC7C,eAAe,EAAE,MAAM,CAAC;IAExB,yCAAyC;IACzC,iBAAiB,EAAE,MAAM,CAAC;IAE1B,4BAA4B;IAC5B,SAAS,EAAE,OAAO,CAAC;IAEnB,yCAAyC;IACzC,YAAY,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC;IAE7C,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,sBAAsB;IACjC,yDAAyD;IACzD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA2B;IAE7D,2DAA2D;IAC3D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,gEAAgE;IAChE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC,kCAAkC;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuD;IAE9E;;;OAGG;gBACS,OAAO,GAAE,6BAAkC;IAOvD;;;;OAIG;IACI,QAAQ,CAAC,SAAS,EAAE,kBAAkB,GAAG,eAAe;IAc/D;;;;;OAKG;IACI,kBAAkB,CACvB,SAAS,EAAE,kBAAkB,EAC7B,SAAS,EAAE,OAAO,EAClB,YAAY,GAAE,OAAe,GAC5B,IAAI;IAyBP;;;;OAIG;IACI,0BAA0B,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM;IAexE;;;;OAIG;IACI,uBAAuB,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM;IAmBrE;;;OAGG;IACI,sBAAsB,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAWlE;;;OAGG;IACI,4BAA4B,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAKxE;;;OAGG;IACI,qBAAqB,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAIjE;;;OAGG;IACI,oBAAoB,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;CAIjE"}
@@ -93,5 +93,10 @@ export declare class HttpClient implements IHttpClient {
93
93
  * Получает экземпляр Axios для тестирования
94
94
  */
95
95
  get axiosConfig(): any;
96
+ /**
97
+ * Получает базовый URL API
98
+ * @returns {string} Базовый URL
99
+ */
100
+ getBaseURL(): string;
96
101
  }
97
102
  //# sourceMappingURL=http-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../../src/utils/http-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAgB,MAAM,8BAA8B,CAAC;AAG5G,OAAO,QAAQ,OAAO,CAAC;IACrB,UAAiB,kBAAkB;QACjC,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB;CACF;AAYD;;;;;GAKG;AACH,qBAAa,UAAW,YAAW,WAAW;IAC5C,+BAA+B;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAE5C,oBAAoB;IACpB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAE9C,uBAAuB;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IAEjD;;;;OAIG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB;IAgC5D;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;;;OAIG;IACU,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IAyBlE;;;;;;OAMG;IACU,GAAG,CAAC,CAAC,GAAG,GAAG,EACtB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,IAAI,CAAC,CAAC,GAAG,GAAG,EACvB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,GAAG,CAAC,CAAC,GAAG,GAAG,EACtB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,MAAM,CAAC,CAAC,GAAG,GAAG,EACzB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,KAAK,CAAC,CAAC,GAAG,GAAG,EACxB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,UAAU,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,QAAQ,CAAC;IAkCpB;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAwCnB;;OAEG;IACH,IAAW,WAAW,IAAI,GAAG,CAE5B;CACF"}
1
+ {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../../src/utils/http-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAgB,MAAM,8BAA8B,CAAC;AAG5G,OAAO,QAAQ,OAAO,CAAC;IACrB,UAAiB,kBAAkB;QACjC,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB;CACF;AAYD;;;;;GAKG;AACH,qBAAa,UAAW,YAAW,WAAW;IAC5C,+BAA+B;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAE5C,oBAAoB;IACpB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAE9C,uBAAuB;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IAEjD;;;;OAIG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB;IAgC5D;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;;;OAIG;IACU,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IAyBlE;;;;;;OAMG;IACU,GAAG,CAAC,CAAC,GAAG,GAAG,EACtB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,IAAI,CAAC,CAAC,GAAG,GAAG,EACvB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,GAAG,CAAC,CAAC,GAAG,GAAG,EACtB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,MAAM,CAAC,CAAC,GAAG,GAAG,EACzB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,KAAK,CAAC,CAAC,GAAG,GAAG,EACxB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IASb;;;;;;OAMG;IACU,UAAU,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,QAAQ,CAAC;IAkCpB;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAwCnB;;OAEG;IACH,IAAW,WAAW,IAAI,GAAG,CAE5B;IAED;;;OAGG;IACI,UAAU,IAAI,MAAM;CAG5B"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Уровни логирования
3
+ */
4
+ export declare enum LogLevel {
5
+ DEBUG = "debug",
6
+ INFO = "info",
7
+ WARN = "warn",
8
+ ERROR = "error"
9
+ }
10
+ /**
11
+ * Интерфейс логгера
12
+ */
13
+ export interface Logger {
14
+ /**
15
+ * Логирует отладочное сообщение
16
+ * @param message Сообщение для логирования
17
+ * @param data Дополнительные данные
18
+ */
19
+ debug(message: string, data?: any): void;
20
+ /**
21
+ * Логирует информационное сообщение
22
+ * @param message Сообщение для логирования
23
+ * @param data Дополнительные данные
24
+ */
25
+ info(message: string, data?: any): void;
26
+ /**
27
+ * Логирует предупреждение
28
+ * @param message Сообщение для логирования
29
+ * @param data Дополнительные данные
30
+ */
31
+ warn(message: string, data?: any): void;
32
+ /**
33
+ * Логирует ошибку
34
+ * @param message Сообщение для логирования
35
+ * @param data Дополнительные данные
36
+ */
37
+ error(message: string, data?: any): void;
38
+ /**
39
+ * Создает новый логгер с указанным префиксом
40
+ * @param prefix Префикс для нового логгера
41
+ * @returns Новый логгер с префиксом
42
+ */
43
+ withPrefix(prefix: string): Logger;
44
+ }
45
+ /**
46
+ * Тип для функции логирования
47
+ */
48
+ export type LogFunction = (level: string, message: string, data?: any) => void;
49
+ /**
50
+ * Создает новый логгер для WebSocket клиента
51
+ * @param component Название компонента
52
+ * @param logFn Функция логирования
53
+ * @returns Новый логгер
54
+ */
55
+ export declare function createWebSocketLogger(component: string, logFn?: LogFunction): Logger;
56
+ /**
57
+ * Создает новый логгер с пустой функцией логирования
58
+ * @param component Название компонента
59
+ * @returns Новый логгер
60
+ */
61
+ export declare function createNullLogger(component: string): Logger;
62
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;;;OAIG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAEzC;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAExC;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAExC;;;;OAIG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAEzC;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAqF/E;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,GAAE,WAAgC,GAAG,MAAM,CAExG;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE1D"}
@@ -0,0 +1,118 @@
1
+ import { WebSocketNamespace } from '../constants/websocket-namespaces.constants.js';
2
+ import { WebSocketClient } from './websocket-client.js';
3
+ import { Logger } from './logger.js';
4
+ import { PingPongStats } from '../interfaces/websocket/stats.interfaces.js';
5
+ /**
6
+ * Опции для менеджера ping/pong
7
+ */
8
+ export interface PingPongManagerOptions {
9
+ /** Интервал между ping-сообщениями в миллисекундах */
10
+ pingInterval?: number;
11
+ /** Количество пропущенных pong-ответов до признания соединения потерянным */
12
+ pingTimeoutThreshold?: number;
13
+ /** Логгер для вывода сообщений */
14
+ logger?: Logger;
15
+ }
16
+ /**
17
+ * Обработчик для событий ping/pong
18
+ */
19
+ export type PingPongEventHandler = (data: any) => void;
20
+ /**
21
+ * Класс для управления механизмом ping/pong
22
+ */
23
+ export declare class PingPongManager {
24
+ /** Интервал между ping-сообщениями в миллисекундах */
25
+ private readonly pingInterval;
26
+ /** Количество пропущенных pong-ответов до признания соединения потерянным */
27
+ private readonly pingTimeoutThreshold;
28
+ /** Логгер для вывода сообщений */
29
+ private readonly logger;
30
+ /** Таймеры для ping/pong */
31
+ private readonly pingIntervals;
32
+ /** Статистика ping/pong */
33
+ private readonly pingStats;
34
+ /** Количество последовательных таймаутов */
35
+ private readonly pingTimeouts;
36
+ /** Хранилище обработчиков ping/pong */
37
+ private readonly pingPongEventHandlers;
38
+ /** Клиенты WebSocket по namespace */
39
+ private readonly clients;
40
+ /**
41
+ * Создает новый менеджер ping/pong
42
+ * @param {PingPongManagerOptions} options Опции менеджера ping/pong
43
+ */
44
+ constructor(options?: PingPongManagerOptions);
45
+ /**
46
+ * Регистрирует WebSocket клиент для указанного пространства имен
47
+ * @param {WebSocketNamespace} namespace Пространство имен
48
+ * @param {WebSocketClient} client WebSocket клиент
49
+ */
50
+ registerClient(namespace: WebSocketNamespace, client: WebSocketClient): void;
51
+ /**
52
+ * Удаляет регистрацию WebSocket клиента для указанного пространства имен
53
+ * @param {WebSocketNamespace} namespace Пространство имен
54
+ */
55
+ unregisterClient(namespace: WebSocketNamespace): void;
56
+ /**
57
+ * Создает обработчик для события pong
58
+ * @param {WebSocketNamespace} namespace Пространство имен
59
+ * @returns {PingPongEventHandler} Обработчик события pong
60
+ */
61
+ private createPongHandler;
62
+ /**
63
+ * Уведомляет обработчики о событии
64
+ * @param {string} eventType Тип события
65
+ * @param {any} data Данные события
66
+ */
67
+ private notifyEventHandlers;
68
+ /**
69
+ * Включает автоматическую отправку ping-сообщений
70
+ * @param {WebSocketNamespace} namespace Пространство имен
71
+ * @returns {boolean} true, если механизм успешно включен
72
+ */
73
+ enablePingPong(namespace: WebSocketNamespace): boolean;
74
+ /**
75
+ * Проверяет таймаут для ping/pong
76
+ * @param {WebSocketNamespace} namespace Пространство имен
77
+ */
78
+ private checkPingTimeout;
79
+ /**
80
+ * Отключает автоматическую отправку ping-сообщений
81
+ * @param {WebSocketNamespace} namespace Пространство имен
82
+ */
83
+ disablePingPong(namespace: WebSocketNamespace): void;
84
+ /**
85
+ * Отключает автоматическую отправку ping-сообщений для всех пространств имен
86
+ */
87
+ disablePingPongAll(): void;
88
+ /**
89
+ * Получает статистику ping/pong для указанного пространства имен
90
+ * @param {WebSocketNamespace} namespace Пространство имен
91
+ * @returns {PingPongStats | null} Статистика ping/pong
92
+ */
93
+ getPingStats(namespace: WebSocketNamespace): PingPongStats | null;
94
+ /**
95
+ * Получает статистику ping/pong для всех пространств имен
96
+ * @returns {PingPongStats[]} Массив статистики ping/pong
97
+ */
98
+ getAllPingStats(): PingPongStats[];
99
+ /**
100
+ * Добавляет обработчик для событий ping/pong
101
+ * @param {string} eventType Тип события (connection_timeout, connection_pong)
102
+ * @param {PingPongEventHandler} handler Обработчик события
103
+ */
104
+ onPingPongEvent(eventType: string, handler: PingPongEventHandler): void;
105
+ /**
106
+ * Удаляет обработчик для событий ping/pong
107
+ * @param {string} eventType Тип события
108
+ * @param {PingPongEventHandler} [handler] Обработчик события (если не указан, удаляются все обработчики)
109
+ */
110
+ offPingPongEvent(eventType: string, handler?: PingPongEventHandler): void;
111
+ /**
112
+ * Проверяет, включен ли механизм ping/pong для указанного пространства имен
113
+ * @param {WebSocketNamespace} namespace Пространство имен
114
+ * @returns {boolean} true, если механизм включен
115
+ */
116
+ isPingPongEnabled(namespace: WebSocketNamespace): boolean;
117
+ }
118
+ //# sourceMappingURL=ping-pong-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ping-pong-manager.d.ts","sourceRoot":"","sources":["../../../src/utils/ping-pong-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAyB,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAG5E;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,6EAA6E;IAC7E,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;AAEvD;;GAEG;AACH,qBAAa,eAAe;IAC1B,sDAAsD;IACtD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAEtC,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAE9C,kCAAkC;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,4BAA4B;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsD;IAEpF,2BAA2B;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqD;IAE/E,4CAA4C;IAC5C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA8C;IAE3E,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAuD;IAE7F,qCAAqC;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuD;IAE/E;;;OAGG;gBACS,OAAO,GAAE,sBAA2B;IAMhD;;;;OAIG;IACI,cAAc,CAAC,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI;IA8BnF;;;OAGG;IACI,gBAAgB,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAK5D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgDzB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAY3B;;;;OAIG;IACI,cAAc,CAAC,SAAS,EAAE,kBAAkB,GAAG,OAAO;IA4E7D;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IA+BxB;;;OAGG;IACI,eAAe,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAU3D;;OAEG;IACI,kBAAkB,IAAI,IAAI;IAQjC;;;;OAIG;IACI,YAAY,CAAC,SAAS,EAAE,kBAAkB,GAAG,aAAa,GAAG,IAAI;IAIxE;;;OAGG;IACI,eAAe,IAAI,aAAa,EAAE;IAIzC;;;;OAIG;IACI,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAW9E;;;;OAIG;IACI,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI;IAgBhF;;;;OAIG;IACI,iBAAiB,CAAC,SAAS,EAAE,kBAAkB,GAAG,OAAO;CAGjE"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Вспомогательные функции для авторизации в пространстве имен рассуждений
3
+ */
4
+ /**
5
+ * Создает параметры запроса для подключения к пространству имен рассуждений
6
+ * с добавлением apiKey в качестве authToken и другими необходимыми параметрами
7
+ *
8
+ * @param apiKey Ключ API для авторизации
9
+ * @param reasoningId ID рассуждения (опционально)
10
+ * @param sessionToken Токен сессии (опционально)
11
+ * @returns Параметры запроса для подключения
12
+ */
13
+ export declare function createReasoningConnectionParams(apiKey: string | undefined, reasoningId?: string | null, sessionToken?: string | null): Record<string, any>;
14
+ /**
15
+ * Создает параметры запроса для подключения к пространству имен индексации
16
+ * с добавлением apiKey в качестве authToken и другими необходимыми параметрами
17
+ *
18
+ * @param apiKey Ключ API для авторизации
19
+ * @param projectId ID проекта (опционально)
20
+ * @param sessionToken Токен сессии (опционально)
21
+ * @returns Параметры запроса для подключения
22
+ */
23
+ export declare function createIndexingConnectionParams(apiKey: string | undefined, projectId?: string | null, sessionToken?: string | null): Record<string, any>;
24
+ //# sourceMappingURL=reasoning-auth-helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoning-auth-helper.d.ts","sourceRoot":"","sources":["../../../src/utils/reasoning-auth-helper.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,EAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,GAC3B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAmBrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EACzB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,GAC3B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAmBrB"}
@@ -0,0 +1,98 @@
1
+ import { WebSocketNamespace } from '../constants/websocket-namespaces.constants.js';
2
+ import { Logger } from './logger.js';
3
+ /**
4
+ * Интерфейс для хранения токенов сессий
5
+ */
6
+ export interface SessionTokenStore {
7
+ /** Получить токен сессии */
8
+ getToken(namespace: WebSocketNamespace): string | null;
9
+ /** Сохранить токен сессии */
10
+ saveToken(namespace: WebSocketNamespace, token: string): void;
11
+ /** Удалить токен сессии */
12
+ removeToken(namespace: WebSocketNamespace): void;
13
+ /** Проверить наличие токена */
14
+ hasToken(namespace: WebSocketNamespace): boolean;
15
+ /** Очистить все токены */
16
+ clear(): void;
17
+ }
18
+ /**
19
+ * Класс для хранения токенов сессий в памяти
20
+ */
21
+ export declare class MemorySessionTokenStore implements SessionTokenStore {
22
+ /** Хранилище токенов */
23
+ private tokens;
24
+ /**
25
+ * Получить токен сессии для указанного пространства имен
26
+ * @param {WebSocketNamespace} namespace Пространство имен
27
+ * @returns {string | null} Токен сессии или null, если не найден
28
+ */
29
+ getToken(namespace: WebSocketNamespace): string | null;
30
+ /**
31
+ * Сохранить токен сессии для указанного пространства имен
32
+ * @param {WebSocketNamespace} namespace Пространство имен
33
+ * @param {string} token Токен сессии
34
+ */
35
+ saveToken(namespace: WebSocketNamespace, token: string): void;
36
+ /**
37
+ * Удалить токен сессии для указанного пространства имен
38
+ * @param {WebSocketNamespace} namespace Пространство имен
39
+ */
40
+ removeToken(namespace: WebSocketNamespace): void;
41
+ /**
42
+ * Проверить наличие токена для указанного пространства имен
43
+ * @param {WebSocketNamespace} namespace Пространство имен
44
+ * @returns {boolean} true, если токен есть
45
+ */
46
+ hasToken(namespace: WebSocketNamespace): boolean;
47
+ /**
48
+ * Очистить все токены
49
+ */
50
+ clear(): void;
51
+ }
52
+ /**
53
+ * Опции для менеджера сессий
54
+ */
55
+ export interface SessionManagerOptions {
56
+ /** Включение сохранения и восстановления сессий */
57
+ enableSessionPersistence?: boolean;
58
+ /** Логгер */
59
+ logger?: Logger;
60
+ }
61
+ /**
62
+ * Класс для управления токенами сессий WebSocket
63
+ */
64
+ export declare class SessionManager {
65
+ /** Хранилище токенов сессий */
66
+ private sessionTokens;
67
+ /** Включено ли сохранение сессий */
68
+ private readonly enableSessionPersistence;
69
+ /** Логгер */
70
+ private readonly logger;
71
+ /**
72
+ * Создает новый менеджер сессий
73
+ * @param {SessionManagerOptions} options Опции менеджера сессий
74
+ */
75
+ constructor(options?: SessionManagerOptions);
76
+ /**
77
+ * Сохраняет токен сессии для пространства имен
78
+ * @param {string} namespace Пространство имен
79
+ * @param {string} token Токен сессии
80
+ */
81
+ saveSessionToken(namespace: string, token: string): void;
82
+ /**
83
+ * Получает токен сессии для пространства имен
84
+ * @param {string} namespace Пространство имен
85
+ * @returns {string | undefined} Токен сессии или undefined, если не найден
86
+ */
87
+ getSessionToken(namespace: string): string | undefined;
88
+ /**
89
+ * Удаляет токен сессии для пространства имен
90
+ * @param {string} namespace Пространство имен
91
+ */
92
+ clearSessionToken(namespace: string): void;
93
+ /**
94
+ * Удаляет все токены сессий
95
+ */
96
+ clearAllSessionTokens(): void;
97
+ }
98
+ //# sourceMappingURL=session-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../../src/utils/session-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,EAAE,MAAM,EAAyB,MAAM,aAAa,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,QAAQ,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI,CAAC;IAEvD,6BAA6B;IAC7B,SAAS,CAAC,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9D,2BAA2B;IAC3B,WAAW,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAEjD,+BAA+B;IAC/B,QAAQ,CAAC,SAAS,EAAE,kBAAkB,GAAG,OAAO,CAAC;IAEjD,0BAA0B;IAC1B,KAAK,IAAI,IAAI,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAC/D,wBAAwB;IACxB,OAAO,CAAC,MAAM,CAA8C;IAE5D;;;;OAIG;IACI,QAAQ,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI;IAI7D;;;;OAIG;IACI,SAAS,CAAC,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIpE;;;OAGG;IACI,WAAW,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;IAIvD;;;;OAIG;IACI,QAAQ,CAAC,SAAS,EAAE,kBAAkB,GAAG,OAAO;IAIvD;;OAEG;IACI,KAAK,IAAI,IAAI;CAGrB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,mDAAmD;IACnD,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC,aAAa;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,+BAA+B;IAC/B,OAAO,CAAC,aAAa,CAAkC;IAEvD,oCAAoC;IACpC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAU;IAEnD,aAAa;IACb,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC;;;OAGG;gBACS,OAAO,GAAE,qBAA0B;IAW/C;;;;OAIG;IACI,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAU/D;;;;OAIG;IACI,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAW7D;;;OAGG;IACI,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKjD;;OAEG;IACI,qBAAqB,IAAI,IAAI;CAIrC"}
@@ -119,6 +119,12 @@ export declare class WebSocketClient {
119
119
  * @param {WebSocketClientOptions} [options] Опции клиента
120
120
  */
121
121
  constructor(url: string, options?: WebSocketClientOptions);
122
+ /**
123
+ * Получает WebSocket URL из HTTP URL
124
+ * @returns {string} WebSocket URL
125
+ * @private
126
+ */
127
+ private getWebSocketURL;
122
128
  /**
123
129
  * Подключается к WebSocket серверу используя Socket.IO клиент
124
130
  * @returns {Promise<void>}
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-client.d.ts","sourceRoot":"","sources":["../../../src/utils/websocket-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket-client.d.ts","sourceRoot":"","sources":["../../../src/utils/websocket-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,119 @@
1
+ import { WebSocketClient, WebSocketClientOptions } from '../utils/websocket-client.js';
2
+ import { WebSocketNamespace } from '../constants/websocket-namespaces.constants.js';
3
+ import { Logger, LogFunction } from '../utils/logger.js';
4
+ import { SessionManager } from '../utils/session-manager.js';
5
+ import { PingPongManager } from '../utils/ping-pong-manager.js';
6
+ import { ConnectionStateManager } from '../utils/connection-state-manager.js';
7
+ /**
8
+ * Опции базового WebSocket клиента
9
+ */
10
+ export interface BaseWebSocketClientOptions extends Omit<WebSocketClientOptions, 'logger'> {
11
+ /** Логгер (объект или функция) */
12
+ logger?: Logger | LogFunction;
13
+ /** API ключ для аутентификации */
14
+ apiKey?: string;
15
+ /** Включить автоматическое ping/pong */
16
+ enableAutoPing?: boolean;
17
+ /** Интервал ping в миллисекундах */
18
+ pingInterval?: number;
19
+ /** Таймаут ожидания pong в миллисекундах */
20
+ pingTimeoutThreshold?: number;
21
+ /** Включить сохранение сессий */
22
+ enableSessionPersistence?: boolean;
23
+ /** Стратегия переподключения */
24
+ reconnectStrategy?: 'linear' | 'exponential' | 'fibonacci';
25
+ /** Задержка перед повторной попыткой подключения в миллисекундах */
26
+ retryDelay?: number;
27
+ /** Максимальная задержка перед повторной попыткой подключения в миллисекундах */
28
+ maxRetryDelay?: number;
29
+ }
30
+ /**
31
+ * Базовый абстрактный класс для всех WebSocket клиентов
32
+ */
33
+ export declare abstract class BaseWebSocketClient {
34
+ /** Базовый URL API */
35
+ protected readonly baseURL: string;
36
+ /** Опции клиента */
37
+ protected readonly options: BaseWebSocketClientOptions;
38
+ /** Пространство имен WebSocket */
39
+ protected readonly namespace: WebSocketNamespace;
40
+ /** WebSocket клиент */
41
+ protected client: WebSocketClient | null;
42
+ /** Логгер */
43
+ protected readonly logger: Logger;
44
+ /** Менеджер сессий */
45
+ protected readonly sessionManager: SessionManager;
46
+ /** Менеджер ping/pong */
47
+ protected readonly pingPongManager: PingPongManager;
48
+ /** Менеджер состояния подключения */
49
+ protected readonly connectionStateManager: ConnectionStateManager;
50
+ /**
51
+ * Создает новый базовый WebSocket клиент
52
+ * @param {WebSocketNamespace} namespace Пространство имен WebSocket
53
+ * @param {string} baseURL Базовый URL API
54
+ * @param {BaseWebSocketClientOptions} options Опции клиента
55
+ */
56
+ constructor(namespace: WebSocketNamespace, baseURL: string, options?: BaseWebSocketClientOptions);
57
+ /**
58
+ * Подключается к серверу WebSocket
59
+ * @param {Record<string, any>} [params={}] Дополнительные параметры для подключения
60
+ * @returns {Promise<boolean>} Успешность подключения
61
+ */
62
+ connect(params?: Record<string, any>): Promise<boolean>;
63
+ /**
64
+ * Формирует URL для подключения
65
+ * @param {Record<string, any>} params Параметры для подключения
66
+ * @returns {string} URL для подключения
67
+ */
68
+ protected buildConnectionUrl(params: Record<string, any>): string;
69
+ /**
70
+ * Устанавливает обработчики событий для WebSocket клиента
71
+ */
72
+ protected setupEventHandlers(): void;
73
+ /**
74
+ * Отправляет аутентификационные данные на сервер
75
+ */
76
+ protected authenticate(): void;
77
+ /**
78
+ * Отключается от сервера WebSocket
79
+ */
80
+ disconnect(): void;
81
+ /**
82
+ * Проверяет, подключен ли клиент к серверу
83
+ * @returns {boolean} true, если клиент подключен
84
+ */
85
+ isConnected(): boolean;
86
+ /**
87
+ * Получает ID сокета
88
+ * @returns {string | null} ID сокета или null, если не подключен
89
+ */
90
+ getSocketId(): string | null;
91
+ /**
92
+ * Отправляет событие на сервер
93
+ * @param {string} eventType Тип события
94
+ * @param {any} [data] Данные события
95
+ * @returns {boolean} Успешность отправки
96
+ */
97
+ send(eventType: string, data?: any): boolean;
98
+ /**
99
+ * Отправляет событие и ожидает ответа
100
+ * @param {string} eventType Тип события
101
+ * @param {any} data Данные события
102
+ * @param {number} [timeout=5000] Таймаут ожидания ответа в миллисекундах
103
+ * @returns {Promise<any>} Ответ сервера
104
+ */
105
+ emitWithAck(eventType: string, data: any, timeout?: number): Promise<any>;
106
+ /**
107
+ * Добавляет обработчик события
108
+ * @param {string} eventType Тип события
109
+ * @param {(data: any) => void} handler Обработчик события
110
+ */
111
+ on(eventType: string, handler: (data: any) => void): void;
112
+ /**
113
+ * Удаляет обработчик события
114
+ * @param {string} eventType Тип события
115
+ * @param {(data: any) => void} [handler] Обработчик события (если не указан, удаляются все обработчики)
116
+ */
117
+ off(eventType: string, handler?: (data: any) => void): void;
118
+ }
119
+ //# sourceMappingURL=base-ws-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-ws-client.d.ts","sourceRoot":"","sources":["../../../src/ws/base-ws-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEpF,OAAO,EAAE,MAAM,EAAyB,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAE9E;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,IAAI,CAAC,sBAAsB,EAAE,QAAQ,CAAC;IACxF,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAE9B,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,wCAAwC;IACxC,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,iCAAiC;IACjC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC,gCAAgC;IAChC,iBAAiB,CAAC,EAAE,QAAQ,GAAG,aAAa,GAAG,WAAW,CAAC;IAE3D,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iFAAiF;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,8BAAsB,mBAAmB;IACvC,sBAAsB;IACtB,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEnC,oBAAoB;IACpB,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,0BAA0B,CAAC;IAEvD,kCAAkC;IAClC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IAEjD,uBAAuB;IACvB,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAQ;IAEhD,aAAa;IACb,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAElC,sBAAsB;IACtB,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAElD,yBAAyB;IACzB,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAEpD,qCAAqC;IACrC,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAElE;;;;;OAKG;gBAED,SAAS,EAAE,kBAAkB,EAC7B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,0BAA+B;IAuC1C;;;;OAIG;IACU,OAAO,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA+DxE;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM;IA2CjE;;OAEG;IACH,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAgCpC;;OAEG;IACH,SAAS,CAAC,YAAY,IAAI,IAAI;IAe9B;;OAEG;IACI,UAAU,IAAI,IAAI;IAgBzB;;;OAGG;IACI,WAAW,IAAI,OAAO;IAI7B;;;OAGG;IACI,WAAW,IAAI,MAAM,GAAG,IAAI;IAInC;;;;;OAKG;IACI,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO;IAYnD;;;;;;OAMG;IACU,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,GAAE,MAAa,GAAG,OAAO,CAAC,GAAG,CAAC;IAQ5F;;;;OAIG;IACI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;IAShE;;;;OAIG;IACI,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;CAKnE"}