liminal 0.17.9 → 0.17.11

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 (178) hide show
  1. package/Ai.ts +7 -0
  2. package/Assets.ts +21 -0
  3. package/Binding.ts +40 -0
  4. package/CHANGELOG.md +14 -1
  5. package/D1.ts +8 -0
  6. package/DoState.ts +3 -0
  7. package/Hyperdrive.ts +11 -0
  8. package/Images.ts +101 -0
  9. package/Kv.ts +65 -0
  10. package/NativeRequest.ts +3 -0
  11. package/R2.ts +7 -0
  12. package/Worker.ts +54 -0
  13. package/WorkerLoader.ts +29 -0
  14. package/{Actor.ts → actor/Actor.ts} +2 -2
  15. package/actor/ActorRegistry.ts +361 -0
  16. package/{Audition.ts → actor/Audition.ts} +1 -1
  17. package/{Client.ts → actor/Client.ts} +2 -2
  18. package/{ClientDirectory.ts → actor/ClientDirectory.ts} +3 -3
  19. package/actor/index.ts +11 -0
  20. package/asset_forwarding.ts +13 -0
  21. package/commands/sync-env.ts +30 -0
  22. package/dist/Ai.d.ts +6 -0
  23. package/dist/Ai.js +6 -0
  24. package/dist/Ai.js.map +1 -0
  25. package/dist/Assets.d.ts +11 -0
  26. package/dist/Assets.js +14 -0
  27. package/dist/Assets.js.map +1 -0
  28. package/dist/Binding.d.ts +2 -0
  29. package/dist/Binding.js +19 -0
  30. package/dist/Binding.js.map +1 -0
  31. package/dist/D1.d.ts +7 -0
  32. package/dist/D1.js +7 -0
  33. package/dist/D1.js.map +1 -0
  34. package/dist/DoState.d.ts +5 -0
  35. package/dist/DoState.js +4 -0
  36. package/dist/DoState.js.map +1 -0
  37. package/dist/Hyperdrive.d.ts +7 -0
  38. package/dist/Hyperdrive.js +7 -0
  39. package/dist/Hyperdrive.js.map +1 -0
  40. package/dist/Images.d.ts +39 -0
  41. package/dist/Images.js +60 -0
  42. package/dist/Images.js.map +1 -0
  43. package/dist/Kv.d.ts +17 -0
  44. package/dist/Kv.js +32 -0
  45. package/dist/Kv.js.map +1 -0
  46. package/dist/NativeRequest.d.ts +5 -0
  47. package/dist/NativeRequest.js +4 -0
  48. package/dist/NativeRequest.js.map +1 -0
  49. package/dist/R2.d.ts +6 -0
  50. package/dist/R2.js +6 -0
  51. package/dist/R2.js.map +1 -0
  52. package/dist/Worker.d.ts +14 -0
  53. package/dist/Worker.js +25 -0
  54. package/dist/Worker.js.map +1 -0
  55. package/dist/WorkerLoader.d.ts +9 -0
  56. package/dist/WorkerLoader.js +22 -0
  57. package/dist/WorkerLoader.js.map +1 -0
  58. package/dist/{Actor.d.ts → actor/Actor.d.ts} +1 -1
  59. package/dist/{Actor.js → actor/Actor.js} +1 -1
  60. package/dist/actor/Actor.js.map +1 -0
  61. package/dist/actor/ActorRegistry.d.ts +23 -0
  62. package/dist/actor/ActorRegistry.js +153 -0
  63. package/dist/actor/ActorRegistry.js.map +1 -0
  64. package/dist/actor/ActorTransport.js.map +1 -0
  65. package/dist/{Audition.js → actor/Audition.js} +1 -1
  66. package/dist/actor/Audition.js.map +1 -0
  67. package/dist/{Client.js → actor/Client.js} +2 -2
  68. package/dist/actor/Client.js.map +1 -0
  69. package/dist/{ClientDirectory.d.ts → actor/ClientDirectory.d.ts} +1 -1
  70. package/dist/{ClientDirectory.js → actor/ClientDirectory.js} +2 -2
  71. package/dist/actor/ClientDirectory.js.map +1 -0
  72. package/dist/actor/ClientHandle.js.map +1 -0
  73. package/dist/actor/F.js.map +1 -0
  74. package/dist/actor/Method.js.map +1 -0
  75. package/dist/actor/Protocol.js.map +1 -0
  76. package/dist/actor/errors.js.map +1 -0
  77. package/dist/actor/index.d.ts +11 -0
  78. package/dist/actor/index.js +12 -0
  79. package/dist/actor/index.js.map +1 -0
  80. package/dist/asset_forwarding.d.ts +4 -0
  81. package/dist/asset_forwarding.js +9 -0
  82. package/dist/asset_forwarding.js.map +1 -0
  83. package/dist/commands/sync-env.d.ts +8 -0
  84. package/dist/commands/sync-env.js +32 -0
  85. package/dist/commands/sync-env.js.map +1 -0
  86. package/dist/index.d.ts +12 -11
  87. package/dist/index.js +12 -11
  88. package/dist/index.js.map +1 -1
  89. package/dist/main.d.ts +2 -0
  90. package/dist/main.js +10 -0
  91. package/dist/main.js.map +1 -0
  92. package/dist/package.json +51 -0
  93. package/dist/platform/KeyValueStore.d.ts +6 -0
  94. package/dist/platform/KeyValueStore.js +96 -0
  95. package/dist/platform/KeyValueStore.js.map +1 -0
  96. package/dist/platform/index.d.ts +1 -0
  97. package/dist/platform/index.js +2 -0
  98. package/dist/platform/index.js.map +1 -0
  99. package/dist/socket_util.d.ts +4 -0
  100. package/dist/socket_util.js +18 -0
  101. package/dist/socket_util.js.map +1 -0
  102. package/dist/tsconfig.tsbuildinfo +1 -1
  103. package/dist/{Accumulator.js → util/Accumulator.js} +1 -1
  104. package/dist/util/Accumulator.js.map +1 -0
  105. package/dist/util/Diagnostic.js.map +1 -0
  106. package/dist/util/Mutex.js.map +1 -0
  107. package/dist/util/boundLayer.js.map +1 -0
  108. package/dist/util/logCause.js.map +1 -0
  109. package/dist/util/phantom.js.map +1 -0
  110. package/dist/util/schema.js.map +1 -0
  111. package/index.ts +12 -11
  112. package/main.ts +19 -0
  113. package/package.json +23 -2
  114. package/platform/KeyValueStore.ts +112 -0
  115. package/platform/index.ts +1 -0
  116. package/socket_util.ts +20 -0
  117. package/tsconfig.json +3 -2
  118. package/{Accumulator.ts → util/Accumulator.ts} +1 -1
  119. package/_constants.ts +0 -1
  120. package/dist/Accumulator.js.map +0 -1
  121. package/dist/Actor.js.map +0 -1
  122. package/dist/ActorTransport.js.map +0 -1
  123. package/dist/Audition.js.map +0 -1
  124. package/dist/Client.js.map +0 -1
  125. package/dist/ClientDirectory.js.map +0 -1
  126. package/dist/ClientHandle.js.map +0 -1
  127. package/dist/F.js.map +0 -1
  128. package/dist/Method.js.map +0 -1
  129. package/dist/Protocol.js.map +0 -1
  130. package/dist/_constants.d.ts +0 -1
  131. package/dist/_constants.js +0 -2
  132. package/dist/_constants.js.map +0 -1
  133. package/dist/_util/Diagnostic.js.map +0 -1
  134. package/dist/_util/Mutex.js.map +0 -1
  135. package/dist/_util/boundLayer.js.map +0 -1
  136. package/dist/_util/logCause.js.map +0 -1
  137. package/dist/_util/phantom.js.map +0 -1
  138. package/dist/_util/schema.js.map +0 -1
  139. package/dist/errors.js.map +0 -1
  140. /package/{ActorTransport.ts → actor/ActorTransport.ts} +0 -0
  141. /package/{ClientHandle.ts → actor/ClientHandle.ts} +0 -0
  142. /package/{F.ts → actor/F.ts} +0 -0
  143. /package/{Method.ts → actor/Method.ts} +0 -0
  144. /package/{Protocol.ts → actor/Protocol.ts} +0 -0
  145. /package/{errors.ts → actor/errors.ts} +0 -0
  146. /package/dist/{ActorTransport.d.ts → actor/ActorTransport.d.ts} +0 -0
  147. /package/dist/{ActorTransport.js → actor/ActorTransport.js} +0 -0
  148. /package/dist/{Audition.d.ts → actor/Audition.d.ts} +0 -0
  149. /package/dist/{Client.d.ts → actor/Client.d.ts} +0 -0
  150. /package/dist/{ClientHandle.d.ts → actor/ClientHandle.d.ts} +0 -0
  151. /package/dist/{ClientHandle.js → actor/ClientHandle.js} +0 -0
  152. /package/dist/{F.d.ts → actor/F.d.ts} +0 -0
  153. /package/dist/{F.js → actor/F.js} +0 -0
  154. /package/dist/{Method.d.ts → actor/Method.d.ts} +0 -0
  155. /package/dist/{Method.js → actor/Method.js} +0 -0
  156. /package/dist/{Protocol.d.ts → actor/Protocol.d.ts} +0 -0
  157. /package/dist/{Protocol.js → actor/Protocol.js} +0 -0
  158. /package/dist/{errors.d.ts → actor/errors.d.ts} +0 -0
  159. /package/dist/{errors.js → actor/errors.js} +0 -0
  160. /package/dist/{Accumulator.d.ts → util/Accumulator.d.ts} +0 -0
  161. /package/dist/{_util → util}/Diagnostic.d.ts +0 -0
  162. /package/dist/{_util → util}/Diagnostic.js +0 -0
  163. /package/dist/{_util → util}/Mutex.d.ts +0 -0
  164. /package/dist/{_util → util}/Mutex.js +0 -0
  165. /package/dist/{_util → util}/boundLayer.d.ts +0 -0
  166. /package/dist/{_util → util}/boundLayer.js +0 -0
  167. /package/dist/{_util → util}/logCause.d.ts +0 -0
  168. /package/dist/{_util → util}/logCause.js +0 -0
  169. /package/dist/{_util → util}/phantom.d.ts +0 -0
  170. /package/dist/{_util → util}/phantom.js +0 -0
  171. /package/dist/{_util → util}/schema.d.ts +0 -0
  172. /package/dist/{_util → util}/schema.js +0 -0
  173. /package/{_util → util}/Diagnostic.ts +0 -0
  174. /package/{_util → util}/Mutex.ts +0 -0
  175. /package/{_util → util}/boundLayer.ts +0 -0
  176. /package/{_util → util}/logCause.ts +0 -0
  177. /package/{_util → util}/phantom.ts +0 -0
  178. /package/{_util → util}/schema.ts +0 -0
@@ -0,0 +1,12 @@
1
+ export * as Actor from "./Actor.js";
2
+ export * as ActorRegistry from "./ActorRegistry.js";
3
+ export * as Audition from "./Audition.js";
4
+ export * as Client from "./Client.js";
5
+ export * as ClientDirectory from "./ClientDirectory.js";
6
+ export * as ClientHandle from "./ClientHandle.js";
7
+ export * as Method from "./Method.js";
8
+ export * as Protocol from "./Protocol.js";
9
+ export * from "./ActorTransport.js";
10
+ export * from "./F.js";
11
+ export * from "./errors.js";
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../actor/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,QAAQ,CAAA;AACtB,cAAc,aAAa,CAAA"}
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ fetch: (request: Request, _env: unknown, ctx: globalThis.ExecutionContext) => Promise<Response>;
3
+ };
4
+ export default _default;
@@ -0,0 +1,9 @@
1
+ import { Effect, Layer } from "effect";
2
+ import { HttpServerResponse } from "effect/unstable/http";
3
+ import * as Assets from "./Assets.js";
4
+ import * as Worker from "./Worker.js";
5
+ export default Worker.make({
6
+ handler: Assets.forward.pipe(Effect.provide(Assets.layer("ASSETS")), Effect.catch(() => Effect.succeed(HttpServerResponse.empty({ status: 500 })))),
7
+ prelude: Layer.empty,
8
+ });
9
+ //# sourceMappingURL=asset_forwarding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset_forwarding.js","sourceRoot":"","sources":["../asset_forwarding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEzD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,eAAe,MAAM,CAAC,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAC1B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EACtC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAC9E;IACD,OAAO,EAAE,KAAK,CAAC,KAAK;CACrB,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { Config, Path } from "effect";
2
+ import { Command } from "effect/unstable/cli";
3
+ import { ChildProcessSpawner } from "effect/unstable/process";
4
+ export declare const syncEnv: Command.Command<"sync-env", {
5
+ readonly worker: string;
6
+ readonly configFile: string;
7
+ readonly configExport: string;
8
+ }, {}, import("effect/PlatformError").BadArgument | Config.ConfigError | import("effect/PlatformError").PlatformError | import("effect/Cause").UnknownError, ChildProcessSpawner.ChildProcessSpawner | Path.Path | import("effect/Scope").Scope>;
@@ -0,0 +1,32 @@
1
+ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
2
+ if (typeof path === "string" && /^\.\.?\//.test(path)) {
3
+ return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
4
+ return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
5
+ });
6
+ }
7
+ return path;
8
+ };
9
+ import { Config, Effect, Path, Redacted } from "effect";
10
+ import { Argument, Command } from "effect/unstable/cli";
11
+ import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process";
12
+ export const syncEnv = Command.make("sync-env", {
13
+ worker: Argument.directory("worker", { mustExist: true }),
14
+ configFile: Argument.file("config-file", { mustExist: true }),
15
+ configExport: Argument.string("config-export").pipe(Argument.withDefault("config")),
16
+ }).pipe(Command.withHandler(Effect.fn(function* ({ worker, configFile, configExport }) {
17
+ const path = yield* Path.Path;
18
+ const spawner = yield* ChildProcessSpawner.ChildProcessSpawner;
19
+ const url = yield* path.toFileUrl(path.resolve(configFile));
20
+ const module = yield* Effect.tryPromise(() => import(__rewriteRelativeImportExtension(url.href)));
21
+ const config = module[configExport];
22
+ const env = yield* config;
23
+ for (const [name, value] of Object.entries(env)) {
24
+ yield* spawner.spawn(ChildProcess.make({
25
+ stdout: "inherit",
26
+ stderr: "inherit",
27
+ cwd: worker,
28
+ }) `pnpm wrangler secret put ${name} ${Redacted.value(value)}`);
29
+ yield* Effect.log(`Synced ${name} to ${worker}.`);
30
+ }
31
+ })));
32
+ //# sourceMappingURL=sync-env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-env.js","sourceRoot":"","sources":["../../commands/sync-env.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAE3E,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE;IAC9C,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACzD,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC7D,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;CACpF,CAAC,CAAC,IAAI,CACL,OAAO,CAAC,WAAW,CACjB,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE;IACvD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;IAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC,mBAAmB,CAAA;IAC9D,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;IAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,kCAAC,GAAG,CAAC,IAAI,EAAC,CAAC,CAAA;IAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAA6D,CAAA;IAC/F,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAA;IACzB,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAChD,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAClB,YAAY,CAAC,IAAI,CAAC;YAChB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,SAAS;YACjB,GAAG,EAAE,MAAM;SACZ,CAAC,CAAA,4BAA4B,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAC9D,CAAA;QACD,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,IAAI,OAAO,MAAM,GAAG,CAAC,CAAA;IACnD,CAAC;AACH,CAAC,CAAC,CACH,CACF,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,11 +1,12 @@
1
- export * as Accumulator from "./Accumulator.ts";
2
- export * as Actor from "./Actor.ts";
3
- export * as Audition from "./Audition.ts";
4
- export * as Client from "./Client.ts";
5
- export * as ClientDirectory from "./ClientDirectory.ts";
6
- export * as ClientHandle from "./ClientHandle.ts";
7
- export * as Method from "./Method.ts";
8
- export * as Protocol from "./Protocol.ts";
9
- export * from "./ActorTransport.ts";
10
- export * from "./F.ts";
11
- export * from "./errors.ts";
1
+ export * as Ai from "./Ai.ts";
2
+ export * as Assets from "./Assets.ts";
3
+ export * as Binding from "./Binding.ts";
4
+ export * as D1 from "./D1.ts";
5
+ export * as DoState from "./DoState.ts";
6
+ export * as Hyperdrive from "./Hyperdrive.ts";
7
+ export * as Images from "./Images.ts";
8
+ export * as Kv from "./Kv.ts";
9
+ export * as NativeRequest from "./NativeRequest.ts";
10
+ export * as R2 from "./R2.ts";
11
+ export * as Worker from "./Worker.ts";
12
+ export * as WorkerLoader from "./WorkerLoader.ts";
package/dist/index.js CHANGED
@@ -1,12 +1,13 @@
1
- export * as Accumulator from "./Accumulator.js";
2
- export * as Actor from "./Actor.js";
3
- export * as Audition from "./Audition.js";
4
- export * as Client from "./Client.js";
5
- export * as ClientDirectory from "./ClientDirectory.js";
6
- export * as ClientHandle from "./ClientHandle.js";
7
- export * as Method from "./Method.js";
8
- export * as Protocol from "./Protocol.js";
9
- export * from "./ActorTransport.js";
10
- export * from "./F.js";
11
- export * from "./errors.js";
1
+ export * as Ai from "./Ai.js";
2
+ export * as Assets from "./Assets.js";
3
+ export * as Binding from "./Binding.js";
4
+ export * as D1 from "./D1.js";
5
+ export * as DoState from "./DoState.js";
6
+ export * as Hyperdrive from "./Hyperdrive.js";
7
+ export * as Images from "./Images.js";
8
+ export * as Kv from "./Kv.js";
9
+ export * as NativeRequest from "./NativeRequest.js";
10
+ export * as R2 from "./R2.js";
11
+ export * as Worker from "./Worker.js";
12
+ export * as WorkerLoader from "./WorkerLoader.js";
12
13
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,QAAQ,CAAA;AACtB,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA"}
package/dist/main.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
package/dist/main.js ADDED
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env node
2
+ import { NodeServices } from "@effect/platform-node";
3
+ import { Effect } from "effect";
4
+ import { Command } from "effect/unstable/cli";
5
+ import { FetchHttpClient } from "effect/unstable/http";
6
+ import { syncEnv } from "./commands/sync-env.js";
7
+ import PackageJson from "./package.json" with { type: "json" };
8
+ import { logCause } from "./util/logCause.js";
9
+ Command.make("liminal").pipe(Command.withSubcommands([syncEnv]), Command.run({ version: PackageJson.version }), Effect.scoped, Effect.provide([NodeServices.layer, FetchHttpClient.layer]), Effect.tapCause(logCause), Effect.runFork);
10
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../main.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,WAAW,MAAM,gBAAgB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAE7C,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAC1B,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,EAClC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,EAC7C,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,EAC3D,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EACzB,MAAM,CAAC,OAAO,CACf,CAAA"}
@@ -0,0 +1,51 @@
1
+ {
2
+ "name": "liminal",
3
+ "version": "0.17.11",
4
+ "description": "Effect x Cloudflare",
5
+ "bugs": {
6
+ "url": "https://github.com/crosshatch/liminal/issues"
7
+ },
8
+ "license": "Apache-2.0",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/crosshatch/liminal.git",
12
+ "directory": "liminal"
13
+ },
14
+ "bin": {
15
+ "liminal": "./dist/main.js"
16
+ },
17
+ "type": "module",
18
+ "sideEffects": false,
19
+ "exports": {
20
+ ".": {
21
+ "types": "./index.ts",
22
+ "default": "./dist/index.js"
23
+ },
24
+ "./*": {
25
+ "types": "./*.ts",
26
+ "default": "./dist/*.js"
27
+ },
28
+ "./actor": {
29
+ "types": "./actor/index.ts",
30
+ "default": "./dist/actor/index.js"
31
+ },
32
+ "./experimental": {
33
+ "types": "./experimental/index.ts",
34
+ "default": "./dist/experimental/index.js"
35
+ },
36
+ "./platform": {
37
+ "types": "./platform/index.ts",
38
+ "default": "./dist/platform/index.js"
39
+ },
40
+ "./util/*": {
41
+ "types": "./util/*.ts",
42
+ "default": "./dist/util/*.js"
43
+ },
44
+ "./package.json": "./package.json"
45
+ },
46
+ "peerDependencies": {
47
+ "@cloudflare/workers-types": "catalog:",
48
+ "@effect/sql-d1": "catalog:",
49
+ "effect": "catalog:"
50
+ }
51
+ }
@@ -0,0 +1,6 @@
1
+ import { Layer } from "effect";
2
+ import { KeyValueStore } from "effect/unstable/persistence";
3
+ import { R2 } from "../R2.ts";
4
+ export declare const layerR2: ({ root }?: {
5
+ readonly root?: string | undefined;
6
+ }) => Layer.Layer<KeyValueStore.KeyValueStore, never, R2>;
@@ -0,0 +1,96 @@
1
+ import { Effect, Layer } from "effect";
2
+ import { KeyValueStore } from "effect/unstable/persistence";
3
+ import { R2 } from "../R2.js";
4
+ export const layerR2 = ({ root } = {}) => {
5
+ const prefix = root === undefined ? "" : root.endsWith("/") ? root : `${root}/`;
6
+ const toKey = (key) => `${prefix}${key}`;
7
+ const lsOptions = (cursor) => cursor
8
+ ? prefix
9
+ ? { cursor, limit: 1000, prefix }
10
+ : { cursor, limit: 1000 }
11
+ : prefix
12
+ ? { limit: 1000, prefix }
13
+ : { limit: 1000 };
14
+ return Layer.effect(KeyValueStore.KeyValueStore, Effect.gen(function* () {
15
+ const r2 = yield* R2;
16
+ return KeyValueStore.make({
17
+ get: (key) => Effect.tryPromise({
18
+ try: async () => {
19
+ const object = await r2.get(toKey(key));
20
+ return object === null ? undefined : await object.text();
21
+ },
22
+ catch: (cause) => new KeyValueStore.KeyValueStoreError({
23
+ method: "get",
24
+ key,
25
+ message: `Unable to get item with key ${key}`,
26
+ cause,
27
+ }),
28
+ }),
29
+ getUint8Array: (key) => Effect.tryPromise({
30
+ try: async () => {
31
+ const object = await r2.get(toKey(key));
32
+ return object === null ? undefined : new Uint8Array(await object.arrayBuffer());
33
+ },
34
+ catch: (cause) => new KeyValueStore.KeyValueStoreError({
35
+ method: "getUint8Array",
36
+ key,
37
+ message: `Unable to get item with key ${key}`,
38
+ cause,
39
+ }),
40
+ }),
41
+ set: (key, value) => Effect.tryPromise({
42
+ try: () => r2.put(toKey(key), value),
43
+ catch: (cause) => new KeyValueStore.KeyValueStoreError({
44
+ method: "set",
45
+ key,
46
+ message: `Unable to set item with key ${key}`,
47
+ cause,
48
+ }),
49
+ }).pipe(Effect.asVoid),
50
+ remove: (key) => Effect.tryPromise({
51
+ try: () => r2.delete(toKey(key)),
52
+ catch: (cause) => new KeyValueStore.KeyValueStoreError({
53
+ method: "remove",
54
+ key,
55
+ message: `Unable to remove item with key ${key}`,
56
+ cause,
57
+ }),
58
+ }),
59
+ clear: Effect.tryPromise({
60
+ try: async () => {
61
+ let cursor;
62
+ do {
63
+ const listed = await r2.list(lsOptions(cursor));
64
+ if (listed.objects.length > 0) {
65
+ await r2.delete(listed.objects.map((o) => o.key));
66
+ }
67
+ cursor = listed.truncated ? listed.cursor : undefined;
68
+ } while (cursor);
69
+ },
70
+ catch: (cause) => new KeyValueStore.KeyValueStoreError({
71
+ method: "clear",
72
+ message: `Unable to clear storage`,
73
+ cause,
74
+ }),
75
+ }),
76
+ size: Effect.tryPromise({
77
+ try: async () => {
78
+ let total = 0;
79
+ let cursor;
80
+ do {
81
+ const listed = await r2.list(lsOptions(cursor));
82
+ total += listed.objects.length;
83
+ cursor = listed.truncated ? listed.cursor : undefined;
84
+ } while (cursor);
85
+ return total;
86
+ },
87
+ catch: (cause) => new KeyValueStore.KeyValueStoreError({
88
+ method: "size",
89
+ message: `Unable to get size`,
90
+ cause,
91
+ }),
92
+ }),
93
+ });
94
+ }));
95
+ };
96
+ //# sourceMappingURL=KeyValueStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeyValueStore.js","sourceRoot":"","sources":["../../platform/KeyValueStore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * as KeyValueStore from "./KeyValueStore.ts";
@@ -0,0 +1,2 @@
1
+ export * as KeyValueStore from "./KeyValueStore.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../platform/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { HttpServerResponse } from "effect/unstable/http";
2
+ export declare const SecWebSocketProtocol: "Sec-WebSocket-Protocol";
3
+ export declare const closeRaw: (event?: string | undefined) => Response;
4
+ export declare const close: (event?: string | undefined) => HttpServerResponse.HttpServerResponse;
@@ -0,0 +1,18 @@
1
+ import { flow } from "effect";
2
+ import { HttpServerResponse } from "effect/unstable/http";
3
+ export const SecWebSocketProtocol = "Sec-WebSocket-Protocol";
4
+ export const closeRaw = (event) => {
5
+ const { 0: webSocket, 1: server } = new WebSocketPair();
6
+ server.accept();
7
+ if (event) {
8
+ server.send(event);
9
+ }
10
+ server.close(1000);
11
+ return new Response(null, {
12
+ status: 101,
13
+ webSocket,
14
+ headers: { [SecWebSocketProtocol]: "liminal" },
15
+ });
16
+ };
17
+ export const close = flow(closeRaw, HttpServerResponse.raw);
18
+ //# sourceMappingURL=socket_util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socket_util.js","sourceRoot":"","sources":["../socket_util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,CAAC,MAAM,oBAAoB,GAAG,wBAAiC,CAAA;AAErE,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAA0B,EAAE,EAAE;IACrD,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,aAAa,EAAE,CAAA;IACvD,MAAM,CAAC,MAAM,EAAE,CAAA;IACf,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACpB,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAClB,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;QACxB,MAAM,EAAE,GAAG;QACX,SAAS;QACT,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE;KAC/C,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAA"}