effect 4.0.0-beta.103 → 4.0.0-beta.104

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 (523) hide show
  1. package/dist/Cache.js +1 -1
  2. package/dist/Cache.js.map +1 -1
  3. package/dist/Channel.d.ts +1 -1
  4. package/dist/Channel.d.ts.map +1 -1
  5. package/dist/Channel.js.map +1 -1
  6. package/dist/Config.d.ts.map +1 -1
  7. package/dist/Config.js +28 -7
  8. package/dist/Config.js.map +1 -1
  9. package/dist/ConfigProvider.d.ts.map +1 -1
  10. package/dist/ConfigProvider.js +2 -1
  11. package/dist/ConfigProvider.js.map +1 -1
  12. package/dist/Context.d.ts +2 -2
  13. package/dist/Context.d.ts.map +1 -1
  14. package/dist/Context.js.map +1 -1
  15. package/dist/Crypto.d.ts.map +1 -1
  16. package/dist/Crypto.js +13 -5
  17. package/dist/Crypto.js.map +1 -1
  18. package/dist/Duration.d.ts.map +1 -1
  19. package/dist/Duration.js +12 -1
  20. package/dist/Duration.js.map +1 -1
  21. package/dist/Effect.d.ts +132 -14
  22. package/dist/Effect.d.ts.map +1 -1
  23. package/dist/Effect.js +38 -0
  24. package/dist/Effect.js.map +1 -1
  25. package/dist/Equal.d.ts.map +1 -1
  26. package/dist/Equal.js +10 -2
  27. package/dist/Equal.js.map +1 -1
  28. package/dist/ExecutionPlan.d.ts +73 -0
  29. package/dist/ExecutionPlan.d.ts.map +1 -1
  30. package/dist/ExecutionPlan.js +1 -1
  31. package/dist/ExecutionPlan.js.map +1 -1
  32. package/dist/FiberSet.js +1 -1
  33. package/dist/FileSystem.d.ts +2 -2
  34. package/dist/Function.d.ts +4 -3
  35. package/dist/Function.d.ts.map +1 -1
  36. package/dist/Function.js +5 -5
  37. package/dist/Function.js.map +1 -1
  38. package/dist/Iterable.d.ts.map +1 -1
  39. package/dist/Iterable.js +11 -10
  40. package/dist/Iterable.js.map +1 -1
  41. package/dist/Layer.d.ts.map +1 -1
  42. package/dist/Layer.js +7 -5
  43. package/dist/Layer.js.map +1 -1
  44. package/dist/Schedule.d.ts +8 -8
  45. package/dist/Schedule.d.ts.map +1 -1
  46. package/dist/Schedule.js +4 -4
  47. package/dist/Schedule.js.map +1 -1
  48. package/dist/Schema.d.ts +32 -32
  49. package/dist/Schema.d.ts.map +1 -1
  50. package/dist/Schema.js +23 -18
  51. package/dist/Schema.js.map +1 -1
  52. package/dist/SchemaAST.d.ts +3 -3
  53. package/dist/SchemaAST.d.ts.map +1 -1
  54. package/dist/SchemaAST.js +47 -31
  55. package/dist/SchemaAST.js.map +1 -1
  56. package/dist/SchemaParser.d.ts.map +1 -1
  57. package/dist/SchemaParser.js +35 -53
  58. package/dist/SchemaParser.js.map +1 -1
  59. package/dist/ScopedCache.js +1 -1
  60. package/dist/ScopedCache.js.map +1 -1
  61. package/dist/Sink.d.ts +1 -1
  62. package/dist/Sink.d.ts.map +1 -1
  63. package/dist/Stream.d.ts +27 -4
  64. package/dist/Stream.d.ts.map +1 -1
  65. package/dist/Stream.js +27 -2
  66. package/dist/Stream.js.map +1 -1
  67. package/dist/SynchronizedRef.js +1 -1
  68. package/dist/SynchronizedRef.js.map +1 -1
  69. package/dist/Terminal.js +1 -1
  70. package/dist/Terminal.js.map +1 -1
  71. package/dist/Tuple.d.ts +6 -4
  72. package/dist/Tuple.d.ts.map +1 -1
  73. package/dist/Tuple.js.map +1 -1
  74. package/dist/TxReentrantLock.d.ts +0 -56
  75. package/dist/TxReentrantLock.d.ts.map +1 -1
  76. package/dist/TxReentrantLock.js +8 -8
  77. package/dist/TxReentrantLock.js.map +1 -1
  78. package/dist/internal/dateTime.js +1 -1
  79. package/dist/internal/dateTime.js.map +1 -1
  80. package/dist/internal/executionPlan.js +51 -3
  81. package/dist/internal/executionPlan.js.map +1 -1
  82. package/dist/internal/hashMap.js +12 -8
  83. package/dist/internal/hashMap.js.map +1 -1
  84. package/dist/internal/matcher.js +1 -1
  85. package/dist/internal/matcher.js.map +1 -1
  86. package/dist/internal/schedule.js.map +1 -1
  87. package/dist/internal/schema/annotations.js +2 -0
  88. package/dist/internal/schema/annotations.js.map +1 -1
  89. package/dist/internal/schema/toArbitrary.js +1 -1
  90. package/dist/internal/schema/toArbitrary.js.map +1 -1
  91. package/dist/internal/trie.js +13 -3
  92. package/dist/internal/trie.js.map +1 -1
  93. package/dist/testing/TestClock.d.ts.map +1 -1
  94. package/dist/testing/TestClock.js +11 -1
  95. package/dist/testing/TestClock.js.map +1 -1
  96. package/dist/testing/TestSchema.d.ts +1 -1
  97. package/dist/testing/TestSchema.d.ts.map +1 -1
  98. package/dist/unstable/ai/AiError.js +19 -19
  99. package/dist/unstable/ai/AiError.js.map +1 -1
  100. package/dist/unstable/ai/Chat.js +1 -1
  101. package/dist/unstable/ai/Chat.js.map +1 -1
  102. package/dist/unstable/ai/LanguageModel.js +4 -2
  103. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  104. package/dist/unstable/ai/McpSchema.d.ts +132 -132
  105. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  106. package/dist/unstable/ai/McpSchema.js +8 -8
  107. package/dist/unstable/ai/McpSchema.js.map +1 -1
  108. package/dist/unstable/ai/McpServer.js +1 -1
  109. package/dist/unstable/ai/McpServer.js.map +1 -1
  110. package/dist/unstable/ai/Prompt.d.ts +15 -3
  111. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  112. package/dist/unstable/ai/Prompt.js +6 -3
  113. package/dist/unstable/ai/Prompt.js.map +1 -1
  114. package/dist/unstable/cli/CliError.d.ts +3 -3
  115. package/dist/unstable/cli/CliError.js +11 -11
  116. package/dist/unstable/cli/CliError.js.map +1 -1
  117. package/dist/unstable/cli/Command.d.ts +9 -9
  118. package/dist/unstable/cli/Command.d.ts.map +1 -1
  119. package/dist/unstable/cli/Command.js +8 -6
  120. package/dist/unstable/cli/Command.js.map +1 -1
  121. package/dist/unstable/cli/Param.d.ts +7 -5
  122. package/dist/unstable/cli/Param.d.ts.map +1 -1
  123. package/dist/unstable/cli/Param.js +15 -11
  124. package/dist/unstable/cli/Param.js.map +1 -1
  125. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  126. package/dist/unstable/cli/Primitive.js +31 -24
  127. package/dist/unstable/cli/Primitive.js.map +1 -1
  128. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  129. package/dist/unstable/cli/Prompt.js +31 -17
  130. package/dist/unstable/cli/Prompt.js.map +1 -1
  131. package/dist/unstable/cli/internal/ansi.js +2 -2
  132. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  133. package/dist/unstable/cli/internal/command.d.ts +2 -2
  134. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  135. package/dist/unstable/cli/internal/command.js +10 -9
  136. package/dist/unstable/cli/internal/command.js.map +1 -1
  137. package/dist/unstable/cli/internal/completions/bash.js +69 -9
  138. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  139. package/dist/unstable/cli/internal/completions/descriptor.js +24 -18
  140. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
  141. package/dist/unstable/cli/internal/completions/fish.js +5 -5
  142. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  143. package/dist/unstable/cli/internal/help.d.ts.map +1 -1
  144. package/dist/unstable/cli/internal/help.js +4 -2
  145. package/dist/unstable/cli/internal/help.js.map +1 -1
  146. package/dist/unstable/cli/internal/parser.js +3 -3
  147. package/dist/unstable/cli/internal/parser.js.map +1 -1
  148. package/dist/unstable/cli/internal/wizard.js +2 -2
  149. package/dist/unstable/cli/internal/wizard.js.map +1 -1
  150. package/dist/unstable/cluster/ClusterError.js +7 -7
  151. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  152. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  153. package/dist/unstable/cluster/ClusterWorkflowEngine.js +1 -1
  154. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  155. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  156. package/dist/unstable/cluster/MessageStorage.js +8 -1
  157. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  158. package/dist/unstable/cluster/Reply.d.ts +8 -0
  159. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  160. package/dist/unstable/cluster/Reply.js +12 -0
  161. package/dist/unstable/cluster/Reply.js.map +1 -1
  162. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  163. package/dist/unstable/cluster/RunnerServer.js +4 -2
  164. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  165. package/dist/unstable/cluster/RunnerStorage.d.ts +1 -2
  166. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  167. package/dist/unstable/cluster/RunnerStorage.js +7 -6
  168. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  169. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  170. package/dist/unstable/cluster/Sharding.js +22 -4
  171. package/dist/unstable/cluster/Sharding.js.map +1 -1
  172. package/dist/unstable/cluster/internal/entityManager.js +1 -1
  173. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  174. package/dist/unstable/cluster/internal/resourceMap.js +2 -2
  175. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  176. package/dist/unstable/cluster/internal/resourceRef.js +17 -0
  177. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  178. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  179. package/dist/unstable/devtools/DevToolsClient.js +7 -2
  180. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  181. package/dist/unstable/encoding/Ini.d.ts +20 -0
  182. package/dist/unstable/encoding/Ini.d.ts.map +1 -0
  183. package/dist/unstable/encoding/Ini.js +153 -0
  184. package/dist/unstable/encoding/Ini.js.map +1 -0
  185. package/dist/unstable/encoding/Msgpack.d.ts +2 -1
  186. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  187. package/dist/unstable/encoding/Msgpack.js +21 -7
  188. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  189. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  190. package/dist/unstable/encoding/Ndjson.js +7 -1
  191. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  192. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  193. package/dist/unstable/encoding/Sse.js +14 -23
  194. package/dist/unstable/encoding/Sse.js.map +1 -1
  195. package/dist/unstable/encoding/Toml.d.ts +19 -0
  196. package/dist/unstable/encoding/Toml.d.ts.map +1 -0
  197. package/dist/unstable/encoding/Toml.js +434 -0
  198. package/dist/unstable/encoding/Toml.js.map +1 -0
  199. package/dist/unstable/encoding/Yaml.d.ts +19 -0
  200. package/dist/unstable/encoding/Yaml.d.ts.map +1 -0
  201. package/dist/unstable/encoding/Yaml.js +461 -0
  202. package/dist/unstable/encoding/Yaml.js.map +1 -0
  203. package/dist/unstable/encoding/index.d.ts +12 -0
  204. package/dist/unstable/encoding/index.d.ts.map +1 -1
  205. package/dist/unstable/encoding/index.js +12 -0
  206. package/dist/unstable/encoding/index.js.map +1 -1
  207. package/dist/unstable/eventlog/EventJournal.d.ts +1 -1
  208. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  209. package/dist/unstable/eventlog/EventJournal.js +13 -5
  210. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  211. package/dist/unstable/eventlog/EventLogMessage.js +1 -1
  212. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  213. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +1 -1
  214. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  215. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
  216. package/dist/unstable/eventlog/SqlEventJournal.js +1 -4
  217. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  218. package/dist/unstable/http/FindMyWay/internal/queryString.d.ts +11 -0
  219. package/dist/unstable/http/FindMyWay/internal/queryString.d.ts.map +1 -0
  220. package/dist/unstable/http/FindMyWay/internal/queryString.js +259 -0
  221. package/dist/unstable/http/FindMyWay/internal/queryString.js.map +1 -0
  222. package/dist/unstable/http/FindMyWay/internal/router.d.ts +2 -0
  223. package/dist/unstable/http/FindMyWay/internal/router.d.ts.map +1 -0
  224. package/dist/unstable/http/FindMyWay/internal/router.js +665 -0
  225. package/dist/unstable/http/FindMyWay/internal/router.js.map +1 -0
  226. package/dist/unstable/http/FindMyWay.d.ts +33 -8
  227. package/dist/unstable/http/FindMyWay.d.ts.map +1 -1
  228. package/dist/unstable/http/FindMyWay.js +4 -7
  229. package/dist/unstable/http/FindMyWay.js.map +1 -1
  230. package/dist/unstable/http/HttpClientError.js +1 -1
  231. package/dist/unstable/http/HttpClientError.js.map +1 -1
  232. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  233. package/dist/unstable/http/HttpClientRequest.js +2 -14
  234. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  235. package/dist/unstable/http/HttpClientResponse.js +1 -16
  236. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  237. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  238. package/dist/unstable/http/HttpPlatform.js +21 -3
  239. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  240. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  241. package/dist/unstable/http/HttpServerRequest.js +7 -6
  242. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  243. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  244. package/dist/unstable/http/HttpServerResponse.js +8 -6
  245. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  246. package/dist/unstable/http/Multipart.d.ts +1 -1
  247. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  248. package/dist/unstable/http/Multipart.js +9 -2
  249. package/dist/unstable/http/Multipart.js.map +1 -1
  250. package/dist/unstable/http/MultipartParser/HeadersParser.d.ts +53 -0
  251. package/dist/unstable/http/MultipartParser/HeadersParser.d.ts.map +1 -0
  252. package/dist/unstable/http/MultipartParser/HeadersParser.js +14 -0
  253. package/dist/unstable/http/MultipartParser/HeadersParser.js.map +1 -0
  254. package/dist/unstable/http/MultipartParser/Search.d.ts +11 -0
  255. package/dist/unstable/http/MultipartParser/Search.d.ts.map +1 -0
  256. package/dist/unstable/http/MultipartParser/Search.js +14 -0
  257. package/dist/unstable/http/MultipartParser/Search.js.map +1 -0
  258. package/dist/unstable/http/MultipartParser/internal/contentType.d.ts +5 -0
  259. package/dist/unstable/http/MultipartParser/internal/contentType.d.ts.map +1 -0
  260. package/dist/unstable/http/MultipartParser/internal/contentType.js +82 -0
  261. package/dist/unstable/http/MultipartParser/internal/contentType.js.map +1 -0
  262. package/dist/unstable/http/MultipartParser/internal/headers.d.ts +3 -0
  263. package/dist/unstable/http/MultipartParser/internal/headers.d.ts.map +1 -0
  264. package/dist/unstable/http/MultipartParser/internal/headers.js +194 -0
  265. package/dist/unstable/http/MultipartParser/internal/headers.js.map +1 -0
  266. package/dist/unstable/http/MultipartParser/internal/multipart.d.ts +8 -0
  267. package/dist/unstable/http/MultipartParser/internal/multipart.d.ts.map +1 -0
  268. package/dist/unstable/http/MultipartParser/internal/multipart.js +226 -0
  269. package/dist/unstable/http/MultipartParser/internal/multipart.js.map +1 -0
  270. package/dist/unstable/http/MultipartParser/internal/search.d.ts +5 -0
  271. package/dist/unstable/http/MultipartParser/internal/search.d.ts.map +1 -0
  272. package/dist/unstable/http/MultipartParser/internal/search.js +120 -0
  273. package/dist/unstable/http/MultipartParser/internal/search.js.map +1 -0
  274. package/dist/unstable/http/MultipartParser.d.ts +98 -0
  275. package/dist/unstable/http/MultipartParser.d.ts.map +1 -0
  276. package/dist/unstable/http/MultipartParser.js +23 -0
  277. package/dist/unstable/http/MultipartParser.js.map +1 -0
  278. package/dist/unstable/http/Template.d.ts.map +1 -1
  279. package/dist/unstable/http/Template.js +2 -2
  280. package/dist/unstable/http/Template.js.map +1 -1
  281. package/dist/unstable/http/index.d.ts +1 -1
  282. package/dist/unstable/http/index.d.ts.map +1 -1
  283. package/dist/unstable/http/index.js +1 -1
  284. package/dist/unstable/http/index.js.map +1 -1
  285. package/dist/unstable/http/internal/httpBody.d.ts +2 -0
  286. package/dist/unstable/http/internal/httpBody.d.ts.map +1 -0
  287. package/dist/unstable/http/internal/httpBody.js +10 -0
  288. package/dist/unstable/http/internal/httpBody.js.map +1 -0
  289. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  290. package/dist/unstable/httpapi/HttpApi.js +5 -5
  291. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  292. package/dist/unstable/httpapi/HttpApiBuilder.js +68 -15
  293. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  294. package/dist/unstable/httpapi/HttpApiClient.d.ts +1 -1
  295. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  296. package/dist/unstable/httpapi/HttpApiClient.js +65 -25
  297. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  298. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +6 -4
  299. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  300. package/dist/unstable/httpapi/HttpApiEndpoint.js +73 -16
  301. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  302. package/dist/unstable/httpapi/HttpApiError.d.ts +5 -5
  303. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  304. package/dist/unstable/httpapi/HttpApiError.js +17 -17
  305. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  306. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +1 -1
  307. package/dist/unstable/httpapi/HttpApiMiddleware.js +1 -1
  308. package/dist/unstable/httpapi/HttpApiSchema.d.ts +219 -0
  309. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  310. package/dist/unstable/httpapi/HttpApiSchema.js +170 -0
  311. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  312. package/dist/unstable/httpapi/OpenApi.d.ts +8 -0
  313. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  314. package/dist/unstable/httpapi/OpenApi.js +45 -18
  315. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  316. package/dist/unstable/observability/OtlpExporter.d.ts +1 -1
  317. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  318. package/dist/unstable/observability/OtlpExporter.js +2 -1
  319. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  320. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  321. package/dist/unstable/observability/OtlpLogger.js +2 -2
  322. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  323. package/dist/unstable/observability/OtlpMetrics.d.ts +2 -2
  324. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  325. package/dist/unstable/observability/OtlpMetrics.js +28 -15
  326. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  327. package/dist/unstable/observability/OtlpTracer.js +1 -1
  328. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  329. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  330. package/dist/unstable/persistence/PersistedQueue.js +9 -9
  331. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  332. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  333. package/dist/unstable/persistence/Persistence.js +17 -7
  334. package/dist/unstable/persistence/Persistence.js.map +1 -1
  335. package/dist/unstable/persistence/RateLimiter.d.ts +22 -12
  336. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  337. package/dist/unstable/persistence/RateLimiter.js +15 -42
  338. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  339. package/dist/unstable/persistence/Redis.js +1 -1
  340. package/dist/unstable/persistence/Redis.js.map +1 -1
  341. package/dist/unstable/rpc/RpcClient.d.ts +14 -0
  342. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  343. package/dist/unstable/rpc/RpcClient.js +18 -9
  344. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  345. package/dist/unstable/rpc/RpcClientError.js +2 -2
  346. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  347. package/dist/unstable/rpc/RpcSerialization.js +3 -1
  348. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  349. package/dist/unstable/schema/Model.d.ts +1 -1
  350. package/dist/unstable/schema/Model.d.ts.map +1 -1
  351. package/dist/unstable/schema/VariantSchema.d.ts +5 -5
  352. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  353. package/dist/unstable/schema/VariantSchema.js +17 -9
  354. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  355. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  356. package/dist/unstable/socket/Socket.js +28 -12
  357. package/dist/unstable/socket/Socket.js.map +1 -1
  358. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  359. package/dist/unstable/sql/SqlClient.js +7 -3
  360. package/dist/unstable/sql/SqlClient.js.map +1 -1
  361. package/dist/unstable/sql/SqlError.js +13 -13
  362. package/dist/unstable/sql/SqlError.js.map +1 -1
  363. package/dist/unstable/sql/SqlResolver.js +8 -6
  364. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  365. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  366. package/dist/unstable/sql/Statement.js +8 -6
  367. package/dist/unstable/sql/Statement.js.map +1 -1
  368. package/dist/unstable/workers/WorkerError.js +5 -5
  369. package/dist/unstable/workers/WorkerError.js.map +1 -1
  370. package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
  371. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  372. package/dist/unstable/workflow/WorkflowEngine.js +3 -3
  373. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  374. package/package.json +2 -8
  375. package/src/Cache.ts +1 -1
  376. package/src/Channel.ts +1 -1
  377. package/src/Config.ts +28 -7
  378. package/src/ConfigProvider.ts +4 -1
  379. package/src/Context.ts +5 -5
  380. package/src/Crypto.ts +17 -8
  381. package/src/Duration.ts +16 -2
  382. package/src/Effect.ts +141 -17
  383. package/src/Equal.ts +10 -2
  384. package/src/ExecutionPlan.ts +78 -1
  385. package/src/FiberSet.ts +1 -1
  386. package/src/FileSystem.ts +2 -2
  387. package/src/Function.ts +6 -6
  388. package/src/Iterable.ts +11 -10
  389. package/src/Layer.ts +7 -5
  390. package/src/Schedule.ts +13 -13
  391. package/src/Schema.ts +50 -41
  392. package/src/SchemaAST.ts +69 -37
  393. package/src/SchemaParser.ts +75 -69
  394. package/src/ScopedCache.ts +1 -1
  395. package/src/Sink.ts +1 -1
  396. package/src/Stream.ts +77 -10
  397. package/src/SynchronizedRef.ts +1 -1
  398. package/src/Terminal.ts +1 -1
  399. package/src/Tuple.ts +7 -4
  400. package/src/TxReentrantLock.ts +39 -35
  401. package/src/internal/dateTime.ts +1 -1
  402. package/src/internal/executionPlan.ts +105 -10
  403. package/src/internal/hashMap.ts +20 -14
  404. package/src/internal/matcher.ts +2 -2
  405. package/src/internal/schedule.ts +4 -4
  406. package/src/internal/schema/annotations.ts +3 -0
  407. package/src/internal/schema/toArbitrary.ts +3 -1
  408. package/src/internal/trie.ts +12 -2
  409. package/src/testing/TestClock.ts +13 -1
  410. package/src/testing/TestSchema.ts +1 -1
  411. package/src/unstable/ai/AiError.ts +19 -19
  412. package/src/unstable/ai/Chat.ts +1 -1
  413. package/src/unstable/ai/LanguageModel.ts +4 -2
  414. package/src/unstable/ai/McpSchema.ts +17 -16
  415. package/src/unstable/ai/McpServer.ts +1 -1
  416. package/src/unstable/ai/Prompt.ts +21 -6
  417. package/src/unstable/cli/CliError.ts +12 -12
  418. package/src/unstable/cli/Command.ts +12 -10
  419. package/src/unstable/cli/Param.ts +41 -19
  420. package/src/unstable/cli/Primitive.ts +11 -5
  421. package/src/unstable/cli/Prompt.ts +36 -20
  422. package/src/unstable/cli/internal/ansi.ts +2 -2
  423. package/src/unstable/cli/internal/command.ts +15 -10
  424. package/src/unstable/cli/internal/completions/bash.ts +59 -9
  425. package/src/unstable/cli/internal/completions/descriptor.ts +14 -20
  426. package/src/unstable/cli/internal/completions/fish.ts +5 -7
  427. package/src/unstable/cli/internal/help.ts +4 -2
  428. package/src/unstable/cli/internal/parser.ts +3 -3
  429. package/src/unstable/cli/internal/wizard.ts +2 -2
  430. package/src/unstable/cluster/ClusterError.ts +7 -7
  431. package/src/unstable/cluster/ClusterWorkflowEngine.ts +4 -1
  432. package/src/unstable/cluster/MessageStorage.ts +9 -5
  433. package/src/unstable/cluster/Reply.ts +21 -0
  434. package/src/unstable/cluster/RunnerServer.ts +4 -10
  435. package/src/unstable/cluster/RunnerStorage.ts +9 -7
  436. package/src/unstable/cluster/Sharding.ts +35 -7
  437. package/src/unstable/cluster/internal/entityManager.ts +1 -1
  438. package/src/unstable/cluster/internal/resourceMap.ts +5 -2
  439. package/src/unstable/cluster/internal/resourceRef.ts +27 -5
  440. package/src/unstable/devtools/DevToolsClient.ts +3 -2
  441. package/src/unstable/encoding/Ini.ts +174 -0
  442. package/src/unstable/encoding/Msgpack.ts +47 -28
  443. package/src/unstable/encoding/Ndjson.ts +9 -1
  444. package/src/unstable/encoding/Sse.ts +11 -21
  445. package/src/unstable/encoding/Toml.ts +504 -0
  446. package/src/unstable/encoding/Yaml.ts +541 -0
  447. package/src/unstable/encoding/index.ts +15 -0
  448. package/src/unstable/eventlog/EventJournal.ts +14 -6
  449. package/src/unstable/eventlog/EventLogMessage.ts +1 -1
  450. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +1 -1
  451. package/src/unstable/eventlog/SqlEventJournal.ts +6 -4
  452. package/src/unstable/http/FindMyWay/internal/queryString.ts +420 -0
  453. package/src/unstable/http/FindMyWay/internal/router.ts +950 -0
  454. package/src/unstable/http/FindMyWay.ts +65 -6
  455. package/src/unstable/http/HttpClientError.ts +1 -1
  456. package/src/unstable/http/HttpClientRequest.ts +2 -14
  457. package/src/unstable/http/HttpClientResponse.ts +1 -17
  458. package/src/unstable/http/HttpPlatform.ts +34 -6
  459. package/src/unstable/http/HttpServerRequest.ts +14 -6
  460. package/src/unstable/http/HttpServerResponse.ts +9 -7
  461. package/src/unstable/http/Multipart.ts +9 -2
  462. package/src/unstable/http/MultipartParser/HeadersParser.ts +68 -0
  463. package/src/unstable/http/MultipartParser/Search.ts +17 -0
  464. package/src/unstable/http/MultipartParser/internal/contentType.ts +103 -0
  465. package/src/unstable/http/MultipartParser/internal/headers.ts +615 -0
  466. package/src/unstable/http/MultipartParser/internal/multipart.ts +262 -0
  467. package/src/unstable/http/MultipartParser/internal/search.ts +167 -0
  468. package/src/unstable/http/MultipartParser.ts +115 -0
  469. package/src/unstable/http/Template.ts +6 -5
  470. package/src/unstable/http/index.ts +1 -1
  471. package/src/unstable/http/internal/httpBody.ts +15 -0
  472. package/src/unstable/httpapi/HttpApi.ts +6 -7
  473. package/src/unstable/httpapi/HttpApiBuilder.ts +119 -21
  474. package/src/unstable/httpapi/HttpApiClient.ts +104 -41
  475. package/src/unstable/httpapi/HttpApiEndpoint.ts +117 -29
  476. package/src/unstable/httpapi/HttpApiError.ts +33 -39
  477. package/src/unstable/httpapi/HttpApiMiddleware.ts +1 -1
  478. package/src/unstable/httpapi/HttpApiSchema.ts +353 -0
  479. package/src/unstable/httpapi/OpenApi.ts +70 -20
  480. package/src/unstable/observability/OtlpExporter.ts +4 -2
  481. package/src/unstable/observability/OtlpLogger.ts +3 -1
  482. package/src/unstable/observability/OtlpMetrics.ts +32 -18
  483. package/src/unstable/observability/OtlpTracer.ts +1 -1
  484. package/src/unstable/persistence/PersistedQueue.ts +12 -9
  485. package/src/unstable/persistence/Persistence.ts +27 -7
  486. package/src/unstable/persistence/RateLimiter.ts +54 -31
  487. package/src/unstable/persistence/Redis.ts +1 -1
  488. package/src/unstable/rpc/RpcClient.ts +38 -12
  489. package/src/unstable/rpc/RpcClientError.ts +2 -2
  490. package/src/unstable/rpc/RpcSerialization.ts +1 -1
  491. package/src/unstable/schema/VariantSchema.ts +36 -18
  492. package/src/unstable/socket/Socket.ts +24 -14
  493. package/src/unstable/sql/SqlClient.ts +65 -56
  494. package/src/unstable/sql/SqlError.ts +13 -13
  495. package/src/unstable/sql/SqlResolver.ts +8 -6
  496. package/src/unstable/sql/Statement.ts +13 -8
  497. package/src/unstable/workers/WorkerError.ts +5 -5
  498. package/src/unstable/workflow/WorkflowEngine.ts +8 -3
  499. package/dist/unstable/http/Multipasta/HeadersParser.d.ts +0 -14
  500. package/dist/unstable/http/Multipasta/HeadersParser.d.ts.map +0 -1
  501. package/dist/unstable/http/Multipasta/HeadersParser.js +0 -14
  502. package/dist/unstable/http/Multipasta/HeadersParser.js.map +0 -1
  503. package/dist/unstable/http/Multipasta/Node.d.ts +0 -14
  504. package/dist/unstable/http/Multipasta/Node.d.ts.map +0 -1
  505. package/dist/unstable/http/Multipasta/Node.js +0 -14
  506. package/dist/unstable/http/Multipasta/Node.js.map +0 -1
  507. package/dist/unstable/http/Multipasta/Search.d.ts +0 -14
  508. package/dist/unstable/http/Multipasta/Search.d.ts.map +0 -1
  509. package/dist/unstable/http/Multipasta/Search.js +0 -14
  510. package/dist/unstable/http/Multipasta/Search.js.map +0 -1
  511. package/dist/unstable/http/Multipasta/Web.d.ts +0 -14
  512. package/dist/unstable/http/Multipasta/Web.d.ts.map +0 -1
  513. package/dist/unstable/http/Multipasta/Web.js +0 -14
  514. package/dist/unstable/http/Multipasta/Web.js.map +0 -1
  515. package/dist/unstable/http/Multipasta.d.ts +0 -15
  516. package/dist/unstable/http/Multipasta.d.ts.map +0 -1
  517. package/dist/unstable/http/Multipasta.js +0 -15
  518. package/dist/unstable/http/Multipasta.js.map +0 -1
  519. package/src/unstable/http/Multipasta/HeadersParser.ts +0 -14
  520. package/src/unstable/http/Multipasta/Node.ts +0 -14
  521. package/src/unstable/http/Multipasta/Search.ts +0 -14
  522. package/src/unstable/http/Multipasta/Web.ts +0 -14
  523. package/src/unstable/http/Multipasta.ts +0 -15
@@ -0,0 +1,82 @@
1
+ // taken from https://github.com/fastify/fast-content-type-parse
2
+ // under the MIT license
3
+ /**
4
+ * RegExp to match *( ";" parameter ) in RFC 7231 sec 3.1.1.1
5
+ *
6
+ * parameter = token "=" ( token / quoted-string )
7
+ * token = 1*tchar
8
+ * tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*"
9
+ * / "+" / "-" / "." / "^" / "_" / "`" / "|" / "~"
10
+ * / DIGIT / ALPHA
11
+ * ; any VCHAR, except delimiters
12
+ * quoted-string = DQUOTE *( qdtext / quoted-pair ) DQUOTE
13
+ * qdtext = HTAB / SP / %x21 / %x23-5B / %x5D-7E / obs-text
14
+ * obs-text = %x80-FF
15
+ * quoted-pair = "\" ( HTAB / SP / VCHAR / obs-text )
16
+ */
17
+ const paramRE = /; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u{10ffff}]|\\[\v\u0020-\u{10ffff}])*"|[!#$%&'*+.^\w`|~-]+) */gu;
18
+ /**
19
+ * RegExp to match quoted-pair in RFC 7230 sec 3.2.6
20
+ *
21
+ * quoted-pair = "\" ( HTAB / SP / VCHAR / obs-text )
22
+ * obs-text = %x80-FF
23
+ */
24
+ const quotedPairRE = /\\([\v\u0020-\u{10ffff}])/gu;
25
+ /**
26
+ * RegExp to match type in RFC 7231 sec 3.1.1.1
27
+ *
28
+ * media-type = type "/" subtype
29
+ * type = token
30
+ * subtype = token
31
+ */
32
+ const mediaTypeRE = /^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u;
33
+ const mediaTypeRENoSlash = /^[!#$%&'*+.^\w|~-]+$/u;
34
+ // default ContentType to prevent repeated object creation
35
+ const defaultContentType = {
36
+ value: "",
37
+ parameters: /*#__PURE__*/Object.create(null)
38
+ };
39
+ export function parse(header, withoutSlash = false) {
40
+ if (typeof header !== "string") {
41
+ return defaultContentType;
42
+ }
43
+ let index = header.indexOf(";");
44
+ const type = index !== -1 ? header.slice(0, index).trim() : header.trim();
45
+ const mediaRE = withoutSlash ? mediaTypeRENoSlash : mediaTypeRE;
46
+ if (mediaRE.test(type) === false) {
47
+ return defaultContentType;
48
+ }
49
+ const result = {
50
+ value: type.toLowerCase(),
51
+ parameters: Object.create(null)
52
+ };
53
+ // parse parameters
54
+ if (index === -1) {
55
+ return result;
56
+ }
57
+ let key;
58
+ let match;
59
+ let value;
60
+ paramRE.lastIndex = index;
61
+ while (match = paramRE.exec(header)) {
62
+ if (match.index !== index) {
63
+ return defaultContentType;
64
+ }
65
+ index += match[0].length;
66
+ key = match[1].toLowerCase();
67
+ value = match[2];
68
+ if (value[0] === "\"") {
69
+ // remove quotes and escapes
70
+ value = value.slice(1, value.length - 1);
71
+ if (!withoutSlash && quotedPairRE.test(value)) {
72
+ value = value.replace(quotedPairRE, "$1");
73
+ }
74
+ }
75
+ result.parameters[key] = value;
76
+ }
77
+ if (index !== header.length) {
78
+ return defaultContentType;
79
+ }
80
+ return result;
81
+ }
82
+ //# sourceMappingURL=contentType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentType.js","names":[],"sources":["../../../../../src/unstable/http/MultipartParser/internal/contentType.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AAEA;;;;;;;;;;;;;;AAcA,MAAM,OAAO,GACX,+IAA+I;AAEjJ;;;;;;AAMA,MAAM,YAAY,GAAG,6BAA6B;AAElD;;;;;;;AAOA,MAAM,WAAW,GAAG,2CAA2C;AAC/D,MAAM,kBAAkB,GAAG,uBAAuB;AAElD;AACA,MAAM,kBAAkB,GAAG;EAAE,KAAK,EAAE,EAAE;EAAE,UAAU,eAAE,MAAM,CAAC,MAAM,CAAC,IAAI;AAAC,CAAE;AAEzE,OAAM,SAAU,KAAK,CACnB,MAA0B,EAC1B,YAAY,GAAG,KAAK;EAKpB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;IAC9B,OAAO,kBAAkB;EAC3B;EAEA,IAAI,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;EAC/B,MAAM,IAAI,GAAG,KAAK,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE;EACzE,MAAM,OAAO,GAAG,YAAY,GAAG,kBAAkB,GAAG,WAAW;EAE/D,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE;IAChC,OAAO,kBAAkB;EAC3B;EAEA,MAAM,MAAM,GAAG;IACb,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;IACzB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;GAC/B;EAED;EACA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;IAChB,OAAO,MAAM;EACf;EAEA,IAAI,GAAW;EACf,IAAI,KAA6B;EACjC,IAAI,KAAa;EAEjB,OAAO,CAAC,SAAS,GAAG,KAAK;EAEzB,OAAQ,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAG;IACrC,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,EAAE;MACzB,OAAO,kBAAkB;IAC3B;IAEA,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM;IACxB,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;IAC5B,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC;IAEhB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;MACrB;MACA,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;MAExC,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QAC7C,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC;MAC3C;IACF;IAEA,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK;EAChC;EAEA,IAAI,KAAK,KAAK,MAAM,CAAC,MAAM,EAAE;IAC3B,OAAO,kBAAkB;EAC3B;EAEA,OAAO,MAAM;AACf","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import type { ReturnValue } from "../HeadersParser.ts";
2
+ export declare function make(): (chunk: Uint8Array, start: number) => ReturnValue;
3
+ //# sourceMappingURL=headers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headers.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/http/MultipartParser/internal/headers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA2B,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAmZ/E,wBAAgB,IAAI,YAoCW,UAAU,SAAS,MAAM,KAAG,WAAW,CA+KrE"}
@@ -0,0 +1,194 @@
1
+ const constMaxPairs = 100;
2
+ const constMaxSize = 16 * 1024;
3
+ const State = {
4
+ key: 0,
5
+ whitespace: 1,
6
+ value: 2
7
+ };
8
+ const constContinue = {
9
+ _tag: "Continue"
10
+ };
11
+ const constNameChars = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1];
12
+ const constValueChars = [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];
13
+ export function make() {
14
+ const decoder = new TextDecoder();
15
+ const state = {
16
+ state: State.key,
17
+ headers: Object.create(null),
18
+ key: "",
19
+ value: undefined,
20
+ crlf: 0,
21
+ previousChunk: undefined,
22
+ pairs: 0,
23
+ size: 0
24
+ };
25
+ function reset(value) {
26
+ state.state = State.key;
27
+ state.headers = Object.create(null);
28
+ state.key = "";
29
+ state.value = undefined;
30
+ state.crlf = 0;
31
+ state.previousChunk = undefined;
32
+ state.pairs = 0;
33
+ state.size = 0;
34
+ return value;
35
+ }
36
+ function concatUint8Array(a, b) {
37
+ const newUint8Array = new Uint8Array(a.length + b.length);
38
+ newUint8Array.set(a);
39
+ newUint8Array.set(b, a.length);
40
+ return newUint8Array;
41
+ }
42
+ function error(reason) {
43
+ return reset({
44
+ _tag: "Failure",
45
+ reason,
46
+ headers: state.headers
47
+ });
48
+ }
49
+ return function write(chunk, start) {
50
+ let endOffset = 0;
51
+ let previousCursor;
52
+ if (state.previousChunk !== undefined) {
53
+ endOffset = state.previousChunk.length;
54
+ previousCursor = endOffset;
55
+ const newChunk = new Uint8Array(chunk.length + endOffset);
56
+ newChunk.set(state.previousChunk);
57
+ newChunk.set(chunk, endOffset);
58
+ state.previousChunk = undefined;
59
+ chunk = newChunk;
60
+ }
61
+ const end = chunk.length;
62
+ outer: while (start < end) {
63
+ if (state.state === State.key) {
64
+ let i = start;
65
+ for (; i < end; i++) {
66
+ if (state.size++ > constMaxSize) {
67
+ return error("HeaderTooLarge");
68
+ }
69
+ if (chunk[i] === 58) {
70
+ state.key += decoder.decode(chunk.subarray(start, i)).toLowerCase();
71
+ if (state.key.length === 0) {
72
+ return error("InvalidHeaderName");
73
+ }
74
+ if (chunk[i + 1] === 32 && chunk[i + 2] !== 32 && chunk[i + 2] !== 9) {
75
+ start = i + 2;
76
+ state.state = State.value;
77
+ state.size++;
78
+ } else if (chunk[i + 1] !== 32 && chunk[i + 1] !== 9) {
79
+ start = i + 1;
80
+ state.state = State.value;
81
+ } else {
82
+ start = i + 1;
83
+ state.state = State.whitespace;
84
+ }
85
+ break;
86
+ } else if (constNameChars[chunk[i]] !== 1) {
87
+ return error("InvalidHeaderName");
88
+ }
89
+ }
90
+ if (i === end) {
91
+ state.key += decoder.decode(chunk.subarray(start, end)).toLowerCase();
92
+ return constContinue;
93
+ }
94
+ }
95
+ if (state.state === State.whitespace) {
96
+ for (; start < end; start++) {
97
+ if (state.size++ > constMaxSize) {
98
+ return error("HeaderTooLarge");
99
+ }
100
+ if (chunk[start] !== 32 && chunk[start] !== 9) {
101
+ state.state = State.value;
102
+ break;
103
+ }
104
+ }
105
+ if (start === end) {
106
+ return constContinue;
107
+ }
108
+ }
109
+ if (state.state === State.value) {
110
+ let i = start;
111
+ if (previousCursor !== undefined) {
112
+ i = previousCursor;
113
+ previousCursor = undefined;
114
+ }
115
+ for (; i < end; i++) {
116
+ if (state.size++ > constMaxSize) {
117
+ return error("HeaderTooLarge");
118
+ }
119
+ if (chunk[i] === 13 || state.crlf > 0) {
120
+ let byte = chunk[i];
121
+ if (byte === 13 && state.crlf === 0) {
122
+ state.crlf = 1;
123
+ i++;
124
+ state.size++;
125
+ byte = chunk[i];
126
+ }
127
+ if (byte === 10 && state.crlf === 1) {
128
+ state.crlf = 2;
129
+ i++;
130
+ state.size++;
131
+ byte = chunk[i];
132
+ }
133
+ if (byte === 13 && state.crlf === 2) {
134
+ state.crlf = 3;
135
+ i++;
136
+ state.size++;
137
+ byte = chunk[i];
138
+ }
139
+ if (byte === 10 && state.crlf === 3) {
140
+ state.crlf = 4;
141
+ i++;
142
+ state.size++;
143
+ }
144
+ if (state.crlf < 4 && i >= end) {
145
+ state.previousChunk = chunk.subarray(start);
146
+ return constContinue;
147
+ } else if (state.crlf >= 2) {
148
+ state.value = state.value === undefined ? chunk.subarray(start, i - state.crlf) : concatUint8Array(state.value, chunk.subarray(start, i - state.crlf));
149
+ const value = decoder.decode(state.value);
150
+ if (state.headers[state.key] === undefined) {
151
+ state.headers[state.key] = value;
152
+ } else if (typeof state.headers[state.key] === "string") {
153
+ state.headers[state.key] = [state.headers[state.key], value];
154
+ } else {
155
+ ;
156
+ state.headers[state.key].push(value);
157
+ }
158
+ start = i;
159
+ state.size--;
160
+ if (state.crlf !== 4 && state.pairs === constMaxPairs) {
161
+ return error("TooManyHeaders");
162
+ } else if (state.crlf === 3) {
163
+ return error("InvalidHeaderValue");
164
+ } else if (state.crlf === 4) {
165
+ return reset({
166
+ _tag: "Headers",
167
+ headers: state.headers,
168
+ endPosition: start - endOffset
169
+ });
170
+ }
171
+ state.pairs++;
172
+ state.key = "";
173
+ state.value = undefined;
174
+ state.crlf = 0;
175
+ state.state = State.key;
176
+ continue outer;
177
+ }
178
+ } else if (constValueChars[chunk[i]] !== 1) {
179
+ return error("InvalidHeaderValue");
180
+ }
181
+ }
182
+ if (i === end) {
183
+ state.value = state.value === undefined ? chunk.subarray(start, end) : concatUint8Array(state.value, chunk.subarray(start, end));
184
+ return constContinue;
185
+ }
186
+ }
187
+ }
188
+ if (start > end) {
189
+ state.size += end - start;
190
+ }
191
+ return constContinue;
192
+ };
193
+ }
194
+ //# sourceMappingURL=headers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headers.js","names":[],"sources":["../../../../../src/unstable/http/MultipartParser/internal/headers.ts"],"sourcesContent":[null],"mappings":"AAEA,MAAM,aAAa,GAAG,GAAG;AACzB,MAAM,YAAY,GAAG,EAAE,GAAG,IAAI;AAE9B,MAAM,KAAK,GAAG;EACZ,GAAG,EAAE,CAAC;EACN,UAAU,EAAE,CAAC;EACb,KAAK,EAAE;CACC;AAGV,MAAM,aAAa,GAAa;EAAE,IAAI,EAAE;AAAU,CAAE;AAEpD,MAAM,cAAc,GAAG,CACrB,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,CACF;AAED,MAAM,eAAe,GAAG,CACtB,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,CAAC,EACD,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","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { Config, PartInfo } from "../../MultipartParser.ts";
2
+ export declare function defaultIsFile(info: PartInfo): boolean;
3
+ export declare function make({ headers, onFile: onPart, onField, onError, onDone, isFile, maxParts, maxTotalSize, maxPartSize, maxFieldSize }: Config): {
4
+ readonly write: (chunk: Uint8Array) => void;
5
+ readonly end: () => void;
6
+ };
7
+ export declare function decodeField(info: PartInfo, value: Uint8Array): string;
8
+ //# sourceMappingURL=multipart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multipart.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/http/MultipartParser/internal/multipart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAkB,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AA6BhF,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,WAK3C;AASD,wBAAgB,IAAI,CAAC,EACnB,OAAO,EACP,MAAM,EAAE,MAAM,EACd,OAAO,EACP,OAAO,EACP,MAAM,EACN,MAAsB,EACtB,QAAmB,EACnB,YAAuB,EACvB,WAAsB,EACtB,YAA0B,EAC3B,EAAE,MAAM;4BAsKQ,UAAU;;EAwB1B;AAeD,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,CAErE"}
@@ -0,0 +1,226 @@
1
+ import * as CT from "./contentType.js";
2
+ import * as HP from "./headers.js";
3
+ import * as Search from "./search.js";
4
+ const State = {
5
+ headers: 0,
6
+ body: 1
7
+ };
8
+ const errInvalidDisposition = {
9
+ _tag: "InvalidDisposition"
10
+ };
11
+ const errEndNotReached = {
12
+ _tag: "EndNotReached"
13
+ };
14
+ const errMaxParts = {
15
+ _tag: "ReachedLimit",
16
+ limit: "MaxParts"
17
+ };
18
+ const errMaxTotalSize = {
19
+ _tag: "ReachedLimit",
20
+ limit: "MaxTotalSize"
21
+ };
22
+ const errMaxPartSize = {
23
+ _tag: "ReachedLimit",
24
+ limit: "MaxPartSize"
25
+ };
26
+ const errMaxFieldSize = {
27
+ _tag: "ReachedLimit",
28
+ limit: "MaxFieldSize"
29
+ };
30
+ const constCR = /*#__PURE__*/new TextEncoder().encode("\r\n");
31
+ export function defaultIsFile(info) {
32
+ return info.filename !== undefined || info.contentType === "application/octet-stream";
33
+ }
34
+ function parseBoundary(headers) {
35
+ const contentType = CT.parse(headers["content-type"]);
36
+ return contentType.parameters.boundary;
37
+ }
38
+ function noopOnChunk(_chunk) {}
39
+ export function make({
40
+ headers,
41
+ onFile: onPart,
42
+ onField,
43
+ onError,
44
+ onDone,
45
+ isFile = defaultIsFile,
46
+ maxParts = Infinity,
47
+ maxTotalSize = Infinity,
48
+ maxPartSize = Infinity,
49
+ maxFieldSize = 1024 * 1024
50
+ }) {
51
+ const boundary = parseBoundary(headers);
52
+ if (boundary === undefined) {
53
+ onError({
54
+ _tag: "InvalidBoundary"
55
+ });
56
+ return {
57
+ write: noopOnChunk,
58
+ end() {}
59
+ };
60
+ }
61
+ const state = {
62
+ state: State.headers,
63
+ index: 0,
64
+ parts: 0,
65
+ onChunk: noopOnChunk,
66
+ info: undefined,
67
+ headerSkip: 0,
68
+ partSize: 0,
69
+ totalSize: 0,
70
+ isFile: false,
71
+ fieldChunks: [],
72
+ fieldSize: 0,
73
+ done: false
74
+ };
75
+ function skipBody() {
76
+ state.state = State.body;
77
+ state.isFile = true;
78
+ state.onChunk = noopOnChunk;
79
+ }
80
+ const headerParser = HP.make();
81
+ const split = Search.make(`\r\n--${boundary}`, function (index, chunk) {
82
+ if (index === 0) {
83
+ // data before the first boundary
84
+ skipBody();
85
+ return;
86
+ } else if (index !== state.index) {
87
+ if (state.index > 0) {
88
+ if (state.isFile) {
89
+ state.onChunk(null);
90
+ } else {
91
+ if (state.fieldChunks.length === 1) {
92
+ onField(state.info, state.fieldChunks[0]);
93
+ } else {
94
+ const buf = new Uint8Array(state.fieldSize);
95
+ let offset = 0;
96
+ for (let i = 0; i < state.fieldChunks.length; i++) {
97
+ const chunk = state.fieldChunks[i];
98
+ buf.set(chunk, offset);
99
+ offset += chunk.length;
100
+ }
101
+ onField(state.info, buf);
102
+ }
103
+ state.fieldSize = 0;
104
+ state.fieldChunks = [];
105
+ }
106
+ }
107
+ state.partSize = 0;
108
+ state.state = State.headers;
109
+ state.index = index;
110
+ state.headerSkip = 2; // skip the first \r\n
111
+ // trailing --
112
+ if (chunk[0] === 45 && chunk[1] === 45) {
113
+ state.done = true;
114
+ return onDone();
115
+ }
116
+ state.parts++;
117
+ if (state.parts > maxParts) {
118
+ onError(errMaxParts);
119
+ }
120
+ }
121
+ if ((state.partSize += chunk.length) > maxPartSize) {
122
+ onError(errMaxPartSize);
123
+ }
124
+ if (state.state === State.headers) {
125
+ const result = headerParser(chunk, state.headerSkip);
126
+ state.headerSkip = 0;
127
+ if (result._tag === "Continue") {
128
+ return;
129
+ } else if (result._tag === "Failure") {
130
+ skipBody();
131
+ return onError({
132
+ _tag: "BadHeaders",
133
+ error: result
134
+ });
135
+ }
136
+ const contentType = CT.parse(result.headers["content-type"]);
137
+ const contentDisposition = CT.parse(result.headers["content-disposition"], true);
138
+ if ("form-data" === contentDisposition.value && !("name" in contentDisposition.parameters)) {
139
+ skipBody();
140
+ return onError(errInvalidDisposition);
141
+ }
142
+ let encodedFilename;
143
+ if ("filename*" in contentDisposition.parameters) {
144
+ const parts = contentDisposition.parameters["filename*"].split("''");
145
+ if (parts.length === 2) {
146
+ try {
147
+ encodedFilename = decodeURIComponent(parts[1]);
148
+ } catch {
149
+ encodedFilename = parts[1];
150
+ }
151
+ }
152
+ }
153
+ state.info = {
154
+ name: contentDisposition.parameters.name ?? "",
155
+ filename: encodedFilename ?? contentDisposition.parameters.filename,
156
+ contentType: contentType.value === "" ? contentDisposition.parameters.filename !== undefined ? "application/octet-stream" : "text/plain" : contentType.value,
157
+ contentTypeParameters: contentType.parameters,
158
+ contentDisposition: contentDisposition.value,
159
+ contentDispositionParameters: contentDisposition.parameters,
160
+ headers: result.headers
161
+ };
162
+ state.state = State.body;
163
+ state.isFile = isFile(state.info);
164
+ if (state.isFile) {
165
+ state.onChunk = onPart(state.info);
166
+ }
167
+ if (result.endPosition < chunk.length) {
168
+ if (state.isFile) {
169
+ state.onChunk(chunk.subarray(result.endPosition));
170
+ } else {
171
+ const buf = chunk.subarray(result.endPosition);
172
+ if ((state.fieldSize += buf.length) > maxFieldSize) {
173
+ onError(errMaxFieldSize);
174
+ }
175
+ state.fieldChunks.push(buf);
176
+ }
177
+ }
178
+ } else if (state.isFile) {
179
+ state.onChunk(chunk);
180
+ } else {
181
+ if ((state.fieldSize += chunk.length) > maxFieldSize) {
182
+ onError(errMaxFieldSize);
183
+ }
184
+ state.fieldChunks.push(chunk);
185
+ }
186
+ }, constCR, 2);
187
+ return {
188
+ write(chunk) {
189
+ if ((state.totalSize += chunk.length) > maxTotalSize) {
190
+ return onError(errMaxTotalSize);
191
+ }
192
+ return split.write(chunk);
193
+ },
194
+ end() {
195
+ split.end();
196
+ if (!state.done) {
197
+ onError(errEndNotReached);
198
+ }
199
+ state.state = State.headers;
200
+ state.index = 0;
201
+ state.parts = 0;
202
+ state.onChunk = noopOnChunk;
203
+ state.info = undefined;
204
+ state.totalSize = 0;
205
+ state.partSize = 0;
206
+ state.fieldChunks = [];
207
+ state.fieldSize = 0;
208
+ state.done = false;
209
+ }
210
+ };
211
+ }
212
+ const utf8Decoder = /*#__PURE__*/new TextDecoder("utf-8");
213
+ function getDecoder(charset) {
214
+ if (charset === "utf-8" || charset === "utf8" || charset === "") {
215
+ return utf8Decoder;
216
+ }
217
+ try {
218
+ return new TextDecoder(charset);
219
+ } catch (error) {
220
+ return utf8Decoder;
221
+ }
222
+ }
223
+ export function decodeField(info, value) {
224
+ return getDecoder(info.contentTypeParameters.charset ?? "utf-8").decode(value);
225
+ }
226
+ //# sourceMappingURL=multipart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multipart.js","names":[],"sources":["../../../../../src/unstable/http/MultipartParser/internal/multipart.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ export declare function make(needle: string, callback: (index: number, chunk: Uint8Array) => void, seed?: Uint8Array, minimumChunkLength?: number): {
2
+ readonly write: (chunk: Uint8Array) => void;
3
+ readonly end: () => void;
4
+ };
5
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/http/MultipartParser/internal/search.ts"],"names":[],"mappings":"AAiCA,wBAAgB,IAAI,CAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,EACpD,IAAI,CAAC,EAAE,UAAU,EACjB,kBAAkB,CAAC,EAAE,MAAM;4BAkDL,UAAU,KAAG,IAAI;wBAoEvB,IAAI;EAWrB"}