durable-actors 0.4.2 → 0.4.3

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 (55) hide show
  1. package/dist/cli/dev.d.ts +2 -0
  2. package/dist/cli/dev.d.ts.map +1 -1
  3. package/dist/cli/dev.js +1 -1
  4. package/dist/cli/dev.js.map +1 -1
  5. package/dist/cli/generate.d.ts.map +1 -1
  6. package/dist/cli/generate.js +4 -4
  7. package/dist/cli/generate.js.map +1 -1
  8. package/dist/compiler/actor-compiler.d.ts +5 -3
  9. package/dist/compiler/actor-compiler.d.ts.map +1 -1
  10. package/dist/compiler/actor-compiler.js +10 -3
  11. package/dist/compiler/actor-compiler.js.map +1 -1
  12. package/dist/compiler/declarations.d.ts +11 -0
  13. package/dist/compiler/declarations.d.ts.map +1 -0
  14. package/dist/compiler/declarations.js +218 -0
  15. package/dist/compiler/declarations.js.map +1 -0
  16. package/dist/compiler/generators/backend-generator.d.ts +1 -2
  17. package/dist/compiler/generators/backend-generator.d.ts.map +1 -1
  18. package/dist/compiler/generators/backend-generator.js +8 -119
  19. package/dist/compiler/generators/backend-generator.js.map +1 -1
  20. package/dist/compiler/generators/client-artifacts.d.ts +6 -0
  21. package/dist/compiler/generators/client-artifacts.d.ts.map +1 -0
  22. package/dist/compiler/generators/client-artifacts.js +94 -0
  23. package/dist/compiler/generators/client-artifacts.js.map +1 -0
  24. package/dist/compiler/generators/client-generator.d.ts +1 -2
  25. package/dist/compiler/generators/client-generator.d.ts.map +1 -1
  26. package/dist/compiler/generators/client-generator.js +2 -2
  27. package/dist/compiler/generators/client-generator.js.map +1 -1
  28. package/dist/compiler/json-schema.d.ts.map +1 -1
  29. package/dist/compiler/json-schema.js +84 -25
  30. package/dist/compiler/json-schema.js.map +1 -1
  31. package/dist/compiler/validate-public-contract.d.ts.map +1 -1
  32. package/dist/compiler/validate-public-contract.js +4 -0
  33. package/dist/compiler/validate-public-contract.js.map +1 -1
  34. package/dist/generated/client-runtime.d.ts.map +1 -1
  35. package/dist/generated/client-runtime.js +1 -1
  36. package/dist/generated/client-runtime.js.map +1 -1
  37. package/dist/localRuntime.d.ts +3 -1
  38. package/dist/localRuntime.d.ts.map +1 -1
  39. package/dist/localRuntime.js +2 -1
  40. package/dist/localRuntime.js.map +1 -1
  41. package/dist/projectSdk.d.ts +1 -1
  42. package/dist/projectSdk.d.ts.map +1 -1
  43. package/dist/projectSdk.js +2 -2
  44. package/dist/projectSdk.js.map +1 -1
  45. package/dist/templates/actor/package.json +1 -1
  46. package/dist/templates/ai-chat/package.json +1 -1
  47. package/dist/templates/chat/package.json +1 -1
  48. package/dist/templates/documents/package.json +1 -1
  49. package/dist/wire/public-contract.d.ts +6 -1
  50. package/dist/wire/public-contract.d.ts.map +1 -1
  51. package/package.json +6 -6
  52. package/dist/compiler/generators/typescript-generator.d.ts +0 -8
  53. package/dist/compiler/generators/typescript-generator.d.ts.map +0 -1
  54. package/dist/compiler/generators/typescript-generator.js +0 -157
  55. package/dist/compiler/generators/typescript-generator.js.map +0 -1
package/dist/cli/dev.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  import { Command } from "commander";
2
2
  interface DevOptions {
3
+ /** Module URL from which to resolve the SDK dependency when embedded in a wrapper. */
4
+ sdkResolveFrom?: string;
3
5
  projectId: string;
4
6
  apiKey?: string;
5
7
  port: number;
@@ -1 +1 @@
1
- {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/cli/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAA;AAejE,UAAU,UAAU;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,GAAG,KAAK,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;CACjB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwBzD;AA+BD,iBAAe,MAAM,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAK1D;AA2GD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,EAAE,CAAA"}
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/cli/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAA;AAejE,UAAU,UAAU;IAChB,sFAAsF;IACtF,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,GAAG,KAAK,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;CACjB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwBzD;AA+BD,iBAAe,MAAM,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAK1D;AA2GD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,EAAE,CAAA"}
package/dist/cli/dev.js CHANGED
@@ -58,7 +58,7 @@ const developmentEnvironment = z.object({
58
58
  });
59
59
  async function runDev(options) {
60
60
  const project = await developmentProject(options);
61
- const local = await projectSdkModule(project, "./cli/dev.js", import.meta.url);
61
+ const local = await projectSdkModule(project, "./cli/dev.js", import.meta.url, options.sdkResolveFrom);
62
62
  if (local !== undefined)
63
63
  return (await import(local)).runDev({ ...options, project });
64
64
  return runDevRuntime(options, project);
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/cli/dev.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/cli/dev.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAcnC,iBAAS,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAUvD;AA4CD,OAAO,EAAE,uBAAuB,EAAE,CAAA"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAanC,iBAAS,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAUvD;AA+CD,OAAO,EAAE,uBAAuB,EAAE,CAAA"}
@@ -1,4 +1,3 @@
1
- import { rm } from "node:fs/promises";
2
1
  import path from "node:path";
3
2
  import { z } from "zod";
4
3
  import { connectionHelp } from "./connection.js";
@@ -8,7 +7,7 @@ function registerGenerateCommand(program) {
8
7
  .command("generate")
9
8
  .argument("[entrypoint]", "actor source file to compile instead of fetching from the server")
10
9
  .description("Generate actor clients from the running server or an explicit source file")
11
- .option("--out-dir <directory>", "generated source directory", "generated")
10
+ .option("--out-dir <directory>", "generated JavaScript and declaration directory", "generated")
12
11
  .option("--config <file>", "TypeScript configuration file (local source only)")
13
12
  .option("--control-plane-url <url>", "control-plane origin (overrides DURABLE_ACTORS_CONTROL_PLANE_URL)")
14
13
  .addHelpText("after", connectionHelp)
@@ -22,9 +21,10 @@ async function generate(entrypoint, options) {
22
21
  : await remoteContract(options.controlPlaneUrl);
23
22
  const directory = path.resolve(options.outDir);
24
23
  await generateClient(contract, directory);
25
- for (const obsolete of ["contract.json", "contract-source.json"])
26
- await rm(path.join(directory, obsolete), { force: true });
27
24
  console.log(`Generated ${contract.actors.length} actor contract(s) in ${directory}.`);
25
+ const dependencies = Object.entries(contract.typescript.dependencies);
26
+ if (dependencies.length)
27
+ console.log(`Type dependencies: ${dependencies.map(([name, version]) => `${name}@${version}`).join(", ")}. Install compatible versions in the calling project.`);
28
28
  }
29
29
  function validateOptions(entrypoint, options) {
30
30
  if (entrypoint && options.controlPlaneUrl !== undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAA;AACrC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAQ7D,SAAS,uBAAuB,CAAC,OAAgB;IAC7C,OAAO;SACF,OAAO,CAAC,UAAU,CAAC;SACnB,QAAQ,CAAC,cAAc,EAAE,kEAAkE,CAAC;SAC5F,WAAW,CAAC,2EAA2E,CAAC;SACxF,MAAM,CAAC,uBAAuB,EAAE,4BAA4B,EAAE,WAAW,CAAC;SAC1E,MAAM,CAAC,iBAAiB,EAAE,mDAAmD,CAAC;SAC9E,MAAM,CAAC,2BAA2B,EAAE,mEAAmE,CAAC;SACxG,WAAW,CAAC,OAAO,EAAE,cAAc,CAAC;SACpC,MAAM,CAAC,QAAQ,CAAC,CAAA;AACzB,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,UAA8B,EAAE,OAAwB;IAC5E,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IACpC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,4CAA4C,CAAC,CAAA;IACrF,MAAM,QAAQ,GAAG,UAAU;QACvB,CAAC,CAAC,MAAM,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;QACjD,CAAC,CAAC,MAAM,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAC9C,MAAM,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IACzC,KAAK,MAAM,QAAQ,IAAI,CAAC,eAAe,EAAE,sBAAsB,CAAC;QAC5D,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7D,OAAO,CAAC,GAAG,CAAC,aAAa,QAAQ,CAAC,MAAM,CAAC,MAAM,yBAAyB,SAAS,GAAG,CAAC,CAAA;AACzF,CAAC;AAED,SAAS,eAAe,CAAC,UAA8B,EAAE,OAAwB;IAC7E,IAAI,UAAU,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS;QACnD,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;IACvF,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;AAChG,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,UAAkB,EAAE,UAAmB;IAChE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAA;IACvE,OAAO,IAAI,aAAa,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;AAC1E,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,eAAwB;IAClD,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,yCAAyC,CAAC,CAAA;IACvF,MAAM,MAAM,GAAG,wBAAwB,CACnC;QACI,GAAG,OAAO,CAAC,GAAG;QACd,gCAAgC,EAAE,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,gCAAgC;KACpG,EACD,KAAK,CACR,CAAA;IACD,MAAM,WAAW,GAAG,iBAAiB,CAAC,KAAK,CAAC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;IACvE,OAAO,mBAAmB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;AACpD,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,CAAC,YAAY,CAAC;IACrC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,wBAAwB,CAAC;IACxD,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;CACxB,CAAC,CAAA;AAEF,OAAO,EAAE,uBAAuB,EAAE,CAAA"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,15 @@
1
1
  import ts from "typescript";
2
2
  import type { PublicActorContract } from "../wire/public-contract.js";
3
+ import { DeclarationCompiler } from "./declarations.js";
3
4
  import { Persistence } from "./types.js";
4
5
  import type { ActorAnalysis, ActorSchema, CompilerOptions, SdkSymbols } from "./types.js";
5
6
  declare class ActorCompiler {
6
7
  private readonly system;
7
- constructor(system?: ts.System);
8
+ private readonly declarations;
9
+ constructor(system?: ts.System, declarations?: Pick<DeclarationCompiler, "compile">);
8
10
  check(entrypoint: string, options?: CompilerOptions): readonly ActorSchema[];
9
11
  compile(entrypoint: string, options?: CompilerOptions): {
10
- contract: import("./generators/typescript-generator.js").SocketContract;
12
+ contract: import("../wire/contract.js").SocketContract;
11
13
  actorName: string;
12
14
  fields: readonly import("./types.js").ActorFieldSchema[];
13
15
  reentrantMethods?: readonly string[];
@@ -15,7 +17,7 @@ declare class ActorCompiler {
15
17
  compileContract(entrypoint: string, options?: CompilerOptions): PublicActorContract;
16
18
  compileDeployment(entrypoint: string, options?: CompilerOptions): {
17
19
  schemas: {
18
- contract: import("./generators/typescript-generator.js").SocketContract;
20
+ contract: import("../wire/contract.js").SocketContract;
19
21
  actorName: string;
20
22
  fields: readonly import("./types.js").ActorFieldSchema[];
21
23
  reentrantMethods?: readonly string[];
@@ -1 +1 @@
1
- {"version":3,"file":"actor-compiler.d.ts","sourceRoot":"","sources":["../../src/compiler/actor-compiler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,YAAY,CAAA;AAI3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAOrE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,EACR,aAAa,EACb,WAAW,EAEX,eAAe,EAIf,UAAU,EACb,MAAM,YAAY,CAAA;AAEnB,cAAM,aAAa;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,GAAE,EAAE,CAAC,MAAe;IAEvD,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;IAIvD,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;;;;;;IAIzD,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,mBAAmB;IAIvF,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;;;;;;;;;;IA6BnE,OAAO,CAAC,QAAQ;IAmBhB,OAAO,CAAC,OAAO;IAiBf,OAAO,CAAC,IAAI;IAcZ,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,wBAAwB;CAanC;AAED,iBAAS,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,aAAa,CAKrG;AA2HD,iBAAS,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,GAAG,UAAU,CAgBrF;AAWD,iBAAS,oBAAoB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,SAAS,EAAE,CAAC,IAAI,EAAO,GAAG,EAAE,CAAC,UAAU,CAgBjH;AAED,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,oBAAoB,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAA;AAC7F,YAAY,EAAE,eAAe,EAAE,CAAA;AAC/B,YAAY,EACR,QAAQ,EACR,aAAa,EACb,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,YAAY,EACf,MAAM,4BAA4B,CAAA"}
1
+ {"version":3,"file":"actor-compiler.d.ts","sourceRoot":"","sources":["../../src/compiler/actor-compiler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,YAAY,CAAA;AAI3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAErE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAMvD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,EACR,aAAa,EACb,WAAW,EAEX,eAAe,EAIf,UAAU,EACb,MAAM,YAAY,CAAA;AAEnB,cAAM,aAAa;IAEX,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,MAAM,GAAE,EAAE,CAAC,MAAe,EAC1B,YAAY,GAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAmC;IAGzG,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;IAIvD,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;;;;;;IAIzD,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,mBAAmB;IAIvF,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;;;;;;;;;;IAiCnE,OAAO,CAAC,QAAQ;IAmBhB,OAAO,CAAC,OAAO;IAiBf,OAAO,CAAC,IAAI;IAcZ,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,wBAAwB;CAanC;AAED,iBAAS,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,aAAa,CAKrG;AA2HD,iBAAS,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,GAAG,UAAU,CAgBrF;AAWD,iBAAS,oBAAoB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,SAAS,EAAE,CAAC,IAAI,EAAO,GAAG,EAAE,CAAC,UAAU,CAgBjH;AAED,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,oBAAoB,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAA;AAC7F,YAAY,EAAE,eAAe,EAAE,CAAA;AAC/B,YAAY,EACR,QAAQ,EACR,aAAa,EACb,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,YAAY,EACf,MAAM,4BAA4B,CAAA"}
@@ -3,6 +3,7 @@ import { fileURLToPath } from "node:url";
3
3
  import ts from "typescript";
4
4
  import { validateActorComponent } from "../actor/identity.js";
5
5
  import { ActorDefinitionError } from "../errors.js";
6
+ import { DeclarationCompiler } from "./declarations.js";
6
7
  import { readEmission, readPersistence, validatePersistence } from "./features/persistence.js";
7
8
  import { readReentrancy, validateReentrancy } from "./features/reentrancy.js";
8
9
  import { extractPublicSchema } from "./public-schema.js";
@@ -11,8 +12,10 @@ import { socketContract } from "./socket-contract.js";
11
12
  import { Persistence } from "./types.js";
12
13
  class ActorCompiler {
13
14
  system;
14
- constructor(system = ts.sys) {
15
+ declarations;
16
+ constructor(system = ts.sys, declarations = new DeclarationCompiler(system)) {
15
17
  this.system = system;
18
+ this.declarations = declarations;
16
19
  }
17
20
  check(entrypoint, options = {}) {
18
21
  return this.analyze(entrypoint, options).schemas;
@@ -25,8 +28,7 @@ class ActorCompiler {
25
28
  }
26
29
  compileDeployment(entrypoint, options = {}) {
27
30
  const { checker, actors, schemas, program } = this.describe(entrypoint, options);
28
- const contract = {
29
- version: 1,
31
+ const api = {
30
32
  actors: [...schemas]
31
33
  .sort((left, right) => left.actorName < right.actorName ? -1 : left.actorName > right.actorName ? 1 : 0)
32
34
  .map(schema => ({
@@ -43,6 +45,11 @@ class ActorCompiler {
43
45
  rpc: rpcContract(checker, actors.find(actor => actor.name.text === schema.actorName))
44
46
  }))
45
47
  };
48
+ const contract = {
49
+ ...api,
50
+ version: 1,
51
+ typescript: this.declarations.compile(program, actors, api.actors)
52
+ };
46
53
  const sources = new Map(program.getSourceFiles().map(file => [file.fileName, file.text]));
47
54
  return { schemas, contract, sources };
48
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"actor-compiler.js","sourceRoot":"","sources":["../../src/compiler/actor-compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actor-compiler.js","sourceRoot":"","sources":["../../src/compiler/actor-compiler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import ts from "typescript";
2
+ import type { ActorApi, TypeScriptContract } from "../wire/public-contract.js";
3
+ declare class DeclarationCompiler {
4
+ private readonly system;
5
+ constructor(system?: ts.System);
6
+ compile(program: ts.Program, actors: readonly ts.ClassDeclaration[], contracts: readonly ActorApi[]): TypeScriptContract;
7
+ private bundle;
8
+ private writeActors;
9
+ }
10
+ export { DeclarationCompiler };
11
+ //# sourceMappingURL=declarations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"declarations.d.ts","sourceRoot":"","sources":["../../src/compiler/declarations.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,YAAY,CAAA;AAG3B,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAE9E,cAAM,mBAAmB;IACT,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,GAAE,EAAE,CAAC,MAAe;IAEvD,OAAO,CACH,OAAO,EAAE,EAAE,CAAC,OAAO,EACnB,MAAM,EAAE,SAAS,EAAE,CAAC,gBAAgB,EAAE,EACtC,SAAS,EAAE,SAAS,QAAQ,EAAE,GAC/B,kBAAkB;IASrB,OAAO,CAAC,MAAM;IAiCd,OAAO,CAAC,WAAW;CA+BtB;AAmPD,OAAO,EAAE,mBAAmB,EAAE,CAAA"}
@@ -0,0 +1,218 @@
1
+ import { generateDtsBundle } from "dts-bundle-generator";
2
+ import { mkdirSync, mkdtempSync, rmSync, symlinkSync, writeFileSync } from "node:fs";
3
+ import os from "node:os";
4
+ import path from "node:path";
5
+ import ts from "typescript";
6
+ import { ActorDefinitionError } from "../errors.js";
7
+ class DeclarationCompiler {
8
+ system;
9
+ constructor(system = ts.sys) {
10
+ this.system = system;
11
+ }
12
+ compile(program, actors, contracts) {
13
+ const directory = mkdtempSync(path.join(os.tmpdir(), "actor-declarations-"));
14
+ try {
15
+ return this.bundle(directory, program, actors, contracts);
16
+ }
17
+ finally {
18
+ rmSync(directory, { recursive: true, force: true });
19
+ }
20
+ }
21
+ bundle(directory, program, actors, contracts) {
22
+ const packages = new Map();
23
+ const entry = this.writeActors(directory, program, actors, contracts, packages);
24
+ const config = writeBundleConfig(directory, program.getCompilerOptions(), packages);
25
+ const [declarations] = generateDtsBundle([
26
+ {
27
+ filePath: entry,
28
+ libraries: { inlinedLibraries: ["durable-actors"] },
29
+ output: { noBanner: true, exportReferencedTypes: false, sortNodes: true }
30
+ }
31
+ ], { preferredConfigPath: config });
32
+ const dependencies = Object.fromEntries(externalModules(declarations)
33
+ .map(specifier => {
34
+ const name = packageName(specifier);
35
+ const pkg = packages.get(name) ??
36
+ findPackage(specifier, program.getRootFileNames()[0], program.getCompilerOptions(), this.system);
37
+ return [name, pkg.version];
38
+ })
39
+ .sort(([left], [right]) => left.localeCompare(right)));
40
+ return { declarations, dependencies };
41
+ }
42
+ writeActors(directory, program, actors, contracts, packages) {
43
+ const files = emitDeclarations(program, this.system);
44
+ const imports = [];
45
+ const properties = [];
46
+ for (const [index, contract] of contracts.entries()) {
47
+ const actor = actors.find(actor => actor.name.text === contract.actorName);
48
+ const source = actor.getSourceFile();
49
+ const emitted = files.get(source.fileName);
50
+ const projected = projectActor(emitted, actor, contract, program.getTypeChecker());
51
+ const file = path.join(directory, `actor-${index}.d.ts`);
52
+ const code = resolveImports(projected.code, source.fileName, program.getCompilerOptions(), this.system, packages);
53
+ writeFileSync(file, code);
54
+ imports.push(`import type { ${projected.name} as Actor${index} } from "./actor-${index}.js"`);
55
+ properties.push(`${JSON.stringify(contract.actorName)}: Actor${index}`);
56
+ }
57
+ const entry = path.join(directory, "index.d.ts");
58
+ writeFileSync(entry, `${imports.join("\n")}\nexport interface ActorTypes { ${properties.join(";\n")} }`);
59
+ return entry;
60
+ }
61
+ }
62
+ function writeBundleConfig(directory, options, packages) {
63
+ for (const [name, pkg] of packages) {
64
+ const link = path.join(directory, "node_modules", name);
65
+ mkdirSync(path.dirname(link), { recursive: true });
66
+ symlinkSync(pkg.directory, link, "dir");
67
+ }
68
+ const config = path.join(directory, "tsconfig.json");
69
+ writeFileSync(config, JSON.stringify({
70
+ compilerOptions: {
71
+ target: "ES2022",
72
+ module: "NodeNext",
73
+ strict: true,
74
+ skipLibCheck: true,
75
+ baseUrl: options.baseUrl ?? options.pathsBasePath,
76
+ paths: options.paths,
77
+ exactOptionalPropertyTypes: options.exactOptionalPropertyTypes ?? false,
78
+ types: []
79
+ }
80
+ }));
81
+ writeFileSync(path.join(directory, "package.json"), '{"type":"module"}');
82
+ return config;
83
+ }
84
+ function emitDeclarations(program, system) {
85
+ const options = {
86
+ ...program.getCompilerOptions(),
87
+ noEmit: false,
88
+ declaration: true,
89
+ declarationMap: false,
90
+ emitDeclarationOnly: true,
91
+ outDir: undefined,
92
+ outFile: undefined,
93
+ incremental: false,
94
+ composite: false
95
+ };
96
+ const host = ts.createCompilerHost(options);
97
+ host.readFile = file => program.getSourceFile(file)?.text ?? system.readFile(file);
98
+ host.fileExists = system.fileExists;
99
+ const emitter = ts.createProgram(program.getRootFileNames(), options, host, program);
100
+ const files = new Map();
101
+ const result = emitter.emit(undefined, (_file, text, _bom, _error, sources) => {
102
+ if (sources?.length === 1)
103
+ files.set(sources[0].fileName, text);
104
+ }, undefined, true);
105
+ if (result.diagnostics.length)
106
+ throw new ActorDefinitionError(result.diagnostics.map(d => ts.flattenDiagnosticMessageText(d.messageText, "\n")).join("\n"));
107
+ return files;
108
+ }
109
+ function projectActor(text, actor, contract, checker) {
110
+ const source = ts.createSourceFile("actor.d.ts", text, ts.ScriptTarget.Latest, true);
111
+ const declaration = source.statements.find(statement => ts.isClassDeclaration(statement) && statement.name?.text === actor.name.text);
112
+ const instance = checker.getTypeAtLocation(actor);
113
+ const types = checker.getTypeArguments(instance.getBaseTypes()[0]);
114
+ const declaredTypes = declaration.heritageClauses?.find(clause => clause.token === ts.SyntaxKind.ExtendsKeyword)
115
+ ?.types[0].typeArguments;
116
+ const name = availableName(source, `$${contract.actorName}Contract`);
117
+ const properties = ["Metadata", "Incoming", "Outgoing"].map((kind, index) => ts.factory.createPropertySignature(undefined, kind, undefined, declaredTypes?.[index] ??
118
+ checker.typeToTypeNode(types[index], undefined, ts.NodeBuilderFlags.NoTruncation | ts.NodeBuilderFlags.UseFullyQualifiedType)));
119
+ properties.push(ts.factory.createPropertySignature(undefined, "State", undefined, publicState(declaration, contract)));
120
+ properties.push(ts.factory.createPropertySignature(undefined, "Methods", undefined, publicMethods(declaration, contract)));
121
+ const root = ts.factory.createInterfaceDeclaration([ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)], name, undefined, undefined, properties);
122
+ return {
123
+ name,
124
+ code: ts.createPrinter().printFile(ts.factory.updateSourceFile(source, [...source.statements, root]))
125
+ };
126
+ }
127
+ function publicState(declaration, contract) {
128
+ const state = declaration.members.filter(member => ts.isPropertyDeclaration(member) &&
129
+ Object.hasOwn(contract.socket.schema.definitions.State.properties, propertyName(member.name)));
130
+ return ts.factory.createTypeLiteralNode(state.map(member => ts.factory.createPropertySignature(member.modifiers?.filter(m => m.kind === ts.SyntaxKind.ReadonlyKeyword), member.name, member.questionToken, member.type)));
131
+ }
132
+ function publicMethods(declaration, contract) {
133
+ const members = declaration.members.filter(member => ts.isMethodDeclaration(member) &&
134
+ contract.rpc.methods.some(method => method.name === propertyName(member.name)));
135
+ return ts.factory.createTypeLiteralNode(members
136
+ .sort((a, b) => propertyName(a.name).localeCompare(propertyName(b.name)))
137
+ .map(member => ts.factory.createMethodSignature(undefined, member.name, member.questionToken, member.typeParameters, member.parameters, member.type)));
138
+ }
139
+ function availableName(source, proposed) {
140
+ let name = proposed;
141
+ while (source.text.includes(name))
142
+ name += "_";
143
+ return name;
144
+ }
145
+ function propertyName(name) {
146
+ if (ts.isComputedPropertyName(name) && ts.isStringLiteral(name.expression))
147
+ return name.expression.text;
148
+ return ts.isIdentifier(name) || ts.isStringLiteral(name) || ts.isNumericLiteral(name) ? name.text : name.getText();
149
+ }
150
+ function resolveImports(text, location, options, system, packages) {
151
+ const source = ts.createSourceFile("actor.d.ts", text, ts.ScriptTarget.Latest, true);
152
+ const result = ts.transform(source, [
153
+ context => root => ts.visitNode(root, function visit(node) {
154
+ if (ts.isStringLiteral(node) && isModuleSpecifier(node)) {
155
+ const resolved = ts.resolveModuleName(node.text, location, options, system).resolvedModule;
156
+ if (!resolved)
157
+ throw new ActorDefinitionError(`Cannot resolve public type dependency ${node.text}`);
158
+ if (node.text.startsWith(".") || path.isAbsolute(node.text) || !resolved.isExternalLibraryImport)
159
+ return ts.factory.createStringLiteral(resolved.resolvedFileName);
160
+ const name = packageName(node.text);
161
+ packages.set(name, packageAt(resolved.resolvedFileName, name, system));
162
+ }
163
+ return ts.visitEachChild(node, visit, context);
164
+ })
165
+ ]);
166
+ const code = ts.createPrinter().printFile(result.transformed[0]);
167
+ result.dispose();
168
+ return code;
169
+ }
170
+ function isModuleSpecifier(node) {
171
+ const parent = node.parent;
172
+ return (((ts.isImportDeclaration(parent) || ts.isExportDeclaration(parent)) && parent.moduleSpecifier === node) ||
173
+ (ts.isLiteralTypeNode(parent) && ts.isImportTypeNode(parent.parent)));
174
+ }
175
+ function externalModules(code) {
176
+ const source = ts.createSourceFile("types.d.ts", code, ts.ScriptTarget.Latest, true);
177
+ const names = new Set(source.typeReferenceDirectives.map(ref => ref.fileName.startsWith("@types/") ? ref.fileName : `@types/${ref.fileName}`));
178
+ const visit = (node) => {
179
+ if (ts.isStringLiteral(node) && isModuleSpecifier(node)) {
180
+ if (node.text.startsWith(".") || path.isAbsolute(node.text))
181
+ throw new ActorDefinitionError(`Unbundled public type dependency ${node.text}`);
182
+ if (!node.text.startsWith("node:"))
183
+ names.add(node.text);
184
+ }
185
+ ts.forEachChild(node, visit);
186
+ };
187
+ visit(source);
188
+ return [...names].sort();
189
+ }
190
+ function packageName(specifier) {
191
+ return specifier
192
+ .split("/")
193
+ .slice(0, specifier.startsWith("@") ? 2 : 1)
194
+ .join("/");
195
+ }
196
+ function findPackage(specifier, location, options, system) {
197
+ const resolved = ts.resolveModuleName(specifier, location, options, system).resolvedModule;
198
+ if (!resolved)
199
+ throw new ActorDefinitionError(`Cannot resolve public type dependency ${specifier}`);
200
+ return packageAt(resolved.resolvedFileName, packageName(specifier), system);
201
+ }
202
+ function packageAt(file, name, system) {
203
+ for (let directory = path.dirname(file);; directory = path.dirname(directory)) {
204
+ const manifest = system.readFile(path.join(directory, "package.json"));
205
+ if (manifest) {
206
+ const json = JSON.parse(manifest);
207
+ if (json.name === name || directory.endsWith(`${path.sep}${name}`)) {
208
+ if (typeof json.version !== "string")
209
+ throw new ActorDefinitionError(`Public type dependency ${name} must declare a version`);
210
+ return { directory, version: json.version };
211
+ }
212
+ }
213
+ if (directory === path.dirname(directory))
214
+ throw new ActorDefinitionError(`Cannot find package metadata for ${name}`);
215
+ }
216
+ }
217
+ export { DeclarationCompiler };
218
+ //# sourceMappingURL=declarations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"declarations.js","sourceRoot":"","sources":["../../src/compiler/declarations.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import type { SocketContract } from "../../wire/contract.js";
2
1
  import type { ActorApi } from "../../wire/public-contract.js";
3
- declare function backendSource(actors: readonly ActorApi[], contracts: readonly SocketContract[], wireNames: ReadonlyMap<string, readonly string[]>): Promise<string>;
2
+ declare function backendSource(actors: readonly ActorApi[]): string;
4
3
  export { backendSource };
5
4
  //# sourceMappingURL=backend-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"backend-generator.d.ts","sourceRoot":"","sources":["../../../src/compiler/generators/backend-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAyC,MAAM,+BAA+B,CAAA;AAIpG,iBAAe,aAAa,CACxB,MAAM,EAAE,SAAS,QAAQ,EAAE,EAC3B,SAAS,EAAE,SAAS,cAAc,EAAE,EACpC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,GAClD,OAAO,CAAC,MAAM,CAAC,CAsBjB;AAwLD,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"backend-generator.d.ts","sourceRoot":"","sources":["../../../src/compiler/generators/backend-generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAa,MAAM,+BAA+B,CAAA;AAIxE,iBAAS,aAAa,CAAC,MAAM,EAAE,SAAS,QAAQ,EAAE,GAAG,MAAM,CAa1D;AAiED,OAAO,EAAE,aAAa,EAAE,CAAA"}