alchemy 0.1.12 → 0.1.13

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 (103) hide show
  1. package/lib/$.d.ts +12 -0
  2. package/lib/$.d.ts.map +1 -0
  3. package/lib/$.js +42 -0
  4. package/lib/$.js.map +1 -0
  5. package/lib/alchemize.d.ts.map +1 -1
  6. package/lib/alchemize.js +7 -0
  7. package/lib/alchemize.js.map +1 -1
  8. package/lib/apply.d.ts +2 -2
  9. package/lib/apply.d.ts.map +1 -1
  10. package/lib/apply.js +1 -1
  11. package/lib/apply.js.map +1 -1
  12. package/lib/cloudflare/api.d.ts +4 -0
  13. package/lib/cloudflare/api.d.ts.map +1 -1
  14. package/lib/cloudflare/api.js +6 -0
  15. package/lib/cloudflare/api.js.map +1 -1
  16. package/lib/cloudflare/bindings.d.ts +14 -4
  17. package/lib/cloudflare/bindings.d.ts.map +1 -1
  18. package/lib/cloudflare/bindings.js +0 -5
  19. package/lib/cloudflare/bindings.js.map +1 -1
  20. package/lib/cloudflare/durable-object-namespace.d.ts +23 -0
  21. package/lib/cloudflare/durable-object-namespace.d.ts.map +1 -0
  22. package/lib/cloudflare/durable-object-namespace.js +26 -0
  23. package/lib/cloudflare/durable-object-namespace.js.map +1 -0
  24. package/lib/cloudflare/index.d.ts +1 -0
  25. package/lib/cloudflare/index.d.ts.map +1 -1
  26. package/lib/cloudflare/index.js +1 -0
  27. package/lib/cloudflare/index.js.map +1 -1
  28. package/lib/cloudflare/kv-namespace.js +1 -1
  29. package/lib/cloudflare/kv-namespace.js.map +1 -1
  30. package/lib/cloudflare/static-site-router.d.ts +11 -2
  31. package/lib/cloudflare/static-site-router.d.ts.map +1 -1
  32. package/lib/cloudflare/static-site-router.js +98 -76
  33. package/lib/cloudflare/static-site-router.js.map +1 -1
  34. package/lib/cloudflare/static-site.d.ts +15 -15
  35. package/lib/cloudflare/static-site.d.ts.map +1 -1
  36. package/lib/cloudflare/static-site.js +41 -25
  37. package/lib/cloudflare/static-site.js.map +1 -1
  38. package/lib/cloudflare/worker-metadata.d.ts +130 -0
  39. package/lib/cloudflare/worker-metadata.d.ts.map +1 -0
  40. package/lib/cloudflare/worker-metadata.js +2 -0
  41. package/lib/cloudflare/worker-metadata.js.map +1 -0
  42. package/lib/cloudflare/worker-migration.d.ts +110 -0
  43. package/lib/cloudflare/worker-migration.d.ts.map +1 -0
  44. package/lib/cloudflare/worker-migration.js +11 -0
  45. package/lib/cloudflare/worker-migration.js.map +1 -0
  46. package/lib/cloudflare/worker.d.ts +29 -11
  47. package/lib/cloudflare/worker.d.ts.map +1 -1
  48. package/lib/cloudflare/worker.js +316 -322
  49. package/lib/cloudflare/worker.js.map +1 -1
  50. package/lib/destroy.d.ts +1 -1
  51. package/lib/destroy.d.ts.map +1 -1
  52. package/lib/destroy.js +2 -1
  53. package/lib/destroy.js.map +1 -1
  54. package/lib/esbuild.d.ts +1 -1
  55. package/lib/esbuild.d.ts.map +1 -1
  56. package/lib/esbuild.js +3 -1
  57. package/lib/esbuild.js.map +1 -1
  58. package/lib/global.d.ts +0 -2
  59. package/lib/global.d.ts.map +1 -1
  60. package/lib/global.js +0 -2
  61. package/lib/global.js.map +1 -1
  62. package/lib/index.d.ts +2 -0
  63. package/lib/index.d.ts.map +1 -1
  64. package/lib/index.js +2 -0
  65. package/lib/index.js.map +1 -1
  66. package/lib/output.d.ts +4 -3
  67. package/lib/output.d.ts.map +1 -1
  68. package/lib/output.js +10 -3
  69. package/lib/output.js.map +1 -1
  70. package/lib/print.d.ts +7 -0
  71. package/lib/print.d.ts.map +1 -0
  72. package/lib/print.js +10 -0
  73. package/lib/print.js.map +1 -0
  74. package/lib/resource.d.ts +8 -4
  75. package/lib/resource.d.ts.map +1 -1
  76. package/lib/resource.js +125 -91
  77. package/lib/resource.js.map +1 -1
  78. package/lib/scope.d.ts +3 -0
  79. package/lib/scope.d.ts.map +1 -1
  80. package/lib/scope.js +4 -12
  81. package/lib/scope.js.map +1 -1
  82. package/package.json +3 -2
  83. package/src/$.ts +69 -0
  84. package/src/alchemize.ts +12 -0
  85. package/src/apply.ts +4 -4
  86. package/src/cloudflare/api.ts +6 -0
  87. package/src/cloudflare/bindings.ts +37 -26
  88. package/src/cloudflare/durable-object-namespace.ts +43 -0
  89. package/src/cloudflare/index.ts +1 -0
  90. package/src/cloudflare/kv-namespace.ts +1 -1
  91. package/src/cloudflare/static-site-router.ts +124 -82
  92. package/src/cloudflare/static-site.ts +63 -47
  93. package/src/cloudflare/worker-metadata.ts +154 -0
  94. package/src/cloudflare/worker-migration.ts +145 -0
  95. package/src/cloudflare/worker.ts +526 -428
  96. package/src/destroy.ts +2 -2
  97. package/src/esbuild.ts +3 -0
  98. package/src/global.ts +0 -3
  99. package/src/index.ts +2 -1
  100. package/src/output.ts +24 -8
  101. package/src/print.ts +18 -0
  102. package/src/resource.ts +156 -115
  103. package/src/scope.ts +7 -12
@@ -0,0 +1,110 @@
1
+ export type WorkerMigrations = SingleStepMigration | MultiStepMigration;
2
+ export declare function isSingleStepMigration(migration: WorkerMigrations): migration is SingleStepMigration;
3
+ export interface SingleStepMigration {
4
+ /**
5
+ * A list of classes to delete Durable Object namespaces from
6
+ */
7
+ deleted_classes?: string[];
8
+ /**
9
+ * A list of classes to create Durable Object namespaces from
10
+ */
11
+ new_classes?: string[];
12
+ /**
13
+ * A list of classes to create Durable Object namespaces with SQLite from
14
+ */
15
+ new_sqlite_classes?: string[];
16
+ /**
17
+ * Tag to set as the latest migration tag
18
+ */
19
+ new_tag?: string;
20
+ /**
21
+ * Tag used to verify against the latest migration tag for this Worker.
22
+ * If they don't match, the upload is rejected.
23
+ */
24
+ old_tag?: string;
25
+ /**
26
+ * A list of classes with Durable Object namespaces that were renamed
27
+ */
28
+ renamed_classes?: RenamedClass[];
29
+ /**
30
+ * A list of transfers for Durable Object namespaces from a different Worker
31
+ * and class to a class defined in this Worker
32
+ */
33
+ transferred_classes?: TransferredClass[];
34
+ }
35
+ /**
36
+ * Represents a renamed class in a Durable Object migration
37
+ */
38
+ export interface RenamedClass {
39
+ /**
40
+ * Original class name
41
+ */
42
+ from: string;
43
+ /**
44
+ * New class name
45
+ */
46
+ to: string;
47
+ }
48
+ /**
49
+ * Represents a transferred class in a Durable Object migration
50
+ */
51
+ export interface TransferredClass {
52
+ /**
53
+ * Original class name
54
+ */
55
+ from: string;
56
+ /**
57
+ * Original script name
58
+ */
59
+ from_script: string;
60
+ /**
61
+ * New class name in this Worker
62
+ */
63
+ to: string;
64
+ }
65
+ export declare function isMultiStepMigration(migration: WorkerMigrations): migration is MultiStepMigration;
66
+ /**
67
+ * Represents a multi-step migration for Durable Objects
68
+ */
69
+ export interface MultiStepMigration {
70
+ /**
71
+ * Tag to set as the latest migration tag
72
+ */
73
+ new_tag?: string;
74
+ /**
75
+ * Tag used to verify against the latest migration tag for this Worker.
76
+ * If they don't match, the upload is rejected.
77
+ */
78
+ old_tag?: string;
79
+ /**
80
+ * Migrations to apply in order
81
+ */
82
+ steps: MigrationStep[];
83
+ }
84
+ /**
85
+ * Represents a single step in a Durable Object migration
86
+ */
87
+ export interface MigrationStep {
88
+ /**
89
+ * A list of classes to delete Durable Object namespaces from
90
+ */
91
+ deleted_classes?: string[];
92
+ /**
93
+ * A list of classes to create Durable Object namespaces from
94
+ */
95
+ new_classes?: string[];
96
+ /**
97
+ * A list of classes to create Durable Object namespaces with SQLite from
98
+ */
99
+ new_sqlite_classes?: string[];
100
+ /**
101
+ * A list of classes with Durable Object namespaces that were renamed
102
+ */
103
+ renamed_classes?: RenamedClass[];
104
+ /**
105
+ * A list of transfers for Durable Object namespaces from a different Worker
106
+ * and class to a class defined in this Worker
107
+ */
108
+ transferred_classes?: TransferredClass[];
109
+ }
110
+ //# sourceMappingURL=worker-migration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-migration.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker-migration.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;AAExE,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,gBAAgB,GAC1B,SAAS,IAAI,mBAAmB,CAQlC;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE9B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IAEjC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,gBAAgB,GAC1B,SAAS,IAAI,kBAAkB,CAEjC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,KAAK,EAAE,aAAa,EAAE,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE9B;;OAEG;IACH,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IAEjC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC1C"}
@@ -0,0 +1,11 @@
1
+ export function isSingleStepMigration(migration) {
2
+ return ("deleted_classes" in migration ||
3
+ "new_classes" in migration ||
4
+ "new_sqlite_classes" in migration ||
5
+ "renamed_classes" in migration ||
6
+ "transferred_classes" in migration);
7
+ }
8
+ export function isMultiStepMigration(migration) {
9
+ return "steps" in migration;
10
+ }
11
+ //# sourceMappingURL=worker-migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-migration.js","sourceRoot":"","sources":["../../src/cloudflare/worker-migration.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,qBAAqB,CACnC,SAA2B;IAE3B,OAAO,CACL,iBAAiB,IAAI,SAAS;QAC9B,aAAa,IAAI,SAAS;QAC1B,oBAAoB,IAAI,SAAS;QACjC,iBAAiB,IAAI,SAAS;QAC9B,qBAAqB,IAAI,SAAS,CACnC,CAAC;AACJ,CAAC;AA4ED,MAAM,UAAU,oBAAoB,CAClC,SAA2B;IAE3B,OAAO,OAAO,IAAI,SAAS,CAAC;AAC9B,CAAC"}
@@ -1,5 +1,6 @@
1
- import { Bundle, type BundleProps } from "../esbuild";
1
+ import { type BundleProps } from "../esbuild";
2
2
  import type { WorkerBinding } from "./bindings";
3
+ import type { SingleStepMigration } from "./worker-migration";
3
4
  /**
4
5
  * Properties for creating or updating a Worker
5
6
  */
@@ -15,16 +16,11 @@ export interface WorkerProps {
15
16
  * One of script, entryPoint, or bundle must be provided
16
17
  */
17
18
  entrypoint?: string;
18
- /**
19
- * Reference to a pre-configured Bundle resource
20
- * One of script, entryPoint, or bundle must be provided
21
- */
22
- bundle?: Bundle;
23
19
  /**
24
20
  * Bundle options when using entryPoint
25
21
  * Ignored if bundle is provided
26
22
  */
27
- bundleOptions?: Omit<BundleProps, "entryPoint">;
23
+ bundle?: Omit<BundleProps, "entryPoint">;
28
24
  /**
29
25
  * Module format for the worker script
30
26
  * 'esm' - ECMAScript modules (default)
@@ -47,16 +43,34 @@ export interface WorkerProps {
47
43
  */
48
44
  bindings?: WorkerBinding[];
49
45
  /**
50
- * Whether the worker should be deployed to production
51
- * @default true
46
+ * Environment variables to attach to the worker
47
+ * These will be converted to plain_text bindings
52
48
  */
53
- production?: boolean;
49
+ env?: {
50
+ [key: string]: string;
51
+ };
54
52
  /**
55
53
  * Whether to enable a workers.dev URL for this worker
56
54
  * If true, the worker will be available at {name}.{subdomain}.workers.dev
57
55
  * @default false
58
56
  */
59
57
  url?: boolean;
58
+ /**
59
+ * Observability configuration for the worker
60
+ * Controls whether worker logs are enabled
61
+ * @default { enabled: true }
62
+ */
63
+ observability?: {
64
+ /**
65
+ * Whether to enable worker logs
66
+ * @default true
67
+ */
68
+ enabled?: boolean;
69
+ };
70
+ /**
71
+ * Migrations to apply to the worker
72
+ */
73
+ migrations?: SingleStepMigration;
60
74
  }
61
75
  /**
62
76
  * Output returned after Worker creation/update
@@ -79,8 +93,12 @@ export interface WorkerOutput extends Omit<WorkerProps, "url"> {
79
93
  * Format: {name}.{subdomain}.workers.dev
80
94
  */
81
95
  url?: string;
96
+ /**
97
+ * The bindings that were created
98
+ */
99
+ bindings: WorkerBinding[];
82
100
  }
83
- declare const Worker_base: import("../resource").Provider<"cloudflare::Worker", [props: WorkerProps], WorkerOutput>;
101
+ declare const Worker_base: import("../resource").Provider<string, [props: WorkerProps], WorkerOutput>;
84
102
  export declare class Worker extends Worker_base {
85
103
  }
86
104
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAGtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,aAAa,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAEhD;;;;;OAKG;IACH,MAAM,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAEvB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAE3B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC;IAC5D;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;;AAED,qBAAa,MAAO,SAAQ,WAkd3B;CAAG"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAGtD,OAAO,KAAK,EAAE,aAAa,EAAqB,MAAM,YAAY,CAAC;AAInE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAEzC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAEvB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAE3B;;;OAGG;IACH,GAAG,CAAC,EAAE;QACJ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,CAAC;IAEF;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;;;OAIG;IACH,aAAa,CAAC,EAAE;QACd;;;WAGG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;IAEF;;OAEG;IACH,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC;IAC5D;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;;AAED,qBAAa,MAAO,SAAQ,WAoE3B;CAAG"}