alchemy 0.15.3 → 0.15.4

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.
@@ -30,7 +30,9 @@ export declare namespace Bindings {
30
30
  /**
31
31
  * L2 Binding Resources.
32
32
  */
33
- export type Binding = Ai | AiGateway | Assets | D1Database | DurableObjectNamespace | Hyperdrive | KVNamespace | Pipeline | Queue | R2Bucket | Secret | string | VectorizeIndex | Worker | Workflow | BrowserRendering;
33
+ export type Binding = Ai | AiGateway | Assets | D1Database | DurableObjectNamespace | Hyperdrive | KVNamespace | Pipeline | Queue | R2Bucket | Secret | string | VectorizeIndex | Worker | Workflow | BrowserRendering | Self;
34
+ export type Self = typeof Self;
35
+ export declare const Self: unique symbol;
34
36
  /**
35
37
  * Union type for all Worker binding types (API spec)
36
38
  */
@@ -1 +1 @@
1
- {"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../../src/cloudflare/bindings.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,MAAM,QAAQ,GAAG;IACrB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;CAChC,CAAC;AAEF,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,KAAY,OAAO,CAAC,CAAC,SAAS,QAAQ,IAAI;SACvC,WAAW,IAAI,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;KAChD,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GACf,EAAE,GACF,SAAS,GACT,MAAM,GACN,UAAU,GACV,sBAAsB,GACtB,UAAU,GACV,WAAW,GACX,QAAQ,GACR,KAAK,GACL,QAAQ,GACR,MAAM,GACN,MAAM,GACN,cAAc,GACd,MAAM,GACN,QAAQ,GACR,gBAAgB,CAAC;AAErB;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB,eAAe,GACf,4BAA4B,GAC5B,mBAAmB,GACnB,6BAA6B,GAC7B,eAAe,GACf,8BAA8B,GAC9B,mCAAmC,GACnC,uBAAuB,GACvB,iBAAiB,GACjB,wBAAwB,GACxB,4BAA4B,GAC5B,qBAAqB,GACrB,sBAAsB,GACtB,kBAAkB,GAClB,qBAAqB,GACrB,uBAAuB,GACvB,oBAAoB,GACpB,0BAA0B,GAC1B,yBAAyB,GACzB,sBAAsB,GACtB,4BAA4B,GAC5B,uBAAuB,GACvB,qBAAqB,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,IAAI,EAAE,IAAI,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,IAAI,EAAE,kBAAkB,CAAC;IACzB,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,IAAI,EAAE,SAAS,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,IAAI,EAAE,IAAI,CAAC;IACX,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,IAAI,EAAE,0BAA0B,CAAC;IACjC,gCAAgC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,IAAI,EAAE,YAAY,CAAC;IACnB,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB;IACjB,IAAI,EAAE,GAAG,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,IAAI,EAAE,cAAc,CAAC;IACrB,sBAAsB;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,IAAI,EAAE,kBAAkB,CAAC;IACzB,qBAAqB;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,IAAI,EAAE,YAAY,CAAC;IACnB,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,IAAI,EAAE,OAAO,CAAC;IACd,iBAAiB;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,IAAI,EAAE,WAAW,CAAC;IAClB,kBAAkB;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,IAAI,EAAE,aAAa,CAAC;IACpB,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,IAAI,EAAE,SAAS,CAAC;IAChB,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,IAAI,EAAE,eAAe,CAAC;IACtB,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,IAAI,EAAE,WAAW,CAAC;IAClB,iBAAiB;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,IAAI,EAAE,aAAa,CAAC;IACpB,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACzC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,IAAI,EAAE,UAAU,CAAC;IACjB,oBAAoB;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,IAAI,EAAE,WAAW,CAAC;IAClB,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../../src/cloudflare/bindings.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
+ export const Self = Symbol.for("Self");
1
2
  //# sourceMappingURL=bindings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../src/cloudflare/bindings.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../src/cloudflare/bindings.ts"],"names":[],"mappings":"AAuDA,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC"}
@@ -3,7 +3,7 @@ import type { Secret } from "../secret.js";
3
3
  import type { AiGateway as _AiGateway } from "./ai-gateway.js";
4
4
  import type { Ai as _Ai } from "./ai.js";
5
5
  import type { Assets } from "./assets.js";
6
- import type { Binding } from "./bindings.js";
6
+ import type { Binding, Self } from "./bindings.js";
7
7
  import type { BrowserRendering } from "./browser-rendering.js";
8
8
  import type { R2Bucket as _R2Bucket } from "./bucket.js";
9
9
  import type { D1Database as _D1Database } from "./d1-database.js";
@@ -15,5 +15,5 @@ import type { Queue as _Queue } from "./queue.js";
15
15
  import type { VectorizeIndex as _VectorizeIndex } from "./vectorize-index.js";
16
16
  import type { Worker as _Worker } from "./worker.js";
17
17
  import type { Workflow as _Workflow } from "./workflow.js";
18
- export type Bound<T extends Binding> = T extends _DurableObjectNamespace ? DurableObjectNamespace : T extends _KVNamespace ? KVNamespace : T extends _Worker ? Worker : T extends _R2Bucket ? R2Bucket : T extends _AiGateway ? AiGateway : T extends _Hyperdrive ? Hyperdrive : T extends Secret ? string : T extends Assets ? Service : T extends _Workflow<infer P> ? Workflow<P> : T extends _D1Database ? D1Database : T extends _VectorizeIndex ? VectorizeIndex : T extends _Queue<infer Body> ? Queue<Body> : T extends _Pipeline<infer R> ? Pipeline<R> : T extends string ? string : T extends BrowserRendering ? Fetcher : T extends _Ai<infer M> ? Ai<M> : Service;
18
+ export type Bound<T extends Binding> = T extends _DurableObjectNamespace ? DurableObjectNamespace : T extends _KVNamespace ? KVNamespace : T extends _Worker ? Worker : T extends _R2Bucket ? R2Bucket : T extends _AiGateway ? AiGateway : T extends _Hyperdrive ? Hyperdrive : T extends Secret ? string : T extends Assets ? Service : T extends _Workflow<infer P> ? Workflow<P> : T extends _D1Database ? D1Database : T extends _VectorizeIndex ? VectorizeIndex : T extends _Queue<infer Body> ? Queue<Body> : T extends _Pipeline<infer R> ? Pipeline<R> : T extends string ? string : T extends BrowserRendering ? Fetcher : T extends _Ai<infer M> ? Ai<M> : T extends Self ? Service : Service;
19
19
  //# sourceMappingURL=bound.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bound.d.ts","sourceRoot":"","sources":["../../src/cloudflare/bound.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,EAAE,EAAE,IAAI,GAAG,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,sBAAsB,IAAI,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACvG,OAAO,KAAK,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,IAAI,MAAM,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,KAAK,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,OAAO,IAAI,CAAC,SAAS,uBAAuB,GACpE,sBAAsB,GACtB,CAAC,SAAS,YAAY,GACpB,WAAW,GACX,CAAC,SAAS,OAAO,GACf,MAAM,GACN,CAAC,SAAS,SAAS,GACjB,QAAQ,GACR,CAAC,SAAS,UAAU,GAClB,SAAS,GACT,CAAC,SAAS,WAAW,GACnB,UAAU,GACV,CAAC,SAAS,MAAM,GACd,MAAM,GACN,CAAC,SAAS,MAAM,GACd,OAAO,GACP,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,GAC1B,QAAQ,CAAC,CAAC,CAAC,GACX,CAAC,SAAS,WAAW,GACnB,UAAU,GACV,CAAC,SAAS,eAAe,GACvB,cAAc,GACd,CAAC,SAAS,MAAM,CAAC,MAAM,IAAI,CAAC,GAC1B,KAAK,CAAC,IAAI,CAAC,GACX,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,GAC1B,QAAQ,CAAC,CAAC,CAAC,GACX,CAAC,SAAS,MAAM,GACd,MAAM,GACN,CAAC,SAAS,gBAAgB,GACxB,OAAO,GACP,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,CAAC,GACpB,EAAE,CAAC,CAAC,CAAC,GACL,OAAO,CAAC"}
1
+ {"version":3,"file":"bound.d.ts","sourceRoot":"","sources":["../../src/cloudflare/bound.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,EAAE,EAAE,IAAI,GAAG,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,sBAAsB,IAAI,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACvG,OAAO,KAAK,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,IAAI,MAAM,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,KAAK,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,OAAO,IAAI,CAAC,SAAS,uBAAuB,GACpE,sBAAsB,GACtB,CAAC,SAAS,YAAY,GACpB,WAAW,GACX,CAAC,SAAS,OAAO,GACf,MAAM,GACN,CAAC,SAAS,SAAS,GACjB,QAAQ,GACR,CAAC,SAAS,UAAU,GAClB,SAAS,GACT,CAAC,SAAS,WAAW,GACnB,UAAU,GACV,CAAC,SAAS,MAAM,GACd,MAAM,GACN,CAAC,SAAS,MAAM,GACd,OAAO,GACP,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,GAC1B,QAAQ,CAAC,CAAC,CAAC,GACX,CAAC,SAAS,WAAW,GACnB,UAAU,GACV,CAAC,SAAS,eAAe,GACvB,cAAc,GACd,CAAC,SAAS,MAAM,CAAC,MAAM,IAAI,CAAC,GAC1B,KAAK,CAAC,IAAI,CAAC,GACX,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,GAC1B,QAAQ,CAAC,CAAC,CAAC,GACX,CAAC,SAAS,MAAM,GACd,MAAM,GACN,CAAC,SAAS,gBAAgB,GACxB,OAAO,GACP,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,CAAC,GACpB,EAAE,CAAC,CAAC,CAAC,GACL,CAAC,SAAS,IAAI,GACZ,OAAO,GACP,OAAO,CAAC"}
@@ -2,7 +2,7 @@ import type { Context } from "../context.js";
2
2
  import type { BundleProps } from "../esbuild/bundle.js";
3
3
  import { Resource } from "../resource.js";
4
4
  import { type CloudflareApiOptions } from "./api.js";
5
- import type { Bindings } from "./bindings.js";
5
+ import { type Bindings } from "./bindings.js";
6
6
  import type { Bound } from "./bound.js";
7
7
  import { type EventSource } from "./event-source.js";
8
8
  import type { SingleStepMigration } from "./worker-migration.js";
@@ -155,7 +155,7 @@ export interface WorkerProps<B extends Bindings = Bindings> extends CloudflareAp
155
155
  /**
156
156
  * Output returned after Worker creation/update
157
157
  */
158
- export interface Worker<B extends Bindings = Bindings> extends Resource<"cloudflare::Worker">, Omit<WorkerProps<B>, "url"> {
158
+ export interface Worker<B extends Bindings = Bindings> extends Resource<"cloudflare::Worker">, Omit<WorkerProps<B>, "url" | "script"> {
159
159
  type: "service";
160
160
  /**
161
161
  * The ID of the worker
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import { withExponentialBackoff } from "../util/retry.js";
6
6
  import { slugify } from "../util/slugify.js";
7
7
  import { CloudflareApiError, handleApiError } from "./api-error.js";
8
8
  import { createCloudflareApi, } from "./api.js";
9
+ import { Self } from "./bindings.js";
9
10
  import { bundleWorkerScript } from "./bundle/bundle-worker.js";
10
11
  import { isQueueEventSource } from "./event-source.js";
11
12
  import { QueueConsumer, deleteQueueConsumer, listQueueConsumers, } from "./queue-consumer.js";
@@ -100,98 +101,118 @@ import { upsertWorkflow } from "./workflow.js";
100
101
  export const Worker = Resource("cloudflare::Worker", {
101
102
  alwaysUpdate: true,
102
103
  }, async function (id, props) {
103
- // Create Cloudflare API client with automatic account discovery
104
- const api = await createCloudflareApi(props);
105
- // Use the provided name
106
- const workerName = props.name ?? id;
107
104
  // Validate input - we need either script, entryPoint, or bundle
108
105
  if (!props.script && !props.entrypoint) {
109
106
  throw new Error("One of script or entryPoint must be provided");
110
107
  }
111
- if (this.phase === "delete") {
112
- await deleteWorker(this, api, workerName);
113
- return this.destroy();
114
- }
115
- if (this.phase === "create") {
116
- if (!props.adopt) {
117
- await assertWorkerDoesNotExist(this, api, workerName);
118
- }
119
- }
108
+ // Create Cloudflare API client with automatic account discovery
109
+ const api = await createCloudflareApi(props);
110
+ // Use the provided name
111
+ const workerName = props.name ?? id;
120
112
  const oldBindings = await this.get("bindings");
121
113
  const compatibilityDate = props.compatibilityDate ?? "2025-04-20";
122
114
  const compatibilityFlags = props.compatibilityFlags ?? [];
123
- // Get the script content - either from props.script, or by bundling
124
- const scriptContent = props.script ??
125
- (await bundleWorkerScript({
115
+ const uploadWorkerScript = async (props) => {
116
+ // Get the script content - either from props.script, or by bundling
117
+ const scriptContent = props.script ??
118
+ (await bundleWorkerScript({
119
+ ...props,
120
+ compatibilityDate,
121
+ compatibilityFlags,
122
+ }));
123
+ // Find any assets bindings
124
+ const assetsBindings = [];
125
+ const workflowsBindings = [];
126
+ if (props.bindings) {
127
+ for (const [bindingName, binding] of Object.entries(props.bindings)) {
128
+ if (typeof binding === "object") {
129
+ if (binding.type === "assets") {
130
+ assetsBindings.push({ name: bindingName, assets: binding });
131
+ }
132
+ else if (binding.type === "workflow") {
133
+ workflowsBindings.push(binding);
134
+ }
135
+ }
136
+ }
137
+ }
138
+ // Upload any assets and get completion tokens
139
+ let assetUploadResult;
140
+ if (assetsBindings.length > 0) {
141
+ // We'll use the first asset binding for now
142
+ // In the future, we might want to support multiple asset bindings
143
+ const assetBinding = assetsBindings[0];
144
+ // Upload the assets and get the completion token
145
+ assetUploadResult = await uploadAssets(api, workerName, assetBinding.assets, props.assets);
146
+ }
147
+ // Prepare metadata with bindings
148
+ const scriptMetadata = await prepareWorkerMetadata(this, oldBindings, {
126
149
  ...props,
127
150
  compatibilityDate,
128
151
  compatibilityFlags,
129
- }));
130
- // Find any assets bindings
131
- const assetsBindings = [];
132
- const workflowsBindings = [];
133
- if (props.bindings) {
134
- for (const [bindingName, binding] of Object.entries(props.bindings)) {
135
- if (typeof binding === "object") {
136
- if (binding.type === "assets") {
137
- assetsBindings.push({ name: bindingName, assets: binding });
138
- }
139
- else if (binding.type === "workflow") {
140
- workflowsBindings.push(binding);
141
- }
152
+ workerName,
153
+ }, assetUploadResult);
154
+ await putWorker(api, workerName, scriptContent, scriptMetadata);
155
+ for (const workflow of workflowsBindings) {
156
+ await upsertWorkflow(api, {
157
+ workflowName: workflow.workflowName,
158
+ className: workflow.className,
159
+ scriptName: workerName,
160
+ });
161
+ }
162
+ await Promise.all(props.eventSources?.map((eventSource) => {
163
+ if (isQueue(eventSource) || isQueueEventSource(eventSource)) {
164
+ const queue = isQueue(eventSource)
165
+ ? eventSource
166
+ : eventSource.queue;
167
+ return QueueConsumer(`${queue.id}-consumer`, {
168
+ queue,
169
+ scriptName: workerName,
170
+ accountId: api.accountId,
171
+ settings: isQueueEventSource(eventSource)
172
+ ? eventSource.settings
173
+ : undefined,
174
+ });
175
+ }
176
+ throw new Error(`Unsupported event source type: ${eventSource}`);
177
+ }) ?? []);
178
+ // TODO: it is less than ideal that this can fail, resulting in state problem
179
+ await this.set("bindings", props.bindings);
180
+ // Handle worker URL if requested
181
+ const workerUrl = await configureURL(this, api, workerName, props.url ?? false);
182
+ // Get current timestamp
183
+ const now = Date.now();
184
+ // Update cron triggers
185
+ if (props.crons) {
186
+ const res = await api.put(`/accounts/${api.accountId}/workers/scripts/${workerName}/schedules`, props.crons.map((cron) => ({ cron })));
187
+ if (!res.ok) {
188
+ await handleApiError(res, "updating cron triggers", "worker", workerName);
142
189
  }
143
190
  }
144
- }
145
- // Upload any assets and get completion tokens
146
- let assetUploadResult;
147
- if (assetsBindings.length > 0) {
148
- // We'll use the first asset binding for now
149
- // In the future, we might want to support multiple asset bindings
150
- const assetBinding = assetsBindings[0];
151
- // Upload the assets and get the completion token
152
- assetUploadResult = await uploadAssets(api, workerName, assetBinding.assets, props.assets);
153
- }
154
- // Prepare metadata with bindings
155
- const scriptMetadata = await prepareWorkerMetadata(this, oldBindings, {
156
- ...props,
157
- compatibilityDate,
158
- compatibilityFlags,
159
- }, assetUploadResult);
160
- await putWorker(api, workerName, scriptContent, scriptMetadata);
161
- for (const workflow of workflowsBindings) {
162
- await upsertWorkflow(api, {
163
- workflowName: workflow.workflowName,
164
- className: workflow.className,
165
- scriptName: workerName,
166
- });
167
- }
168
- await Promise.all(props.eventSources?.map((eventSource) => {
169
- if (isQueue(eventSource) || isQueueEventSource(eventSource)) {
170
- const queue = isQueue(eventSource) ? eventSource : eventSource.queue;
171
- return QueueConsumer(`${queue.id}-consumer`, {
172
- queue,
173
- scriptName: workerName,
174
- accountId: api.accountId,
175
- settings: isQueueEventSource(eventSource)
176
- ? eventSource.settings
177
- : undefined,
191
+ return { scriptMetadata, workerUrl, now };
192
+ };
193
+ if (this.phase === "delete") {
194
+ if (Object.values(props.bindings ?? {}).some((binding) => binding === Self)) {
195
+ // remove the Self bindings or else we can't remove (LOL)
196
+ await uploadWorkerScript({
197
+ ...props,
198
+ bindings: Object.fromEntries(Object.entries(props.bindings ?? {}).filter(([_, binding]) => binding !== Self)),
178
199
  });
179
200
  }
180
- throw new Error(`Unsupported event source type: ${eventSource}`);
181
- }) ?? []);
182
- // TODO: it is less than ideal that this can fail, resulting in state problem
183
- await this.set("bindings", props.bindings);
184
- // Handle worker URL if requested
185
- const workerUrl = await configureURL(this, api, workerName, props.url ?? false);
186
- // Get current timestamp
187
- const now = Date.now();
188
- // Update cron triggers
189
- if (props.crons) {
190
- const res = await api.put(`/accounts/${api.accountId}/workers/scripts/${workerName}/schedules`, props.crons.map((cron) => ({ cron })));
191
- if (!res.ok) {
192
- await handleApiError(res, "updating cron triggers", "worker", workerName);
201
+ await withExponentialBackoff(() => deleteWorker(this, api, {
202
+ ...props,
203
+ workerName,
204
+ }), (err) => (err.status === 400 &&
205
+ err.message.includes("is still referenced by service bindings in Workers")) ||
206
+ err.status === 500 ||
207
+ err.status === 503, 10, 100);
208
+ return this.destroy();
209
+ }
210
+ if (this.phase === "create") {
211
+ if (!props.adopt) {
212
+ await assertWorkerDoesNotExist(this, api, workerName);
193
213
  }
194
214
  }
215
+ const { scriptMetadata, workerUrl, now } = await uploadWorkerScript(props);
195
216
  // Construct the output
196
217
  return this({
197
218
  ...props,
@@ -201,7 +222,6 @@ export const Worker = Resource("cloudflare::Worker", {
201
222
  name: workerName,
202
223
  compatibilityDate,
203
224
  compatibilityFlags,
204
- script: scriptContent,
205
225
  format: props.format || "esm", // Include format in the output
206
226
  bindings: props.bindings ?? {},
207
227
  env: props.env,
@@ -218,17 +238,15 @@ export const Worker = Resource("cloudflare::Worker", {
218
238
  Env: undefined,
219
239
  });
220
240
  });
221
- async function deleteWorker(ctx, api, workerName) {
241
+ async function deleteWorker(ctx, api, props) {
242
+ const workerName = props.workerName;
222
243
  // Delete any queue consumers attached to this worker first
223
244
  await deleteQueueConsumers(ctx, api, workerName);
224
245
  // Delete worker
225
246
  const deleteResponse = await api.delete(`/accounts/${api.accountId}/workers/scripts/${workerName}`);
226
247
  // Check for success (2xx status code)
227
248
  if (!deleteResponse.ok && deleteResponse.status !== 404) {
228
- const errorData = await deleteResponse
229
- .json()
230
- .catch(() => ({ errors: [{ message: deleteResponse.statusText }] }));
231
- console.error("Error deleting worker:", errorData.errors?.[0]?.message || deleteResponse.statusText);
249
+ await handleApiError(deleteResponse, "delete", "worker", workerName);
232
250
  }
233
251
  // Disable the URL if it was enabled
234
252
  if (ctx.output?.url) {
@@ -348,6 +366,13 @@ async function prepareWorkerMetadata(ctx, oldBindings, props, assetUploadResult)
348
366
  text: binding,
349
367
  });
350
368
  }
369
+ else if (binding === Self) {
370
+ meta.bindings.push({
371
+ type: "service",
372
+ name: bindingName,
373
+ service: props.workerName,
374
+ });
375
+ }
351
376
  else if (binding.type === "d1") {
352
377
  meta.bindings.push({
353
378
  type: "d1",
@@ -410,7 +435,7 @@ async function prepareWorkerMetadata(ctx, oldBindings, props, assetUploadResult)
410
435
  // script_name: ??,
411
436
  });
412
437
  // it's unclear whether this is needed, but it works both ways
413
- configureClassMigration(binding, binding.id, binding.className);
438
+ // configureClassMigration(binding, binding.id, binding.className);
414
439
  }
415
440
  else if (binding.type === "queue") {
416
441
  meta.bindings.push({
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/cloudflare/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/cloudflare/worker.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { StaticJsonFile } from "../fs/static-json-file.js";
2
2
  import { Resource } from "../resource.js";
3
+ import { Self } from "./bindings.js";
3
4
  import { isQueueEventSource } from "./event-source.js";
4
5
  import { isQueue } from "./queue.js";
5
6
  /**
@@ -84,6 +85,20 @@ function processBindings(spec, bindings, eventSources) {
84
85
  }
85
86
  spec.vars[bindingName] = binding;
86
87
  }
88
+ else if (binding === Self) {
89
+ // Self(service) binding
90
+ services.push({
91
+ binding: bindingName,
92
+ service: bindingName,
93
+ });
94
+ }
95
+ else if (binding.type === "service") {
96
+ // Service binding
97
+ services.push({
98
+ binding: bindingName,
99
+ service: binding.id,
100
+ });
101
+ }
87
102
  else if (binding.type === "kv_namespace") {
88
103
  // KV Namespace binding
89
104
  kvNamespaces.push({
@@ -108,13 +123,6 @@ function processBindings(spec, bindings, eventSources) {
108
123
  bucket_name: binding.name,
109
124
  });
110
125
  }
111
- else if (binding.type === "service") {
112
- // Service binding
113
- services.push({
114
- binding: bindingName,
115
- service: binding.id,
116
- });
117
- }
118
126
  else if (binding.type === "secret") {
119
127
  // Secret binding
120
128
  secrets.push(bindingName);
@@ -1 +1 @@
1
- {"version":3,"file":"wrangler.json.js","sourceRoot":"","sources":["../../src/cloudflare/wrangler.json.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wrangler.json.js","sourceRoot":"","sources":["../../src/cloudflare/wrangler.json.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAGpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAsDrC;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAClC,0BAA0B,EAC1B,KAAK,WAEH,EAAU,EACV,KAAwB;IAExB,qDAAqD;IACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,IAAI,gBAAgB,CAAC;IAEhD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAE5B,MAAM,IAAI,GAAqB;QAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,sCAAsC;QACtC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,UAAU;QACrC,oFAAoF;QACpF,kBAAkB,EAAE,MAAM,CAAC,iBAAiB;QAC5C,mBAAmB,EAAE,KAAK,CAAC,MAAM,CAAC,kBAAkB;KACrD,CAAC;IAEF,iCAAiC;IACjC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IAC9D,CAAC;IAED,oCAAoC;IACpC,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;IAChC,CAAC;IAED,MAAM,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAErC,sBAAsB;IACtB,OAAO,IAAI,CAAC;QACV,GAAG,KAAK;QACR,IAAI,EAAE,QAAQ;QACd,IAAI;QACJ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AA8JF;;GAEG;AACH,SAAS,eAAe,CACtB,IAAsB,EACtB,QAAkB,EAClB,YAAuC;IAEvC,4CAA4C;IAC5C,MAAM,YAAY,GAAsC,EAAE,CAAC;IAC3D,MAAM,cAAc,GAKd,EAAE,CAAC;IACT,MAAM,SAAS,GAA+C,EAAE,CAAC;IACjE,MAAM,QAAQ,GACZ,EAAE,CAAC;IACL,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,SAAS,GAA4D,EAAE,CAAC;IAC9E,MAAM,WAAW,GAKX,EAAE,CAAC;IACT,MAAM,MAAM,GAUR;QACF,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,EAAE;KACd,CAAC;IAEF,MAAM,gBAAgB,GAA8C,EAAE,CAAC;IAEvE,KAAK,MAAM,WAAW,IAAI,YAAY,IAAI,EAAE,EAAE,CAAC;QAC7C,IAAI,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;gBACpB,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE;gBAC3B,cAAc,EAAE,WAAW,CAAC,QAAQ,EAAE,SAAS;gBAC/C,eAAe,EAAE,WAAW,CAAC,QAAQ,EAAE,cAAc;gBACrD,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,UAAU;gBAC7C,gBAAgB,EAAE,WAAW,CAAC,QAAQ,EAAE,aAAa;gBACrD,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,UAAU;aAC9C,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;gBACpB,KAAK,EAAE,WAAW,CAAC,EAAE;aACtB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,uBAAuB;IACvB,KAAK,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,mCAAmC;YACnC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACjB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;QACnC,CAAC;aAAM,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YAC5B,wBAAwB;YACxB,QAAQ,CAAC,IAAI,CAAC;gBACZ,OAAO,EAAE,WAAW;gBACpB,OAAO,EAAE,WAAW;aACrB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACtC,kBAAkB;YAClB,QAAQ,CAAC,IAAI,CAAC;gBACZ,OAAO,EAAE,WAAW;gBACpB,OAAO,EAAE,OAAO,CAAC,EAAE;aACpB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YAC3C,uBAAuB;YACvB,YAAY,CAAC,IAAI,CAAC;gBAChB,OAAO,EAAE,WAAW;gBACpB,EAAE,EAAE,OAAO,CAAC,WAAW;aACxB,CAAC,CAAC;QACL,CAAC;aAAM,IACL,OAAO,OAAO,KAAK,QAAQ;YAC3B,OAAO,CAAC,IAAI,KAAK,0BAA0B,EAC3C,CAAC;YACD,yBAAyB;YACzB,MAAM,SAAS,GAAG,OAAiC,CAAC;YACpD,cAAc,CAAC,IAAI,CAAC;gBAClB,IAAI,EAAE,WAAW;gBACjB,UAAU,EAAE,SAAS,CAAC,SAAS;gBAC/B,WAAW,EAAE,SAAS,CAAC,UAAU;gBACjC,WAAW,EAAE,SAAS,CAAC,WAAW;aACnC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACxC,SAAS,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,WAAW;gBACpB,WAAW,EAAE,OAAO,CAAC,IAAI;aAC1B,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,iBAAiB;YACjB,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5B,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,GAAG;gBACZ,SAAS,EAAE,OAAO,CAAC,IAAI;gBACvB,OAAO,EAAE,WAAW;aACrB,CAAC;QACJ,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACvC,SAAS,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,OAAO,CAAC,EAAE;gBACnB,UAAU,EAAE,OAAO,CAAC,SAAS;aAC9B,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACjC,WAAW,CAAC,IAAI,CAAC;gBACf,OAAO,EAAE,WAAW;gBACpB,WAAW,EAAE,OAAO,CAAC,EAAE;gBACvB,aAAa,EAAE,OAAO,CAAC,IAAI;gBAC3B,cAAc,EAAE,OAAO,CAAC,aAAa;aACtC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACpC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;gBACpB,OAAO,EAAE,WAAW;gBACpB,KAAK,EAAE,OAAO,CAAC,IAAI;aACpB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACxC,gBAAgB,CAAC,IAAI,CAAC;gBACpB,OAAO,EAAE,WAAW;gBACpB,UAAU,EAAE,OAAO,CAAC,IAAI;aACzB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,CAAC,OAAO,GAAG;gBACb,OAAO,EAAE,WAAW;aACrB,CAAC;QACJ,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,IAAI,CAAC,EAAE,GAAG;gBACR,OAAO,EAAE,WAAW;aACrB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,qCAAqC;IACrC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACpC,CAAC;IAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG;YACrB,QAAQ,EAAE,cAAc;SACzB,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IAClC,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAC5C,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"serde.d.ts","sourceRoot":"","sources":["../src/serde.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAcnC,wBAAsB,SAAS,CAC7B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,GAAG,EACV,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC,GAAG,CAAC,CA2Cd;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CA6BxE"}
1
+ {"version":3,"file":"serde.d.ts","sourceRoot":"","sources":["../src/serde.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAcnC,wBAAsB,SAAS,CAC7B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,GAAG,EACV,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC,GAAG,CAAC,CAwDd;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAgCxE"}
package/lib/serde.js CHANGED
@@ -11,7 +11,7 @@ export async function serialize(scope, value, options) {
11
11
  if (Array.isArray(value)) {
12
12
  return Promise.all(value.map((value) => serialize(scope, value, options)));
13
13
  }
14
- if (value instanceof Secret) {
14
+ else if (value instanceof Secret) {
15
15
  if (!scope.password) {
16
16
  throw new Error("Cannot serialize secret without password");
17
17
  }
@@ -21,26 +21,42 @@ export async function serialize(scope, value, options) {
21
21
  : value.unencrypted,
22
22
  };
23
23
  }
24
- if (isType(value)) {
24
+ else if (isType(value)) {
25
25
  return {
26
26
  "@schema": value.toJSON(),
27
27
  };
28
28
  }
29
- if (value instanceof Date) {
29
+ else if (value instanceof Date) {
30
30
  return {
31
31
  "@date": value.toISOString(),
32
32
  };
33
33
  }
34
- if (value instanceof Scope) {
35
- return undefined;
34
+ else if (typeof value === "symbol") {
35
+ assertNotUniqueSymbol(value);
36
+ return {
37
+ "@symbol": value.toString(),
38
+ };
36
39
  }
37
- if (value && typeof value === "object") {
38
- return Object.fromEntries(await Promise.all(Object.entries(value).map(async ([key, value]) => [
39
- key,
40
- await serialize(scope, value, options),
40
+ else if (value instanceof Scope) {
41
+ return {
42
+ "@scope": null,
43
+ };
44
+ }
45
+ else if (value && typeof value === "object") {
46
+ for (const symbol of Object.getOwnPropertySymbols(value)) {
47
+ assertNotUniqueSymbol(symbol);
48
+ }
49
+ for (const key of Object.keys(value)) {
50
+ if (parseSymbol(key)) {
51
+ throw new Error(`Cannot serialize property '${key}' because it looks like a stringified symbol.`);
52
+ }
53
+ }
54
+ return Object.fromEntries(await Promise.all([...Object.getOwnPropertySymbols(value), ...Object.keys(value)].map(async (key) => [
55
+ key.toString(),
56
+ await serialize(scope, value[key], options),
41
57
  ])));
42
58
  }
43
- if (typeof value === "function") {
59
+ else if (typeof value === "function") {
44
60
  // can't serialize functions
45
61
  return undefined;
46
62
  }
@@ -57,17 +73,37 @@ export async function deserialize(scope, value) {
57
73
  }
58
74
  return new Secret(await decryptWithKey(value["@secret"], scope.password));
59
75
  }
60
- if ("@schema" in value) {
76
+ else if ("@schema" in value) {
61
77
  return value["@schema"];
62
78
  }
63
- if ("@date" in value) {
79
+ else if ("@date" in value) {
64
80
  return new Date(value["@date"]);
65
81
  }
82
+ else if ("@symbol" in value) {
83
+ return parseSymbol(value["@symbol"]);
84
+ }
85
+ else if ("@scope" in value) {
86
+ return scope;
87
+ }
66
88
  return Object.fromEntries(await Promise.all(Object.entries(value).map(async ([key, value]) => [
67
- key,
89
+ parseSymbol(key) ?? key,
68
90
  await deserialize(scope, value),
69
91
  ])));
70
92
  }
71
93
  return value;
72
94
  }
95
+ const symbolPattern = /^Symbol\((.*)\)$/;
96
+ function parseSymbol(value) {
97
+ const match = value.match(symbolPattern);
98
+ if (!match) {
99
+ return undefined;
100
+ }
101
+ return Symbol.for(match[1]);
102
+ }
103
+ function assertNotUniqueSymbol(symbol) {
104
+ if (symbol.description === undefined ||
105
+ symbol !== Symbol.for(symbol.description)) {
106
+ throw new Error(`Cannot serialize unique symbol: ${symbol.description}`);
107
+ }
108
+ }
73
109
  //# sourceMappingURL=serde.js.map
package/lib/serde.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"serde.js","sourceRoot":"","sources":["../src/serde.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serde.js","sourceRoot":"","sources":["../src/serde.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "alchemy",
3
- "version": "0.15.3",
3
+ "version": "0.15.4",
4
4
  "type": "module",
5
5
  "module": "./lib/index.js",
6
6
  "scripts": {
@@ -49,7 +49,11 @@ export type Binding =
49
49
  | VectorizeIndex
50
50
  | Worker
51
51
  | Workflow
52
- | BrowserRendering;
52
+ | BrowserRendering
53
+ | Self;
54
+
55
+ export type Self = typeof Self;
56
+ export const Self = Symbol.for("Self");
53
57
 
54
58
  /**
55
59
  * Union type for all Worker binding types (API spec)
@@ -3,7 +3,7 @@ import type { Secret } from "../secret.js";
3
3
  import type { AiGateway as _AiGateway } from "./ai-gateway.js";
4
4
  import type { Ai as _Ai } from "./ai.js";
5
5
  import type { Assets } from "./assets.js";
6
- import type { Binding } from "./bindings.js";
6
+ import type { Binding, Self } from "./bindings.js";
7
7
  import type { BrowserRendering } from "./browser-rendering.js";
8
8
  import type { R2Bucket as _R2Bucket } from "./bucket.js";
9
9
  import type { D1Database as _D1Database } from "./d1-database.js";
@@ -48,4 +48,6 @@ export type Bound<T extends Binding> = T extends _DurableObjectNamespace
48
48
  ? Fetcher
49
49
  : T extends _Ai<infer M>
50
50
  ? Ai<M>
51
- : Service;
51
+ : T extends Self
52
+ ? Service
53
+ : Service;
@@ -13,7 +13,7 @@ import {
13
13
  createCloudflareApi,
14
14
  } from "./api.js";
15
15
  import type { Assets } from "./assets.js";
16
- import type { Bindings, WorkerBindingSpec } from "./bindings.js";
16
+ import { type Bindings, Self, type WorkerBindingSpec } from "./bindings.js";
17
17
  import type { Bound } from "./bound.js";
18
18
  import { bundleWorkerScript } from "./bundle/bundle-worker.js";
19
19
  import type { DurableObjectNamespace } from "./durable-object-namespace.js";
@@ -207,7 +207,7 @@ export interface WorkerProps<B extends Bindings = Bindings>
207
207
  */
208
208
  export interface Worker<B extends Bindings = Bindings>
209
209
  extends Resource<"cloudflare::Worker">,
210
- Omit<WorkerProps<B>, "url"> {
210
+ Omit<WorkerProps<B>, "url" | "script"> {
211
211
  type: "service";
212
212
 
213
213
  /**
@@ -358,143 +358,182 @@ export const Worker = Resource(
358
358
  id: string,
359
359
  props: WorkerProps<B>,
360
360
  ): Promise<Worker<B>> {
361
- // Create Cloudflare API client with automatic account discovery
362
- const api = await createCloudflareApi(props);
363
-
364
- // Use the provided name
365
- const workerName = props.name ?? id;
366
-
367
361
  // Validate input - we need either script, entryPoint, or bundle
368
362
  if (!props.script && !props.entrypoint) {
369
363
  throw new Error("One of script or entryPoint must be provided");
370
364
  }
371
365
 
372
- if (this.phase === "delete") {
373
- await deleteWorker(this, api, workerName);
374
- return this.destroy();
375
- }
376
- if (this.phase === "create") {
377
- if (!props.adopt) {
378
- await assertWorkerDoesNotExist(this, api, workerName);
379
- }
380
- }
366
+ // Create Cloudflare API client with automatic account discovery
367
+ const api = await createCloudflareApi(props);
368
+
369
+ // Use the provided name
370
+ const workerName = props.name ?? id;
381
371
 
382
372
  const oldBindings = await this.get<Bindings>("bindings");
383
373
 
384
374
  const compatibilityDate = props.compatibilityDate ?? "2025-04-20";
385
375
  const compatibilityFlags = props.compatibilityFlags ?? [];
386
376
 
387
- // Get the script content - either from props.script, or by bundling
388
- const scriptContent =
389
- props.script ??
390
- (await bundleWorkerScript({
391
- ...props,
392
- compatibilityDate,
393
- compatibilityFlags,
394
- }));
395
-
396
- // Find any assets bindings
397
- const assetsBindings: { name: string; assets: Assets }[] = [];
398
- const workflowsBindings: Workflow[] = [];
399
-
400
- if (props.bindings) {
401
- for (const [bindingName, binding] of Object.entries(props.bindings)) {
402
- if (typeof binding === "object") {
403
- if (binding.type === "assets") {
404
- assetsBindings.push({ name: bindingName, assets: binding });
405
- } else if (binding.type === "workflow") {
406
- workflowsBindings.push(binding);
377
+ const uploadWorkerScript = async (props: WorkerProps<B>) => {
378
+ // Get the script content - either from props.script, or by bundling
379
+ const scriptContent =
380
+ props.script ??
381
+ (await bundleWorkerScript({
382
+ ...props,
383
+ compatibilityDate,
384
+ compatibilityFlags,
385
+ }));
386
+
387
+ // Find any assets bindings
388
+ const assetsBindings: { name: string; assets: Assets }[] = [];
389
+ const workflowsBindings: Workflow[] = [];
390
+
391
+ if (props.bindings) {
392
+ for (const [bindingName, binding] of Object.entries(props.bindings)) {
393
+ if (typeof binding === "object") {
394
+ if (binding.type === "assets") {
395
+ assetsBindings.push({ name: bindingName, assets: binding });
396
+ } else if (binding.type === "workflow") {
397
+ workflowsBindings.push(binding);
398
+ }
407
399
  }
408
400
  }
409
401
  }
410
- }
411
402
 
412
- // Upload any assets and get completion tokens
413
- let assetUploadResult: AssetUploadResult | undefined;
414
- if (assetsBindings.length > 0) {
415
- // We'll use the first asset binding for now
416
- // In the future, we might want to support multiple asset bindings
417
- const assetBinding = assetsBindings[0];
403
+ // Upload any assets and get completion tokens
404
+ let assetUploadResult: AssetUploadResult | undefined;
405
+ if (assetsBindings.length > 0) {
406
+ // We'll use the first asset binding for now
407
+ // In the future, we might want to support multiple asset bindings
408
+ const assetBinding = assetsBindings[0];
409
+
410
+ // Upload the assets and get the completion token
411
+ assetUploadResult = await uploadAssets(
412
+ api,
413
+ workerName,
414
+ assetBinding.assets,
415
+ props.assets,
416
+ );
417
+ }
418
+
419
+ // Prepare metadata with bindings
420
+ const scriptMetadata = await prepareWorkerMetadata(
421
+ this,
422
+ oldBindings,
423
+ {
424
+ ...props,
425
+ compatibilityDate,
426
+ compatibilityFlags,
427
+ workerName,
428
+ },
429
+ assetUploadResult,
430
+ );
431
+
432
+ await putWorker(api, workerName, scriptContent, scriptMetadata);
433
+
434
+ for (const workflow of workflowsBindings) {
435
+ await upsertWorkflow(api, {
436
+ workflowName: workflow.workflowName,
437
+ className: workflow.className,
438
+ scriptName: workerName,
439
+ });
440
+ }
441
+
442
+ await Promise.all(
443
+ props.eventSources?.map((eventSource) => {
444
+ if (isQueue(eventSource) || isQueueEventSource(eventSource)) {
445
+ const queue = isQueue(eventSource)
446
+ ? eventSource
447
+ : eventSource.queue;
448
+ return QueueConsumer(`${queue.id}-consumer`, {
449
+ queue,
450
+ scriptName: workerName,
451
+ accountId: api.accountId,
452
+ settings: isQueueEventSource(eventSource)
453
+ ? eventSource.settings
454
+ : undefined,
455
+ });
456
+ }
457
+ throw new Error(`Unsupported event source type: ${eventSource}`);
458
+ }) ?? [],
459
+ );
418
460
 
419
- // Upload the assets and get the completion token
420
- assetUploadResult = await uploadAssets(
461
+ // TODO: it is less than ideal that this can fail, resulting in state problem
462
+ await this.set("bindings", props.bindings);
463
+
464
+ // Handle worker URL if requested
465
+ const workerUrl = await configureURL(
466
+ this,
421
467
  api,
422
468
  workerName,
423
- assetBinding.assets,
424
- props.assets,
469
+ props.url ?? false,
425
470
  );
426
- }
427
471
 
428
- // Prepare metadata with bindings
429
- const scriptMetadata = await prepareWorkerMetadata(
430
- this,
431
- oldBindings,
432
- {
433
- ...props,
434
- compatibilityDate,
435
- compatibilityFlags,
436
- },
437
- assetUploadResult,
438
- );
472
+ // Get current timestamp
473
+ const now = Date.now();
439
474
 
440
- await putWorker(api, workerName, scriptContent, scriptMetadata);
441
-
442
- for (const workflow of workflowsBindings) {
443
- await upsertWorkflow(api, {
444
- workflowName: workflow.workflowName,
445
- className: workflow.className,
446
- scriptName: workerName,
447
- });
448
- }
475
+ // Update cron triggers
476
+ if (props.crons) {
477
+ const res = await api.put(
478
+ `/accounts/${api.accountId}/workers/scripts/${workerName}/schedules`,
479
+ props.crons.map((cron) => ({ cron })),
480
+ );
449
481
 
450
- await Promise.all(
451
- props.eventSources?.map((eventSource) => {
452
- if (isQueue(eventSource) || isQueueEventSource(eventSource)) {
453
- const queue = isQueue(eventSource) ? eventSource : eventSource.queue;
454
- return QueueConsumer(`${queue.id}-consumer`, {
455
- queue,
456
- scriptName: workerName,
457
- accountId: api.accountId,
458
- settings: isQueueEventSource(eventSource)
459
- ? eventSource.settings
460
- : undefined,
461
- });
482
+ if (!res.ok) {
483
+ await handleApiError(
484
+ res,
485
+ "updating cron triggers",
486
+ "worker",
487
+ workerName,
488
+ );
462
489
  }
463
- throw new Error(`Unsupported event source type: ${eventSource}`);
464
- }) ?? [],
465
- );
466
-
467
- // TODO: it is less than ideal that this can fail, resulting in state problem
468
- await this.set("bindings", props.bindings);
490
+ }
469
491
 
470
- // Handle worker URL if requested
471
- const workerUrl = await configureURL(
472
- this,
473
- api,
474
- workerName,
475
- props.url ?? false,
476
- );
492
+ return { scriptMetadata, workerUrl, now };
493
+ };
477
494
 
478
- // Get current timestamp
479
- const now = Date.now();
495
+ if (this.phase === "delete") {
496
+ if (
497
+ Object.values(props.bindings ?? {}).some((binding) => binding === Self)
498
+ ) {
499
+ // remove the Self bindings or else we can't remove (LOL)
500
+ await uploadWorkerScript({
501
+ ...props,
502
+ bindings: Object.fromEntries(
503
+ Object.entries(props.bindings ?? {}).filter(
504
+ ([_, binding]) => binding !== Self,
505
+ ),
506
+ ) as B,
507
+ });
508
+ }
480
509
 
481
- // Update cron triggers
482
- if (props.crons) {
483
- const res = await api.put(
484
- `/accounts/${api.accountId}/workers/scripts/${workerName}/schedules`,
485
- props.crons.map((cron) => ({ cron })),
510
+ await withExponentialBackoff(
511
+ () =>
512
+ deleteWorker(this, api, {
513
+ ...props,
514
+ workerName,
515
+ }),
516
+ (err) =>
517
+ (err.status === 400 &&
518
+ err.message.includes(
519
+ "is still referenced by service bindings in Workers",
520
+ )) ||
521
+ err.status === 500 ||
522
+ err.status === 503,
523
+ 10,
524
+ 100,
486
525
  );
487
526
 
488
- if (!res.ok) {
489
- await handleApiError(
490
- res,
491
- "updating cron triggers",
492
- "worker",
493
- workerName,
494
- );
527
+ return this.destroy();
528
+ }
529
+ if (this.phase === "create") {
530
+ if (!props.adopt) {
531
+ await assertWorkerDoesNotExist(this, api, workerName);
495
532
  }
496
533
  }
497
534
 
535
+ const { scriptMetadata, workerUrl, now } = await uploadWorkerScript(props);
536
+
498
537
  // Construct the output
499
538
  return this({
500
539
  ...props,
@@ -504,7 +543,6 @@ export const Worker = Resource(
504
543
  name: workerName,
505
544
  compatibilityDate,
506
545
  compatibilityFlags,
507
- script: scriptContent,
508
546
  format: props.format || "esm", // Include format in the output
509
547
  bindings: props.bindings ?? ({} as B),
510
548
  env: props.env,
@@ -526,8 +564,9 @@ export const Worker = Resource(
526
564
  async function deleteWorker<B extends Bindings>(
527
565
  ctx: Context<Worker<B>>,
528
566
  api: CloudflareApi,
529
- workerName: string,
567
+ props: WorkerProps<B> & { workerName: string },
530
568
  ) {
569
+ const workerName = props.workerName;
531
570
  // Delete any queue consumers attached to this worker first
532
571
  await deleteQueueConsumers(ctx, api, workerName);
533
572
 
@@ -538,13 +577,7 @@ async function deleteWorker<B extends Bindings>(
538
577
 
539
578
  // Check for success (2xx status code)
540
579
  if (!deleteResponse.ok && deleteResponse.status !== 404) {
541
- const errorData: any = await deleteResponse
542
- .json()
543
- .catch(() => ({ errors: [{ message: deleteResponse.statusText }] }));
544
- console.error(
545
- "Error deleting worker:",
546
- errorData.errors?.[0]?.message || deleteResponse.statusText,
547
- );
580
+ await handleApiError(deleteResponse, "delete", "worker", workerName);
548
581
  }
549
582
 
550
583
  // Disable the URL if it was enabled
@@ -698,6 +731,7 @@ async function prepareWorkerMetadata<B extends Bindings>(
698
731
  props: WorkerProps & {
699
732
  compatibilityDate: string;
700
733
  compatibilityFlags: string[];
734
+ workerName: string;
701
735
  },
702
736
  assetUploadResult?: AssetUploadResult,
703
737
  ): Promise<WorkerMetadata> {
@@ -752,6 +786,12 @@ async function prepareWorkerMetadata<B extends Bindings>(
752
786
  name: bindingName,
753
787
  text: binding,
754
788
  });
789
+ } else if (binding === Self) {
790
+ meta.bindings.push({
791
+ type: "service",
792
+ name: bindingName,
793
+ service: props.workerName,
794
+ });
755
795
  } else if (binding.type === "d1") {
756
796
  meta.bindings.push({
757
797
  type: "d1",
@@ -807,7 +847,7 @@ async function prepareWorkerMetadata<B extends Bindings>(
807
847
  // script_name: ??,
808
848
  });
809
849
  // it's unclear whether this is needed, but it works both ways
810
- configureClassMigration(binding, binding.id, binding.className);
850
+ // configureClassMigration(binding, binding.id, binding.className);
811
851
  } else if (binding.type === "queue") {
812
852
  meta.bindings.push({
813
853
  type: "queue",
@@ -1,7 +1,7 @@
1
1
  import type { Context } from "../context.js";
2
2
  import { StaticJsonFile } from "../fs/static-json-file.js";
3
3
  import { Resource } from "../resource.js";
4
- import type { Bindings } from "./bindings.js";
4
+ import { Self, type Bindings } from "./bindings.js";
5
5
  import type { DurableObjectNamespace } from "./durable-object-namespace.js";
6
6
  import type { EventSource } from "./event-source.js";
7
7
  import { isQueueEventSource } from "./event-source.js";
@@ -340,6 +340,18 @@ function processBindings(
340
340
  spec.vars = {};
341
341
  }
342
342
  spec.vars[bindingName] = binding;
343
+ } else if (binding === Self) {
344
+ // Self(service) binding
345
+ services.push({
346
+ binding: bindingName,
347
+ service: bindingName,
348
+ });
349
+ } else if (binding.type === "service") {
350
+ // Service binding
351
+ services.push({
352
+ binding: bindingName,
353
+ service: binding.id,
354
+ });
343
355
  } else if (binding.type === "kv_namespace") {
344
356
  // KV Namespace binding
345
357
  kvNamespaces.push({
@@ -363,12 +375,6 @@ function processBindings(
363
375
  binding: bindingName,
364
376
  bucket_name: binding.name,
365
377
  });
366
- } else if (binding.type === "service") {
367
- // Service binding
368
- services.push({
369
- binding: bindingName,
370
- service: binding.id,
371
- });
372
378
  } else if (binding.type === "secret") {
373
379
  // Secret binding
374
380
  secrets.push(bindingName);
package/src/serde.ts CHANGED
@@ -22,8 +22,7 @@ export async function serialize(
22
22
  ): Promise<any> {
23
23
  if (Array.isArray(value)) {
24
24
  return Promise.all(value.map((value) => serialize(scope, value, options)));
25
- }
26
- if (value instanceof Secret) {
25
+ } else if (value instanceof Secret) {
27
26
  if (!scope.password) {
28
27
  throw new Error("Cannot serialize secret without password");
29
28
  }
@@ -33,31 +32,45 @@ export async function serialize(
33
32
  ? await encrypt(value.unencrypted, scope.password)
34
33
  : value.unencrypted,
35
34
  };
36
- }
37
- if (isType(value)) {
35
+ } else if (isType(value)) {
38
36
  return {
39
37
  "@schema": value.toJSON(),
40
38
  };
41
- }
42
- if (value instanceof Date) {
39
+ } else if (value instanceof Date) {
43
40
  return {
44
41
  "@date": value.toISOString(),
45
42
  };
46
- }
47
- if (value instanceof Scope) {
48
- return undefined;
49
- }
50
- if (value && typeof value === "object") {
43
+ } else if (typeof value === "symbol") {
44
+ assertNotUniqueSymbol(value);
45
+ return {
46
+ "@symbol": value.toString(),
47
+ };
48
+ } else if (value instanceof Scope) {
49
+ return {
50
+ "@scope": null,
51
+ };
52
+ } else if (value && typeof value === "object") {
53
+ for (const symbol of Object.getOwnPropertySymbols(value)) {
54
+ assertNotUniqueSymbol(symbol);
55
+ }
56
+ for (const key of Object.keys(value)) {
57
+ if (parseSymbol(key)) {
58
+ throw new Error(
59
+ `Cannot serialize property '${key}' because it looks like a stringified symbol.`,
60
+ );
61
+ }
62
+ }
51
63
  return Object.fromEntries(
52
64
  await Promise.all(
53
- Object.entries(value).map(async ([key, value]) => [
54
- key,
55
- await serialize(scope, value, options),
56
- ]),
65
+ [...Object.getOwnPropertySymbols(value), ...Object.keys(value)].map(
66
+ async (key) => [
67
+ key.toString(),
68
+ await serialize(scope, value[key], options),
69
+ ],
70
+ ),
57
71
  ),
58
72
  );
59
- }
60
- if (typeof value === "function") {
73
+ } else if (typeof value === "function") {
61
74
  // can't serialize functions
62
75
  return undefined;
63
76
  }
@@ -76,17 +89,20 @@ export async function deserialize(scope: Scope, value: any): Promise<any> {
76
89
  throw new Error("Cannot deserialize secret without password");
77
90
  }
78
91
  return new Secret(await decryptWithKey(value["@secret"], scope.password));
79
- }
80
- if ("@schema" in value) {
92
+ } else if ("@schema" in value) {
81
93
  return value["@schema"];
82
- }
83
- if ("@date" in value) {
94
+ } else if ("@date" in value) {
84
95
  return new Date(value["@date"]);
96
+ } else if ("@symbol" in value) {
97
+ return parseSymbol(value["@symbol"]);
98
+ } else if ("@scope" in value) {
99
+ return scope;
85
100
  }
101
+
86
102
  return Object.fromEntries(
87
103
  await Promise.all(
88
104
  Object.entries(value).map(async ([key, value]) => [
89
- key,
105
+ parseSymbol(key) ?? key,
90
106
  await deserialize(scope, value),
91
107
  ]),
92
108
  ),
@@ -94,3 +110,22 @@ export async function deserialize(scope: Scope, value: any): Promise<any> {
94
110
  }
95
111
  return value;
96
112
  }
113
+
114
+ const symbolPattern = /^Symbol\((.*)\)$/;
115
+
116
+ function parseSymbol(value: string) {
117
+ const match = value.match(symbolPattern);
118
+ if (!match) {
119
+ return undefined;
120
+ }
121
+ return Symbol.for(match[1]);
122
+ }
123
+
124
+ function assertNotUniqueSymbol(symbol: Symbol) {
125
+ if (
126
+ symbol.description === undefined ||
127
+ symbol !== Symbol.for(symbol.description)
128
+ ) {
129
+ throw new Error(`Cannot serialize unique symbol: ${symbol.description}`);
130
+ }
131
+ }