assistant-stream 0.3.15 → 0.3.16

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 (232) hide show
  1. package/README.md +6 -4
  2. package/dist/core/AssistantStream.d.ts +35 -31
  3. package/dist/core/AssistantStream.d.ts.map +1 -1
  4. package/dist/core/AssistantStream.js +39 -37
  5. package/dist/core/AssistantStream.js.map +1 -1
  6. package/dist/core/AssistantStreamChunk.d.ts +71 -78
  7. package/dist/core/AssistantStreamChunk.d.ts.map +1 -1
  8. package/dist/core/AssistantStreamChunk.js +0 -2
  9. package/dist/core/accumulators/AssistantMessageStream.d.ts +15 -11
  10. package/dist/core/accumulators/AssistantMessageStream.d.ts.map +1 -1
  11. package/dist/core/accumulators/AssistantMessageStream.js +52 -48
  12. package/dist/core/accumulators/AssistantMessageStream.js.map +1 -1
  13. package/dist/core/accumulators/TimingTracker.d.ts +15 -11
  14. package/dist/core/accumulators/TimingTracker.d.ts.map +1 -1
  15. package/dist/core/accumulators/TimingTracker.js +36 -43
  16. package/dist/core/accumulators/TimingTracker.js.map +1 -1
  17. package/dist/core/accumulators/assistant-message-accumulator.d.ts +21 -11
  18. package/dist/core/accumulators/assistant-message-accumulator.d.ts.map +1 -1
  19. package/dist/core/accumulators/assistant-message-accumulator.js +349 -390
  20. package/dist/core/accumulators/assistant-message-accumulator.js.map +1 -1
  21. package/dist/core/converters/toGenericMessages.d.ts +49 -47
  22. package/dist/core/converters/toGenericMessages.d.ts.map +1 -1
  23. package/dist/core/converters/toGenericMessages.js +122 -136
  24. package/dist/core/converters/toGenericMessages.js.map +1 -1
  25. package/dist/core/modules/assistant-stream.d.ts +62 -66
  26. package/dist/core/modules/assistant-stream.d.ts.map +1 -1
  27. package/dist/core/modules/assistant-stream.js +174 -182
  28. package/dist/core/modules/assistant-stream.js.map +1 -1
  29. package/dist/core/modules/text.d.ts +11 -7
  30. package/dist/core/modules/text.d.ts.map +1 -1
  31. package/dist/core/modules/text.js +45 -45
  32. package/dist/core/modules/text.js.map +1 -1
  33. package/dist/core/modules/tool-call.d.ts +15 -11
  34. package/dist/core/modules/tool-call.d.ts.map +1 -1
  35. package/dist/core/modules/tool-call.js +81 -96
  36. package/dist/core/modules/tool-call.js.map +1 -1
  37. package/dist/core/object/ObjectStreamAccumulator.d.ts +13 -9
  38. package/dist/core/object/ObjectStreamAccumulator.d.ts.map +1 -1
  39. package/dist/core/object/ObjectStreamAccumulator.js +44 -52
  40. package/dist/core/object/ObjectStreamAccumulator.js.map +1 -1
  41. package/dist/core/object/ObjectStreamResponse.d.ts +12 -8
  42. package/dist/core/object/ObjectStreamResponse.d.ts.map +1 -1
  43. package/dist/core/object/ObjectStreamResponse.js +52 -71
  44. package/dist/core/object/ObjectStreamResponse.js.map +1 -1
  45. package/dist/core/object/createObjectStream.d.ts +14 -8
  46. package/dist/core/object/createObjectStream.d.ts.map +1 -1
  47. package/dist/core/object/createObjectStream.js +50 -47
  48. package/dist/core/object/createObjectStream.js.map +1 -1
  49. package/dist/core/object/types.d.ts +14 -11
  50. package/dist/core/object/types.d.ts.map +1 -1
  51. package/dist/core/object/types.js +0 -2
  52. package/dist/core/serialization/PlainText.d.ts +11 -7
  53. package/dist/core/serialization/PlainText.d.ts.map +1 -1
  54. package/dist/core/serialization/PlainText.js +40 -48
  55. package/dist/core/serialization/PlainText.js.map +1 -1
  56. package/dist/core/serialization/assistant-transport/AssistantTransport.d.ts +11 -7
  57. package/dist/core/serialization/assistant-transport/AssistantTransport.d.ts.map +1 -1
  58. package/dist/core/serialization/assistant-transport/AssistantTransport.js +102 -117
  59. package/dist/core/serialization/assistant-transport/AssistantTransport.js.map +1 -1
  60. package/dist/core/serialization/data-stream/DataStream.d.ts +11 -7
  61. package/dist/core/serialization/data-stream/DataStream.d.ts.map +1 -1
  62. package/dist/core/serialization/data-stream/DataStream.js +320 -371
  63. package/dist/core/serialization/data-stream/DataStream.js.map +1 -1
  64. package/dist/core/serialization/data-stream/chunk-types.d.ts +101 -100
  65. package/dist/core/serialization/data-stream/chunk-types.d.ts.map +1 -1
  66. package/dist/core/serialization/data-stream/chunk-types.js +27 -23
  67. package/dist/core/serialization/data-stream/chunk-types.js.map +1 -1
  68. package/dist/core/serialization/data-stream/serialization.d.ts +9 -5
  69. package/dist/core/serialization/data-stream/serialization.d.ts.map +1 -1
  70. package/dist/core/serialization/data-stream/serialization.js +23 -24
  71. package/dist/core/serialization/data-stream/serialization.js.map +1 -1
  72. package/dist/core/serialization/ui-message-stream/UIMessageStream.d.ts +15 -12
  73. package/dist/core/serialization/ui-message-stream/UIMessageStream.d.ts.map +1 -1
  74. package/dist/core/serialization/ui-message-stream/UIMessageStream.js +205 -228
  75. package/dist/core/serialization/ui-message-stream/UIMessageStream.js.map +1 -1
  76. package/dist/core/serialization/ui-message-stream/chunk-types.d.ts +68 -65
  77. package/dist/core/serialization/ui-message-stream/chunk-types.d.ts.map +1 -1
  78. package/dist/core/serialization/ui-message-stream/chunk-types.js +0 -2
  79. package/dist/core/tool/ToolCallReader.d.ts +34 -30
  80. package/dist/core/tool/ToolCallReader.d.ts.map +1 -1
  81. package/dist/core/tool/ToolCallReader.js +264 -317
  82. package/dist/core/tool/ToolCallReader.js.map +1 -1
  83. package/dist/core/tool/ToolExecutionStream.d.ts +20 -17
  84. package/dist/core/tool/ToolExecutionStream.d.ts.map +1 -1
  85. package/dist/core/tool/ToolExecutionStream.js +123 -146
  86. package/dist/core/tool/ToolExecutionStream.js.map +1 -1
  87. package/dist/core/tool/ToolResponse.d.ts +41 -41
  88. package/dist/core/tool/ToolResponse.d.ts.map +1 -1
  89. package/dist/core/tool/ToolResponse.js +50 -56
  90. package/dist/core/tool/ToolResponse.js.map +1 -1
  91. package/dist/core/tool/schema-utils.d.ts +19 -15
  92. package/dist/core/tool/schema-utils.d.ts.map +1 -1
  93. package/dist/core/tool/schema-utils.js +50 -84
  94. package/dist/core/tool/schema-utils.js.map +1 -1
  95. package/dist/core/tool/tool-types.d.ts +103 -122
  96. package/dist/core/tool/tool-types.d.ts.map +1 -1
  97. package/dist/core/tool/tool-types.js +0 -2
  98. package/dist/core/tool/toolResultStream.d.ts +11 -9
  99. package/dist/core/tool/toolResultStream.d.ts.map +1 -1
  100. package/dist/core/tool/toolResultStream.js +127 -157
  101. package/dist/core/tool/toolResultStream.js.map +1 -1
  102. package/dist/core/tool/type-path-utils.d.ts +8 -19
  103. package/dist/core/tool/type-path-utils.d.ts.map +1 -1
  104. package/dist/core/tool/type-path-utils.js +0 -2
  105. package/dist/core/utils/Counter.d.ts +6 -3
  106. package/dist/core/utils/Counter.d.ts.map +1 -1
  107. package/dist/core/utils/Counter.js +10 -6
  108. package/dist/core/utils/Counter.js.map +1 -1
  109. package/dist/core/utils/generateId.d.ts +4 -1
  110. package/dist/core/utils/generateId.d.ts.map +1 -1
  111. package/dist/core/utils/generateId.js +5 -1
  112. package/dist/core/utils/generateId.js.map +1 -1
  113. package/dist/core/utils/stream/AssistantMetaTransformStream.d.ts +15 -11
  114. package/dist/core/utils/stream/AssistantMetaTransformStream.d.ts.map +1 -1
  115. package/dist/core/utils/stream/AssistantMetaTransformStream.js +38 -42
  116. package/dist/core/utils/stream/AssistantMetaTransformStream.js.map +1 -1
  117. package/dist/core/utils/stream/AssistantTransformStream.d.ts +11 -8
  118. package/dist/core/utils/stream/AssistantTransformStream.d.ts.map +1 -1
  119. package/dist/core/utils/stream/AssistantTransformStream.js +37 -35
  120. package/dist/core/utils/stream/AssistantTransformStream.js.map +1 -1
  121. package/dist/core/utils/stream/LineDecoderStream.d.ts +6 -3
  122. package/dist/core/utils/stream/LineDecoderStream.d.ts.map +1 -1
  123. package/dist/core/utils/stream/LineDecoderStream.js +23 -26
  124. package/dist/core/utils/stream/LineDecoderStream.js.map +1 -1
  125. package/dist/core/utils/stream/PipeableTransformStream.d.ts +5 -2
  126. package/dist/core/utils/stream/PipeableTransformStream.d.ts.map +1 -1
  127. package/dist/core/utils/stream/PipeableTransformStream.js +14 -10
  128. package/dist/core/utils/stream/PipeableTransformStream.js.map +1 -1
  129. package/dist/core/utils/stream/SSE.d.ts +10 -6
  130. package/dist/core/utils/stream/SSE.d.ts.map +1 -1
  131. package/dist/core/utils/stream/SSE.js +79 -91
  132. package/dist/core/utils/stream/SSE.js.map +1 -1
  133. package/dist/core/utils/stream/UnderlyingReadable.d.ts +7 -4
  134. package/dist/core/utils/stream/UnderlyingReadable.d.ts.map +1 -1
  135. package/dist/core/utils/stream/UnderlyingReadable.js +0 -2
  136. package/dist/core/utils/stream/merge.d.ts +11 -7
  137. package/dist/core/utils/stream/merge.d.ts.map +1 -1
  138. package/dist/core/utils/stream/merge.js +68 -170
  139. package/dist/core/utils/stream/merge.js.map +1 -1
  140. package/dist/core/utils/stream/path-utils.d.ts +11 -7
  141. package/dist/core/utils/stream/path-utils.d.ts.map +1 -1
  142. package/dist/core/utils/stream/path-utils.js +46 -52
  143. package/dist/core/utils/stream/path-utils.js.map +1 -1
  144. package/dist/core/utils/types.d.ts +109 -113
  145. package/dist/core/utils/types.d.ts.map +1 -1
  146. package/dist/core/utils/types.js +0 -2
  147. package/dist/core/utils/withPromiseOrValue.d.ts +4 -1
  148. package/dist/core/utils/withPromiseOrValue.d.ts.map +1 -1
  149. package/dist/core/utils/withPromiseOrValue.js +12 -15
  150. package/dist/core/utils/withPromiseOrValue.js.map +1 -1
  151. package/dist/index.d.ts +23 -24
  152. package/dist/index.js +16 -16
  153. package/dist/node_modules/.pnpm/@types_json-schema@7.0.15/node_modules/@types/json-schema/index.d.ts +141 -0
  154. package/dist/node_modules/.pnpm/@types_json-schema@7.0.15/node_modules/@types/json-schema/index.d.ts.map +1 -0
  155. package/dist/resumable/ResumableStreamContext.d.ts +28 -24
  156. package/dist/resumable/ResumableStreamContext.d.ts.map +1 -1
  157. package/dist/resumable/ResumableStreamContext.js +99 -114
  158. package/dist/resumable/ResumableStreamContext.js.map +1 -1
  159. package/dist/resumable/constants.d.ts +4 -1
  160. package/dist/resumable/constants.d.ts.map +1 -1
  161. package/dist/resumable/constants.js +5 -1
  162. package/dist/resumable/constants.js.map +1 -1
  163. package/dist/resumable/createResumableAssistantStreamResponse.d.ts +22 -21
  164. package/dist/resumable/createResumableAssistantStreamResponse.d.ts.map +1 -1
  165. package/dist/resumable/createResumableAssistantStreamResponse.js +25 -32
  166. package/dist/resumable/createResumableAssistantStreamResponse.js.map +1 -1
  167. package/dist/resumable/errors.d.ts +8 -5
  168. package/dist/resumable/errors.d.ts.map +1 -1
  169. package/dist/resumable/errors.js +14 -12
  170. package/dist/resumable/errors.js.map +1 -1
  171. package/dist/resumable/index.d.ts +7 -7
  172. package/dist/resumable/index.js +5 -5
  173. package/dist/resumable/stores/InMemoryResumableStreamStore.d.ts +14 -10
  174. package/dist/resumable/stores/InMemoryResumableStreamStore.d.ts.map +1 -1
  175. package/dist/resumable/stores/InMemoryResumableStreamStore.js +159 -193
  176. package/dist/resumable/stores/InMemoryResumableStreamStore.js.map +1 -1
  177. package/dist/resumable/stores/ioredis.d.ts +9 -5
  178. package/dist/resumable/stores/ioredis.d.ts.map +1 -1
  179. package/dist/resumable/stores/ioredis.js +70 -82
  180. package/dist/resumable/stores/ioredis.js.map +1 -1
  181. package/dist/resumable/stores/redis-impl.d.ts +51 -48
  182. package/dist/resumable/stores/redis-impl.d.ts.map +1 -1
  183. package/dist/resumable/stores/redis-impl.js +176 -176
  184. package/dist/resumable/stores/redis-impl.js.map +1 -1
  185. package/dist/resumable/stores/redis.d.ts +31 -28
  186. package/dist/resumable/stores/redis.d.ts.map +1 -1
  187. package/dist/resumable/stores/redis.js +87 -95
  188. package/dist/resumable/stores/redis.js.map +1 -1
  189. package/dist/resumable/types.d.ts +29 -26
  190. package/dist/resumable/types.d.ts.map +1 -1
  191. package/dist/resumable/types.js +0 -2
  192. package/dist/utils/AsyncIterableStream.d.ts +5 -2
  193. package/dist/utils/AsyncIterableStream.d.ts.map +1 -1
  194. package/dist/utils/AsyncIterableStream.js +17 -16
  195. package/dist/utils/AsyncIterableStream.js.map +1 -1
  196. package/dist/utils/json/fix-json.d.ts +4 -1
  197. package/dist/utils/json/fix-json.d.ts.map +1 -1
  198. package/dist/utils/json/fix-json.js +286 -380
  199. package/dist/utils/json/fix-json.js.map +1 -1
  200. package/dist/utils/json/is-json.d.ts +8 -4
  201. package/dist/utils/json/is-json.d.ts.map +1 -1
  202. package/dist/utils/json/is-json.js +13 -21
  203. package/dist/utils/json/is-json.js.map +1 -1
  204. package/dist/utils/json/json-value.d.ts +7 -4
  205. package/dist/utils/json/json-value.d.ts.map +1 -1
  206. package/dist/utils/json/json-value.js +0 -2
  207. package/dist/utils/json/parse-partial-json-object.d.ts +11 -8
  208. package/dist/utils/json/parse-partial-json-object.d.ts.map +1 -1
  209. package/dist/utils/json/parse-partial-json-object.js +50 -62
  210. package/dist/utils/json/parse-partial-json-object.js.map +1 -1
  211. package/dist/utils/promiseWithResolvers.d.ts +7 -4
  212. package/dist/utils/promiseWithResolvers.d.ts.map +1 -1
  213. package/dist/utils/promiseWithResolvers.js +17 -10
  214. package/dist/utils/promiseWithResolvers.js.map +1 -1
  215. package/dist/utils.d.ts +6 -6
  216. package/dist/utils.js +5 -5
  217. package/package.json +3 -3
  218. package/dist/core/AssistantStreamChunk.js.map +0 -1
  219. package/dist/core/object/types.js.map +0 -1
  220. package/dist/core/serialization/ui-message-stream/chunk-types.js.map +0 -1
  221. package/dist/core/tool/tool-types.js.map +0 -1
  222. package/dist/core/tool/type-path-utils.js.map +0 -1
  223. package/dist/core/utils/stream/UnderlyingReadable.js.map +0 -1
  224. package/dist/core/utils/types.js.map +0 -1
  225. package/dist/index.d.ts.map +0 -1
  226. package/dist/index.js.map +0 -1
  227. package/dist/resumable/index.d.ts.map +0 -1
  228. package/dist/resumable/index.js.map +0 -1
  229. package/dist/resumable/types.js.map +0 -1
  230. package/dist/utils/json/json-value.js.map +0 -1
  231. package/dist/utils.d.ts.map +0 -1
  232. package/dist/utils.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"fix-json.js","sourceRoot":"","sources":["../../../src/utils/json/fix-json.ts"],"names":[],"mappings":"AAAA,6BAA6B;AA0C7B,kDAAkD;AAClD,sEAAsE;AACtE,EAAE;AACF,sEAAsE;AACtE,oCAAoC;AACpC,EAAE;AACF,sEAAsE;AACtE,qEAAqE;AACrE,iDAAiD;AAEjD,8CAA8C;AAC9C,8DAA8D;AAC9D,gEAAgE;AAChE,gEAAgE;AAChE,sBAAsB;AAEtB,kCAAkC;AAClC,0DAA0D;AAC1D,2BAA2B;AAC3B,6BAA6B;AAE7B,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,MAAM,KAAK,GAAY,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,cAAc,GAAG,CAAC,CAAC,CAAC;IACxB,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,UAA8B,CAAC;IAEnC,SAAS,oBAAoB;QAC3B,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC;YACzC,UAAU,GAAG,SAAS,CAAC;QACzB,CAAC;IACH,CAAC;IAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,CAAS,EAAE,SAAgB;QAClE,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,cAAc,GAAG,CAAC,CAAC;gBACnB,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBAE5B,oBAAoB,EAAE,CAAC;gBACvB,MAAM;YACR,CAAC;YAED,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,cAAc,GAAG,CAAC,CAAC;gBACnB,YAAY,GAAG,CAAC,CAAC;gBACjB,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC7B,MAAM;YACR,CAAC;YAED,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBAE5B,oBAAoB,EAAE,CAAC;gBACvB,MAAM;YACR,CAAC;YACD,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,cAAc,GAAG,CAAC,CAAC;gBACnB,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBAE5B,oBAAoB,EAAE,CAAC;gBACvB,MAAM;YACR,CAAC;YAED,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,cAAc,GAAG,CAAC,CAAC;gBACnB,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBAElC,oBAAoB,EAAE,CAAC;gBACvB,MAAM;YACR,CAAC;YAED,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,cAAc,GAAG,CAAC,CAAC;gBACnB,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBAEjC,oBAAoB,EAAE,CAAC;gBACvB,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,uBAAuB,CAAC,IAAY,EAAE,CAAS;QACtD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;gBACxC,MAAM;YACR,CAAC;YACD,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,cAAc,GAAG,CAAC,CAAC;gBACnB,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACxB,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,CAAS;QACrD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBACvC,UAAU,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;gBACjD,MAAM;YACR,CAAC;YACD,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,cAAc,GAAG,CAAC,CAAC;gBACnB,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACxB,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACvB,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE7C,QAAQ,YAAY,EAAE,CAAC;YACrB,KAAK,MAAM;gBACT,iBAAiB,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;gBACrC,MAAM;YAER,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;wBAChC,UAAU,GAAG,EAAE,CAAC;wBAChB,MAAM;oBACR,CAAC;oBACD,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,cAAc,GAAG,CAAC,CAAC;wBACnB,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACxB,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,2BAA2B,CAAC,CAAC,CAAC;gBACjC,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;wBAChC,UAAU,GAAG,EAAE,CAAC;wBAChB,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;wBACtC,MAAM;oBACR,CAAC;oBACD,KAAK,IAAI,CAAC,CAAC,CAAC;wBACV,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;wBACnC,UAAU,IAAI,IAAI,CAAC;wBACnB,MAAM;oBACR,CAAC;oBACD,OAAO,CAAC,CAAC,CAAC;wBACR,UAAU,IAAI,IAAI,CAAC;wBACnB,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,yBAAyB,CAAC,CAAC,CAAC;gBAC/B,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;wBAEzC,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,4BAA4B,CAAC,CAAC,CAAC;gBAClC,iBAAiB,CAAC,IAAI,EAAE,CAAC,EAAE,2BAA2B,CAAC,CAAC;gBACxD,MAAM;YACR,CAAC;YAED,KAAK,2BAA2B,CAAC,CAAC,CAAC;gBACjC,uBAAuB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACjC,MAAM;YACR,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,cAAc,GAAG,CAAC,CAAC;wBAEnB,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACxB,MAAM;oBACR,CAAC;oBAED,KAAK,IAAI,CAAC,CAAC,CAAC;wBACV,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;wBACnC,MAAM;oBACR,CAAC;oBAED,OAAO,CAAC,CAAC,CAAC;wBACR,cAAc,GAAG,CAAC,CAAC;oBACrB,CAAC;gBACH,CAAC;gBAED,MAAM;YACR,CAAC;YAED,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,cAAc,GAAG,CAAC,CAAC;wBACnB,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACxB,MAAM;oBACR,CAAC;oBAED,OAAO,CAAC,CAAC,CAAC;wBACR,cAAc,GAAG,CAAC,CAAC;wBACnB,UAAU,GAAG,GAAG,CAAC;wBACjB,iBAAiB,CAAC,IAAI,EAAE,CAAC,EAAE,0BAA0B,CAAC,CAAC;wBACvD,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,0BAA0B,CAAC,CAAC,CAAC;gBAChC,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;wBAEvC,UAAU,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;wBACjD,MAAM;oBACR,CAAC;oBAED,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,cAAc,GAAG,CAAC,CAAC;wBACnB,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACxB,MAAM;oBACR,CAAC;oBAED,OAAO,CAAC,CAAC,CAAC;wBACR,cAAc,GAAG,CAAC,CAAC;wBACnB,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,MAAM;YACR,CAAC;YAED,KAAK,0BAA0B,CAAC,CAAC,CAAC;gBAChC,iBAAiB,CAAC,IAAI,EAAE,CAAC,EAAE,0BAA0B,CAAC,CAAC;gBACvD,MAAM;YACR,CAAC;YAED,KAAK,sBAAsB,CAAC,CAAC,CAAC;gBAC5B,KAAK,CAAC,GAAG,EAAE,CAAC;gBAEZ,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC;oBAChD,cAAc,GAAG,CAAC,CAAC;gBACrB,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,mBAAmB,EAAE,CAAC;oBAC3D,UAAU,IAAI,IAAI,CAAC;gBACrB,CAAC;gBAED,MAAM;YACR,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,cAAc,GAAG,CAAC,CAAC;wBACnB,MAAM;oBACR,CAAC;oBAED,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,MAAM;oBACR,CAAC;oBAED,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBAExB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,0BAA0B,EAAE,CAAC;4BAC3D,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBAClC,CAAC;wBAED,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,2BAA2B,EAAE,CAAC;4BAC5D,uBAAuB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBACnC,CAAC;wBAED,MAAM;oBACR,CAAC;oBAED,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBAExB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,2BAA2B,EAAE,CAAC;4BAC5D,uBAAuB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBACnC,CAAC;wBAED,MAAM;oBACR,CAAC;oBAED,KAAK,GAAG,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBAExB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,0BAA0B,EAAE,CAAC;4BAC3D,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBAClC,CAAC;wBAED,MAAM;oBACR,CAAC;oBAED,OAAO,CAAC,CAAC,CAAC;wBACR,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACxB,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,MAAM;YACR,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC,YAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;gBAE7D,IACE,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC;oBACnC,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC;oBAClC,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,EAClC,CAAC;oBACD,KAAK,CAAC,GAAG,EAAE,CAAC;oBAEZ,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,2BAA2B,EAAE,CAAC;wBAC5D,uBAAuB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBACnC,CAAC;yBAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,0BAA0B,EAAE,CAAC;wBAClE,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBAClC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,cAAc,GAAG,CAAC,CAAC;gBACrB,CAAC;gBAED,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC;IAEhD,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEvB,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,IAAI,GAAG,CAAC;gBACd,MAAM;YACR,CAAC;YAED,KAAK,mBAAmB,CAAC;YACzB,KAAK,yBAAyB,CAAC;YAC/B,KAAK,2BAA2B,CAAC;YACjC,KAAK,qBAAqB,CAAC;YAC3B,KAAK,4BAA4B,CAAC;YAClC,KAAK,2BAA2B,CAAC,CAAC,CAAC;gBACjC,MAAM,IAAI,GAAG,CAAC;gBACd,MAAM;YACR,CAAC;YAED,KAAK,oBAAoB,CAAC;YAC1B,KAAK,0BAA0B,CAAC;YAChC,KAAK,0BAA0B,CAAC,CAAC,CAAC;gBAChC,MAAM,IAAI,GAAG,CAAC;gBACd,MAAM;YACR,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC,YAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBAEpE,IAAI,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBACtC,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAChD,CAAC;qBAAM,IAAI,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBAC9C,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACjD,CAAC;qBAAM,IAAI,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBAC7C,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"fix-json.js","names":[],"sources":["../../../src/utils/json/fix-json.ts"],"sourcesContent":["// LICENSE for this file only\n\n// MIT License\n\n// Copyright (c) 2025 AgentbaseAI Inc.\n// Copyright (c) 2023 Lars Grammel\n\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n\n// The above copyright notice and this permission notice shall be included in all\n// copies or substantial portions of the Software.\n\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n// SOFTWARE.\n\ntype State =\n | \"ROOT\"\n | \"FINISH\"\n | \"INSIDE_STRING\"\n | \"INSIDE_STRING_ESCAPE\"\n | \"INSIDE_LITERAL\"\n | \"INSIDE_NUMBER\"\n | \"INSIDE_OBJECT_START\"\n | \"INSIDE_OBJECT_KEY\"\n | \"INSIDE_OBJECT_AFTER_KEY\"\n | \"INSIDE_OBJECT_BEFORE_VALUE\"\n | \"INSIDE_OBJECT_AFTER_VALUE\"\n | \"INSIDE_OBJECT_AFTER_COMMA\"\n | \"INSIDE_ARRAY_START\"\n | \"INSIDE_ARRAY_AFTER_VALUE\"\n | \"INSIDE_ARRAY_AFTER_COMMA\";\n\n// Implemented as a scanner with additional fixing\n// that performs a single linear time scan pass over the partial JSON.\n//\n// The states should ideally match relevant states from the JSON spec:\n// https://www.json.org/json-en.html\n//\n// Please note that invalid JSON is not considered/covered, because it\n// is assumed that the resulting JSON will be processed by a standard\n// JSON parser that will detect any invalid JSON.\n\n// Returns a tuple of [fixedJson, partialPath]\n// partialPath is an array of object/array keys that represent\n// the currently partial values. An object is considered partial\n// if through appending extra characters to the JSON string, its\n// value could change.\n\n// Example input: '{\"foo\":[{\"a\":f'\n// Example output: ['{\"foo\":[{\"a\":false}]}', ['foo', '0']]\n// Example input: '{\"foo\":'\n// Example output: ['{}', []]\n\nexport function fixJson(input: string): [string, string[]] {\n const stack: State[] = [\"ROOT\"];\n let lastValidIndex = -1;\n let literalStart: number | null = null;\n const path: string[] = [];\n let currentKey: string | undefined;\n\n function pushCurrentKeyToPath(): void {\n if (currentKey !== undefined) {\n path.push(JSON.parse(`\"${currentKey}\"`));\n currentKey = undefined;\n }\n }\n\n function processValueStart(char: string, i: number, swapState: State) {\n switch (char) {\n case '\"': {\n lastValidIndex = i;\n stack.pop();\n stack.push(swapState);\n stack.push(\"INSIDE_STRING\");\n\n pushCurrentKeyToPath();\n break;\n }\n\n case \"f\":\n case \"t\":\n case \"n\": {\n lastValidIndex = i;\n literalStart = i;\n stack.pop();\n stack.push(swapState);\n stack.push(\"INSIDE_LITERAL\");\n break;\n }\n\n case \"-\": {\n stack.pop();\n stack.push(swapState);\n stack.push(\"INSIDE_NUMBER\");\n\n pushCurrentKeyToPath();\n break;\n }\n case \"0\":\n case \"1\":\n case \"2\":\n case \"3\":\n case \"4\":\n case \"5\":\n case \"6\":\n case \"7\":\n case \"8\":\n case \"9\": {\n lastValidIndex = i;\n stack.pop();\n stack.push(swapState);\n stack.push(\"INSIDE_NUMBER\");\n\n pushCurrentKeyToPath();\n break;\n }\n\n case \"{\": {\n lastValidIndex = i;\n stack.pop();\n stack.push(swapState);\n stack.push(\"INSIDE_OBJECT_START\");\n\n pushCurrentKeyToPath();\n break;\n }\n\n case \"[\": {\n lastValidIndex = i;\n stack.pop();\n stack.push(swapState);\n stack.push(\"INSIDE_ARRAY_START\");\n\n pushCurrentKeyToPath();\n break;\n }\n }\n }\n\n function processAfterObjectValue(char: string, i: number) {\n switch (char) {\n case \",\": {\n stack.pop();\n stack.push(\"INSIDE_OBJECT_AFTER_COMMA\");\n break;\n }\n case \"}\": {\n lastValidIndex = i;\n stack.pop();\n currentKey = path.pop();\n break;\n }\n }\n }\n\n function processAfterArrayValue(char: string, i: number) {\n switch (char) {\n case \",\": {\n stack.pop();\n stack.push(\"INSIDE_ARRAY_AFTER_COMMA\");\n currentKey = (Number(currentKey) + 1).toString();\n break;\n }\n case \"]\": {\n lastValidIndex = i;\n stack.pop();\n currentKey = path.pop();\n break;\n }\n }\n }\n\n for (let i = 0; i < input.length; i++) {\n const char = input[i]!;\n const currentState = stack[stack.length - 1];\n\n switch (currentState) {\n case \"ROOT\":\n processValueStart(char, i, \"FINISH\");\n break;\n\n case \"INSIDE_OBJECT_START\": {\n switch (char) {\n case '\"': {\n stack.pop();\n stack.push(\"INSIDE_OBJECT_KEY\");\n currentKey = \"\";\n break;\n }\n case \"}\": {\n lastValidIndex = i;\n stack.pop();\n currentKey = path.pop();\n break;\n }\n }\n break;\n }\n\n case \"INSIDE_OBJECT_AFTER_COMMA\": {\n switch (char) {\n case '\"': {\n stack.pop();\n stack.push(\"INSIDE_OBJECT_KEY\");\n currentKey = \"\";\n break;\n }\n }\n break;\n }\n\n case \"INSIDE_OBJECT_KEY\": {\n switch (char) {\n case '\"': {\n stack.pop();\n stack.push(\"INSIDE_OBJECT_AFTER_KEY\");\n break;\n }\n case \"\\\\\": {\n stack.push(\"INSIDE_STRING_ESCAPE\");\n currentKey += char;\n break;\n }\n default: {\n currentKey += char;\n break;\n }\n }\n break;\n }\n\n case \"INSIDE_OBJECT_AFTER_KEY\": {\n switch (char) {\n case \":\": {\n stack.pop();\n stack.push(\"INSIDE_OBJECT_BEFORE_VALUE\");\n\n break;\n }\n }\n break;\n }\n\n case \"INSIDE_OBJECT_BEFORE_VALUE\": {\n processValueStart(char, i, \"INSIDE_OBJECT_AFTER_VALUE\");\n break;\n }\n\n case \"INSIDE_OBJECT_AFTER_VALUE\": {\n processAfterObjectValue(char, i);\n break;\n }\n\n case \"INSIDE_STRING\": {\n switch (char) {\n case '\"': {\n stack.pop();\n lastValidIndex = i;\n\n currentKey = path.pop();\n break;\n }\n\n case \"\\\\\": {\n stack.push(\"INSIDE_STRING_ESCAPE\");\n break;\n }\n\n default: {\n lastValidIndex = i;\n }\n }\n\n break;\n }\n\n case \"INSIDE_ARRAY_START\": {\n switch (char) {\n case \"]\": {\n lastValidIndex = i;\n stack.pop();\n currentKey = path.pop();\n break;\n }\n\n default: {\n lastValidIndex = i;\n currentKey = \"0\";\n processValueStart(char, i, \"INSIDE_ARRAY_AFTER_VALUE\");\n break;\n }\n }\n break;\n }\n\n case \"INSIDE_ARRAY_AFTER_VALUE\": {\n switch (char) {\n case \",\": {\n stack.pop();\n stack.push(\"INSIDE_ARRAY_AFTER_COMMA\");\n\n currentKey = (Number(currentKey) + 1).toString();\n break;\n }\n\n case \"]\": {\n lastValidIndex = i;\n stack.pop();\n currentKey = path.pop();\n break;\n }\n\n default: {\n lastValidIndex = i;\n break;\n }\n }\n\n break;\n }\n\n case \"INSIDE_ARRAY_AFTER_COMMA\": {\n processValueStart(char, i, \"INSIDE_ARRAY_AFTER_VALUE\");\n break;\n }\n\n case \"INSIDE_STRING_ESCAPE\": {\n stack.pop();\n\n if (stack[stack.length - 1] === \"INSIDE_STRING\") {\n lastValidIndex = i;\n } else if (stack[stack.length - 1] === \"INSIDE_OBJECT_KEY\") {\n currentKey += char;\n }\n\n break;\n }\n\n case \"INSIDE_NUMBER\": {\n switch (char) {\n case \"0\":\n case \"1\":\n case \"2\":\n case \"3\":\n case \"4\":\n case \"5\":\n case \"6\":\n case \"7\":\n case \"8\":\n case \"9\": {\n lastValidIndex = i;\n break;\n }\n\n case \"e\":\n case \"E\":\n case \"-\":\n case \".\": {\n break;\n }\n\n case \",\": {\n stack.pop();\n currentKey = path.pop();\n\n if (stack[stack.length - 1] === \"INSIDE_ARRAY_AFTER_VALUE\") {\n processAfterArrayValue(char, i);\n }\n\n if (stack[stack.length - 1] === \"INSIDE_OBJECT_AFTER_VALUE\") {\n processAfterObjectValue(char, i);\n }\n\n break;\n }\n\n case \"}\": {\n stack.pop();\n currentKey = path.pop();\n\n if (stack[stack.length - 1] === \"INSIDE_OBJECT_AFTER_VALUE\") {\n processAfterObjectValue(char, i);\n }\n\n break;\n }\n\n case \"]\": {\n stack.pop();\n currentKey = path.pop();\n\n if (stack[stack.length - 1] === \"INSIDE_ARRAY_AFTER_VALUE\") {\n processAfterArrayValue(char, i);\n }\n\n break;\n }\n\n default: {\n stack.pop();\n currentKey = path.pop();\n break;\n }\n }\n\n break;\n }\n\n case \"INSIDE_LITERAL\": {\n const partialLiteral = input.substring(literalStart!, i + 1);\n\n if (\n !\"false\".startsWith(partialLiteral) &&\n !\"true\".startsWith(partialLiteral) &&\n !\"null\".startsWith(partialLiteral)\n ) {\n stack.pop();\n\n if (stack[stack.length - 1] === \"INSIDE_OBJECT_AFTER_VALUE\") {\n processAfterObjectValue(char, i);\n } else if (stack[stack.length - 1] === \"INSIDE_ARRAY_AFTER_VALUE\") {\n processAfterArrayValue(char, i);\n }\n } else {\n lastValidIndex = i;\n }\n\n break;\n }\n }\n }\n\n let result = input.slice(0, lastValidIndex + 1);\n\n for (let i = stack.length - 1; i >= 0; i--) {\n const state = stack[i];\n\n switch (state) {\n case \"INSIDE_STRING\": {\n result += '\"';\n break;\n }\n\n case \"INSIDE_OBJECT_KEY\":\n case \"INSIDE_OBJECT_AFTER_KEY\":\n case \"INSIDE_OBJECT_AFTER_COMMA\":\n case \"INSIDE_OBJECT_START\":\n case \"INSIDE_OBJECT_BEFORE_VALUE\":\n case \"INSIDE_OBJECT_AFTER_VALUE\": {\n result += \"}\";\n break;\n }\n\n case \"INSIDE_ARRAY_START\":\n case \"INSIDE_ARRAY_AFTER_COMMA\":\n case \"INSIDE_ARRAY_AFTER_VALUE\": {\n result += \"]\";\n break;\n }\n\n case \"INSIDE_LITERAL\": {\n const partialLiteral = input.substring(literalStart!, input.length);\n\n if (\"true\".startsWith(partialLiteral)) {\n result += \"true\".slice(partialLiteral.length);\n } else if (\"false\".startsWith(partialLiteral)) {\n result += \"false\".slice(partialLiteral.length);\n } else if (\"null\".startsWith(partialLiteral)) {\n result += \"null\".slice(partialLiteral.length);\n }\n }\n }\n }\n\n return [result, path];\n}\n"],"mappings":"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"}
@@ -1,5 +1,9 @@
1
- import type { ReadonlyJSONArray, ReadonlyJSONObject, ReadonlyJSONValue } from "./json-value.js";
2
- export declare function isJSONValue(value: unknown): value is ReadonlyJSONValue;
3
- export declare function isJSONArray(value: unknown): value is ReadonlyJSONArray;
4
- export declare function isJSONObject(value: unknown): value is ReadonlyJSONObject;
1
+ import { ReadonlyJSONArray, ReadonlyJSONObject, ReadonlyJSONValue } from "./json-value.js";
2
+
3
+ //#region src/utils/json/is-json.d.ts
4
+ declare function isJSONValue(value: unknown): value is ReadonlyJSONValue;
5
+ declare function isJSONArray(value: unknown): value is ReadonlyJSONArray;
6
+ declare function isJSONObject(value: unknown): value is ReadonlyJSONObject;
7
+ //#endregion
8
+ export { isJSONArray, isJSONObject, isJSONValue };
5
9
  //# sourceMappingURL=is-json.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"is-json.d.ts","sourceRoot":"","sources":["../../../src/utils/json/is-json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EAClB,wBAAqB;AAEtB,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,iBAAiB,CAqBtE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,iBAAiB,CAEtE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CASxE"}
1
+ {"version":3,"file":"is-json.d.ts","names":[],"sources":["../../../src/utils/json/is-json.ts"],"mappings":";;;iBAMgB,WAAA,CAAY,KAAA,YAAiB,KAAA,IAAS,iBAAiB;AAAA,iBAuBvD,WAAA,CAAY,KAAA,YAAiB,KAAA,IAAS,iBAAiB;AAAA,iBAIvD,YAAA,CAAa,KAAA,YAAiB,KAAA,IAAS,kBAAkB"}
@@ -1,25 +1,17 @@
1
- export function isJSONValue(value) {
2
- if (value === null ||
3
- typeof value === "string" ||
4
- typeof value === "number" ||
5
- typeof value === "boolean") {
6
- return true;
7
- }
8
- if (Array.isArray(value)) {
9
- return value.every(isJSONValue);
10
- }
11
- if (typeof value === "object") {
12
- return Object.entries(value).every(([key, val]) => typeof key === "string" && isJSONValue(val));
13
- }
14
- return false;
1
+ //#region src/utils/json/is-json.ts
2
+ function isJSONValue(value) {
3
+ if (value === null || typeof value === "string" || typeof value === "number" || typeof value === "boolean") return true;
4
+ if (Array.isArray(value)) return value.every(isJSONValue);
5
+ if (typeof value === "object") return Object.entries(value).every(([key, val]) => typeof key === "string" && isJSONValue(val));
6
+ return false;
15
7
  }
16
- export function isJSONArray(value) {
17
- return Array.isArray(value) && value.every(isJSONValue);
8
+ function isJSONArray(value) {
9
+ return Array.isArray(value) && value.every(isJSONValue);
18
10
  }
19
- export function isJSONObject(value) {
20
- return (value != null &&
21
- typeof value === "object" &&
22
- !Array.isArray(value) &&
23
- Object.entries(value).every(([key, val]) => typeof key === "string" && isJSONValue(val)));
11
+ function isJSONObject(value) {
12
+ return value != null && typeof value === "object" && !Array.isArray(value) && Object.entries(value).every(([key, val]) => typeof key === "string" && isJSONValue(val));
24
13
  }
14
+ //#endregion
15
+ export { isJSONArray, isJSONObject, isJSONValue };
16
+
25
17
  //# sourceMappingURL=is-json.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"is-json.js","sourceRoot":"","sources":["../../../src/utils/json/is-json.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IACE,KAAK,KAAK,IAAI;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,SAAS,EAC1B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAChC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,WAAW,CAAC,GAAG,CAAC,CAC5D,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,OAAO,CACL,KAAK,IAAI,IAAI;QACb,OAAO,KAAK,KAAK,QAAQ;QACzB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACrB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CACzB,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,WAAW,CAAC,GAAG,CAAC,CAC5D,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"is-json.js","names":[],"sources":["../../../src/utils/json/is-json.ts"],"sourcesContent":["import type {\n ReadonlyJSONArray,\n ReadonlyJSONObject,\n ReadonlyJSONValue,\n} from \"./json-value\";\n\nexport function isJSONValue(value: unknown): value is ReadonlyJSONValue {\n if (\n value === null ||\n typeof value === \"string\" ||\n typeof value === \"number\" ||\n typeof value === \"boolean\"\n ) {\n return true;\n }\n\n if (Array.isArray(value)) {\n return value.every(isJSONValue);\n }\n\n if (typeof value === \"object\") {\n return Object.entries(value).every(\n ([key, val]) => typeof key === \"string\" && isJSONValue(val),\n );\n }\n\n return false;\n}\n\nexport function isJSONArray(value: unknown): value is ReadonlyJSONArray {\n return Array.isArray(value) && value.every(isJSONValue);\n}\n\nexport function isJSONObject(value: unknown): value is ReadonlyJSONObject {\n return (\n value != null &&\n typeof value === \"object\" &&\n !Array.isArray(value) &&\n Object.entries(value).every(\n ([key, val]) => typeof key === \"string\" && isJSONValue(val),\n )\n );\n}\n"],"mappings":";AAMA,SAAgB,YAAY,OAA4C;CACtE,IACE,UAAU,QACV,OAAO,UAAU,YACjB,OAAO,UAAU,YACjB,OAAO,UAAU,WAEjB,OAAO;CAGT,IAAI,MAAM,QAAQ,KAAK,GACrB,OAAO,MAAM,MAAM,WAAW;CAGhC,IAAI,OAAO,UAAU,UACnB,OAAO,OAAO,QAAQ,KAAK,EAAE,OAC1B,CAAC,KAAK,SAAS,OAAO,QAAQ,YAAY,YAAY,GAAG,CAC5D;CAGF,OAAO;AACT;AAEA,SAAgB,YAAY,OAA4C;CACtE,OAAO,MAAM,QAAQ,KAAK,KAAK,MAAM,MAAM,WAAW;AACxD;AAEA,SAAgB,aAAa,OAA6C;CACxE,OACE,SAAS,QACT,OAAO,UAAU,YACjB,CAAC,MAAM,QAAQ,KAAK,KACpB,OAAO,QAAQ,KAAK,EAAE,OACnB,CAAC,KAAK,SAAS,OAAO,QAAQ,YAAY,YAAY,GAAG,CAC5D;AAEJ"}
@@ -1,6 +1,9 @@
1
- export type ReadonlyJSONValue = null | string | number | boolean | ReadonlyJSONObject | ReadonlyJSONArray;
2
- export type ReadonlyJSONObject = {
3
- readonly [key: string]: ReadonlyJSONValue;
1
+ //#region src/utils/json/json-value.d.ts
2
+ type ReadonlyJSONValue = null | string | number | boolean | ReadonlyJSONObject | ReadonlyJSONArray;
3
+ type ReadonlyJSONObject = {
4
+ readonly [key: string]: ReadonlyJSONValue;
4
5
  };
5
- export type ReadonlyJSONArray = readonly ReadonlyJSONValue[];
6
+ type ReadonlyJSONArray = readonly ReadonlyJSONValue[];
7
+ //#endregion
8
+ export { ReadonlyJSONArray, ReadonlyJSONObject, ReadonlyJSONValue };
6
9
  //# sourceMappingURL=json-value.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"json-value.d.ts","sourceRoot":"","sources":["../../../src/utils/json/json-value.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GACzB,IAAI,GACJ,MAAM,GACN,MAAM,GACN,OAAO,GACP,kBAAkB,GAClB,iBAAiB,CAAC;AAEtB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,SAAS,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"json-value.d.ts","names":[],"sources":["../../../src/utils/json/json-value.ts"],"mappings":";KAAY,iBAAA,sCAKR,kBAAA,GACA,iBAAiB;AAAA,KAET,kBAAA;EAAA,UACA,GAAA,WAAc,iBAAiB;AAAA;AAAA,KAG/B,iBAAA,YAA6B,iBAAiB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=json-value.js.map
@@ -1,14 +1,17 @@
1
- import type { ReadonlyJSONObject } from "./json-value.js";
1
+ import { ReadonlyJSONObject } from "./json-value.js";
2
+
3
+ //#region src/utils/json/parse-partial-json-object.d.ts
2
4
  declare const PARTIAL_JSON_OBJECT_META_SYMBOL: unique symbol;
3
5
  type FieldState = "complete" | "partial";
4
6
  type PartialJsonObjectMeta = {
5
- state: "complete" | "partial";
6
- partialPath: string[];
7
+ state: "complete" | "partial";
8
+ partialPath: string[];
7
9
  };
8
- export declare const getPartialJsonObjectMeta: (obj: Record<symbol, unknown>) => PartialJsonObjectMeta | undefined;
9
- export declare const parsePartialJsonObject: (json: string) => (ReadonlyJSONObject & {
10
- [PARTIAL_JSON_OBJECT_META_SYMBOL]: PartialJsonObjectMeta;
10
+ declare const getPartialJsonObjectMeta: (obj: Record<symbol, unknown>) => PartialJsonObjectMeta | undefined;
11
+ declare const parsePartialJsonObject: (json: string) => (ReadonlyJSONObject & {
12
+ [PARTIAL_JSON_OBJECT_META_SYMBOL]: PartialJsonObjectMeta;
11
13
  }) | undefined;
12
- export declare const getPartialJsonObjectFieldState: (obj: Record<string, unknown>, fieldPath: (string | number)[]) => FieldState;
13
- export {};
14
+ declare const getPartialJsonObjectFieldState: (obj: Record<string, unknown>, fieldPath: (string | number)[]) => FieldState;
15
+ //#endregion
16
+ export { getPartialJsonObjectFieldState, getPartialJsonObjectMeta, parsePartialJsonObject };
14
17
  //# sourceMappingURL=parse-partial-json-object.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse-partial-json-object.d.ts","sourceRoot":"","sources":["../../../src/utils/json/parse-partial-json-object.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,wBAAqB;AAEvD,QAAA,MAAM,+BAA+B,eAEpC,CAAC;AAEF,KAAK,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;AAEzC,KAAK,qBAAqB,GAAG;IAC3B,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC;IAC9B,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3B,qBAAqB,GAAG,SAE1B,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,MAAM,MAAM,KAEV,CAAC,kBAAkB,GAAG;IACpB,CAAC,+BAA+B,CAAC,EAAE,qBAAqB,CAAC;CAC1D,CAAC,GACF,SAgCH,CAAC;AAmCF,eAAO,MAAM,8BAA8B,GACzC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,KAC7B,UAKF,CAAC"}
1
+ {"version":3,"file":"parse-partial-json-object.d.ts","names":[],"sources":["../../../src/utils/json/parse-partial-json-object.ts"],"mappings":";;;cAIM,+BAAA;AAAA,KAID,UAAA;AAAA,KAEA,qBAAA;EACH,KAAA;EACA,WAAW;AAAA;AAAA,cAGA,wBAAA,GACX,GAAA,EAAK,MAAA,sBACJ,qBAAqB;AAAA,cAIX,sBAAA,GACX,IAAA,cAEG,kBAAA;EAAA,CACE,+BAAA,GAAkC,qBAAA;AAAA;AAAA,cAqE5B,8BAAA,GACX,GAAA,EAAK,MAAA,mBACL,SAAA,0BACC,UAKF"}
@@ -1,70 +1,58 @@
1
- import sjson from "secure-json-parse";
2
1
  import { fixJson } from "./fix-json.js";
2
+ import sjson from "secure-json-parse";
3
+ //#region src/utils/json/parse-partial-json-object.ts
3
4
  const PARTIAL_JSON_OBJECT_META_SYMBOL = Symbol("aui.parse-partial-json-object.meta");
4
- export const getPartialJsonObjectMeta = (obj) => {
5
- return obj?.[PARTIAL_JSON_OBJECT_META_SYMBOL];
5
+ const getPartialJsonObjectMeta = (obj) => {
6
+ return obj?.[PARTIAL_JSON_OBJECT_META_SYMBOL];
6
7
  };
7
- export const parsePartialJsonObject = (json) => {
8
- if (json.length === 0)
9
- return {
10
- [PARTIAL_JSON_OBJECT_META_SYMBOL]: { state: "partial", partialPath: [] },
11
- };
12
- try {
13
- const res = sjson.parse(json);
14
- if (typeof res !== "object" || res === null)
15
- throw new Error("argsText is expected to be an object");
16
- res[PARTIAL_JSON_OBJECT_META_SYMBOL] = {
17
- state: "complete",
18
- partialPath: [],
19
- };
20
- return res;
21
- }
22
- catch {
23
- try {
24
- const [fixedJson, partialPath] = fixJson(json);
25
- const res = sjson.parse(fixedJson);
26
- if (typeof res !== "object" || res === null)
27
- throw new Error("argsText is expected to be an object");
28
- res[PARTIAL_JSON_OBJECT_META_SYMBOL] = {
29
- state: "partial",
30
- partialPath,
31
- };
32
- return res;
33
- }
34
- catch {
35
- return undefined;
36
- }
37
- }
8
+ const parsePartialJsonObject = (json) => {
9
+ if (json.length === 0) return { [PARTIAL_JSON_OBJECT_META_SYMBOL]: {
10
+ state: "partial",
11
+ partialPath: []
12
+ } };
13
+ try {
14
+ const res = sjson.parse(json);
15
+ if (typeof res !== "object" || res === null) throw new Error("argsText is expected to be an object");
16
+ res[PARTIAL_JSON_OBJECT_META_SYMBOL] = {
17
+ state: "complete",
18
+ partialPath: []
19
+ };
20
+ return res;
21
+ } catch {
22
+ try {
23
+ const [fixedJson, partialPath] = fixJson(json);
24
+ const res = sjson.parse(fixedJson);
25
+ if (typeof res !== "object" || res === null) throw new Error("argsText is expected to be an object");
26
+ res[PARTIAL_JSON_OBJECT_META_SYMBOL] = {
27
+ state: "partial",
28
+ partialPath
29
+ };
30
+ return res;
31
+ } catch {
32
+ return;
33
+ }
34
+ }
38
35
  };
39
36
  const getFieldState = (parent, parentMeta, fieldPath) => {
40
- if (typeof parent !== "object" || parent === null)
41
- return parentMeta.state;
42
- // 1) parent is complete: return "complete"
43
- if (parentMeta.state === "complete")
44
- return "complete";
45
- // 2) we finished traversing: return parent state
46
- if (fieldPath.length === 0)
47
- return parentMeta.state;
48
- const [field, ...restPath] = fieldPath;
49
- // 3) field doesn't yet exist in parent: return "partial"
50
- if (!Object.hasOwn(parent, field))
51
- return "partial";
52
- const [partialField, ...restPartialPath] = parentMeta.partialPath;
53
- // 4) field exists but is not partial: return "complete"
54
- if (field !== partialField)
55
- return "complete";
56
- // 5) field exists and is partial: return child state
57
- const child = parent[field];
58
- const childMeta = {
59
- state: "partial",
60
- partialPath: restPartialPath,
61
- };
62
- return getFieldState(child, childMeta, restPath);
37
+ if (typeof parent !== "object" || parent === null) return parentMeta.state;
38
+ if (parentMeta.state === "complete") return "complete";
39
+ if (fieldPath.length === 0) return parentMeta.state;
40
+ const [field, ...restPath] = fieldPath;
41
+ if (!Object.hasOwn(parent, field)) return "partial";
42
+ const [partialField, ...restPartialPath] = parentMeta.partialPath;
43
+ if (field !== partialField) return "complete";
44
+ const child = parent[field];
45
+ return getFieldState(child, {
46
+ state: "partial",
47
+ partialPath: restPartialPath
48
+ }, restPath);
63
49
  };
64
- export const getPartialJsonObjectFieldState = (obj, fieldPath) => {
65
- const meta = getPartialJsonObjectMeta(obj);
66
- if (!meta)
67
- throw new Error("unable to determine object state");
68
- return getFieldState(obj, meta, fieldPath.map(String));
50
+ const getPartialJsonObjectFieldState = (obj, fieldPath) => {
51
+ const meta = getPartialJsonObjectMeta(obj);
52
+ if (!meta) throw new Error("unable to determine object state");
53
+ return getFieldState(obj, meta, fieldPath.map(String));
69
54
  };
55
+ //#endregion
56
+ export { getPartialJsonObjectFieldState, getPartialJsonObjectMeta, parsePartialJsonObject };
57
+
70
58
  //# sourceMappingURL=parse-partial-json-object.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse-partial-json-object.js","sourceRoot":"","sources":["../../../src/utils/json/parse-partial-json-object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse-partial-json-object.js","names":[],"sources":["../../../src/utils/json/parse-partial-json-object.ts"],"sourcesContent":["import sjson from \"secure-json-parse\";\nimport { fixJson } from \"./fix-json\";\nimport type { ReadonlyJSONObject } from \"./json-value\";\n\nconst PARTIAL_JSON_OBJECT_META_SYMBOL = Symbol(\n \"aui.parse-partial-json-object.meta\",\n);\n\ntype FieldState = \"complete\" | \"partial\";\n\ntype PartialJsonObjectMeta = {\n state: \"complete\" | \"partial\";\n partialPath: string[];\n};\n\nexport const getPartialJsonObjectMeta = (\n obj: Record<symbol, unknown>,\n): PartialJsonObjectMeta | undefined => {\n return obj?.[PARTIAL_JSON_OBJECT_META_SYMBOL] as PartialJsonObjectMeta;\n};\n\nexport const parsePartialJsonObject = (\n json: string,\n):\n | (ReadonlyJSONObject & {\n [PARTIAL_JSON_OBJECT_META_SYMBOL]: PartialJsonObjectMeta;\n })\n | undefined => {\n if (json.length === 0)\n return {\n [PARTIAL_JSON_OBJECT_META_SYMBOL]: { state: \"partial\", partialPath: [] },\n };\n\n try {\n const res = sjson.parse(json);\n if (typeof res !== \"object\" || res === null)\n throw new Error(\"argsText is expected to be an object\");\n\n res[PARTIAL_JSON_OBJECT_META_SYMBOL] = {\n state: \"complete\",\n partialPath: [],\n };\n return res;\n } catch {\n try {\n const [fixedJson, partialPath] = fixJson(json);\n const res = sjson.parse(fixedJson);\n if (typeof res !== \"object\" || res === null)\n throw new Error(\"argsText is expected to be an object\");\n\n res[PARTIAL_JSON_OBJECT_META_SYMBOL] = {\n state: \"partial\",\n partialPath,\n };\n return res;\n } catch {\n return undefined;\n }\n }\n};\n\nconst getFieldState = (\n parent: unknown,\n parentMeta: PartialJsonObjectMeta,\n fieldPath: string[],\n): FieldState => {\n if (typeof parent !== \"object\" || parent === null) return parentMeta.state;\n\n // 1) parent is complete: return \"complete\"\n if (parentMeta.state === \"complete\") return \"complete\";\n\n // 2) we finished traversing: return parent state\n if (fieldPath.length === 0) return parentMeta.state;\n\n const [field, ...restPath] = fieldPath as [string, ...string[]];\n\n // 3) field doesn't yet exist in parent: return \"partial\"\n if (!Object.hasOwn(parent, field)) return \"partial\";\n\n const [partialField, ...restPartialPath] = parentMeta.partialPath;\n\n // 4) field exists but is not partial: return \"complete\"\n if (field !== partialField) return \"complete\";\n\n // 5) field exists and is partial: return child state\n const child = (parent as Record<string, unknown>)[field];\n const childMeta: PartialJsonObjectMeta = {\n state: \"partial\",\n partialPath: restPartialPath,\n };\n\n return getFieldState(child, childMeta, restPath);\n};\n\nexport const getPartialJsonObjectFieldState = (\n obj: Record<string, unknown>,\n fieldPath: (string | number)[],\n): FieldState => {\n const meta = getPartialJsonObjectMeta(obj);\n if (!meta) throw new Error(\"unable to determine object state\");\n\n return getFieldState(obj, meta, fieldPath.map(String));\n};\n"],"mappings":";;;AAIA,MAAM,kCAAkC,OACtC,oCACF;AASA,MAAa,4BACX,QACsC;CACtC,OAAO,MAAM;AACf;AAEA,MAAa,0BACX,SAKe;CACf,IAAI,KAAK,WAAW,GAClB,OAAO,GACJ,kCAAkC;EAAE,OAAO;EAAW,aAAa,CAAC;CAAE,EACzE;CAEF,IAAI;EACF,MAAM,MAAM,MAAM,MAAM,IAAI;EAC5B,IAAI,OAAO,QAAQ,YAAY,QAAQ,MACrC,MAAM,IAAI,MAAM,sCAAsC;EAExD,IAAI,mCAAmC;GACrC,OAAO;GACP,aAAa,CAAC;EAChB;EACA,OAAO;CACT,QAAQ;EACN,IAAI;GACF,MAAM,CAAC,WAAW,eAAe,QAAQ,IAAI;GAC7C,MAAM,MAAM,MAAM,MAAM,SAAS;GACjC,IAAI,OAAO,QAAQ,YAAY,QAAQ,MACrC,MAAM,IAAI,MAAM,sCAAsC;GAExD,IAAI,mCAAmC;IACrC,OAAO;IACP;GACF;GACA,OAAO;EACT,QAAQ;GACN;EACF;CACF;AACF;AAEA,MAAM,iBACJ,QACA,YACA,cACe;CACf,IAAI,OAAO,WAAW,YAAY,WAAW,MAAM,OAAO,WAAW;CAGrE,IAAI,WAAW,UAAU,YAAY,OAAO;CAG5C,IAAI,UAAU,WAAW,GAAG,OAAO,WAAW;CAE9C,MAAM,CAAC,OAAO,GAAG,YAAY;CAG7B,IAAI,CAAC,OAAO,OAAO,QAAQ,KAAK,GAAG,OAAO;CAE1C,MAAM,CAAC,cAAc,GAAG,mBAAmB,WAAW;CAGtD,IAAI,UAAU,cAAc,OAAO;CAGnC,MAAM,QAAS,OAAmC;CAMlD,OAAO,cAAc,OAAO;EAJ1B,OAAO;EACP,aAAa;CAGqB,GAAG,QAAQ;AACjD;AAEA,MAAa,kCACX,KACA,cACe;CACf,MAAM,OAAO,yBAAyB,GAAG;CACzC,IAAI,CAAC,MAAM,MAAM,IAAI,MAAM,kCAAkC;CAE7D,OAAO,cAAc,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC;AACvD"}
@@ -1,6 +1,9 @@
1
- export declare const promiseWithResolvers: <T>() => {
2
- promise: Promise<T>;
3
- resolve: (value: T | PromiseLike<T>) => void;
4
- reject: (reason?: unknown) => void;
1
+ //#region src/utils/promiseWithResolvers.d.ts
2
+ declare const promiseWithResolvers: <T>() => {
3
+ promise: Promise<T>;
4
+ resolve: (value: T | PromiseLike<T>) => void;
5
+ reject: (reason?: unknown) => void;
5
6
  };
7
+ //#endregion
8
+ export { promiseWithResolvers };
6
9
  //# sourceMappingURL=promiseWithResolvers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"promiseWithResolvers.d.ts","sourceRoot":"","sources":["../../src/utils/promiseWithResolvers.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,GAAI,CAAC;;qBACd,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI;sBAC1B,OAAO,KAAK,IAAI;CAOxC,CAAC"}
1
+ {"version":3,"file":"promiseWithResolvers.d.ts","names":[],"sources":["../../src/utils/promiseWithResolvers.ts"],"mappings":";cAAa,oBAAA;;mBACW,CAAA,GAAI,WAAA,CAAY,CAAA"}
@@ -1,12 +1,19 @@
1
- export const promiseWithResolvers = () => {
2
- let resolve;
3
- let reject;
4
- const promise = new Promise((res, rej) => {
5
- resolve = res;
6
- reject = rej;
7
- });
8
- if (!resolve || !reject)
9
- throw new Error("Failed to create promise");
10
- return { promise, resolve, reject };
1
+ //#region src/utils/promiseWithResolvers.ts
2
+ const promiseWithResolvers = () => {
3
+ let resolve;
4
+ let reject;
5
+ const promise = new Promise((res, rej) => {
6
+ resolve = res;
7
+ reject = rej;
8
+ });
9
+ if (!resolve || !reject) throw new Error("Failed to create promise");
10
+ return {
11
+ promise,
12
+ resolve,
13
+ reject
14
+ };
11
15
  };
16
+ //#endregion
17
+ export { promiseWithResolvers };
18
+
12
19
  //# sourceMappingURL=promiseWithResolvers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"promiseWithResolvers.js","sourceRoot":"","sources":["../../src/utils/promiseWithResolvers.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAM,EAAE;IAC1C,IAAI,OAA0D,CAAC;IAC/D,IAAI,MAAgD,CAAC;IACrD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC1C,OAAO,GAAG,GAAG,CAAC;QACd,MAAM,GAAG,GAAG,CAAC;IACf,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IACrE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACtC,CAAC,CAAC"}
1
+ {"version":3,"file":"promiseWithResolvers.js","names":[],"sources":["../../src/utils/promiseWithResolvers.ts"],"sourcesContent":["export const promiseWithResolvers = <T>() => {\n let resolve: ((value: T | PromiseLike<T>) => void) | undefined;\n let reject: ((reason?: unknown) => void) | undefined;\n const promise = new Promise<T>((res, rej) => {\n resolve = res;\n reject = rej;\n });\n if (!resolve || !reject) throw new Error(\"Failed to create promise\");\n return { promise, resolve, reject };\n};\n"],"mappings":";AAAA,MAAa,6BAAgC;CAC3C,IAAI;CACJ,IAAI;CACJ,MAAM,UAAU,IAAI,SAAY,KAAK,QAAQ;EAC3C,UAAU;EACV,SAAS;CACX,CAAC;CACD,IAAI,CAAC,WAAW,CAAC,QAAQ,MAAM,IAAI,MAAM,0BAA0B;CACnE,OAAO;EAAE;EAAS;EAAS;CAAO;AACpC"}
package/dist/utils.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- export { parsePartialJsonObject, getPartialJsonObjectFieldState, getPartialJsonObjectMeta, } from "./utils/json/parse-partial-json-object.js";
2
- export { type AsyncIterableStream, asAsyncIterableStream, } from "./utils/AsyncIterableStream.js";
3
- export type { ReadonlyJSONValue, ReadonlyJSONArray, ReadonlyJSONObject, } from "./utils/json/json-value.js";
4
- export { AssistantTransformStream } from "./core/utils/stream/AssistantTransformStream.js";
5
- export { AssistantMetaTransformStream } from "./core/utils/stream/AssistantMetaTransformStream.js";
6
- //# sourceMappingURL=utils.d.ts.map
1
+ import { ReadonlyJSONArray, ReadonlyJSONObject, ReadonlyJSONValue } from "./utils/json/json-value.js";
2
+ import { getPartialJsonObjectFieldState, getPartialJsonObjectMeta, parsePartialJsonObject } from "./utils/json/parse-partial-json-object.js";
3
+ import { AsyncIterableStream, asAsyncIterableStream } from "./utils/AsyncIterableStream.js";
4
+ import { AssistantTransformStream } from "./core/utils/stream/AssistantTransformStream.js";
5
+ import { AssistantMetaTransformStream } from "./core/utils/stream/AssistantMetaTransformStream.js";
6
+ export { AssistantMetaTransformStream, AssistantTransformStream, type AsyncIterableStream, type ReadonlyJSONArray, type ReadonlyJSONObject, type ReadonlyJSONValue, asAsyncIterableStream, getPartialJsonObjectFieldState, getPartialJsonObjectMeta, parsePartialJsonObject };
package/dist/utils.js CHANGED
@@ -1,5 +1,5 @@
1
- export { parsePartialJsonObject, getPartialJsonObjectFieldState, getPartialJsonObjectMeta, } from "./utils/json/parse-partial-json-object.js";
2
- export { asAsyncIterableStream, } from "./utils/AsyncIterableStream.js";
3
- export { AssistantTransformStream } from "./core/utils/stream/AssistantTransformStream.js";
4
- export { AssistantMetaTransformStream } from "./core/utils/stream/AssistantMetaTransformStream.js";
5
- //# sourceMappingURL=utils.js.map
1
+ import { AssistantTransformStream } from "./core/utils/stream/AssistantTransformStream.js";
2
+ import { AssistantMetaTransformStream } from "./core/utils/stream/AssistantMetaTransformStream.js";
3
+ import { getPartialJsonObjectFieldState, getPartialJsonObjectMeta, parsePartialJsonObject } from "./utils/json/parse-partial-json-object.js";
4
+ import { asAsyncIterableStream } from "./utils/AsyncIterableStream.js";
5
+ export { AssistantMetaTransformStream, AssistantTransformStream, asAsyncIterableStream, getPartialJsonObjectFieldState, getPartialJsonObjectMeta, parsePartialJsonObject };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "assistant-stream",
3
- "version": "0.3.15",
3
+ "version": "0.3.16",
4
4
  "description": "Streaming utilities for AI assistants",
5
5
  "keywords": [
6
6
  "ai",
@@ -66,8 +66,8 @@
66
66
  "@types/json-schema": "^7.0.15",
67
67
  "ioredis": "^5.10.1",
68
68
  "redis": "^5.12.1",
69
- "vitest": "^4.1.5",
70
- "@assistant-ui/x-buildutils": "0.0.8"
69
+ "vitest": "^4.1.7",
70
+ "@assistant-ui/x-buildutils": "0.0.9"
71
71
  },
72
72
  "publishConfig": {
73
73
  "access": "public",
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantStreamChunk.js","sourceRoot":"","sources":["../../src/core/AssistantStreamChunk.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/object/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunk-types.js","sourceRoot":"","sources":["../../../../src/core/serialization/ui-message-stream/chunk-types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool-types.js","sourceRoot":"","sources":["../../../src/core/tool/tool-types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"type-path-utils.js","sourceRoot":"","sources":["../../../src/core/tool/type-path-utils.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"UnderlyingReadable.js","sourceRoot":"","sources":["../../../../src/core/utils/stream/UnderlyingReadable.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/utils/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,6BAA6B,EAC7B,+BAA+B,GAChC,2CAAwC;AACzC,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,IAAI,6BAA6B,GACtD,6DAA0D;AAC3D,OAAO,EAAE,eAAe,EAAE,kCAA+B;AACzD,YAAY,EAAE,yBAAyB,EAAE,2CAAwC;AACjF,YAAY,EAAE,oBAAoB,EAAE,uCAAoC;AACxE,OAAO,EACL,iBAAiB,EACjB,iBAAiB,GAClB,uDAAoD;AACrD,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GACjB,0CAAuC;AACxC,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,uEAAoE;AACrE,OAAO,EACL,sBAAsB,EACtB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,6BAA6B,GACnC,kEAA+D;AAChE,OAAO,EAAE,sBAAsB,EAAE,sDAAmD;AACpF,YAAY,EACV,gBAAgB,EAChB,sBAAsB,EACtB,QAAQ,GACT,8BAA2B;AAE5B,YAAY,EACV,IAAI,EACJ,oBAAoB,EACpB,uBAAuB,GACxB,kCAA+B;AAChC,OAAO,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,oCAAiC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,2CAAwC;AACtE,YAAY,EAAE,cAAc,EAAE,kCAA+B;AAC7D,OAAO,EACL,gBAAgB,IAAI,yBAAyB,EAC7C,wBAAwB,EACxB,KAAK,uBAAuB,GAC7B,wCAAqC;AACtC,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,wBAAwB,GAC9B,oCAAiC;AAElC,YAAY,EAAE,oBAAoB,EAAE,+BAA4B;AAChE,YAAY,EAAE,wBAAwB,EAAE,oCAAiC;AAEzE,OAAO,EAAE,kBAAkB,EAAE,4CAAyC;AACtE,OAAO,EACL,oBAAoB,EACpB,wBAAwB,GACzB,8CAA2C;AAC5C,YAAY,EAAE,iBAAiB,EAAE,+BAA4B;AAE7D,OAAO,EACL,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,GAC3B,+CAA4C"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,6BAA6B,EAC7B,+BAA+B,GAChC,2CAAwC;AACzC,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,IAAI,6BAA6B,GACtD,6DAA0D;AAC3D,OAAO,EAAE,eAAe,EAAE,kCAA+B;AAGzD,OAAO,EACL,iBAAiB,EACjB,iBAAiB,GAClB,uDAAoD;AACrD,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GACjB,0CAAuC;AACxC,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,uEAAoE;AACrE,OAAO,EACL,sBAAsB,GAIvB,kEAA+D;AAChE,OAAO,EAAE,sBAAsB,EAAE,sDAAmD;AAYpF,OAAO,EAAE,YAAY,EAAyB,oCAAiC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,2CAAwC;AAEtE,OAAO,EACL,gBAAgB,IAAI,yBAAyB,EAC7C,wBAAwB,GAEzB,wCAAqC;AACtC,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,GAGlB,oCAAiC;AAKlC,OAAO,EAAE,kBAAkB,EAAE,4CAAyC;AACtE,OAAO,EACL,oBAAoB,EACpB,wBAAwB,GACzB,8CAA2C;AAG5C,OAAO,EACL,iBAAiB,GAUlB,+CAA4C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resumable/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,6BAA6B,GAC9B,mBAAgB;AAEjB,OAAO,EACL,oBAAoB,EACpB,KAAK,wBAAwB,GAC9B,oBAAiB;AAElB,OAAO,EACL,4BAA4B,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,GACnC,oCAAiC;AAElC,OAAO,EACL,sCAAsC,EACtC,mCAAmC,EACnC,0BAA0B,EAC1B,KAAK,6CAA6C,EAClD,KAAK,0CAA0C,GAChD,oDAAiD;AAElD,OAAO,EACL,kCAAkC,EAClC,KAAK,mCAAmC,GACzC,iDAA8C;AAE/C,YAAY,EACV,eAAe,EACf,gCAAgC,GACjC,+BAA4B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resumable/index.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,oBAAoB,GAErB,oBAAiB;AAElB,OAAO,EACL,4BAA4B,GAG7B,oCAAiC;AAElC,OAAO,EACL,sCAAsC,EACtC,mCAAmC,EACnC,0BAA0B,GAG3B,oDAAiD;AAElD,OAAO,EACL,kCAAkC,GAEnC,iDAA8C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/resumable/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-value.js","sourceRoot":"","sources":["../../../src/utils/json/json-value.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,wBAAwB,GACzB,kDAA+C;AAChD,OAAO,EACL,KAAK,mBAAmB,EACxB,qBAAqB,GACtB,uCAAoC;AACrC,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,mCAAgC;AAEjC,OAAO,EAAE,wBAAwB,EAAE,wDAAqD;AACxF,OAAO,EAAE,4BAA4B,EAAE,4DAAyD"}
package/dist/utils.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,wBAAwB,GACzB,kDAA+C;AAChD,OAAO,EAEL,qBAAqB,GACtB,uCAAoC;AAOrC,OAAO,EAAE,wBAAwB,EAAE,wDAAqD;AACxF,OAAO,EAAE,4BAA4B,EAAE,4DAAyD"}