@restatedev/restate-sdk-cloudflare-workers 1.9.1 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (265) hide show
  1. package/LICENSE +21 -0
  2. package/dist/_virtual/rolldown_runtime.cjs +25 -0
  3. package/dist/common_api.cjs +25 -0
  4. package/dist/common_api.d.cts +30 -0
  5. package/dist/common_api.d.cts.map +1 -0
  6. package/dist/common_api.d.ts +30 -0
  7. package/dist/common_api.d.ts.map +1 -0
  8. package/dist/common_api.js +19 -0
  9. package/dist/common_api.js.map +1 -0
  10. package/dist/context.cjs +29 -0
  11. package/dist/context.d.cts +699 -0
  12. package/dist/context.d.cts.map +1 -0
  13. package/dist/context.d.ts +699 -0
  14. package/dist/context.d.ts.map +1 -0
  15. package/dist/context.js +29 -0
  16. package/dist/context.js.map +1 -0
  17. package/dist/context_impl.cjs +441 -0
  18. package/dist/context_impl.js +440 -0
  19. package/dist/context_impl.js.map +1 -0
  20. package/dist/endpoint/components.cjs +257 -0
  21. package/dist/endpoint/components.js +253 -0
  22. package/dist/endpoint/components.js.map +1 -0
  23. package/dist/endpoint/endpoint.cjs +117 -0
  24. package/dist/endpoint/endpoint.js +118 -0
  25. package/dist/endpoint/endpoint.js.map +1 -0
  26. package/dist/endpoint/fetch_endpoint.cjs +41 -0
  27. package/dist/endpoint/fetch_endpoint.d.cts +39 -0
  28. package/dist/endpoint/fetch_endpoint.d.cts.map +1 -0
  29. package/dist/endpoint/fetch_endpoint.d.ts +39 -0
  30. package/dist/endpoint/fetch_endpoint.d.ts.map +1 -0
  31. package/dist/endpoint/fetch_endpoint.js +42 -0
  32. package/dist/endpoint/fetch_endpoint.js.map +1 -0
  33. package/dist/endpoint/handlers/fetch.cjs +21 -0
  34. package/dist/endpoint/handlers/fetch.js +21 -0
  35. package/dist/endpoint/handlers/fetch.js.map +1 -0
  36. package/dist/endpoint/handlers/generic.cjs +328 -0
  37. package/dist/endpoint/handlers/generic.js +324 -0
  38. package/dist/endpoint/handlers/generic.js.map +1 -0
  39. package/dist/endpoint/handlers/lambda.cjs +93 -0
  40. package/dist/endpoint/handlers/lambda.js +89 -0
  41. package/dist/endpoint/handlers/lambda.js.map +1 -0
  42. package/dist/endpoint/lambda_endpoint.cjs +36 -0
  43. package/dist/endpoint/lambda_endpoint.d.cts +26 -0
  44. package/dist/endpoint/lambda_endpoint.d.cts.map +1 -0
  45. package/dist/endpoint/lambda_endpoint.d.ts +26 -0
  46. package/dist/endpoint/lambda_endpoint.d.ts.map +1 -0
  47. package/dist/endpoint/lambda_endpoint.js +37 -0
  48. package/dist/endpoint/lambda_endpoint.js.map +1 -0
  49. package/dist/endpoint/node_endpoint.cjs +101 -0
  50. package/dist/endpoint/node_endpoint.js +99 -0
  51. package/dist/endpoint/node_endpoint.js.map +1 -0
  52. package/dist/endpoint/types.d.cts +61 -0
  53. package/dist/endpoint/types.d.cts.map +1 -0
  54. package/dist/endpoint/types.d.ts +61 -0
  55. package/dist/endpoint/types.d.ts.map +1 -0
  56. package/dist/endpoint/withOptions.cjs +15 -0
  57. package/dist/endpoint/withOptions.js +15 -0
  58. package/dist/endpoint/withOptions.js.map +1 -0
  59. package/dist/endpoint.d.cts +112 -0
  60. package/dist/endpoint.d.cts.map +1 -0
  61. package/dist/endpoint.d.ts +112 -0
  62. package/dist/endpoint.d.ts.map +1 -0
  63. package/dist/fetch.cjs +83 -0
  64. package/dist/fetch.d.cts +52 -0
  65. package/dist/fetch.d.cts.map +1 -0
  66. package/dist/fetch.d.ts +52 -0
  67. package/dist/fetch.d.ts.map +1 -0
  68. package/dist/{esm/src/fetch.js → fetch.js} +15 -18
  69. package/dist/fetch.js.map +1 -0
  70. package/dist/index.cjs +48 -0
  71. package/dist/index.d.cts +9 -0
  72. package/dist/index.d.ts +9 -0
  73. package/dist/index.js +7 -0
  74. package/dist/io.cjs +48 -0
  75. package/dist/io.js +48 -0
  76. package/dist/io.js.map +1 -0
  77. package/dist/lambda.cjs +74 -0
  78. package/dist/lambda.d.cts +32 -0
  79. package/dist/lambda.d.cts.map +1 -0
  80. package/dist/lambda.d.ts +32 -0
  81. package/dist/lambda.d.ts.map +1 -0
  82. package/dist/lambda.js +35 -0
  83. package/dist/lambda.js.map +1 -0
  84. package/dist/logging/console_logger_transport.cjs +54 -0
  85. package/dist/logging/console_logger_transport.js +54 -0
  86. package/dist/logging/console_logger_transport.js.map +1 -0
  87. package/dist/logging/logger.cjs +43 -0
  88. package/dist/logging/logger.js +44 -0
  89. package/dist/logging/logger.js.map +1 -0
  90. package/dist/logging/logger_transport.cjs +42 -0
  91. package/dist/logging/logger_transport.d.cts +57 -0
  92. package/dist/logging/logger_transport.d.cts.map +1 -0
  93. package/dist/logging/logger_transport.d.ts +57 -0
  94. package/dist/logging/logger_transport.d.ts.map +1 -0
  95. package/dist/logging/logger_transport.js +40 -0
  96. package/dist/logging/logger_transport.js.map +1 -0
  97. package/dist/node.cjs +90 -0
  98. package/dist/node.d.cts +51 -0
  99. package/dist/node.d.cts.map +1 -0
  100. package/dist/node.d.ts +51 -0
  101. package/dist/node.d.ts.map +1 -0
  102. package/dist/node.js +50 -0
  103. package/dist/node.js.map +1 -0
  104. package/dist/package.cjs +11 -0
  105. package/dist/package.js +6 -0
  106. package/dist/package.js.map +1 -0
  107. package/dist/promises.cjs +234 -0
  108. package/dist/promises.js +226 -0
  109. package/dist/promises.js.map +1 -0
  110. package/dist/types/errors.cjs +110 -0
  111. package/dist/types/errors.d.cts +71 -0
  112. package/dist/types/errors.d.cts.map +1 -0
  113. package/dist/types/errors.d.ts +71 -0
  114. package/dist/types/errors.d.ts.map +1 -0
  115. package/dist/types/errors.js +102 -0
  116. package/dist/types/errors.js.map +1 -0
  117. package/dist/types/rpc.cjs +425 -0
  118. package/dist/types/rpc.d.cts +580 -0
  119. package/dist/types/rpc.d.cts.map +1 -0
  120. package/dist/types/rpc.d.ts +580 -0
  121. package/dist/types/rpc.d.ts.map +1 -0
  122. package/dist/types/rpc.js +406 -0
  123. package/dist/types/rpc.js.map +1 -0
  124. package/dist/user_agent.cjs +7 -0
  125. package/dist/user_agent.js +8 -0
  126. package/dist/user_agent.js.map +1 -0
  127. package/dist/utils/completable_promise.cjs +22 -0
  128. package/dist/utils/completable_promise.js +22 -0
  129. package/dist/utils/completable_promise.js.map +1 -0
  130. package/dist/utils/rand.cjs +72 -0
  131. package/dist/utils/rand.js +71 -0
  132. package/dist/utils/rand.js.map +1 -0
  133. package/dist/utils/streams.cjs +14 -0
  134. package/dist/utils/streams.js +13 -0
  135. package/dist/utils/streams.js.map +1 -0
  136. package/package.json +30 -52
  137. package/dist/esm/src/common_api.d.ts +0 -37
  138. package/dist/esm/src/common_api.d.ts.map +0 -1
  139. package/dist/esm/src/common_api.js +0 -32
  140. package/dist/esm/src/common_api.js.map +0 -1
  141. package/dist/esm/src/context.d.ts +0 -695
  142. package/dist/esm/src/context.d.ts.map +0 -1
  143. package/dist/esm/src/context.js +0 -87
  144. package/dist/esm/src/context.js.map +0 -1
  145. package/dist/esm/src/context_impl.d.ts +0 -69
  146. package/dist/esm/src/context_impl.d.ts.map +0 -1
  147. package/dist/esm/src/context_impl.js +0 -592
  148. package/dist/esm/src/context_impl.js.map +0 -1
  149. package/dist/esm/src/endpoint/components.d.ts +0 -97
  150. package/dist/esm/src/endpoint/components.d.ts.map +0 -1
  151. package/dist/esm/src/endpoint/components.js +0 -343
  152. package/dist/esm/src/endpoint/components.js.map +0 -1
  153. package/dist/esm/src/endpoint/discovery.d.ts +0 -184
  154. package/dist/esm/src/endpoint/discovery.d.ts.map +0 -1
  155. package/dist/esm/src/endpoint/discovery.js +0 -8
  156. package/dist/esm/src/endpoint/discovery.js.map +0 -1
  157. package/dist/esm/src/endpoint/endpoint.d.ts +0 -39
  158. package/dist/esm/src/endpoint/endpoint.d.ts.map +0 -1
  159. package/dist/esm/src/endpoint/endpoint.js +0 -155
  160. package/dist/esm/src/endpoint/endpoint.js.map +0 -1
  161. package/dist/esm/src/endpoint/fetch_endpoint.d.ts +0 -49
  162. package/dist/esm/src/endpoint/fetch_endpoint.d.ts.map +0 -1
  163. package/dist/esm/src/endpoint/fetch_endpoint.js +0 -49
  164. package/dist/esm/src/endpoint/fetch_endpoint.js.map +0 -1
  165. package/dist/esm/src/endpoint/handlers/fetch.d.ts +0 -5
  166. package/dist/esm/src/endpoint/handlers/fetch.d.ts.map +0 -1
  167. package/dist/esm/src/endpoint/handlers/fetch.js +0 -31
  168. package/dist/esm/src/endpoint/handlers/fetch.js.map +0 -1
  169. package/dist/esm/src/endpoint/handlers/generic.d.ts +0 -61
  170. package/dist/esm/src/endpoint/handlers/generic.d.ts.map +0 -1
  171. package/dist/esm/src/endpoint/handlers/generic.js +0 -470
  172. package/dist/esm/src/endpoint/handlers/generic.js.map +0 -1
  173. package/dist/esm/src/endpoint/handlers/lambda.d.ts +0 -10
  174. package/dist/esm/src/endpoint/handlers/lambda.d.ts.map +0 -1
  175. package/dist/esm/src/endpoint/handlers/lambda.js +0 -143
  176. package/dist/esm/src/endpoint/handlers/lambda.js.map +0 -1
  177. package/dist/esm/src/endpoint/lambda_endpoint.d.ts +0 -30
  178. package/dist/esm/src/endpoint/lambda_endpoint.d.ts.map +0 -1
  179. package/dist/esm/src/endpoint/lambda_endpoint.js +0 -48
  180. package/dist/esm/src/endpoint/lambda_endpoint.js.map +0 -1
  181. package/dist/esm/src/endpoint/node_endpoint.d.ts +0 -16
  182. package/dist/esm/src/endpoint/node_endpoint.d.ts.map +0 -1
  183. package/dist/esm/src/endpoint/node_endpoint.js +0 -124
  184. package/dist/esm/src/endpoint/node_endpoint.js.map +0 -1
  185. package/dist/esm/src/endpoint/types.d.ts +0 -55
  186. package/dist/esm/src/endpoint/types.d.ts.map +0 -1
  187. package/dist/esm/src/endpoint/types.js +0 -2
  188. package/dist/esm/src/endpoint/types.js.map +0 -1
  189. package/dist/esm/src/endpoint/withOptions.d.ts +0 -4
  190. package/dist/esm/src/endpoint/withOptions.d.ts.map +0 -1
  191. package/dist/esm/src/endpoint/withOptions.js +0 -19
  192. package/dist/esm/src/endpoint/withOptions.js.map +0 -1
  193. package/dist/esm/src/endpoint.d.ts +0 -108
  194. package/dist/esm/src/endpoint.d.ts.map +0 -1
  195. package/dist/esm/src/endpoint.js +0 -12
  196. package/dist/esm/src/endpoint.js.map +0 -1
  197. package/dist/esm/src/fetch.d.ts +0 -43
  198. package/dist/esm/src/fetch.d.ts.map +0 -1
  199. package/dist/esm/src/fetch.js.map +0 -1
  200. package/dist/esm/src/generated/version.d.ts +0 -2
  201. package/dist/esm/src/generated/version.d.ts.map +0 -1
  202. package/dist/esm/src/generated/version.js +0 -2
  203. package/dist/esm/src/generated/version.js.map +0 -1
  204. package/dist/esm/src/io.d.ts +0 -24
  205. package/dist/esm/src/io.d.ts.map +0 -1
  206. package/dist/esm/src/io.js +0 -73
  207. package/dist/esm/src/io.js.map +0 -1
  208. package/dist/esm/src/lambda.d.ts +0 -23
  209. package/dist/esm/src/lambda.d.ts.map +0 -1
  210. package/dist/esm/src/lambda.js +0 -37
  211. package/dist/esm/src/lambda.js.map +0 -1
  212. package/dist/esm/src/logging/console_logger_transport.d.ts +0 -5
  213. package/dist/esm/src/logging/console_logger_transport.d.ts.map +0 -1
  214. package/dist/esm/src/logging/console_logger_transport.js +0 -94
  215. package/dist/esm/src/logging/console_logger_transport.js.map +0 -1
  216. package/dist/esm/src/logging/logger.d.ts +0 -10
  217. package/dist/esm/src/logging/logger.d.ts.map +0 -1
  218. package/dist/esm/src/logging/logger.js +0 -57
  219. package/dist/esm/src/logging/logger.js.map +0 -1
  220. package/dist/esm/src/logging/logger_transport.d.ts +0 -52
  221. package/dist/esm/src/logging/logger_transport.d.ts.map +0 -1
  222. package/dist/esm/src/logging/logger_transport.js +0 -55
  223. package/dist/esm/src/logging/logger_transport.js.map +0 -1
  224. package/dist/esm/src/node.d.ts +0 -39
  225. package/dist/esm/src/node.d.ts.map +0 -1
  226. package/dist/esm/src/node.js +0 -52
  227. package/dist/esm/src/node.js.map +0 -1
  228. package/dist/esm/src/promises.d.ts +0 -111
  229. package/dist/esm/src/promises.d.ts.map +0 -1
  230. package/dist/esm/src/promises.js +0 -314
  231. package/dist/esm/src/promises.js.map +0 -1
  232. package/dist/esm/src/public_api.d.ts +0 -2
  233. package/dist/esm/src/public_api.d.ts.map +0 -1
  234. package/dist/esm/src/public_api.js +0 -12
  235. package/dist/esm/src/public_api.js.map +0 -1
  236. package/dist/esm/src/types/errors.d.ts +0 -74
  237. package/dist/esm/src/types/errors.d.ts.map +0 -1
  238. package/dist/esm/src/types/errors.js +0 -128
  239. package/dist/esm/src/types/errors.js.map +0 -1
  240. package/dist/esm/src/types/rpc.d.ts +0 -620
  241. package/dist/esm/src/types/rpc.d.ts.map +0 -1
  242. package/dist/esm/src/types/rpc.js +0 -577
  243. package/dist/esm/src/types/rpc.js.map +0 -1
  244. package/dist/esm/src/user_agent.d.ts +0 -2
  245. package/dist/esm/src/user_agent.d.ts.map +0 -1
  246. package/dist/esm/src/user_agent.js +0 -13
  247. package/dist/esm/src/user_agent.js.map +0 -1
  248. package/dist/esm/src/utils/completable_promise.d.ts +0 -9
  249. package/dist/esm/src/utils/completable_promise.d.ts.map +0 -1
  250. package/dist/esm/src/utils/completable_promise.js +0 -30
  251. package/dist/esm/src/utils/completable_promise.js.map +0 -1
  252. package/dist/esm/src/utils/rand.d.ts +0 -13
  253. package/dist/esm/src/utils/rand.d.ts.map +0 -1
  254. package/dist/esm/src/utils/rand.js +0 -109
  255. package/dist/esm/src/utils/rand.js.map +0 -1
  256. package/dist/esm/src/utils/streams.d.ts +0 -3
  257. package/dist/esm/src/utils/streams.d.ts.map +0 -1
  258. package/dist/esm/src/utils/streams.js +0 -20
  259. package/dist/esm/src/utils/streams.js.map +0 -1
  260. package/dist/esm/tsconfig.tsbuildinfo +0 -1
  261. /package/dist/{esm/src/endpoint → endpoint}/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +0 -0
  262. /package/dist/{esm/src/endpoint → endpoint}/handlers/vm/sdk_shared_core_wasm_bindings.js +0 -0
  263. /package/dist/{esm/src/endpoint → endpoint}/handlers/vm/sdk_shared_core_wasm_bindings_bg.js +0 -0
  264. /package/dist/{esm/src/endpoint → endpoint}/handlers/vm/sdk_shared_core_wasm_bindings_bg.wasm +0 -0
  265. /package/dist/{esm/src/endpoint → endpoint}/handlers/vm/sdk_shared_core_wasm_bindings_bg.wasm.d.ts +0 -0
@@ -1,39 +0,0 @@
1
- import type { JournalValueCodec, ServiceDefinition, VirtualObjectDefinition, WorkflowDefinition } from "@restatedev/restate-sdk-core";
2
- import type { Component } from "./components.js";
3
- import type * as discovery from "./discovery.js";
4
- import { type LoggerTransport } from "../logging/logger_transport.js";
5
- import type { Logger } from "../logging/logger.js";
6
- import type { DefaultServiceOptions } from "../endpoint.js";
7
- export type Endpoint = {
8
- loggerTransport: LoggerTransport;
9
- components: Map<string, Component>;
10
- keySet: string[];
11
- /**
12
- * This is a simple console without contextual info.
13
- *
14
- * This should be used only in cases where no contextual info is available.
15
- */
16
- rlog: Logger;
17
- /**
18
- * All discovery metadata, except protocol mode provided by the node/fetch/lambda endpoint implementations
19
- */
20
- discoveryMetadata: Omit<discovery.Endpoint, "protocolMode">;
21
- /**
22
- * Codec provider to use for journal values.
23
- */
24
- journalValueCodec?: Promise<JournalValueCodec>;
25
- };
26
- export declare class EndpointBuilder {
27
- private readonly serviceDefinitions;
28
- private loggerTransport;
29
- private keySet;
30
- private defaultServiceOptions;
31
- private journalValueCodecProvider?;
32
- bind<P extends string, M>(definition: ServiceDefinition<P, M> | VirtualObjectDefinition<P, M> | WorkflowDefinition<P, M>): void;
33
- addIdentityKeys(...keys: string[]): void;
34
- setDefaultServiceOptions(options: DefaultServiceOptions): void;
35
- setLogger(newLogger: LoggerTransport): void;
36
- setJournalValueCodecProvider(codecProvider: () => Promise<JournalValueCodec>): void;
37
- build(): Endpoint;
38
- }
39
- //# sourceMappingURL=endpoint.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"endpoint.d.ts","sourceRoot":"","sources":["../../../../src/endpoint/endpoint.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,8BAA8B,CAAC;AAQtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAMjD,OAAO,KAAK,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EACL,KAAK,eAAe,EAErB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AA8B5D,MAAM,MAAM,QAAQ,GAAG;IACrB,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACnC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAE5D;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAChD,CAAC;AAEF,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAKrB;IACd,OAAO,CAAC,eAAe,CAA2C;IAClE,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,qBAAqB,CAA6B;IAC1D,OAAO,CAAC,yBAAyB,CAAC,CAAmC;IAE9D,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAC7B,UAAU,EACN,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,GACvB,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;IAUvB,eAAe,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE;IAIjC,wBAAwB,CAAC,OAAO,EAAE,qBAAqB;IAIvD,SAAS,CAAC,SAAS,EAAE,eAAe;IAIpC,4BAA4B,CACjC,aAAa,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC;IAK1C,KAAK,IAAI,QAAQ;CAqEzB"}
@@ -1,155 +0,0 @@
1
- /*
2
- * Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
3
- *
4
- * This file is part of the Restate SDK for Node.js/TypeScript,
5
- * which is released under the MIT license.
6
- *
7
- * You can find a copy of the license in file LICENSE in the root
8
- * directory of this repository or package, or at
9
- * https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
10
- */
11
- import { HandlerWrapper } from "../types/rpc.js";
12
- import { ServiceComponent, VirtualObjectComponent, WorkflowComponent, } from "./components.js";
13
- import { defaultLoggerTransport } from "../logging/console_logger_transport.js";
14
- import { LogSource, } from "../logging/logger_transport.js";
15
- import { createLogger } from "../logging/logger.js";
16
- function isServiceDefinition(m) {
17
- return m && m.service !== undefined;
18
- }
19
- function isObjectDefinition(m) {
20
- return m && m.object !== undefined;
21
- }
22
- function isWorkflowDefinition(m) {
23
- return m && m.workflow !== undefined;
24
- }
25
- export class EndpointBuilder {
26
- serviceDefinitions = new Map();
27
- loggerTransport = defaultLoggerTransport;
28
- keySet = [];
29
- defaultServiceOptions = {};
30
- journalValueCodecProvider;
31
- bind(definition) {
32
- // Validate service name
33
- if (definition.name.indexOf("/") !== -1) {
34
- throw new Error("service name must not contain any slash '/'");
35
- }
36
- this.serviceDefinitions.set(definition.name, definition);
37
- }
38
- addIdentityKeys(...keys) {
39
- this.keySet.push(...keys);
40
- }
41
- setDefaultServiceOptions(options) {
42
- this.defaultServiceOptions = options;
43
- }
44
- setLogger(newLogger) {
45
- this.loggerTransport = newLogger;
46
- }
47
- setJournalValueCodecProvider(codecProvider) {
48
- this.journalValueCodecProvider = codecProvider;
49
- }
50
- build() {
51
- const rlog = createLogger(this.loggerTransport, LogSource.SYSTEM);
52
- // Build the components
53
- const components = new Map();
54
- for (const [name, definition] of this.serviceDefinitions) {
55
- if (isServiceDefinition(definition)) {
56
- const { name, service } = definition;
57
- if (!service) {
58
- throw new TypeError(`no service implementation found.`);
59
- }
60
- components.set(name, buildServiceComponent(name, service, definition, this.defaultServiceOptions));
61
- }
62
- else if (isObjectDefinition(definition)) {
63
- const { name, object } = definition;
64
- if (!object) {
65
- throw new TypeError(`no object implementation found.`);
66
- }
67
- components.set(name, buildVirtualObjectComponent(name, object, definition, this.defaultServiceOptions));
68
- }
69
- else if (isWorkflowDefinition(definition)) {
70
- const { name, workflow } = definition;
71
- if (!workflow) {
72
- throw new TypeError(`no workflow implementation found.`);
73
- }
74
- components.set(name, buildWorkflowComponent(name, workflow, definition, this.defaultServiceOptions));
75
- }
76
- else {
77
- throw new TypeError(`cannot bind ${name}, can only bind a service or a virtual object or a workflow definition`);
78
- }
79
- }
80
- // Compute discovery metadata
81
- const discoveryMetadata = computeDiscovery(components);
82
- return {
83
- keySet: this.keySet,
84
- loggerTransport: this.loggerTransport,
85
- rlog,
86
- components,
87
- discoveryMetadata,
88
- journalValueCodec: this.journalValueCodecProvider
89
- ? this.journalValueCodecProvider()
90
- : undefined,
91
- };
92
- }
93
- }
94
- function computeDiscovery(components) {
95
- return {
96
- minProtocolVersion: 5,
97
- maxProtocolVersion: 6,
98
- services: [...components.values()].map((c) => c.discovery()),
99
- };
100
- }
101
- function buildServiceComponent(name, router, definition, defaultServiceOptions) {
102
- if (name.indexOf("/") !== -1) {
103
- throw new Error("service name must not contain any slash '/'");
104
- }
105
- const component = new ServiceComponent(name, definition.description, definition.metadata, {
106
- ...defaultServiceOptions,
107
- ...definition?.options,
108
- });
109
- for (const [route, handler] of Object.entries(router)) {
110
- const wrapper = HandlerWrapper.fromHandler(handler);
111
- if (!wrapper) {
112
- throw new TypeError(`${route} is not a restate handler.`);
113
- }
114
- wrapper.bindInstance(router);
115
- component.add(route, wrapper);
116
- }
117
- return component;
118
- }
119
- function buildVirtualObjectComponent(name, router, definition, defaultServiceOptions) {
120
- if (name.indexOf("/") !== -1) {
121
- throw new Error("service name must not contain any slash '/'");
122
- }
123
- const component = new VirtualObjectComponent(name, definition.description, definition.metadata, {
124
- ...defaultServiceOptions,
125
- ...definition?.options,
126
- });
127
- for (const [route, handler] of Object.entries(router)) {
128
- const wrapper = HandlerWrapper.fromHandler(handler);
129
- if (!wrapper) {
130
- throw new TypeError(`${route} is not a restate handler.`);
131
- }
132
- wrapper.bindInstance(router);
133
- component.add(route, wrapper);
134
- }
135
- return component;
136
- }
137
- function buildWorkflowComponent(name, workflow, definition, defaultServiceOptions) {
138
- if (name.indexOf("/") !== -1) {
139
- throw new Error("service name must not contain any slash '/'");
140
- }
141
- const component = new WorkflowComponent(name, definition.description, definition.metadata, {
142
- ...defaultServiceOptions,
143
- ...definition?.options,
144
- });
145
- for (const [route, handler] of Object.entries(workflow)) {
146
- const wrapper = HandlerWrapper.fromHandler(handler);
147
- if (!wrapper) {
148
- throw new TypeError(`${route} is not a restate handler.`);
149
- }
150
- wrapper.bindInstance(workflow);
151
- component.add(route, wrapper);
152
- }
153
- return component;
154
- }
155
- //# sourceMappingURL=endpoint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../../src/endpoint/endpoint.ts"],"names":[],"mappings":"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"}
@@ -1,49 +0,0 @@
1
- import type { JournalValueCodec, ServiceDefinition, VirtualObjectDefinition, WorkflowDefinition } from "@restatedev/restate-sdk-core";
2
- import type { DefaultServiceOptions, RestateEndpointBase } from "../endpoint.js";
3
- import type { LoggerTransport } from "../logging/logger_transport.js";
4
- import type { ProtocolMode } from "./discovery.js";
5
- /**
6
- * Generic Fetch encapsulates all the Restate services served by this endpoint.
7
- *
8
- *
9
- * @example
10
- * A typical request-response handler would look like this:
11
- * ```
12
- * import * as restate from "@restatedev/restate-sdk/fetch";
13
- *
14
- * export default restate
15
- * .endpoint()
16
- * .bind(myService)
17
- * .handler();
18
- * @example
19
- * A typical bidirectional handler (works with http2 and some http1.1 servers) would look like this:
20
- * ```
21
- * import * as restate from "@restatedev/restate-sdk/fetch";
22
- *
23
- * export default restate
24
- * .endpoint()
25
- * .bidirectional()
26
- * .bind(myService)
27
- * .handler();
28
- */
29
- export interface FetchEndpoint extends RestateEndpointBase<FetchEndpoint> {
30
- handler(): {
31
- fetch: (request: Request, ...extraArgs: unknown[]) => Promise<Response>;
32
- };
33
- bidirectional(set?: boolean): FetchEndpoint;
34
- }
35
- export declare class FetchEndpointImpl implements FetchEndpoint {
36
- private protocolMode;
37
- constructor(protocolMode: ProtocolMode);
38
- private builder;
39
- bind<P extends string, M>(definition: ServiceDefinition<P, M> | VirtualObjectDefinition<P, M> | WorkflowDefinition<P, M>): FetchEndpoint;
40
- withIdentityV1(...keys: string[]): FetchEndpoint;
41
- defaultServiceOptions(options: DefaultServiceOptions): FetchEndpoint;
42
- setLogger(newLogger: LoggerTransport): FetchEndpoint;
43
- bidirectional(set?: boolean): FetchEndpoint;
44
- journalValueCodecProvider(codecProvider: () => Promise<JournalValueCodec>): FetchEndpoint;
45
- handler(): {
46
- fetch: (request: Request, ...extraArgs: unknown[]) => Promise<Response>;
47
- };
48
- }
49
- //# sourceMappingURL=fetch_endpoint.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fetch_endpoint.d.ts","sourceRoot":"","sources":["../../../../src/endpoint/fetch_endpoint.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,aAAc,SAAQ,mBAAmB,CAAC,aAAa,CAAC;IACvE,OAAO,IAAI;QACT,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;KACzE,CAAC;IACF,aAAa,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;CAC7C;AAED,qBAAa,iBAAkB,YAAW,aAAa;IACzC,OAAO,CAAC,YAAY;gBAAZ,YAAY,EAAE,YAAY;IAC9C,OAAO,CAAC,OAAO,CAA0C;IAElD,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAC7B,UAAU,EACN,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,GACvB,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,aAAa;IAKT,cAAc,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,aAAa;IAKhD,qBAAqB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa;IAKpE,SAAS,CAAC,SAAS,EAAE,eAAe,GAAG,aAAa;IAKpD,aAAa,CAAC,GAAG,GAAE,OAAc,GAAG,aAAa;IAKjD,yBAAyB,CAC9B,aAAa,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,GAC9C,aAAa;IAKhB,OAAO,IAAI;QACT,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;KACzE;CAQF"}
@@ -1,49 +0,0 @@
1
- /*
2
- * Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
3
- *
4
- * This file is part of the Restate SDK for Node.js/TypeScript,
5
- * which is released under the MIT license.
6
- *
7
- * You can find a copy of the license in file LICENSE in the root
8
- * directory of this repository or package, or at
9
- * https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
10
- */
11
- import { EndpointBuilder } from "./endpoint.js";
12
- import { GenericHandler } from "./handlers/generic.js";
13
- import { fetcher } from "./handlers/fetch.js";
14
- export class FetchEndpointImpl {
15
- protocolMode;
16
- constructor(protocolMode) {
17
- this.protocolMode = protocolMode;
18
- }
19
- builder = new EndpointBuilder();
20
- bind(definition) {
21
- this.builder.bind(definition);
22
- return this;
23
- }
24
- withIdentityV1(...keys) {
25
- this.builder.addIdentityKeys(...keys);
26
- return this;
27
- }
28
- defaultServiceOptions(options) {
29
- this.builder.setDefaultServiceOptions(options);
30
- return this;
31
- }
32
- setLogger(newLogger) {
33
- this.builder.setLogger(newLogger);
34
- return this;
35
- }
36
- bidirectional(set = true) {
37
- this.protocolMode = set ? "BIDI_STREAM" : "REQUEST_RESPONSE";
38
- return this;
39
- }
40
- journalValueCodecProvider(codecProvider) {
41
- this.builder.setJournalValueCodecProvider(codecProvider);
42
- return this;
43
- }
44
- handler() {
45
- const genericHandler = new GenericHandler(this.builder.build(), this.protocolMode, {});
46
- return fetcher(genericHandler);
47
- }
48
- }
49
- //# sourceMappingURL=fetch_endpoint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fetch_endpoint.js","sourceRoot":"","sources":["../../../../src/endpoint/fetch_endpoint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAKhD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAmC9C,MAAM,OAAO,iBAAiB;IACR;IAApB,YAAoB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAC1C,OAAO,GAAoB,IAAI,eAAe,EAAE,CAAC;IAElD,IAAI,CACT,UAG4B;QAE5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,cAAc,CAAC,GAAG,IAAc;QACrC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,qBAAqB,CAAC,OAA8B;QACzD,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,SAAS,CAAC,SAA0B;QACzC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,MAAe,IAAI;QACtC,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,kBAAkB,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,yBAAyB,CAC9B,aAA+C;QAE/C,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,aAAa,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QAGL,MAAM,cAAc,GAAG,IAAI,cAAc,CACvC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EACpB,IAAI,CAAC,YAAY,EACjB,EAAE,CACH,CAAC;QACF,OAAO,OAAO,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;CACF"}
@@ -1,5 +0,0 @@
1
- import type { GenericHandler } from "./generic.js";
2
- export declare function fetcher(handler: GenericHandler): {
3
- fetch: (event: Request, ...extraArgs: unknown[]) => Promise<Response>;
4
- };
5
- //# sourceMappingURL=fetch.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../src/endpoint/handlers/fetch.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,cAAc,CAAC;AAEnE,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc;mBAGlC,OAAO,gBACA,OAAO,EAAE,KACtB,OAAO,CAAC,QAAQ,CAAC;EAoBvB"}
@@ -1,31 +0,0 @@
1
- /*
2
- * Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
3
- *
4
- * This file is part of the Restate SDK for Node.js/TypeScript,
5
- * which is released under the MIT license.
6
- *
7
- * You can find a copy of the license in file LICENSE in the root
8
- * directory of this repository or package, or at
9
- * https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
10
- */
11
- export function fetcher(handler) {
12
- return {
13
- fetch: async (event, ...extraArgs) => {
14
- const url = event.url;
15
- const headers = Object.fromEntries(event.headers.entries());
16
- const request = {
17
- url,
18
- headers,
19
- body: event.body,
20
- extraArgs,
21
- abortSignal: event.signal,
22
- };
23
- const resp = await handler.handle(request);
24
- return new Response(resp.body, {
25
- status: resp.statusCode,
26
- headers: resp.headers,
27
- });
28
- },
29
- };
30
- }
31
- //# sourceMappingURL=fetch.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../../src/endpoint/handlers/fetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,MAAM,UAAU,OAAO,CAAC,OAAuB;IAC7C,OAAO;QACL,KAAK,EAAE,KAAK,EACV,KAAc,EACd,GAAG,SAAoB,EACJ,EAAE;YACrB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;YACtB,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YAE5D,MAAM,OAAO,GAAmB;gBAC9B,GAAG;gBACH,OAAO;gBACP,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,SAAS;gBACT,WAAW,EAAE,KAAK,CAAC,MAAM;aAC1B,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAE3C,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE;gBAC7B,MAAM,EAAE,IAAI,CAAC,UAAU;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,61 +0,0 @@
1
- import type { Endpoint as EndpointManifest, ProtocolMode } from "../discovery.js";
2
- import { type ReadableStream } from "node:stream/web";
3
- import * as vm from "./vm/sdk_shared_core_wasm_bindings.js";
4
- import { type Logger } from "../../logging/logger.js";
5
- import { type LoggerTransport } from "../../logging/logger_transport.js";
6
- import type { Endpoint } from "../endpoint.js";
7
- export interface Headers {
8
- [name: string]: string | string[] | undefined;
9
- }
10
- export interface ResponseHeaders {
11
- [name: string]: string;
12
- }
13
- export interface AdditionalContext {
14
- [name: string]: string;
15
- }
16
- export interface RestateRequest {
17
- readonly url: string;
18
- readonly headers: Headers;
19
- readonly body: ReadableStream<Uint8Array> | null;
20
- readonly extraArgs: unknown[];
21
- readonly abortSignal: AbortSignal;
22
- }
23
- export interface RestateResponse {
24
- readonly headers: ResponseHeaders;
25
- readonly statusCode: number;
26
- readonly body: ReadableStream<Uint8Array>;
27
- }
28
- export interface RestateHandler {
29
- handle(request: RestateRequest, context?: AdditionalContext): Promise<RestateResponse>;
30
- }
31
- export declare function tryCreateContextualLogger(loggerTransport: LoggerTransport, url: string, headers: Headers, additionalContext?: {
32
- [name: string]: string;
33
- }): Logger | undefined;
34
- /**
35
- * This is an internal API to support 'fetch' like handlers.
36
- * It supports both request-reply mode and bidirectional streaming mode.
37
- *
38
- * An individual handler will have to convert the shape of the incoming request
39
- * to a RestateRequest, and then pass it to this handler, and eventually convert back
40
- * the response.
41
- * Different runtimes have slightly different shapes of the incoming request, and responses.
42
- */
43
- export declare class GenericHandler implements RestateHandler {
44
- readonly endpoint: Endpoint;
45
- private readonly protocolMode;
46
- private readonly additionalDiscoveryFields;
47
- private readonly identityVerifier?;
48
- constructor(endpoint: Endpoint, protocolMode: ProtocolMode, additionalDiscoveryFields: Partial<EndpointManifest>);
49
- handle(request: RestateRequest, context?: AdditionalContext): Promise<RestateResponse>;
50
- private _handle;
51
- private validateConnectionSignature;
52
- private handleInvoke;
53
- private handleDiscovery;
54
- private toErrorResponse;
55
- }
56
- /**
57
- * The shared core propagates logs to the SDK invoking this method.
58
- * When possible it provides an invocationId, which is used to access the registered invocationLoggers, that should contain the logger per invocation id.
59
- */
60
- export declare function vm_log(level: vm.LogLevel, strBytes: Uint8Array, loggerId?: number): void;
61
- //# sourceMappingURL=generic.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generic.d.ts","sourceRoot":"","sources":["../../../../../src/endpoint/handlers/generic.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,QAAQ,IAAI,gBAAgB,EAC5B,YAAY,EACb,MAAM,iBAAiB,CAAC;AAIzB,OAAO,EAAE,KAAK,cAAc,EAAmB,MAAM,iBAAiB,CAAC;AAIvE,OAAO,KAAK,EAAE,MAAM,uCAAuC,CAAC;AAG5D,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAKpE,OAAO,EAEL,KAAK,eAAe,EAGrB,MAAM,mCAAmC,CAAC;AAK3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,OAAO;IACtB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IACjD,QAAQ,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,CACJ,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,eAAe,CAAC,CAAC;CAC7B;AAMD,wBAAgB,yBAAyB,CACvC,eAAe,EAAE,eAAe,EAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,OAAO,EAChB,iBAAiB,CAAC,EAAE;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAC7C,MAAM,GAAG,SAAS,CAuBpB;AAaD;;;;;;;;GAQG;AACH,qBAAa,cAAe,YAAW,cAAc;IAIjD,QAAQ,CAAC,QAAQ,EAAE,QAAQ;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,yBAAyB;IAL5C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAA0B;gBAGjD,QAAQ,EAAE,QAAQ,EACV,YAAY,EAAE,YAAY,EAC1B,yBAAyB,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAwB1D,MAAM,CACjB,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,eAAe,CAAC;YAqBb,OAAO;IAmErB,OAAO,CAAC,2BAA2B;YA4BrB,YAAY;IA+P1B,OAAO,CAAC,eAAe;IA8HvB,OAAO,CAAC,eAAe;CAUxB;AAMD;;;GAGG;AACH,wBAAgB,MAAM,CACpB,KAAK,EAAE,EAAE,CAAC,QAAQ,EAClB,QAAQ,EAAE,UAAU,EACpB,QAAQ,CAAC,EAAE,MAAM,QA6BlB"}